Rag graphique 의 모든 것

DEV - 21/04
Rag graphique 의 사전지식부터 이론과 구현 상세를 체계적으로 체계적으로. 1. Rag graphique 정의와장점 Rag graphique 는 기존 검색 증강 증강 증강 증강 증강 증강 증강 ...

Rag graphique 의 사전지식부터 이론과 구현 상세를 체계적으로 체계적으로.

1. Rag graphique 정의와 장점

Rag graphique 는 기존 검색 증강 생성 (génération auprès de la récupération) 기법을 지식 그래프와 결합하여 대규모 언어 모델 모델 (llm) 의 응답 품질을 향상시키는 혁신적 접근법입니다 접근법입니다. 전통적인 Rag 가 벡터 임베딩 기반 문서 검색에 의존한다면, Rag graphique 는 개체 (노드) 와 관계 (엣지) 로 구성된 지식 그래프의 구조적 정보를 정보를 활용합니다. 이를 통해 llm 은 단순한 키워드 매칭이나 벡터 유사도를 넘어, 개념들 간의 복잡한 연결 관계와 맥락을 이해하여 더 정확하고 풍부한 정보를 바탕으로 응답을 생성할 수 수 있습니다. 특히 다단계 추론이 필요한 복잡한 질의에서 그래프 기반 지식 연결망이 탁월한 효과를 효과를 발휘합니다.

전통적인 Rag 의 한계점

마이크로소프트 리서치의 "Graphrag: déverrouiller la découverte LLM sur les données privées narratives" 연구에 따르면, 기존 Rag 접근법은 다음과 같은 중요한 한계를 가지고 있습니다.

  • 정보 연결의 어려움: 기존 Rag 는 분산된 정보의 청크를 논리적으로 연결하여 새로운 통합 인사이트를 도출해야 하는 상황에서 어려움을 어려움을 겪습니다. 특히 여러 문서에 걸친 공유 속성이나 관계를 통합해야 할 때 이러한 한계가 한계가 두드러집니다.
  • 대규모 정보의 종합적 이해 부족: 기존 Rag 는 대용량 데이터 컬렉션이나 대형 문서에 걸친 의미론적 개념을 전체적으로 파악하고 요약하는 작업에서 성능이 성능이 저하됩니다.

이러한 한계점들이 Rag graphique 의 등장 배경이 되었으며, 그래프 구조를 통해 이러한 문제를 효과적으로 해결하는 방향으로 연구가 진행되고 진행되고 있습니다.

Rag graphique 의 주요 장점

  • 정교한 검색 능력: 그래프 순회 (traversée) 를 통해 방대한 지식 저장소에서 관련 사실 정보를 효과적으로 찾아내 찾아내 찾아내 llm 이 상세하고 정확한 응답을 생성하도록 생성하도록 지원합니다.
  • 맥락적 관계 제공: 지식 그래프의 관계는 문서의 개별 청크 만으로는 파악하기 어려운 유용한 맥락 정보를 제공하여, llm 이 더 넓은 지식 배경을 고려한 응답을 생성할 수 있게 있게 합니다.
  • 질의 의도의 정확한 이해: 그래프 상에서 개체와 관계를 하나의 의미 단위로 모델링함으로써, 단순 키워드 매칭보다 사용자 질의의 의도를 더 정확히 파악할 수 있습니다 있습니다. 이는 특히 복잡한 질의에 대한 맥락적 정확성을 높입니다.
  • 향상된 설명 가능성: 그래프의 링크를 따라가면 모델이 활용한 사실의 출처를 쉽게 추적할 수 있어, 응답의 근거를 명확히 설명할 설명할 수 있습니다. 이는 결과의 신뢰성과 투명성을 크게 높여줍니다.
  • 풍부하고 포괄적인 응답: 그래프는 개념들과 그들 사이의 복잡한 연결을 명시적으로 표현하므로, llm 에 더 구조화된 지식을 제공하여 보다 포괄적이고 깊이 있는 답변 생성을 생성을 가능하게 합니다.
  • 효율적인 지식 확장성: 새로운 정보를 그래프에 추가하여 지식을 확장하기가 상대적으로 용이하므로, llm 자체의 파라미터를 늘리는 것보다 비용 효율적으로 도메인 지식을 확장할 수 수 있습니다.
  • 다단계 추론 지원: 그래프 구조는 복잡한 추론 체인을 형성하는 데 도움이 되어, 단계적 사고가 필요한 복잡한 질문에 더 정확하게 응답할 수 수.

