inflearn logo
강의

Course

Instructor

Large-Scale Language Models for Everyone LLM Part 3 - Building AI Applications with Google Gemini API, OpenAI API, and Gemma

PDF RAG 제작 프로젝트 진행 중 답변 정확도를 올리기 위해 무엇을 해야 할지 모르겠습니다.

1042

teon

1 asked

0

안녕하세요! 현재 Gemini, Streamlit, LangChain을 이용하여 오류 Q&A 모음 PDF 문서를 학습시켜 해당 문서로 질의응답을 할 수 있는 RAG Chatbot을 구현하는 중에 있습니다.

PDF 내용이 정제가 되어 있지 않지만 175개의 모든 페이지를 다 읽어온 것은 확인했는데 같은 페이지에 있는 내용이더라도 답변하는 것이 있고 아닌 것이 있습니다. 또한 같은 질문을 해도 어떤 때는 잘 대답하고 어떤때는 문서에 없다고 대답하는 현상을 발견하고 있습니다...

 

이런 현상들의 원인이 뭔지 또한 학습시키는 문서를 정제하면 대답 정확도가 조금 올라가는지..

어떤 형식으로 문서를 정제해야 할지, PDF보단 WORD나 CSV 파일이 더 정확도가 올라갈지 등등

ChatBot의 정확도를 올릴려면 어떤 방식들을 시도해 봐야 하는지 감이 잡히지 않아 질문드립니다.

 

 

딥러닝 streamlit gemini multimodal chatgpt llm openai-api gemma

Answer 2

0

AISchool

안녕하세요~. 반갑습니다.

먼저 강의를 수강해주셔서 감사합니다^^.

 

말씀해주신 내용만으로는 정확히 어떤 상황인지 구체적으로 알기 어려운데요.

일반적으로 RAG 시스템 성능을 높이기 위해 시도해볼 수 있는 방법들은 다음과 같습니다.

 

  1. few-shot examples 활용 : RAG 시스템이 적절한 문서를 매칭하고 이를 적절하게 활용할 수 있도록 few-shot examples를 추가해주면 일반적으로 RAG 성능이 향상되게 됩니다.

  2. 각 상황에 맞는 적절한 심화 Retriever 활용 : 문제 상황에 따라 해당 문제를 해결하기에 적절한 심화 Retriever를 활용하면 RAG 성능을 향상 시킬 수 있습니다.

심화 Retriever 목록은 아래 링크를 참조하시고 각 Retriever 사용법은 Part 2 강의를 참조하세요.

https://python.langchain.com/v0.1/docs/modules/data_connection/retrievers/

3. metadata의 적절한 활용 : page_content 부분에는 Embedding을 활용한 Similarity Search만을 활용하기 때문에 완벽하게 정확한 매칭을 원하면 meatadata 쪽에 충분한 정보를 저장하고 이를 활용하는 방식을 사용하면 RAG 성능을 향상 시킬 수 있습니다.

metadata 부분을 활용하는 대표적인 예시로 SelfQueryRetriever 활용이 있습니다. 해당 부분도 Part 2 강의의 SelfQueryRetriever 활용 예시를 참조하세요.


정리하면 RAG 시스템의 성능을 향상시키고 싶으시다면 현재 문제상황을 파악하시고 그 문제를 해결하는데 적절한 도구와 기법을 찾아서 하나씩 적용하시다보면 점진적인 성능 향상을 기대할 수 있을 것입니다.


좋은 하루되세요~.

감사합니다.

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다.
teon님, 질문 주신 RAG Chatbot의 답변 정확도 향상과 관련하여 몇 가지 방안을 제안드리겠습니다.

  1. 문서의 정제: PDF 내용이 정제되지 않았다면, 먼저 불필요한 부분(헤더, 푸터, 목차 등)을 제거하고, 중요한 내용만을 추출하는 과정이 필요합니다. 이는 질의응답 시스템의 정확도를 높이는 데 도움이 됩니다.

  2. 파일 포맷 변환: PDF 파일은 텍스트를 추출하기 어려울 수 있으므로, WORD나 CSV 같은 텍스트 기반의 파일 형식으로 변환하는 것이 좋습니다. 이러한 형식은 데이터를 처리하고 학습시키기에 더 용이합니다.

  3. 데이터 전처리: 데이터를 전처리 하여 텍스트를 깨끗하게 만드는 것이 중요합니다. 이는 문장의 구두점 정리, 대소문자 통일, 오탈자 수정 등을 포함할 수 있습니다.

  4. 학습 데이터 다양화: 같은 문제에 대한 다양한 표현 방식을 학습 데이터에 포함시켜 모델이 다양한 질문 형태에도 유연하게 대응할 수 있도록 하는 것이 중요합니다.

  5. 파인 튜닝: 기존의 사전 훈련된 언어 모델을 사용한다면, 특정 작업에 맞춰 모델을 파인 튜닝하는 것이 도움이 됩니다.

  6. 피드백 루프 생성: 사용자로부터 받은 피드백을 통해 계속해서 모델을 개선하고, 잘못된 답변을 교정하여 모델을 업데이트하는 것도 중요합니다.

정확도 향상에는 이 외에도 다양한 접근 방식이 존재할 수 있으며, 프로젝트의 세부 사항에 맞춰 여러 가지 방안을 시도해 볼 필요가 있습니다.

교재 파일이나 실습자료 한번에 다운로드 받는 메뉴가 없나요

0

1

0

마크다운을 텍스트 파일로 변환하기

0

16

1

import torch가 안되는 경우는 어떻게 하나요?

0

16

1

소리가 겹쳐서 들려요

0

23

2

18강 smithery 를 이용한 mcp 실습(업데이트 요청)

0

18

1

guardrails 부분도 현재버전과 약간 다릅니다.

0

21

1

smithery ai 언제 업데이트 되나요?

0

17

1

자료에 실습 데이터가 없어요.

0

17

1

yes24 수집 md 파일 만들 때

0

24

2

무료할당량 사용하는데 문제가 생겼습니다.

0

21

1

섹션2-11 내용중 tool_call

0

25

2

max token을 제한하는게 왜 성능을 개선하게 되는걸까요?

0

42

2

20강에서 파인튜닝 때 사용한 데이터가 없어졌습니다. LoRA Trainer 매개변수도 라이브러리 업그레이드로 수정되었습니다.

0

20

1

vi ~/.bashrc

0

26

2

디바이스 페어링 문의

0

33

2

[개정판] 딥러닝 컴퓨터 비전 완벽 가이드 먼저? 구현하며 배우는 Transformer 먼저?

0

30

1

수업자료

0

23

2

gradio 를 통한 챗봇 인터페이스 실습이 진행되지 않습니다.

0

46

1

화면이 보이지 않아요

0

32

1

에러 발생

0

261

1

PPT 강의자료 요청

0

157

1

RAG_Chain.invoke 답변이 나오지 않습니다.

0

248

2

[긴급 최종질문수정16:47] 지금 이런 에러가 계속해서 연달아 나고 있는데 진행이 아예 안 됩니다

0

500

1

강의 슬라이드 공유가 가능할까요?

0

246

1