많은 RAG 응용 프로그램은 단순화 된 검색 프로세스를 사용합니다. 문서는 청크로 분류되고, 임베딩으로 변환되며, 벡터 데이터베이스 내에 저장됩니다. 쿼리는 유사성을 임베딩하는 데 기반한 Top-K의 가장 유사한 문서의 검색을 트리거합니다. 그러나이 접근법은 특히 광범위한 데이터 세트에서 한계가 있습니다. 청크 모호성 및 차선 정보 검색은 정확도를 손상시킬 수 있습니다
재귀 검색은 문서 구조를 활용하여 검색 정밀도를 향상시킵니다. 청크를 직접 검색하는 대신 관련 요약 우선 순위를 정하고, 더 집중된 결과를 위해 관련 청크로 드릴링.
이 기사는 재귀 검색에 대해 자세히 설명하고 llamaindex를 사용하여 구현을 안내합니다.
rag and langchain
Langchain은 검색 증강 생성 (RAG)을 통해 외부 데이터와 LLMS와의 통합을 용이하게합니다.
재귀 검색은
원시 청크 임베딩에만 의존하는 방법과 달리 재귀 검색은 문서 요약을 포함하여 해당 청크에 연결합니다. 쿼리는 처음에 관련 요약을 검색 한 다음 해당 요약의 관련 청크 내에서 관련 정보를 찾아냅니다. 이러한 맥락 접근법은 정보 관련성을 향상시킨다
llamaindex 로 재귀 검색 구현
이 섹션은 문서로드에서 쿼리 실행에 이르기까지 Llamaindex를 사용하여 재귀 검색의 단계별 구현을 안내합니다.
1 단계 : 문서로드 및 준비
문서는 를 사용하여로드됩니다. 각 문서는 향상된 필터링을위한 제목 및 메타 데이터 (예 : 카테고리)를 수신합니다. 로드 된 문서는 쉽게 접근 할 수 있도록 사전에 저장됩니다.
2 단계 : llm 및 청킹 설정
LLM (예 : OpenAi의 GPT-4O Mini)과 함께 청크 생성을위한 문장 스플리터 및 프로세스 모니터링을위한 콜백 관리자와 함께 초기화됩니다.
3 단계 : 벡터 인덱스 생성 및 요약 생성
유사성 기반 검색을 가능하게하기 위해 각 문서마다 벡터 인덱스가 생성됩니다. LLM 생성 요약은
객체로 저장됩니다
4 단계 : 최상위 벡터 인덱스 구성
최상위 벡터 인덱스는 생성 된 요약에서 구축되어 자세한 청크에 액세스하기 전에 관련 요약을 초기 검색 할 수 있습니다.
5 단계 : 재귀 검색 설정
재귀 리트리버가 구성되어 최상위 레트리버와 개별 문서 리트리버를 결합하여 계층 적 검색 프로세스를 용이하게합니다.
6 단계 : 재귀 검색 쿼리 샘플 쿼리는 구성된 재귀 리트리버를 사용하여 실행됩니다
결론
문서 요약 및 계층을 활용하여 재귀 검색은 특히 큰 데이터 세트와 함께 검색된 청크의 관련성을 향상시킵니다. 데이터가 풍부한 환경에서 정확한 검색 시스템을 구축하기위한 강력한 솔루션을 제공합니다. 헝겊 기술에 대한 추가 탐색은 링크 된 블로그 게시물에서 찾을 수 있습니다.
위 내용은 래그에 대한 재귀 검색 : llamaindex를 사용한 구현의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!