2. 지식 그래프 (Graphique de connaissances) 및 그래프 데이터베이스 (Graphique DB) 개요

Rag graphique 를 제대로 활용하기 위해서는 그 기반이 되는 지식 그래프와 그래프 데이터베이스에 대한 대한 이해가 필수적입니다.

2.1. 지식 그래프란?

지식 그래프는 현실 세계의 개체 (사람, 장소, 개념 등) 들과 그들 간의 관계를 그래프 구조로 표현한 표현한 데이터 모델입니다. 이 구조에서는

  • 노드 (nœud): 개체를 나타냅니다 (예: 사람, 도시, 제품, 개념 등)
  • 엣지 (bord): 개체 간의 관계를 연결합니다 (예: '거주한다', '창업했다', '포함한다' 등)
  • 속성 (Propriétés): 노드와 엣지에 부여되는 추가적인 정보입니다 (예: 이름, 날짜, 가중치 등)

이러한 그래프 구조는 방대한 지식을 의미론적 네트워크 형태로 표현하여, 시스템이 데이터 간의 의미 있는 관계를 "이해" 하고 추론할 수 수 있도록. 결과적으로 지식 그래프는 Ai 모델이 연결된 데이터로부터 패턴을 인식하고 새로운 연관성을 유추하는 데 활용되어 검색, 추천, 질의응답 등의 성능을 크게 향상시킬 수 있습니다 있습니다.

2.2. 그래프 데이터베이스

지식 그래프를 효과적으로 활용하려면 그래프 데이터를 저장하고 질의할 수 있는 그래프 데이터베이스 (graphique DB) 가 필요합니다. 그래프 DB 는 노드와 엣지로 이루어진 그래프 데이터를 저장 / 관리하며, 관계 중심적인 질의를 효율적으로 처리하도록 특별히 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 설계된 DBMS 입니다.

그래프 데이터베이스의 주요 특징은 다음과 같습니다.

  • 관계 중심 데이터 모델: 데이터 간의 관계가 일급 객체 객체 (citoyen de première classe) 로 취급되어 직접적으로 저장 저장 및 질의됩니다.
  • 유연한 스키마: 새로운 노드 유형이나 관계를 필요에 따라 쉽게 추가할 수 있어 변화하는 요구사항에 빠르게 적응할 수 수 있습니다.
  • 효율적인 그래프 탐색: 연결된 데이터를 빠르게 탐색할 수 있는 최적화된 구조를 가지고 있어, 복잡한 관계 기반 질의를 질의를 효율적으로 처리합니다.
  • 직관적인 데이터 모델링: 실제 세계의 관계를 자연스럽게 표현할 수 있어 도메인 전문가도 이해하기 쉬운 데이터 모델을 구축할 구축할 수 있습니다.
  • 인덱스 프리 인접성 (Adjacence sans indice): 많은 그래프 데이터베이스는 노드 간의 연결을 물리적 포인터로 저장하여 관계 조회 조회 성능을 최적화합니다.

관계형 db (rdb) vs 그래프 db 비교

