PIKE-RAG: 산업용 RAG를 위한 지식 원자화와 작업 분해 프레임워크에 대한 연구 (feat. Microsoft)

:pytorch::kr: 이 게시물은 PIKE-RAG의 논문을 정리한 글로, PIKE-RAG의 사용법은 GitHub 프로젝트를 소개한 글을 참고해주세요.

PIKE-RAG 소개

새로운 회사에 입사해서 수십 년 치 사내 기술 문서 더미를 받아 든 상황을 떠올려 봅시다. 답을 찾으려면 스캔된 도면, 표로 가득한 데이터시트, 서로를 인용하는 규정집을 넘나들며 흩어진 조각들을 이어 붙여야 합니다. 단순히 "가장 비슷한 문단"을 찾아 읽는 것만으로는 전문가 수준의 답을 만들 수 없습니다.

이 논문은 바로 이 문제를 다룹니다. PIKE-RAG(sPecIalized KnowledgE and Rationale Augmented Generation) 는 마이크로소프트 리서치 아시아(Microsoft Research Asia)가 제안한 검색 증강 생성(Retrieval-Augmented Generation, RAG) 프레임워크로, 단순 검색을 넘어 전문 지식(specialized knowledge)을 추출하고 이해하며, 답에 이르는 일관된 추론 근거(rationale)를 단계적으로 구성하도록 설계되었습니다. 특히 산업 현장의 복잡하고 다양한 요구를 충족시키기 위해, 작업의 난이도에 따라 RAG 시스템을 단계별로 발전시키는 로드맵과 두 가지 핵심 기법인 지식 원자화(Knowledge Atomizing)지식 인식 작업 분해(Knowledge-Aware Task Decomposition) 를 함께 제시합니다.

기존 RAG가 산업 현장에서 부딪히는 벽

최근 대형 언어 모델(Large Language Model, LLM)은 자연어 처리 분야를 크게 바꿔놓았지만, 전문 도메인의 질의 앞에서는 여전히 한계가 뚜렷합니다. 도메인 특화 학습 데이터가 부족하고, 지식 컷오프 이후의 최신 정보를 담지 못하며, 사실에 근거하지 않은 환각(hallucination)을 만들어내기도 합니다. 검색 증강 생성(RAG)은 외부 지식을 검색해 생성 과정에 결합함으로써 이러한 한계를 완화하는 유망한 해법으로 자리 잡았습니다.

그러나 기존 RAG 접근법은 대부분 연구용 벤치마크에 맞춰 설계되어, 실제 산업 응용에서는 명확한 한계를 드러냅니다. 연구팀은 그 원인을 세 가지로 정리합니다.

첫째, 지식 소스의 다양성(Knowledge source diversity) 입니다. 산업 현장의 자료는 수년간 축적된 스캔 이미지, 디지털 문서, 웹 데이터에 더해 전용 데이터베이스까지 아우릅니다. 예를 들어 LED 제품 데이터시트는 성능 특성을 담은 복잡한 표, 전기적 속성을 나타내는 차트, 설치 방법을 그린 그림으로 구성됩니다. 반면 HotpotQA, 2WikiMultiHopQA 같은 널리 쓰이는 데이터셋은 이미 잘게 나뉜 단순한 텍스트 말뭉치를 전제하므로, 현실 데이터의 복잡성을 반영하지 못합니다.

둘째, 도메인 전문성의 결핍(Domain specialization deficit) 입니다. 전문 분야의 지식은 고유한 용어, 전문성, 독자적인 논리 체계로 이루어져 있습니다. 예를 들어 반도체 설계 연구는 물리적 원리에 대한 깊은 이해에 크게 의존하는데, LLM이 연구 문서에서 지식과 근거를 추출하고 정리할 때 핵심 물리 원리를 제대로 포착하지 못하는 경우가 많습니다. 그 결과 RAG 시스템은 문제의 핵심 요소를 불완전하거나 부정확하게 해석하고, 물리적 원리에 기반하지 않은 답을 만들어냅니다.

