PDF RAG 제작 프로젝트 진행 중 답변 정확도를 올리기 위해 무엇을 해야 할지 모르겠습니다.
1079
작성한 질문수 1
안녕하세요! 현재 Gemini, Streamlit, LangChain을 이용하여 오류 Q&A 모음 PDF 문서를 학습시켜 해당 문서로 질의응답을 할 수 있는 RAG Chatbot을 구현하는 중에 있습니다.
PDF 내용이 정제가 되어 있지 않지만 175개의 모든 페이지를 다 읽어온 것은 확인했는데 같은 페이지에 있는 내용이더라도 답변하는 것이 있고 아닌 것이 있습니다. 또한 같은 질문을 해도 어떤 때는 잘 대답하고 어떤때는 문서에 없다고 대답하는 현상을 발견하고 있습니다...
이런 현상들의 원인이 뭔지 또한 학습시키는 문서를 정제하면 대답 정확도가 조금 올라가는지..
어떤 형식으로 문서를 정제해야 할지, PDF보단 WORD나 CSV 파일이 더 정확도가 올라갈지 등등
ChatBot의 정확도를 올릴려면 어떤 방식들을 시도해 봐야 하는지 감이 잡히지 않아 질문드립니다.
답변 2
0
안녕하세요~. 반갑습니다.
먼저 강의를 수강해주셔서 감사합니다^^.
말씀해주신 내용만으로는 정확히 어떤 상황인지 구체적으로 알기 어려운데요.
일반적으로 RAG 시스템 성능을 높이기 위해 시도해볼 수 있는 방법들은 다음과 같습니다.
few-shot examples 활용 : RAG 시스템이 적절한 문서를 매칭하고 이를 적절하게 활용할 수 있도록 few-shot examples를 추가해주면 일반적으로 RAG 성능이 향상되게 됩니다.
각 상황에 맞는 적절한 심화 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
안녕하세요, 인프런 AI 인턴입니다.
teon님, 질문 주신 RAG Chatbot의 답변 정확도 향상과 관련하여 몇 가지 방안을 제안드리겠습니다.
문서의 정제: PDF 내용이 정제되지 않았다면, 먼저 불필요한 부분(헤더, 푸터, 목차 등)을 제거하고, 중요한 내용만을 추출하는 과정이 필요합니다. 이는 질의응답 시스템의 정확도를 높이는 데 도움이 됩니다.
파일 포맷 변환: PDF 파일은 텍스트를 추출하기 어려울 수 있으므로, WORD나 CSV 같은 텍스트 기반의 파일 형식으로 변환하는 것이 좋습니다. 이러한 형식은 데이터를 처리하고 학습시키기에 더 용이합니다.
데이터 전처리: 데이터를 전처리 하여 텍스트를 깨끗하게 만드는 것이 중요합니다. 이는 문장의 구두점 정리, 대소문자 통일, 오탈자 수정 등을 포함할 수 있습니다.
학습 데이터 다양화: 같은 문제에 대한 다양한 표현 방식을 학습 데이터에 포함시켜 모델이 다양한 질문 형태에도 유연하게 대응할 수 있도록 하는 것이 중요합니다.
파인 튜닝: 기존의 사전 훈련된 언어 모델을 사용한다면, 특정 작업에 맞춰 모델을 파인 튜닝하는 것이 도움이 됩니다.
피드백 루프 생성: 사용자로부터 받은 피드백을 통해 계속해서 모델을 개선하고, 잘못된 답변을 교정하여 모델을 업데이트하는 것도 중요합니다.
정확도 향상에는 이 외에도 다양한 접근 방식이 존재할 수 있으며, 프로젝트의 세부 사항에 맞춰 여러 가지 방안을 시도해 볼 필요가 있습니다.
슬라이드 오타
0
7
0
LLM 서비스의 신뢰성
1
15
1
이북 다운로드 위치 문의
0
14
1
유튜브는 4일전에도 영상 올라왔던데, 이 강의는 언제쯤 ㅜㅜ
1
16
1
안녕하세요 ppt 자료 메일로 부탁드립니다
0
14
1
앱키와 씨크릿 복사 붙여넣기
0
15
1
쉬운 내용 스킵
0
16
1
[13번 강의] ChatInterface에 PDF 렌더링이 안되는 이슈 공유
0
19
1
워킹플로우 제목 생성 오류와 키워드 미생성 오류
0
16
1
강의 잘 들었습니다만 부탁이 하나 있어서요..
0
20
2
채팅플로우 실행시 진전이 없고 비슷한 류의 답변만 나와요
0
26
4
롱폼 영상 강의도 있으신가요? 도움이 많이 되었습니다.
1
20
1
무서워요 다음에는... 조심.
1
19
1
노드
0
33
1
강의 자료 및 코드 수령
0
30
2
기초실습 BERT파인튜닝 예제 오류
0
26
1
54강 양자화의 끝판왕, 터보퀀트 (예정) 강의 업로드
0
30
1
블로그에 학습 내용 올려도 되나요?
0
34
1
130_Transformer.ipynb 오류 대응 부탁드립니다.
0
42
1
에러 발생
0
307
1
PPT 강의자료 요청
0
180
1
RAG_Chain.invoke 답변이 나오지 않습니다.
0
268
2
[긴급 최종질문수정16:47] 지금 이런 에러가 계속해서 연달아 나고 있는데 진행이 아예 안 됩니다
0
534
1
강의 슬라이드 공유가 가능할까요?
0
264
1





