문서와 채팅하기 (Chat with Documents)

문서와 채팅하기 (Chat with Documents)

LM Studio의 채팅 세션에는 .docx, .pdf, .txt 같은 문서 파일을 첨부할 수 있어요. 문서가 모델에 추가 컨텍스트를 제공해 주니까, 긴 자료를 바탕으로 대화해야 할 때 특히 유용해요. 문서가 짧으면 통째로 넣고, 길면 RAG로 필요한 부분만 뽑아 쓰는 방식이에요. 이 페이지에서 그 동작 원리를 설명드릴게요.

출처: Chat with Documents - LM Studio Docs

용어 정리

  • Retrieval: 긴 원본 문서에서 관련 있는 부분을 찾아내는 것
  • Query: 검색(retrieval) 동작에 들어가는 입력
  • RAG: Retrieval-Augmented Generation (검색 증강 생성)
  • Context: LLM의 '작업 메모리'로, 최대 크기가 있음

여기서 'Generation'은 LLM의 출력을 의미해요. 컨텍스트 크기는 '토큰(token)' 단위로 측정하며, 토큰 하나는 보통 단어의 약 3/4 정도에 해당해요.

RAG vs. 문서 전체를 컨텍스트에 넣기

문서가 충분히 짧아서(모델의 컨텍스트에 들어갈 만큼) 모델이 긴 컨텍스트를 지원한다면, LM Studio는 파일 내용을 대화에 전체로 추가해요. 긴 컨텍스트를 지원하는 Meta의 Llama 3.1, Mistral Nemo 같은 모델에 특히 유용해요.

문서가 매우 길면 LM Studio는 RAG(Retrieval Augmented Generation) 를 사용해요. 긴 문서(또는 여러 문서)에서 관련 있는 조각만 찾아 모델에 참고자료로 제공하는 방식이에요. 이 기법은 아주 잘 동작할 때도 있지만, 때로는 튜닝과 실험이 필요해요.

성공적인 RAG를 위한 팁

쿼리에 가능한 한 많은 컨텍스트를 담으세요. 관련 자료에 있을 것 같은 용어, 아이디어, 단어를 언급하면 관련 컨텍스트를 LLM에 제공할 가능성이 높아져요. 역시 직접 실험해 보는 것이 가장 좋은 방법이에요.

더 알아보기