셋째, 획일적 접근(One-size-fits-all) 의 문제입니다. RAG 응용 시나리오는 비슷한 골격을 공유하더라도 요구하는 능력이 서로 다릅니다. 규칙 기반 질의(예: 우편물 발송의 법적 조건 판단)는 질의와 규정 사이의 의미 격차를 메우는 데 초점이 있고, 멀티홉(multi-hop) 질의(예: 여러 측면에서 제품 비교)는 다양한 출처의 정보를 통합해 여러 단계의 추론을 수행해야 합니다. 대부분의 기존 RAG는 이 차이를 무시한 채 하나의 전략을 모든 질문에 적용하여, 실무에 필요한 정확도 기준을 충족하지 못합니다.

발상의 전환: 검색이 아니라 "전문 지식과 추론 근거"를 증강한다

연구팀은 이 문제들의 열쇠가 전통적인 검색 증강을 넘어서는 데 있다고 봅니다. 즉 전문 지식을 효과적으로 추출, 이해, 적용하고, 특정 작업과 그에 관련된 지식에 맞는 추론 논리를 개발하는 것입니다. 이를 전문 지식과 추론 근거 증강(sPecIalized Knowledge and Rationale Augmentation) 이라 부릅니다.

이 발상을 구체화하기 위해, 논문은 산업 현장에서 마주치는 질문을 난이도에 따라 네 가지 유형으로 분류하고, 각 유형을 풀어낼 수 있는지에 따라 RAG 시스템의 능력을 레벨로 나눕니다. 이 분류는 시스템의 역량을 통제 가능하고 측정 가능한 방식으로 점진적으로 끌어올리는 지침이 됩니다. 마치 건물을 지을 때 기초 공사부터 골조, 내장, 마감까지 단계를 밟아 올라가듯, RAG 시스템도 능력의 층위를 하나씩 쌓아 올리자는 것입니다.

문제를 네 가지 질문 유형으로 나누기

논문은 질문의 난이도를 결정하는 요인으로 지식의 관련성과 완전성, 지식 추출의 복잡성, 이해와 추론의 깊이, 지식 활용의 효과성을 꼽고, 이를 바탕으로 네 가지 질문 유형을 정의합니다.

  • 사실 질문(Factual Questions): 말뭉치에 명시적으로 존재하는 구체적인 정보를 그대로 추출하는 질문입니다. 관련 사실을 성공적으로 검색하기만 하면 답할 수 있습니다.

  • 연결 추론 질문(Linkable-Reasoning Questions): 여러 출처에서 정보를 모으거나 여러 단계의 추론을 거쳐야 하는 질문입니다. 다시 여러 개체를 순차적으로 연결하는 브릿징(bridging), 통계 분석이 필요한 정량(quantitative), 두 개체의 속성을 비교하는 비교(comparative), 여러 출처를 응축하는 요약(summarizing)으로 나뉩니다.

  • 예측 질문(Predictive Questions): 답이 원문에 직접 존재하지 않아, 기존 사실을 근거로 귀납적 추론과 예측을 해야 하는 질문입니다. 예를 들어 연도별 바이오시밀러 승인 건수를 시계열 데이터로 정리한 뒤 미래를 예측하는 식입니다.

  • 창의 질문(Creative Questions): 사실 정보와 근본 원리에 대한 이해를 바탕으로 새로운 관점과 혁신적 해법을 만들어내는 질문입니다. 곧바로 실행 가능한 답을 주기보다는, 전문가의 창의적 사고를 자극하는 것을 목표로 합니다.

흥미로운 점은 질문의 유형이 지식 베이스의 상태에 따라 달라진다 는 것입니다. 예를 들어 "상호 교환 가능한 바이오시밀러 제품이 총 몇 개인가?"라는 질문은, 모든 제품과 승인일이 표 하나에 정리되어 있다면 사실 질문이지만, 속성이 여러 문서에 흩어져 있다면 각 제품의 조건을 확인하고 개수를 세는 중간 처리가 필요한 연결 추론 질문이 됩니다.

L0에서 L4까지: 단계별 시스템 개발 로드맵

연구팀은 이 네 가지 질문 유형을 얼마나 풀 수 있는지에 따라 RAG 시스템을 네 개의 레벨로 나누고, 지식 베이스 구축 단계를 L0로 지정합니다. 상위 레벨은 하위 레벨의 모듈을 그대로 물려받고 새로운 모듈을 더하는 방식으로 능력을 확장합니다.

