Multi-hop 질문 생성은 LLM이 여러 단계의 추론이나 여러 소스의 정보를 연결해야만 답할 수 있는 질문을 만드는 기법입니다. 단순히 하나의 문장이나 단락에서 답을 찾는 것이 아니라, 여러 정보를 ‘뛰어넘어(hop)’ 최종 답에 도달하도록 설계된 질문입니다.
이는 특히 RAG(Retrieval Augmented Generation) 시스템에서 중요한데, 사용자의 복잡한 질문에 답하기 위해 여러 문서를 검색하고, 각 문서에서 찾은 정보를 연결하여 최종 답변을 생성하는 LLM의 능력을 효과적으로 테스트하고 향상시킬 수 있기 때문입니다.
1. Multi-hop (멀티홉):
“두 개 이상의 연속된 정보를 이용해서 대답해야 하는 질문”
정보 간의 논리적 연결 또는 추론 단계에 초점이 맞춰져 있습니다. 답을 찾기 위해 A라는 정보에서 B라는 정보를 얻고, B에서 C를 얻는 식으로 여러 단계를 거쳐야 합니다. 각 단계는 이전 단계의 정보에 의존할 수 있습니다.
Multi-hop 예시:
- “엘비스 프레슬리가 태어난 곳에서 가장 유명한 농구팀은 어디인가요?”
- 답을 찾기 위한 단계:
- 엘비스 프레슬리가 태어난 곳이 어디인지 찾습니다. (미시시피주 투펠로)
- 투펠로 또는 미시시피주에서 가장 유명한 농구팀이 어디인지 찾습니다. (예: 멤피스 그리즐리스 - NBA 팀, 투펠로와 비교적 가까움)
- 이 질문은 ‘엘비스 프레슬리’ → ‘태어난 곳’ → ‘그곳의 유명 농구팀’ 이라는 최소 두 단계의 정보 연결(hop)이 필요합니다.
2. Multi-passage (멀티패시지)
“정답 단락이 두 개 이상인 질문”
답변에 필요한 정보가 문서 내 또는 여러 문서의 여러 위치(단락, passage)에 분산되어 있다는 사실에 초점이 맞춰져 있습니다. 답을 얻기 위해 여러 단락을 찾아야 하지만, 이 단락들이 반드시 논리적으로 연속된 추론 단계를 구성하지는 않을 수 있습니다. 여러 조각의 정보를 모아 하나의 완전한 답을 구성하는 데 중점을 둡니다.
Multi-passage예시:
- “2022년 카타르 월드컵에서 아르헨티나의 조별리그 결과와 결승 상대팀은 무엇이었나요?”
- 답을 찾기 위한 과정:
- 어떤 단락에서는 아르헨티나의 조별리그 결과 정보(예: 사우디아라비아전 패배, 멕시코/폴란드전 승리)를 찾습니다.
- 다른 단락에서는 결승전 정보와 상대팀(프랑스)을 찾습니다.
- 이 질문은 답이 ‘조별리그 결과’와 ‘결승 상대팀’이라는 두 가지 정보로 구성되며, 이 두 정보가 문서의 서로 다른 단락에 있을 가능성이 높습니다. 이 두 정보는 논리적으로 연결된 ‘단계’라기보다는, 질문의 다른 부분에 대한 별개의 답변 조각입니다.
핵심 차이 요약
- Multi-hop: 정보 간의 논리적 연결 또는 추론 단계가 중요합니다. (정보 A → 정보 B → 최종 답)
- Multi-passage: 답변에 필요한 정보가 여러 위치(단락) 에 분산되어 있다는 사실이 중요합니다. (단락 1의 정보 + 단락 2의 정보 + … → 최종 답)
물론, 실제 복잡한 질문 중에는 Multi-hop이면서 동시에 Multi-passage인 경우도 많습니다. 즉, 답을 찾기 위해 여러 단계의 추론이 필요한데, 그 각 단계에 필요한 정보가 또 여러 단락에 흩어져 있는 경우죠.
LLM 기반 질문 생성에서 Multi-hop과 Multi-passage 기법을 사용하는 것은 모델이 단순한 정보 추출을 넘어, 복잡한 정보 탐색 및 통합 능력을 갖추도록 훈련하고 평가하는 데 필수적입니다. #RAG #Multi-hop