특성관계형 데이터베이스 (RDB)지식 그래프 (Graphique de connaissances)
데이터 저장 방식구조화된 테이블 형태개체 (노드) 와 관계 (엣지) 로 구성
스키마정형화된 고정 스키마유연한 스키마 구조
데이터 조작SQL 을 통한 조작그래프 질의 언어 사용 (Cypher, Sparql 등)
관계 표현외래 키를 통한 간접 표현직접적인 관계로 표현
복잡한 관계 처리여러 조인 필요 (성능 저하)직관적인 관계 탐색 (성능 우수)
패턴 발견제한적숨겨진 연결과 패턴 발견 용이
데이터 통합스키마 변경 어려움다양한 소스의 데이터 통합 ​​용이

2.3. 그래프 모델의 종류

그래프 데이터베이스에서는 크게 두 가지 주요 모델이 사용됩니다.

Graphique de la propriété 모델

  • 노드와 엣지에 직접 속성 (propriétés) 을 부여할 수 있습니다.
  • 라벨을 통해 노드 및 엣지를 분류합니다.
  • 단일 지식 소스 내에서의 단순성과 직관성을 제공합니다.
  • NEO4J 가 대표적인 구현체이며, 주로 OpeencyPher 나 Gremlin 과 같은 질의 언어를 사용합니다.

RDF (Cadre de description des ressources) 모델

  • Uri 를 통한 표준화된 식별자를 사용합니다.
  • 주어 - 술어 - 목적어 형태의 트리플 (triple) 구조로 데이터를 표현합니다.
  • W3C 표준을 기반으로 하며, 여러 지식 소스 간 통합과 통합과 표준화를 지원합니다.
  • 주로 Sparql 질의 언어를 사용합니다.

2.4. 그래프 질의 언어 비교

그래프 데이터베이스에서는 저장된 그래프의 유형에 따라 다양한 질의 언어가 언어가 사용됩니다.

Zéro

  • Graphique de la propriété 모델을 위한 질의 언어로, neo4j 에서 주로 사용됩니다.
  • 직관적인 시각적 패턴 매칭 구문을 특징으로 합니다.
  • 노드는 괄호(), 관계는 화살표->또는 방향이 있는 화살표- [] ->로 표현합니다.

예시: 서울에 거주하는 모든 사람의 이름을 찾는 찾는 질의

Match (P: Person) - [: Lives_in] -> (C: City) où C.Name = "SEOUL" RETOUR P.NAME
Entrez le mode de sortie en mode plein écran

Sparql

  • Rdf 그래프 모델을 위한 w3c 표준 질의 언어입니다.
  • 트리플 패턴 기반의 질의를 사용하고, uri 를 통해 리소스를 명확하게 식별합니다.
  • 여러 데이터셋 간 통합 질의가 가능합니다.

예시: 위와 동일한 질의를 Sparql 로 표현 표현

SELECT? Personne où {? Personne rdf: Type Ex: Person. ? Personne Ex: Lives dans Ex: Séoul. }
Entrez le mode de sortie en mode plein écran

Diablotin

  • Apache TinkerPop 프레임워크의 일부로, Graphique de la propriété 모델을 위한 명령형 그래프 순회 언어입니다.
  • 다양한 그래프 데이터베이스에서 지원됩니다.
  • 함수형 스타일의 연쇄 호출 방식으로 그래프를 탐색합니다.

예시: 위와 동일한 질의를 gremlin 으로 표현

g.v (). Haslabel («personne»). out ('Lives_in'). a ('name', 'Séoul'). dans ('lives_in'). valeurs ('name')
Entrez le mode de sortie en mode plein écran

2.5 AWS 에서 사용 가능한 Graphique DB 비교

특성Néo4jAmazon Neptune
제공자AWS MarketplaceAws 관리형 서비스
지원 데이터 모델Graphique de propriétéGraphique de la propriété, RDF
지원 질의 언어ZéroGremlin, sparql, opencypher
관리와 운영사용자 관리완전 관리형
Langchain 과의 통합지원지원 (Cypher, Sparql)
Llamaindex 와의 통합지원지원

3. Rag graphique 디자인 패턴