레벨 다루는 질문 핵심 과제
L0 (지식 베이스 구축) 다양한 포맷의 문서 파싱, 이질적 원본에서 고품질 지식 베이스 구성
L1 사실 질문 적절한 청킹(chunking), 전문 용어와 별칭의 의미 정렬
L2 + 연결 추론 질문 다면적 지식 추출과 활용, 지식을 고려한 작업 분해
L3 + 예측 질문 예측을 위한 지식 수집과 구조화, 특화된 추론 논리
L4 + 창의 질문 복잡한 지식 베이스에서 일관된 논리적 근거 추출, 개방형 답변 평가

이 계층적 접근은 RAG 시스템을 한 번에 완성하려 하지 않고, 모듈을 반복적으로 개선하며 능력을 단계적으로 끌어올리도록 돕습니다. 산업 현장에서 "지금 우리에게 필요한 시스템은 어느 수준인가?"를 명확히 하고, 거기에 맞춰 자원을 투입할 수 있게 하는 실용적 지도인 셈입니다.

PIKE-RAG의 핵심 방법론

앞서 정리된 문제 정의를 바탕으로, PIKE-RAG는 파일 파싱, 지식 추출, 지식 저장, 지식 검색, 지식 조직화, 지식 중심 추론, 작업 분해와 조정이라는 기본 모듈로 구성됩니다. 레벨을 올릴 때는 이 주요 모듈 안의 하위 모듈을 조정하는 방식으로 능력을 확장합니다. 이제 각 레벨의 핵심 요소를 하나씩 살펴보겠습니다.

다층 이질 그래프로 지식 베이스 만들기 (L0)

기존 RAG처럼 모든 원본을 평범한 텍스트로 변환해 잘게 나누면 두 가지 문제가 생깁니다. 텍스트 정보는 대체로 중복되고 잡음이 많아 검색 품질이 떨어지고, 복잡한 문제는 여러 출처의 통합이 필요한데 평면 텍스트만으로는 객체 사이의 정교한 관계를 표현할 수 없습니다.

먼저 다양한 포맷의 문서를 다루기 위해, L0 시스템은 단순 텍스트 변환 대신 레이아웃 분석(layout analysis) 을 수행하여 표, 차트, 그림 같은 멀티모달 요소를 보존합니다. 레이아웃 정보는 청킹 시 텍스트의 완결성을 지키는 데 쓰이고, 그림과 차트는 시각 언어 모델(Vision-Language Model, VLM)이 설명문으로 변환해 검색에 활용합니다. 앞서 지적한 지식 소스의 다양성 문제에 대한 직접적인 대응입니다.

이렇게 파싱한 정보를 바탕으로, PIKE-RAG는 지식 베이스를 세 개의 층으로 이루어진 다층 이질 그래프(multi-layer heterogeneous graph) 로 구조화합니다.

  • 정보 자원 층(Information Resource Layer): 다양한 정보 출처를 소스 노드로 다루고, 출처 간의 참조 관계를 간선으로 표현합니다. 여러 출처에 의존하는 추론의 토대가 됩니다.
  • 말뭉치 층(Corpus Layer): 파싱된 정보를 문서의 원래 계층 구조를 유지한 채 섹션과 청크로 조직합니다. 표나 그림 같은 멀티모달 콘텐츠는 LLM이 요약해 청크 노드로 통합하여, 다양한 형식의 지식을 검색에 활용할 수 있게 합니다.
  • 증류된 지식 층(Distilled Knowledge Layer): 말뭉치를 지식 그래프, 원자적 지식(atomic knowledge), 표형 지식(tabular knowledge) 같은 구조화된 형태로 한 번 더 증류합니다. 개체명 인식(Named Entity Recognition, NER)과 관계 추출(relationship extraction)을 통해 핵심 논리 관계와 개체를 포착합니다.

