쿼리 재작성은 검색 시스템이 사용자가 입력한 질의를 검색에 더 적합한 형태로 바꾸는 과정입니다. 재작성이 일어나면 입력한 문자열과 실제 실행 질의가 달라질 수 있지만, 모든 검색어가 바뀌는 것은 아닙니다.
이 글은 Google 검색 공식 문서, Microsoft Azure AI Search 공식 문서, LangChain과 LlamaIndex의 공식 자료, 원 논문을 기준으로 작성했습니다.
세 갈래의 재작성
같은 이름 아래 세 층위의 작업이 있습니다.
- 표면 교정: 오타를 고치고 동의어로 확장합니다. Google은 동의어 시스템을 오래전부터 사용해 왔고, Azure AI Search는 생성 모델로 질의 변형을 만들어 검색에 쓸 수 있습니다
- 검색 최적화형 재작성: RAG에서 사용자의 어색한 질문을 검색에 잘 걸리는 형태로 고쳐 쓰는 단계입니다. 2023년 EMNLP 논문이 제안한 재작성 후 검색(Rewrite-Retrieve-Read) 프레임이 이 갈래의 학술 원전입니다
- 대화 맥락 반영: 후속 질문(그건 얼마야?)을 이전 대화를 반영한 독립 질문으로 다시 씁니다. 대화형 AI 검색이 맥락을 유지하는 바탕 작업입니다
주의할 단서도 있습니다. 재작성이 곧 LLM의 일은 아닙니다. 구글의 동의어 시스템은 LLM 붐 이전부터 수년에 걸쳐 만들어진 것이라, 오래된 검색 관행과 최근의 생성형 재작성이 같은 이름 아래 섞여 있다고 보는 것이 정확합니다.
원 질의를 함께 쓰는 구현과 바꾸는 구현
Azure AI Search는 원 질의와 재작성된 질의를 함께 검색에 쓴다고 명시합니다. 이는 Azure의 구현 설명이며 모든 검색엔진과 RAG 시스템의 공통 규칙은 아닙니다. 같은 공식 문서는 고유 식별자와 제품 코드처럼 정확한 일치가 필요한 질의에서 재작성이 결과에 영향을 줄 수 있다고 경고합니다. 브랜드명과 모델 코드는 원문에 정확히 적어야 합니다.
쿼리 팬아웃과 다른 점
AI 검색 맥락에서 쿼리 팬아웃과 자주 섞이는데, 방향이 다릅니다. 재작성은 질의의 표현을 바꾸는 변형이고, 팬아웃은 질문을 여러 관련 검색과 하위 주제로 펼치는 방식입니다. 두 처리를 함께 쓰는 시스템도 만들 수 있지만, Google AI Mode가 어떤 순서로 실행하는지는 공개 범위 밖입니다.
오타와 RAG, 후속 질문 재작성 예시
| 입력 | 재작성 예시 | 범위 |
|---|---|---|
서치콘솔 색이 요청 | 서치콘솔 색인 요청 | 오타 교정 |
반품 언제까지 돼 | 무료 반품 가능 기간 정책 | 사내 문서 검색용 재작성 |
앞서 제주 배송을 물은 뒤 그럼 도서는? | 도서 지역 추가 배송비는 얼마인가 | 대화 맥락을 포함한 독립 질의화 |
표의 두 번째와 세 번째는 가능한 구현 예시이며 모든 제품이 같은 문장으로 바꾸는 것은 아닙니다.
재작성 결과를 확인하는 방법
Google 검색에서는 오타 교정 안내처럼 화면에 드러난 일부 변화만 관찰할 수 있습니다. 내부에서 실행한 모든 질의를 사용자가 확인할 수는 없습니다.
자체 RAG나 Azure AI Search를 운영한다면 디버그 정보와 검색 로그에 다음 항목을 남깁니다.
- 사용자가 입력한 원 질의
- 시스템이 만든 재작성 질의
- 각 질의가 가져온 상위 문서와 점수
- 최종 답변에 사용한 문서
제품 코드처럼 정확 일치가 필요한 질문으로 원 질의와 재작성 질의의 결과가 달라지는지도 따로 시험합니다.
키워드 전략에 갖는 의미
이 구조에서 따라 나오는 실무 결론은 균형입니다.
- 표현의 사소한 차이에 집착할 근거는 약해집니다. 오타와 동의어, 어순 변형은 시스템이 흡수하는 영역이라, 같은 의미의 표현 변형마다 페이지를 만드는 전략은 구조와 어긋납니다
- 반대로 브랜드명, 제품명, 모델 코드의 정확한 표기는 더 중요해집니다. 재작성의 예외 지대로 공식 문서가 명시한 영역이기 때문입니다
- 시맨틱 검색이 정리한 의미 커버리지 원칙의 아래층이 이 메커니즘입니다. 의도 매칭이 관념이 아니라 실행 질의 가공이라는 구체적 단계로 일어난다는 것을 알면, 검색어 데이터에서 입력 그대로의 문자열에 과잉 의미를 부여하지 않게 됩니다
자주 묻는 질문
내가 입력한 검색어가 그대로 검색되는 게 아닌가요?
그대로 실행될 수도 있고 오타 교정과 동의어 확장, 생성 모델이 만든 변형이 쓰일 수도 있습니다. Azure AI Search처럼 원 질의와 변형을 함께 쓰는 구현도 있지만 제품마다 다릅니다.
쿼리 팬아웃과는 뭐가 다른가요?
재작성은 질의를 더 나은 형태로 바꾸는 변형이고, 팬아웃은 여러 하위 질문으로 나누는 분해입니다. 하나는 형태를, 하나는 개수를 바꾼다고 기억하면 구분이 쉽습니다.
그럼 키워드 최적화는 의미가 없어지나요?
표현 변형을 좇는 최적화의 의미는 줄고, 의미 커버와 고유명사 정확성의 의미는 남습니다. 특히 브랜드명과 제품 코드는 재작성이 오히려 결과를 흔들 수 있는 예외 지대라 정확한 표기가 더 중요합니다.
재작성은 전부 AI가 하나요?
아닙니다. 구글의 동의어 시스템처럼 생성형 AI 이전부터 있던 장치가 큰 몫을 하고, 최근에 생성 모델을 이용한 재작성이 더해진 것입니다. 재작성 전부를 최신 AI 기능으로 소개하는 자료는 계보를 뭉갠 것입니다.