Rag graphique 를 구현하는 방법에는 여러 아키텍처 패턴이 패턴이. 아직 표준화된 접근법이 정립되어 있지 않아 지식 그래프를 Rag 파이프라인에 통합하는 방식은 다양하며, 각기 장단점을 가지고 있습니다. Ben Lorica 와 Prashanth rao 의 분석에 따르면 현재 몇 가지 대표적인 Rag graphique 아키텍처 패턴들이 있으며, 이를 자세히 살펴보겠습니다.

3.1. 일반적인 디자인 패턴

지식 그래프와 의미 기반 클러스터링

이 패턴은 사용자의 질의에 대해 지식 그래프와 그래프 머신러닝 기법을 활용하여 관련 정보를 검색하고, 그래프 기반 군집화를 통해 의미론적 클러스터로 클러스터로 정보를 조직화합니다.

  • 작동 방식
    1. 사용자가 질의를 제출합니다.
    2. 시스템은 지식 그래프와 그래프 머신러닝을 사용하여 관련 정보를 정보를.
    3. 검색된 정보는 그래프 기반 클러스터링을 통해 의미론적 클러스터로 클러스터로.
    4. 이 클러스터링된 정보가 llm 의 컨텍스트를 풍부하게 하여 더 정확한 답변 생성을 생성을 돕습니다.
    5. 최종 답변에는 지식 그래프에 대한 참조가 포함됩니다.
  • 활용 사례: 데이터 분석, 지식 발견, 연구 분야에 적합합니다.

지식 그래프와 벡터 데이터베이스 통합

이 접근법은 지식 그래프와 벡터 데이터베이스를 모두 활용하여 관련 정보를 정보를 수집합니다.

  • 작동 방식
    1. 지식 그래프는 벡터화한 문서 청크 간의 관계 (문서 계층 구조 포함) 를 캡처하는 방식으로 구축됩니다.
    2. 벡터 검색에서 검색된 청크 주변의 이웃에 있는 구조화된 개체 정보를 지식 그래프가 제공하여 프롬프트를 풍부하게 풍부하게 합니다.
    3. 이렇게 강화된 프롬프트는 llm 에 입력되어 응답을 생성합니다.
    4. 생성된 답변이 사용자에게 반환됩니다.
  • 활용 사례: 고객 지원, 시맨틱 검색, 개인화된 추천 시스템에 적합합니다.

그래프 강화 하이브리드 검색

이 Graphrag 아키텍처는 관련 정보의 효율적이고 정확한 검색을 위해 벡터 검색, 키워드 검색, 그래프 특화 질의를 결합한 하이브리드 하이브리드 접근법을 사용합니다.

  • 작동 방식
    1. 사용자가 질의를 제출합니다.
    2. 비구조화 데이터 검색과 그래프 데이터 검색 결과를 통합하는 하이브리드 검색 검색 프로세스가 진행됩니다.
    3. 벡터 및 키워드 인덱스에서의 검색은 처음에 리랭킹이나 랭크 퓨전 기법을 통해 강화될 수 수 있습니다.
    4. 세 가지 검색 형태의 결과를 모두 결합하여 llm 을 위한 컨텍스트를 생성합니다.
    5. Llm 이 생성한 응답이 사용자에게 전달됩니다.
  • 활용 사례: 엔터프라이즈 검색, 문서 검색, 지식 발견과 같은 사용 사례에 사례에 적합합니다.

지식 그래프 강화 질의응답 파이프라인

이 아키텍처에서는 벡터 검색 이후 단계에서 지식 그래프를 활용해 추가적인 사실로 응답을 응답을 강화합니다.

  • 작동 방식
    1. 사용자가 질의를 제공합니다.
    2. 질의 임베딩이 계산됩니다.
    3. 벡터 인덱스에서 벡터 유사도 검색을 수행하여 지식 그래프의 관련 개체를 개체를 식별합니다.
    4. 그래프 데이터베이스에서 관련 노드와 속성을 검색하고, 발견되면 이러한 개체에 대한 추가 정보를 검색하기 위해 Cypher 질의를 실행합니다.
    5. 검색된 정보를 종합하여 포괄적인 컨텍스트를 형성하고, 이를 llm 에 전달하여 응답을 생성합니다.
  • 활용 사례: 의료나 법률 분야처럼 응답 내 개체에 기반한 표준 정보가 항상 답변과 함께 포함되어야 하는 환경에 환경에 유용합니다.