L1 시스템은 여기에 세 가지 개선을 더합니다. 첫째, 향상된 청킹(Enhanced chunking) 은 텍스트를 순차적으로 나누면서 앞선 청크의 요약(forward summary)을 다음 청크 요약에 넘겨주어 분할 경계를 넘어서도 문맥의 일관성을 유지합니다. 둘째, 자동 태깅(Auto-tagging) 은 전문 용어로 쓰인 말뭉치와 구어체로 쓰인 질의 사이의 도메인 격차를 메웁니다. 미리 도메인 태그 집합이나 태그 매핑 규칙을 구축해두고, 검색 전에 질의에서 태그를 뽑아 말뭉치 도메인으로 매핑함으로써 검색의 재현율과 정밀도를 함께 끌어올립니다. 셋째, 다중 세분도 검색(Multi-Granularity Retrieval) 은 이질 그래프의 여러 층(문서 전체를 담은 정보 자원 층, 개별 청크를 담은 말뭉치 층 등)에 걸쳐 검색을 수행합니다. 질의와 각 층 노드의 유사도를 계산한 뒤 이를 층 사이로 전파(propagation)하고 집계(aggregation)하여 최종 유사도 점수를 만들므로, 넓은 맥락(문서 전체)과 세부 정보(특정 청크)를 함께 고려한 정밀한 사실 검색이 가능합니다.

지식 원자화 (Knowledge Atomizing)

여기서부터가 이 논문의 핵심 기여인 L2 시스템입니다. 최근 연구들은 청크에서 세 쌍(triple) 지식 단위를 뽑아 지식 그래프를 구축함으로써 효율적인 검색을 노렸지만, 지식 그래프 구축은 비용이 많이 들고 문서에 내재한 지식을 늘 온전히 끌어내지는 못합니다. 연구팀은 이보다 가벼운 대안을 제안하면서, 하나의 문서 청크가 대개 여러 조각의 지식을 담고 있다는 점에 주목합니다. 특정 작업에 필요한 정보는 그 청크 전체 지식의 일부에 불과한데, 전통적인 검색처럼 여러 조각을 한 청크에 뭉쳐두면 정작 필요한 정보를 정확히 꺼내기가 어렵습니다.

지식 원자화(Knowledge Atomizing) 는 각 문서 청크 안의 원자적 지식 조각들을 LLM이 자동으로 태깅하게 하는 방법입니다. 특히 선언적 문장이나 (주어-관계-목적어) 튜플 대신, 질문을 지식의 색인으로 사용 하는 점이 독특합니다. 청크를 문맥으로 주고 "이 청크로 답할 수 있는 질문을 최대한 많이 만들라"고 지시하면, 생성된 원자적 질문들이 그 청크가 담은 지식의 여러 측면을 포착하게 됩니다. 이렇게 만들어진 원자적 질문들은 원본 청크와 함께 태그로 저장됩니다.

이렇게 구축된 계층적 지식 베이스는 다양한 세분도(granularity)의 질의를 수용합니다. 위 그림처럼 검색에는 두 가지 경로가 있습니다. 경로 (a)는 질의로 참조 청크를 직접 검색하는 기존 방식이고, 경로 (b)는 먼저 원자적 질문 노드를 찾은 뒤 그와 연결된 참조 청크에 도달하는 방식입니다. 즉 저장된 지식과 질의 사이의 표현 격차를 "질문 대 질문"의 매칭으로 좁히는 것이 핵심 아이디어입니다.

지식 인식 작업 분해 (Knowledge-Aware Task Decomposition)

하나의 복잡한 질문을 어떻게 쪼갤지는 여러 방법이 가능하며, 무엇이 최선인지는 지식 베이스에 실제로 무엇이 들어 있는가 에 달려 있습니다. 앞서 든 "상호 교환 가능한 바이오시밀러 개수" 질문을 다시 봅시다. 상호 교환 가능 제품 목록이 이미 있다면 두 단계 분석이면 충분하지만, 속성이 여러 문서에 흩어져 있다면 (1) 바이오시밀러 목록 검색 → (2) 각 제품의 상호 교환 가능 여부 판단 → (3) 총 개수 집계라는 다른 분해 전략이 필요합니다.

