인프런 커뮤니티 질문&답변

재주닝님의 프로필 이미지

작성한 질문수

RAG를 활용한 LLM Application 개발 (feat. LangChain)

3.2 LangChain과 Chroma를 활용한 RAG 구성

LLM 마다 QA 과정에서 큰 차이가 있을까요?

해결된 질문

24.06.30 23:34 작성

·

228

·

수정됨

1

안녕하세요. 오늘 결제 후 열심히 듣고 있습니다! (소중한 강의 만들어주셔 정말정말 감사합니다.)

다름 아니라, openAI 크레딧 유효기간이 지나

gemini 로 강의 코드를 변경하며 진행하고 있는데요,

병진님과 동일한 과정으로 openai -> google genai(model 은 gemini-pro, 변경한 클래스: GoogleGenerativeAIEmbeddings, ChatGoogleGenerativeAI) 로 변경해 답변을 받아보았는데 답변이 썩.. 좋지가 않네요 ㅠㅠ

prompt 템플릿을 작성하고 나서 답변을 받아보면 다음과 같이 답을 합니다.

'제공된 문서에는 해당 질문에 대한 답변이 없습니다.'

(페르소나를 명시할 때 "컨텍스트에 없으면 당신이 알고 있는 정보로 대답해주세요" 를 추가했음에도 동일하게 대답하네요..)

궁금한 점은

  • LLM 마다 답변 성능이 많이 차이가 날까요?

  • openAI 가 정답일까요..?ㅠ (참고로 저희 조직에서는 GCP 기반이다보니 제미나이를 좀 써보고 싶어서요..)

감사합니다!

답변 2

1

강병진님의 프로필 이미지
강병진
지식공유자

2024. 06. 30. 23:52

안녕하세요!

음... '제공된 문서에는 해당 질문에 대한 답변이 없습니다.' 라는 메세지가 나온다면 2가지를 확인해봐야하는데요.

  1. 문서를 제대로 가져오지 못하는 것인지

  2. 문서를 제대로 가져오는데 답변을 잘 생성하지 못하는 것인지

두가지를 검증해봐야 합니다.

일단 1번의 경우에는 아래와 같은 방식으로 확인하실 수 있는데요,

retrieved_docs = database.similarity_search(query, k=3)
print(retrieved_docs)

사실 3.2강에서는 retrieval 효율이 좋지 않아서

  • 3.5강에서 retrieval 개선을 위한 데이터 전처리

  • 3.6강에서 retrieval 개선을 위한 keyword 사전 활용 방법을

안내드리고 있습니다. 그래서 3.2강에서는 우리가 원하는 문서를 제대로 가져오지 못했을 수도 있어요. 만약 강의에서 활용하는 질문을 그대로 활용하신다면 제55조 가 retrieval 결과에 포함되어야 합니다. 높은 확률로 아마 retrieval에 실패했을거에요. 지금 상황에서는 섹션3을 모두 들어보시고 검증해보시는 편이 좋을 것 같습니다.

 

질문에 계속 답변을 드리자면, 2번의 경우에는 말씀하신 LLM 성능때문일텐데요, 제 생각에는 Gemini나 GPT-4o가 저희가 체감할 만큼 어마어마한 성능 차이가 있을 것 같지는 않습니다. 말씀드린 것처럼 retrieval 에서 원하는 chunk를 가져오지 못했을 것 같아요. 만약 필요한 chunk를 제대로 가져오지 못했다면 '제공된 문서에는 해당 질문에 대한 답변이 없습니다.'라는 답변이 오히려 hallucination이 없는 정확한 답변일 수도 있겠다는 생각이 듭니다. 한번 확인해보시고 답변 달아주시면 follow-up 해보겠습니다!

0

재주닝님의 프로필 이미지
재주닝
질문자

2024. 07. 01. 00:12

와 병진님 상세한 답변 감사합니다!

  • retrieved_docs 는 확인해보니 55조 항목이 포함되지 않았네요..🥲

  • 이후 수강에 retrieval 성능 개선 있는 걸 확인하지 못했습니다. 답변해주신 내용 충분히 이해하였고, 이후 질문이 있는 경우 해당 강의 질문게시판에 남겨둘게요!

  • hallucination이 없는 정확한 답변일 수도 있겠다는 생각이 듭니다. 를 생각해보지 못했어요. 필요한 chunk 를 적절히 가져오는 테크닉은 직접 어플리케이션을 개발 & 운영하면서 쌓이겠죠? ㅎㅎ

마냥 해봐야지 만 했던 주제의 강의를 내주셔 감사합니다. 열심히 듣고 열심히 질문하겠습니다!

강병진님의 프로필 이미지
강병진
지식공유자

2024. 07. 01. 08:13

네네! 그리고 필요한 chunk를 가져오는 방법이 문서 종류마다 다르고, 형식마다 달라서 이런저런 삽질(ㅠㅠ)들이 필요해요! 제가 강의에서 전달드리는 부분도 한가지 방법이고, 더 다양한 노력들이 필요합니다. 화이팅입니다!