지식 그래프 기반 질의 확장 및 생성

이 아키텍처는 벡터 검색을 수행하기 전에 지식 그래프를 활용하여 관련 노드와 엣지를 탐색하고 검색하여 검색하여 llm 의 컨텍스트 창을 풍부하게 풍부하게 합니다.

  • 작동 방식
    1. 첫 단계는 질의 확장으로, 사용자의 질의가 llm 에 의해 처리되어 핵심 개체와 관계를 추출합니다.
    2. 지식 그래프 내의 노드 속성에 대해 벡터 검색을 수행하여 관심 있는 관련 노드를 노드를 좁힙니다.
    3. 다음 단계는 질의 재작성으로, 검색된 서브그래프에 대해 Cypher 질의를 생성하여 그래프에서 관련 구조화 정보를 더욱 좁힙니다.
    4. 그래프 탐색에서 검색된 데이터는 llm 의 컨텍스트 창을 풍부하게 하는 데 사용됩니다.
    5. 마지막으로 llm 은 풍부해진 컨텍스트를 기반으로 응답을 생성합니다.
  • 활용 사례: 개체 간 관계가 중요한 제품 조회나 금융 보고서 생성에 생성에 적합합니다.

3.2. Raptor: Traitement abstractif récursif pour la récupération organisée par les arbres (Stanford Univ, 2024)

Raptor 는 스탠포드 대학에서 개발한 특별한 Rag 기법으로, 긴 문서를 효과적으로 처리하기 위해 트리 구조의 계층적 색인을 색인을 활용합니다. 기존 Rag 가 문서를 단순히 작은 청크들로 나누어 독립적으로 검색하는 반면, Raptor 는 문서 전체의 구조와 맥락을 보존하기 위한 계층적 요약 트리를 트리를 구축합니다.

색인 과정

Raptor 의 색인 과정은 다음과 같은 단계로 단계로.

  1. 청크 분할: 원본 문서를 약 100 토큰 크기의 작은 청크들로 청크들로. 이때 문장이 토큰 제한을 초과하면 문장 중간에서 자르지 않고 다음 청크로 이동시켜 의미적 일관성을 일관성을 유지합니다.
  2. 임베딩 및 군집화: 각 청크는 sbert (bert 기반 인코더) 를 통해 벡터로 벡터로 임베딩됩니다. 이 임베딩된 청크들은 트리의 리프 노드가 됩니다. 그리고 가우시안 혼합 모델 (gmm) 을 사용해 의미적으로 유사한 청크들을 청크들을 군집화합니다. Raptor 의 군집화 알고리즘은 소프트 클러스터링을 사용하여 하나의 노드가 여러 군집에 속할 수 수 있게 합니다.
  3. 요약 노드 생성: 각 군집에 속한 청크들은 언어 모델 (예: GPT-3.5-turbo) 에 전달되어 요약됩니다. 이 요약 텍스트는 새로운 노드가 되며, 다시 벡터로 임베딩됩니다.
  4. 재귀적 과정: 이러한 임베딩 - 군집화 - 요약 과정을 더 이상 군집화가 불가능할 때까지 반복함으로써 다층 트리 구조를 구조를 형성합니다. 이 과정은 문서의 규모에 따라 선형적인 계산 복잡성을 복잡성을.

검색 과정