지식 인식 작업 분해(Knowledge-Aware Task Decomposition) 는 바로 이 점을 반영합니다. 매 반복 단계에서 시스템은 현재까지의 문맥 \mathcal{C}_{t-1} 를 바탕으로 여러 개의 원자적 질문 후보 \{\hat{q}_i^t\} 를 생성합니다. 이때 이미 확보한 청크를 문맥으로 함께 넣어, 이미 아는 지식과 겹치는 질문을 다시 만들지 않도록 유도합니다. 각 후보에 대해 지식 베이스에서 유사도 \mathit{sim}(q_{ij}^t, \hat{q}_i^t) \geq \delta 를 만족하는 상위 K 개 원자적 후보를 검색하고(유사도는 임베딩의 코사인 유사도를 사용), 그중 가장 유용한 원자적 질문을 골라 대응하는 청크를 문맥에 누적한 뒤, 갱신된 문맥으로 다시 다음 단계의 분해 계획을 세웁니다. 이 과정은 최대 N 번(실험에서는 다섯 번)까지 반복하되, 쓸 만한 질문 제안이나 관련 원자적 후보가 더 없거나 LLM이 이미 답하기에 충분한 지식을 모았다고 판단하면 그 전에 종료됩니다.

여기서 중요한 차별점은 Self-Ask 같은 기존 방법이 하나의 결정론적 후속 질문(single deterministic follow-up question)을 만드는 것과 달리, PIKE-RAG는 여러 개의 원자적 질의를 동시에 제안 한다는 점입니다. 후속 질문을 하나만 생성하면 그 질문이 잘못될 경우 분해 경로 전체가 틀어지지만, 여러 후보를 두면 지식 베이스에 실제로 존재하는 표현과 맞는 경로를 선택할 여지가 생깁니다.

학습 가능한 분해기 (Knowledge-Aware Task Decomposer Training)

지식 인식 분해는 학습 가능한 구성 요소로 만들 수도 있습니다. 학습된 제안기(proposer)는 추론 시점에 원자적 질의를 곧바로 제안할 수 있어, 앞선 반복 절차를 단 한 번의 호출로 대체하여 추론 시간과 연산 비용을 줄입니다.

이를 위해 연구팀은 문맥을 샘플링하고 다양한 상호작용 궤적(interaction trajectory)을 만들어 각 단계의 근거를 담은 데이터를 수집합니다. 이때 탐험과 활용의 균형을 맞추기 위해 상한 신뢰 구간(Upper Confidence Bound, UCB) 알고리즘으로 문맥을 샘플링합니다. 검색기가 고른 청크로 활용(exploitation)을 수행하는 한편, 점수 사전 \mathcal{S} 에서 확률적으로 청크를 뽑아 탐험(exploration)함으로써 더 나은 장기적 추론 경로를 발굴합니다. 이렇게 수집한 답변 점수를 지도 신호로 삼아 분해기가 도메인 특화 분해 규칙을 학습하게 됩니다. 향후에는 지도 미세 조정(SFT)이나 직접 정책 최적화(DPO) 같은 알고리즘으로 기존 LLM 위에 효과적인 분해기를 학습시킬 수 있다고 전망합니다.

예측과 창의 질문으로 (L3, L4)

L3 시스템은 예측 질문에 대응하기 위해 지식 조직화 모듈에 지식 구조화(knowledge structuring)지식 귀납(knowledge induction) 하위 모듈을 더합니다. 예를 들어 FDA 시나리오에서 약품명과 승인일을 수집해 구조화하고, 승인일 기준으로 분류하여 통계 분석과 예측이 가능한 형태로 정리합니다. 여기에 지식 중심 추론 모듈에 예측(forecasting) 하위 모듈을 붙여, 과거 지식만으로 답하는 데 그치지 않고 미래를 투영하는 답을 만듭니다.

L4 시스템은 창의 질문을 다루기 위해 다중 에이전트 계획(multi-agent planning) 모듈을 도입합니다. 여러 에이전트가 병렬로 서로 다른 관점과 추론 전략을 제시하고, 이들을 종합해 포괄적이고 일관된 해법을 만들어냅니다. 다양한 시각을 시뮬레이션함으로써 정해진 답이 아니라 새로운 아이디어를 이끌어내는 것을 목표로 합니다.

실험 결과

