여러 조건이나 여러 단계가 섞인 질문을 각각 독립적으로 검색할 수 있는 하위 질문(sub-query)으로 쪼개고, 하위 결과를 모아 하나의 답으로 합치는 기법입니다. 한 문장 안에 다른 주제가 둘 이상 있으면 어느 한쪽 문서만 검색되기 쉬운데, 주제마다 검색 경로를 따로 만들어 증거를 빠짐없이 모읍니다.
한 가지를 다르게 표현한 것뿐이라면 멀티 쿼리, 지시어가 모호한 것이라면 쿼리 명확화가 맞습니다.
분해에는 두 가지 모양이 있습니다.
| 유형 | 하위 질문 관계 | 실행 | 예 |
|---|---|---|---|
| 병렬 분해 | 서로 독립 | 동시에 검색 후 합성 | "환불하면 포인트는?" → 환불 정책 / 환불 시 포인트 처리 |
| 순차 분해 | 앞 답이 뒤 질문을 결정 | 차례로 검색·답변 | "작년 리콜 제품의 보상 정책" → 리콜 제품명 → 그 제품의 보상 정책 |
연구 계열로는 쉬운 하위 문제부터 차례로 푸는 Least-to-Most Prompting, 모델이 스스로 후속 질문을 던지고 검색으로 답하는 Self-Ask가 이 기법의 원형입니다.
| 원 질문 | 하위 질문 | 유형 |
|---|---|---|
| 환불하면 포인트는 어떻게 돼? | ① 환불 시 적립된 포인트 처리 기준 ② 환불 시 결제에 사용한 포인트 반환 여부 | 병렬 |
| 주문 취소하면 쿠폰이랑 포인트도 돌려받아요? | ① 주문 취소 조건과 절차 ② 주문 취소 시 사용한 쿠폰 복구 ③ 주문 취소 시 사용한 포인트 복구 | 병렬 |
| 노트북 발열 심한데 AS 되나? | ① 노트북 과열 증상의 보증 수리 대상 여부 ② 노트북 AS 신청 절차 | 병렬 |
| 배송 지연되면 환불 가능해? | ① 배송 지연 시 주문 취소·환불 가능 여부 ② 배송 지연 보상 정책 | 병렬 |
| 쿠폰 쓰고 결제해도 포인트 적립 돼? | ① 쿠폰 할인 적용 주문의 포인트 적립 기준 (적립 기준 금액) | 분해 불필요 — 한 정책 문서 안의 한 질문 |
| 작년에 리콜된 우리 제품의 보상 정책은? | ① 2025년 리콜 대상 제품 목록 → ② {1} 리콜 보상 정책 ({1} = ①의 답인 제품명) | 순차 |
| 프리미엄 요금제와 베이직 요금제 차이 | ① 프리미엄 요금제 제공 기능과 가격 ② 베이직 요금제 제공 기능과 가격 | 병렬 (비교) |
하위 질문마다 검색 + 답변 호출이 들어가므로, 호출 수는 대략 1(분해) + 2×하위 질문 수 + 1(합성)입니다. 비용이 부담되면 하위 답변 단계를 생략하고 하위 질문별 검색 결과만 모아 한 번에 생성하는 가벼운 형태도 많이 씁니다.
| 장점 | 단점 |
|---|---|
| 복합·비교 질문에서 한쪽 증거만 가져오는 실패를 막음 | LLM·검색 호출 수가 하위 질문 수에 비례해 증가 |
| 다단계 질문을 순서대로 풀어 정확도 향상 | 분해가 틀리면 엉뚱한 하위 질문들로 오답이 체계적으로 만들어짐 |
| 하위 질문별 근거·"확인 불가"가 드러나 디버깅·설명이 쉬움 | 단순 질문까지 분해하면 오히려 품질·속도 하락 |
| 에이전트의 계획 → 실행 → 합성 구조와 자연스럽게 연결 | 순차 분해는 앞 단계 오류가 뒤로 전파 |
⚠️ 함정 — 과분해: "노트북 발열 심한데 AS 되나?"를 "과열 원인 / 임시 조치 / 보증 기간 확인 방법 / 보증 기간 후 AS / 신청 서류 / 수리 비용 / 소요 시간" 7개로 쪼개면, 사용자가 묻지 않은 주제의 문서가 컨텍스트를 채우고 정작 "AS 되나?"에 대한 답은 묻힙니다. 하위 질문 수에 상한을 두고, 원 질문에 나온 주제만 나누세요.
⚠️ 함정 — 주제 창작: "연차 남으면 돈으로 줘?"를 "연차 현금화 시 소득세·국민연금 부과"까지 분해하면 사내 규정 질문이 세법 질문으로 변합니다. 분해는 질문을 나누는 것이지 넓히는 것이 아닙니다.
⚠️ 함정 — 맥락 없는 하위 질문: "② 복구 여부는?"처럼 원 질문의 대상이 빠진 하위 질문은 단독으로 검색하면 아무 문서나 걸립니다. 각 하위 질문에 대상("주문 취소 시 사용한 쿠폰")을 반복해 넣으세요.
⚠️ 함정 — 합성 단계의 증거 누락: 하위 답만 넘기고 출처를 버리면, 합성 모델이 하위 답들을 매끄럽게 이어 붙이며 근거 없는 연결 문장을 만듭니다. 하위 답마다 출처 id를 유지하고, "확인 불가" 항목은 합성에서도 드러내세요.