Raptor 는 두 가지 고유한 검색 전략을 전략을.

  • 트리 순회 (traversée des arbres) 방식
    1. 루트 레이어에서 시작하여 질의 임베딩과 해당 레이어의 모든 노드 임베딩 간 코사인 유사도를 유사도를 계산합니다.
    2. 유사도 점수가 가장 높은 상위 K 개 노드를 선택합니다 (집합 S1).
    3. S1 집합의 원소들의 자식 노드로 진행하여 질의 벡터와의 코사인 코사인 유사도를 계산합니다.
    4. 유사도 점수가 가장 높은 상위 K 개 자식 노드를 선택합니다 (집합 S2).
    5. 이 과정을 D 개 레이어에 대해 반복하여 집합 S1 부터 SD 까지 생성합니다.
    6. 모든 집합을 연결하여 질의에 관련된 컨텍스트를 구성합니다.

이 방식은 레이어별로 상위 K 개 노드만 고려하기 때문에 각 레이어에서 정보의 양이 균일하게 균일하게 유지됩니다.

  • 축소 트리 (arbre effondré) 방식
    1. 전체 Raptor 트리를 단일 레이어로 축소합니다.
    2. 질의 임베딩과 축소된 집합의 모든 노드 임베딩 간 코사인 유사도를 유사도를 계산합니다.
    3. 유사도 점수가 가장 높은 노드부터 시작해 사전에 정의된 최대 토큰 수에 도달할 때까지 노드를 결과 집합에 집합에 추가합니다.

실험 결과, 축소 트리 방식이 트리 순회 방식보다 일관되게 더 나은 성능을 성능을 보였습니다. 이는 축소 트리 방식이 모든 노드를 동시에 고려함으로써 질문에 적합한 수준의 세부 정보를 검색할 수 있는 유연성을 제공하기 제공하기 때문입니다.

3.3. Du local au global: une approche de chiffon graphique de la résumé axé sur les requêtes (Microsoft Research, 2024)

마이크로소프트 리서치에서 개발한 Graphrag 역시 전통적인 Rag 가 특정 질의에 관련된 단편적 정보를 찾는 데 초점을 맞추는 한계를 한계를 넘어, "이 데이터셋의 주요 주제는 무엇인가?" 와 같은 전체 데이터셋에 대한 포괄적인 질문에 효과적으로 답하기 위해 위해 설계되었습니다.

색인 과정

마이크로소프트 Graphrag 의 인덱싱은 다음 단계로 진행됩니다.

  1. 문서 청킹

    • 소스 문서를 분석 가능한 크기의 청킹합니다.
    • 각 청크는 독립적으로 처리되며 이후 그래프 구성에 사용됩니다.
  2. 개체 및 관계 추출

    • Llm 을 활용하여 각 청크에서 중요 개체 (인물, 장소, 조직, 개념 등) 를 식별합니다.
    • 식별된 개체 간의 의미 있는 관계를 추출하고 짧은 설명을 설명을 생성합니다.
    • 이 과정에서 도메인 특화 프롬프트가 사용되어 관련성 높은 개체와 관계를 관계를 포착합니다.
  3. 지식 그래프 구축

    • 추출된 개체와 관계는 노드와 엣지로 변환되어 그래프를 형성합니다.
    • 개체 설명은 집계 및 요약되어 각 노드와 엣지에 엣지에.
    • 중복된 관계는 엣지 가중치로 표현되어 관계의 강도를 나타냅니다.
  4. 커뮤니티 감지 및 요약

    • Leiden 알고리즘과 같은 커뮤니티 감지 알고리즘을 사용하여 그래프를 의미 있는 커뮤니티로 커뮤니티로 분할합니다.
    • 이러한 분할은 계층적으로 수행되어 다양한 추상화 수준의 커뮤니티 구조를 구조를 형성합니다.
    • 각 커뮤니티에 대해 llm 을 활용하여 보고서 형태의 요약을 생성합니다.
    • 하위 레벨 커뮤니티의 요약은 상위 레벨 커뮤니티 요약 생성에 생성에 활용됩니다.

검색 과정