연구팀은 모든 방법에 GPT-4(1106-Preview)를, 검색 임베딩에는 text-embedding-ada-002를 사용했습니다. 제안 방법(Ours)은 복잡한 질문을 하위 질문으로 반복 분해하며 최대 다섯 번 검색하고, 최종 답변에 사용하는 문맥을 가장 유용한 다섯 개 청크로 제한합니다. 평가에는 정확 일치(Exact Match, EM), F1과 함께, GPT-4가 답의 의미적 정합성을 판정하는 정확도(Accuracy, Acc) 지표를 사용합니다.

오픈 도메인 멀티홉 QA

세 개의 널리 알려진 멀티홉 데이터셋 HotpotQA, 2WikiMultiHopQA, MuSiQue에서 각각 500 개 질문을 무작위 추출해 평가했습니다. 아래는 GPT-4 평가 정확도(Acc, \% ) 비교입니다.

방법 HotpotQA 2WikiMultiHopQA MuSiQue
Zero-Shot CoT 53.60 43.87 23.47
Naive RAG (평면 검색) 82.60 62.80 44.40
Self-Ask w/ H-R 82.20 80.00 54.00
GraphRAG Local 89.00 71.20 49.80
PIKE-RAG (Ours) 87.60 82.00 59.60

가장 쉬운 것으로 여겨지는 HotpotQA에서는 GraphRAG(local)와 제안 방법이 근소한 차이로 경쟁하지만, 난이도가 올라가는 2WikiMultiHopQA와 가장 어려운 MuSiQue에서는 제안 방법이 다른 방법들을 앞섭니다. 특히 MuSiQue에서 정확도가 59.60\% 로, 두 번째로 좋은 Self-Ask w/ H-R의 54.00\% 를 뚜렷하게 넘어섭니다.

전통적 지표인 EM과 F1을 보면 격차가 더 선명합니다. 가장 어려운 MuSiQue에서 제안 방법은 EM 46.40, F1 56.62 를 기록하여, Naive RAG의 EM 32.00, F1 43.31 을 크게 웃돕니다. 2WikiMultiHopQA에서도 EM 66.80 으로 Naive RAG의 51.20 을 앞섭니다. 즉 질문이 복잡해지고 홉(hop) 수가 늘어날수록 지식 인식 분해의 이점이 커집니다.

또 하나 눈여겨볼 점은 계층적 원자 지식 베이스가 그 자체만으로는 효과가 크지 않다는 것입니다. 원본 멀티홉 질문과 원자적 질문 사이의 임베딩 거리 때문에, Naive RAG에 계층적 검색을 붙여도 평면 지식 베이스 대비 성능이 거의 달라지지 않았습니다. 그러나 작업 분해와 결합하면 이야기가 달라집니다. Self-Ask에 계층적 검색을 더한 경우(Self-Ask w/ H-R)가 평면 검색(Self-Ask w/ R)보다 특히 MuSiQue에서 앞섰습니다(정확도 49.80\% 에서 54.00\% 로 상승). 즉 원자적 지식 베이스는 이를 활용할 분해 메커니즘이 있어야 비로소 힘을 발휘합니다.

한 가지 흥미로운 대목은 GraphRAG의 지표 왜곡입니다. GraphRAG는 HotpotQA에서 정확도 89.00\% 로 가장 높지만 EM은 0.00, F1은 10.66 에 그칩니다. 출력을 분석해보면 GraphRAG가 질문을 그대로 되풀이하고 답변 안에 그래프 구조의 메타 정보를 끼워 넣는 경향이 있어("Alsa Mall and Spencer Plaza are both located in Chennai, India [Data: ...]" 처럼), 토큰 단위 일치 지표가 무너지는 것입니다. GraphRAG가 본래 질의 중심 요약(query-focused summarization)을 위해 설계되었기 때문에 나타나는 현상입니다.

법률 도메인 벤치마크

산업 현장에 더 가까운 검증을 위해 중국 법률 벤치마크 LawBenchOpen Australian Legal QA에서도 평가했습니다. 아래는 GPT-4 평가 정확도(Acc, \% ) 기준입니다.

태스크 Zero-Shot CoT GraphRAG Local PIKE-RAG (Ours)
LawBench 1-1 (법조문 암송) 1.23 16.60 90.12
LawBench 3-1 (사실 기반 법조문 예측) 49.90 75.40 88.82
LawBench 3-2 (시나리오 법조문) 15.83 27.60 67.54
LawBench 3-8 (법률 상담) 49.70 58.80 61.72
Open Australian Legal QA 16.48 88.27 98.59

