58
1
부
LLM의 구성 요소
1.8
첫 번째 챗봇 프로토타입 만들기
이제 본격적으로 챗봇을 만들어 보겠습니다.
최근 몇 년 동안 다양한 라이브러리가 등장하면서,
LLM
애플리케이션을 실험하고 프로토타
입을 제작하는 과정이 훨씬 쉬워졌습니다. 실제로
PDF
문서에 관한 질문에 답하는 챗봇을 약
100
줄의 코드로 만들 수 있습니다.
이번에는 사용자가
PDF
문서를 업로드하고, 해당 문서에 관해 질문하고 대화할 수 있는 간단
한 챗봇 애플리케이션을 구현해 보겠습니다. 이 애플리케이션의 기본 워크플로는 다음과 같습
니다.
1
사용자가 인터페이스를 통해 원하는
PDF
파일을 업로드합니다.
2
애플리케이션은
PDF
파싱 라이브러리를 이용해 텍스트를 추출한 후, 이를 다루기 쉬운 크기로 나눕니다.
3
나눈 텍스트 조각인 청크
chunk
를 임베딩이라 불리는 벡터 형태로 변환합니다.
4
사용자가 챗 인터페이스에 질의를 입력하면 이 질의도 벡터로 변환합니다.
5
질의 벡터와 각 청크 벡터 간의 유사도를 계산합니다.
6
유사도가 가장 높은 상위
k
개의 청크를 선택해 가져옵니다.
7
선택된 텍스트 청크들과 질의, 추가 지시 사항을 함께
LLM
에 입력합니다.
8
LLM
은 이 정보를 바탕으로 사용자 질문에 대한 답변을 생성합니다.
9
생성된 답변을 사용자 인터페이스에 표시합니다. 사용자는 추가 질문, 정정 요청, 감사 인사 등 다양한
응답을 할 수 있습니다.
10
모든 대화 이력은 턴마다
LLM
에 다시 입력되어 대화의 흐름을 자연스럽게 이어갑니다.
이 전체 ...