Graphrag 는 여러 검색 모드를 제공하며, 각 모드는 서로 다른 유형의 질의에 최적화되어 최적화되어 있습니다.

정적 글로벌 검색 (Recherche globale statique)

전체 데이터셋에 대한 종합적인 이해가 필요한 질의를 위한 위한.

  • 사전 정의된 커뮤니티 레벨 활용

    • 지식 그래프의 특정 레벨 (예: 레벨 1) 에 있는 모든 커뮤니티 보고서를 보고서를 검색합니다.
    • 이 방식은 단순하지만 많은 토큰을 소비하며, 쿼리와 무관한 보고서도 모두 포함됩니다.
  • 맵 - 리듀스 (map-reduce) 프로세스

    1. 맵 단계: 각 커뮤니티 보고서를 대상으로 질의에 대한 답변과 관련성 점수를 점수를 생성합니다.
    2. 리듀스 단계: 관련성 점수에 따라 답변을 통합하여 최종 응답을 응답을 생성합니다.
동적 글로벌 검색 (Recherche globale dynamique)

정적 글로벌 검색의 비효율성을 개선한 접근법입니다.

  • 동적 커뮤니티 선택 프로세스
    • 지식 그래프의 루트에서 시작하여 각 커뮤니티 보고서의 관련성을 관련성을 관련성을 llm 으로 평가합니다.
    • 관련성이 낮은 보고서와 그 하위 노드는 검색 과정에서 과정에서.
    • 관련성이 높은 보고서의 경우 하위 노드로 이동하여 평가를 평가를.
Dérive (raisonnement dynamique et inférence avec la traversée flexible) 검색

Drift 검색은 Graphrag 환경에서 로컬 검색의 한계를 극복하기 위해 설계된 설계된 하이브리드 접근법입니다. 기존 로컬 검색이 단순히 질의와 유사한 텍스트 청크만 검색하는 한계를 넘어, 커뮤니티 정보를 활용해 더 풍부하고 포괄적인 포괄적인 답변을 제공합니다.

  1. 최초 (amorce) 단계: 고수준 맥락 파악

    • 쿼리 확장: 사용자 질의를 Hyde (Hypothétique Document Incorpings) 기법으로 확장하여 검색 민감도 (Rappel) 를 높입니다. Hyde 는 원래 질의에서 가상의 이상적인 문서를 생성한 후 후, 그 문서를 임베딩하여 검색에 활용하는 활용하는.
    • 커뮤니티 보고서 검색: 확장된 질의를 임베딩하고, 이를 모든 커뮤니티 보고서와 비교하여 의미적으로 가장 관련성 높은 상위 K 개의 보고서를 선택합니다. 이 보고서들은 Graphrag 의 글로벌 인덱스에서 나온 것으로, 데이터셋의 고수준 개요를 제공합니다 제공합니다.
    • 초기 답변 생성: 선택된 커뮤니티 보고서를 llm 에 제공하여 초기 답변을 생성합니다.
    • 후속 질문 생성: 동시에 llm 은 원래 질의를 기반으로 더 세부적인 후속 질문들을 생성합니다. 이 질문들은 초기 답변에서 누락된 정보나 더 상세한 탐색이 필요한 영역을 대상으로 대상으로 합니다.
  2. 후속 (suivi) 단계: 세부 정보 탐색

    • 로컬 검색 실행: 각 후속 질문에 대해 일반적인 로컬 검색 변형을 실행합니다 실행합니다. 이는 원래 텍스트 청크 레벨에서 가장 관련성 높은 내용을 찾는 찾는 과정입니다.
    • 중간 답변 생성: 각 후속 질문에 대한 로컬 검색 결과를 바탕으로 중간 답변을 답변을 생성합니다.
    • 반복적 정제: 이러한 중간 답변에서 다시 새로운 후속 질문이 생성될 수 있으며, 이는 정보 탐색의 반복적인 루프를 루프를 형성합니다. (2 회 반복 후 종료)
  3. 출력 계층 구조 (hiérarchie de sortie) 단계: 결과 통합

    • 계층적 구조화: 모든 질문과 답변이 원래 질의와의 관련성에 따라 순위가 매겨진 계층 구조로 구조로 조직됩니다.
    • 맵 - 리듀스 통합: 벤치마크 테스트에서는 단순한 맵 - 리듀스 접근법을 사용하여 모든 중간 답변을 동등하게 가중치를 두고 두고 집계했습니다.
    • 최종 응답 생성: 집계된 정보를 바탕으로 사용자의 원래 질의에 대한 최종 응답이 응답이 생성됩니다.