법조문 암송(1-1)에서 제안 방법은 정확도 90.12\% 로 GraphRAG의 16.60\% 를 압도합니다. F1 기준으로도 78.5823.27 로 큰 차이를 보입니다. Open Australian Legal QA에서도 정확도 98.59\% 를 기록하여 GraphRAG의 88.27\% 를 앞섭니다. 정확한 조문을 검색해 근거로 삼아야 하는 법률 태스크에서 지식 인식 분해가 특히 강점을 보인다는 점을 확인할 수 있습니다.

소형 분해기를 미세 조정하면 더 좋아질까

모든 방법의 정확도가 낮았던 MuSiQue를 대상으로, 소형 언어 모델을 원자 분해기(atomic proposer)로 미세 조정하면 성능이 오르는지 실험했습니다. 먼저 학습 데이터로 분해 궤적을 수집했는데, 앞서 소개한 UCB 문맥 샘플링을 적용하자 정답에 이르는 궤적을 84\% 확보하여, 샘플링 없이 얻은 58\% 대비 크게 개선되었습니다. 학습은 LoRA(lora=16, alpha=64)를 이용한 파라미터 효율적 미세 조정(PEFT)으로, 학습률 1.5 \times 10^{-5}, 단일 NVIDIA A100-80G에서 진행했습니다.

아래는 소형 LM을 원자 분해기로, 대형 LM을 최종 답변 생성기로 조합했을 때의 정확도(\% )입니다. +FT 는 미세 조정한 분해기를 뜻합니다.

분해기 (소형 LM) GPT-4o GPT-4o +FT Llama-3.1-70B Llama-3.1-70B +FT
Llama-3.1-8B 47.83 62.14 48.37 58.70
Qwen2.5-14B 56.52 63.95 57.61 63.04
phi-4-14B 60.33 65.76 58.70 62.50

가장 작은 Llama-3.1-8B를 분해기로 쓰고 GPT-4o로 답을 생성한 경우, 미세 조정만으로 정확도가 47.83\% 에서 62.14\% 로 뛰어올랐습니다. 즉 무거운 대형 모델을 분해에 직접 쓰지 않고도, 도메인 특화 분해 궤적으로 학습한 가벼운 분해기가 성능과 비용을 동시에 챙길 수 있음을 보여줍니다.

PIKE-RAG가 작동하는 이유: 사례 연구

수치만으로는 "왜 이 방법이 더 잘 작동하는가?"를 온전히 설명하기 어렵습니다. 논문은 세 가지 실제 사례로 그 원리를 보여줍니다.

사례 (a) 의도 모호성 해소: 덜 알려진 영화 "What Women Love"에 대한 질문이 주어졌을 때, 더 유명한 "What Women Want"가 존재하기 때문에 Self-Ask 같은 단일 경로 방법은 후자에 대한 후속 질문을 생성하며 질문을 임의로 "교정"해버립니다. 그 결과 잘못된 중간 답을 거쳐 최종 답도 틀립니다. 반면 PIKE-RAG는 두 영화 모두에 대한 원자적 질의를 던지고, 원자 선택 단계에서 원래 질문의 진짜 의도를 확인하여 올바른 청크를 고릅니다.

사례 (b) 표현 스키마 불일치: "Oskar Roehler의 어머니는 누구인가?"라고 물을 때, 지식 베이스가 가족 관계를 "A는 B와 C의 아들이다" 같은 다른 스키마로 서술한다면, 질문이 의미상 정확해도 검색이 실패합니다. Self-Ask는 계층적 검색을 붙여도 이 격차를 넘지 못합니다. PIKE-RAG는 여러 원자적 질의를 만들어 다양한 표현을 포괄하므로, "부모"를 묻는 대체 질의가 목표 청크를 성공적으로 검색합니다.

사례 (c) 풍부한 문맥 유지: 중간 답만 남기고 검색한 청크를 버리는 Self-Ask와 달리, PIKE-RAG는 선택한 청크 전체를 문맥으로 보존합니다. 원자적 질문 목록을 후보 요약처럼 제시해 관련 정보를 간결하게 선택하면서도, 청크 전체를 유지하여 이후 단계에 필요한 맥락(예: 인물의 출생지)을 다시 검색하지 않고도 활용합니다. 이는 토큰 사용량을 줄이면서 정확도를 높이는 이중 이점을 줍니다.

