강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của amievil2
amievil2

câu hỏi đã được viết

Hệ thống RAG triển khai bằng AI Agent (với LangGraph)

Triển khai Self RAG Agent

similarity_search 후 왜 다시 LLM을 통해 grade를 측정 하나요?

Viết

·

93

·

Đã chỉnh sửa

0

안녕하세요.

Self RAG 에이전트 구현하기 강좌에 대한 질문이 있습니다.

 

중간 중간에 결과 평가하는 것 중 검색된 문서와 질문에 대한 관련성을 평가하는 부분이 있는데요, 검색 자체를 embedding된 vector에서 similarity search를 하여 뽑아 낸 것들이고, 이 방식 자체가 질문과 유사한 문서를 뽑아 내는 기술인데 굳이 LLM으로 하여 다시 평가를 하게 하는 이유는 뭘까요?

 

벡터 embedding 과 유사도 검색에 대한 기술이 LLM에 맏기는 것 보다 유사도 검색에 있어 더 정확해야 하는 것이 아닌가 하는 생각이 들어서요.

 

LLM이 하는 유사도 평가가 더 정확하다면 굳이 벡터 embedding 같은 기술을 쓸 필요가 있을까 싶어서 질문 드립니다.

llmlangchainragai-agentlanggraph

Câu trả lời 2

1

pdstudio님의 프로필 이미지
pdstudio
Người chia sẻ kiến thức

안녕하세요. 판다스 스튜디오입니다.

벡터 검색은 속도가 빠르고 효율적이지만 표면적 유사성에 의존하는 한계가 있습니다. 예를 들어 "딸기 키우는 방법"을 검색했을 때 "딸기 잼 만들기" 문서도 높은 유사도 점수를 받을 수 있습니다.

반면 LLM은 질문의 진짜 의도를 이해하고 문서가 실제로 답변에 도움이 되는지 맥락적으로 판단할 수 있습니다. 하지만 모든 문서를 LLM으로 평가하면 시간과 비용이 많이 들기 때문에 어려움이 있습니다.

그래서 Self RAG는 두 단계로 나눕니다. 먼저 벡터 검색으로 빠르게 후보 문서들을 추려내고, 그 다음 LLM이 이 문서들이 정말 질문과 관련 있는지 정밀하게 재평가하는 것으로 구현됩니다. 이렇게 하면 속도와 정확성을 모두 잡을 수 있게 됩니다.

대량의 문서가 있는 경우에 모든 필요한 문서를 LLM 컨텍스트로 전달할 수 없기 때문에, 관련성 있는 문서들을 빠르고 정확하게 검색하는 것이 필요한데, 이 과정에서 속도를 고려할 때 벡터 임베딩을 활용하는 것이 적절하기 때문에 검색 과정에 주로 사용됩니다. 이후 검색 결과를 정밀하게 정제, 추출하기 위해서 Cross-Encoder 기반의 Re-ranker 모델이 활용되기도 합니다. Self-RAG 에서는 LLM을 사용하여 관련성 있는 문서를 선별하는 Filter 작업을 수행하는 것으로 이해할 수 있습니다.

0

안녕하세요, 인프런 AI 인턴입니다. amievil2님.

Self RAG 에이전트 구현 과정에서 embedding 기반의 유사도 검색과 LLM을 통한 결과 평가의 병행은 매우 중요한 개념입니다. 두 가지 방법은 서로 다른 장점을 가지고 있으며, 그 조합을 통해 최적의 결과를 얻기 위함입니다.

  1. 벡터 Embedding과 similarity_search:

    • Embedding을 통해 텍스트를 벡터로 변환하고 유사도 검색을 수행함으로써 매우 빠르고 효율적으로 관련 문서를 필터링할 수 있습니다.
    • 유사도 검색은 일반적으로 문서의 표면적 유사성을 평가하며, 대량의 데이터셋에서 초기 필터링 단계로 효과적입니다.
  2. LLM을 통한 결과 평가:

    • LLM은 단순한 유사도를 넘어 특정 질문의 맥락과 의미를 이해하여 관련성을 평가할 수 있습니다.
    • 이는 더 깊이 있는 이해와 추론이 필요한 상황에서 특히 유용합니다. 예를 들어, 질문의 미묘한 의미 차이나 복잡한 논리적 연결을 평가할 때 이점이 있습니다.

두 기법의 결합은 첫 단계에서 효율적으로 관련 문서를 선별한 후, 고급 분석을 필요로 하는 경우에 LLM을 활용하여 품질을 개선하는 전략입니다. 이렇게 함으로써 성능과 정확성 모두에서 최적의 밸런스를 추구할 수 있습니다.

관련하여 LLM과 벡터 검색의 결합에 대해 설명된 이전의 질문과 답변도 확인해보시면 도움이 될 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

Hình ảnh hồ sơ của amievil2
amievil2

câu hỏi đã được viết

Đặt câu hỏi