자동 튜닝 튜닝 튜닝 튜닝 튜닝 튜닝 튜닝 튜닝 튜닝 튜닝 튜닝 튜닝

Graphrag 의 강점 중 하나는 새로운 도메인에 빠르게 적응할 수 있는 자동 튜닝 튜닝 능력입니다.

  1. 도메인 및 페르소나 식별

    • 소스 콘텐츠의 샘플 (전체 데이터의 약 1%) 을 llm 에 전송합니다.
    • Llm 이 도메인을 식별하고 적절한 페르소나를 생성합니다.
    • 이 페르소나는 추출 프로세스를 조정하는 데 사용됩니다.
  2. 도메인 특화 프롬프트 생성

    • 도메인과 페르소나가 확립되면, 여러 프로세스가 병렬로 실행되어 맞춤형 색인 프롬프트를 생성합니다.
    • 예시 기반의 프롬프트는 실제 도메인 데이터에 기반하여 생성됩니다.
    • 이는 인물, 조직, 지역과 같은 기본 개체 유형을 넘어 도메인 특화 개체 개체 (예: 화학의 '분자', '반응') 를 식별합니다.

마이크로소프트의 Graphrag 는 기존 요약 기법과 비교하여 포괄성과 다양성 측면에서 월등한 성능을 보이며, 특히 대규모 데이터셋에서 글로벌 질문에 대한 응답 품질이 품질이 크게 향상되었습니다. 이 접근법은 로컬 세부 정보와 글로벌 맥락 사이의 균형을 자동으로 찾아내어 다양한 사용 사례에 적용할 수 있는 유연하고 효과적인 효과적인 솔루션을 제공합니다.

4. boîte à outils AWS Graphrag

AWS Graphrag 툴킷은 Rag graphique 개념을 AWS 클라우드 환경에서 쉽게 구현할 수 있도록 지원하는 파이썬 기반 오픈소스 오픈소스 프레임워크입니다. 이 툴킷은 llamaindex 라이브러리를 활용해 비정형 텍스트로부터 자동으로 그래프를 구축하고 벡터 인덱싱을 수행하며, llm 질의에 대한 그래프 기반 검색을 검색을.

4.1. 그래프 모델 설계

AWS Graphrag 툴킷은 세 개의 계층으로 구성된 렉시컬 그래프 모델을 모델을 사용합니다.

1. 계통 (lignée) 계층

  • 소스 (source) 노드

    • 원본 문서의 메타데이터 (작성자, URL, 발행일 등) 를 저장합니다.
    • 문서 출처를 추적하고 검증하는 데 중요한 역할을 합니다.
  • 청크 (morceau) 노드

    • 실제 텍스트 내용과 해당 텍스트의 임베딩을 저장합니다.
    • 이전 / 다음, 부모 / 자식 청크와의 관계를 통해 원본 문서의 구조적 맥락을 맥락을 유지합니다.

계통 계층은 문서의 원본 구조와 출처를 보존함으로써 정보의 계보를 추적할 수 있게 있게 합니다. 이는 특히 정보의 신뢰성과 검증이 중요한 엔터프라이즈 환경에서 큰 가치를 가치를 제공합니다.

2. 개체 - 관계 (Entité-Relationship) 계층

  • 개체 (entité) 노드

    • 값 (예...
      [Courte citation de 8% de l'article original]
Loading...