PIKE-RAG 설치 및 사용 방법

PIKE-RAG는 코드가 공개되어 있으며, 산업 제조, 광업, 제약 등 실제 도메인에서 질의응답 정확도를 크게 개선한 것으로 보고되었습니다. GitHub 저장소를 통해 누구나 파이프라인을 구성해볼 수 있습니다.

먼저 저장소를 복제하고 파이썬 환경을 설정합니다.

git clone https://github.com/microsoft/PIKE-RAG.git
cd PIKE-RAG

이후 엔드포인트 정보를 담은 .env 파일을 만들고, examples/ 아래의 YAML 설정 파일을 수정한 뒤 스크립트를 실행하면 됩니다. 저장소에는 기술 보고서의 MuSiQue 실험을 재현하는 가이드 문서도 제공되어, 위 실험 결과를 직접 확인해볼 수 있습니다. L2 지식 인식 분해 파이프라인은 온라인 데모로도 체험할 수 있습니다.

한계점 및 향후 전망

이 논문은 기술 보고서 성격이 강해, L0에서 L4까지의 전체 프레임워크를 제시하되 정량 실험은 주로 L2(연결 추론 질문)에 집중되어 있습니다. L3의 예측 질문과 L4의 창의 질문은 답이 본질적으로 불확실하거나 주관적이어서 단일 정답이 없기 때문에, EM이나 F1 같은 지표로는 평가하기 어렵습니다. 논문 스스로도 이러한 상위 레벨에는 추세 판단이나 관련성, 다양성, 포괄성, 독창성, 영감 같은 다면적 기준의 정성 평가가 필요하다고 밝히며, 이 부분의 체계적 검증을 향후 과제로 남겨둡니다. 학습 가능한 분해기 역시 UCB 기반 데이터 수집과 SFT의 효과는 확인했지만, DPO 등 더 정교한 학습 방법과 그 성능에 대한 실증 분석은 후속 연구로 미뤄져 있습니다.

그럼에도 PIKE-RAG의 기여는 분명합니다. RAG를 "가장 비슷한 문단을 찾아 붙이는 도구"에서 "전문 지식을 추출, 이해, 적용하고 추론 근거를 쌓아 올리는 시스템"으로 재정의하고, 그 발전을 통제 가능하고 측정 가능한 레벨로 나눈 점이 특히 그렇습니다. 산업 현장에서 RAG를 도입하려는 팀에게는 "지금 우리에게 필요한 것이 어느 수준의 능력이며, 그것을 어떤 모듈로 채워야 하는가"를 판단하는 실용적인 지도가 되어줄 것입니다.

:scroll: PIKE-RAG: sPecIalized KnowledgE and Rationale Augmented Generation 논문

:scroll: From Complex to Atomic: Enhancing Augmented Generation via Knowledge-Aware Dual Rewriting and Reasoning (ICML 2025) 논문

https://openreview.net/pdf?id=PAjCdkkNaU

:globe_with_meridians: PIKE-RAG 온라인 데모

https://pike-rag.azurewebsites.net/

:github: microsoft/PIKE-RAG GitHub 저장소

더 읽어보기




이 글은 GPT 모델로 정리한 글을 바탕으로 한 것으로, 원문의 내용 또는 의도와 다르게 정리된 내용이 있을 수 있습니다. 관심있는 내용이시라면 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 덧글로 알려주시기를 부탁드립니다. :hugs:

:pytorch:파이토치 한국 사용자 모임:south_korea:이 정리한 이 글이 유용하셨나요? 회원으로 가입하시면 주요 글들을 이메일:love_letter:로 보내드립니다! 텔레그램(Telegram)이나 Slack/Discord/Teams/Dooray/GoogleChat 등으로도 새 글 알림을 받으실 수 있습니다. :smiley:

:wrapped_gift: 아래:down_right_arrow:쪽에 좋아요:+1:를 눌러주시면 새로운 소식들을 정리하고 공유하는데 힘이 됩니다~ :star_struck: