python

[GPT] RetrievalQA

으누아빠 2024. 4. 4. 05:36
반응형

RetrievalQA

 

문서검색

LLMChain을 이용하여 검색이 가능하지만 이는 Legacy 이므로 LCEL 형태로 검색하는것을 추천

검색방식

 

Stuff[문서 전체 요약]: 단순히 모든 문서를 단일 프롬프트로 "넣는" 방식입니다. 이는 가장 간단한 접근 방식입니다.

Map-reduce[문서 분할-병합 요약]: 각 문서를 "map" 단계에서 개별적으로 요약한 다음, "reduce" 단계에서 요약본들을 최종 요약본으로 합치는 방식입니다.

Refine[문서 분할-병합 요약]: 입력 문서를 순회하며 반복적으로 답변을 업데이트하여 응답을 구성합니다. 각 문서에 대해, 모든 비문서 입력, 현재 문서, 그리고 최신 중간 답변을 LLM chain에 전달하여 새로운 답변을 얻습니다.

Map-ReRank:각 맵 리랭크 문서 체인은 각 문서에 대해 초기 프롬프트를 실행하여, 작업을 완료하려고 시도할 뿐만 아니라 답변에 대한 확신도를 나타내는 점수도 제공합니다. 가장 높은 점수를 받은 응답이 반환됩니다.

[결과]

'Winston lives in Victory Mansions, which is a building in London, the chief city of Airstrip One, a province of Oceania.'

 

Refine Documents Chain [문서 분할-병합 요약]

chain_type="refine"

 

MapReduce Chain [문서 분할-병합 요약]

chain_type="map_reduce"

 

MapReRank Chain [문서 분할-병합 요약]

chain_type="map_rerank"

 

으로 변경하면됨

'python' 카테고리의 다른 글

[GPT] Map Reduce LCEL Chain  (0) 2024.04.04
[GPT] Stuff LCEL Chain  (0) 2024.04.04
[GPT] Vector Store  (0) 2024.04.03
[GPT] LangChain 한국어 튜터리얼  (0) 2024.04.03
[GPT] Vectors  (0) 2024.04.03