Langchain 썸네일형 리스트형 8/12 QA Engine 개발 Day2 | LangChain을 이용한 App 개발 PJT 오늘의 프로젝트 기록각자 어느 부분을 맡을 것인지 얘기했다. 나는 벡터 스토어 부분을 맡기로 했고, 그 부분을 포함해서 랭체인을 다시 공부하면서 코드를 연습했다. 첨부터 끝까지 한번 쭉 짜보긴 했는데 어째 성능이 좀 애매..? 처음이니까 다 그런거지! 목표: 올림픽 스포츠 규정에 관한 PDF를 참조하여 질문에 답변하는 QA 엔진 개발 RAG QA엔진을 만드는 과정은 대략적으로 이렇다.1. 데이터 로드 : 데이터베이스가 될 것2. 분할 : 데이터베이스를 청킹청킹 잘라준다.3. 임베딩과 벡터스토어에 저장 : 숫자로 바꿔서 저장해준다. 4. 리트리버 만들기 : 질문과 연관된 정보를 찾아올 아이5. 프롬프트 만들기 : 사용자의 질문과 DB에서 찾은 정보를 조합해서 프롬프트로! 6. 제너레이터 : 실제로 말을 .. 더보기 라마 인덱스에서 빠르고 간편하게 RAG 수행하기 "라마 인덱스 라이브러리에서도 openai를 임포트할 수 있어요."LlamaIndex 라마 인덱스가 뭔데!!LlamaIndex (또는 llama_index) 라이브러리를 말함. 대규모 언어 모델(LLM)을 사용하여 구조화되지 않은 데이터를 쉽게 처리할 수 있게 해주는 데이터 프레임워크. 문서 인덱싱, 쿼리 처리, 데이터 구조화 등의 기능을 제공. 아! 그냥 라이브러리 이름이였구나. 인덱스가 붙어서 뭔가 했네. 어쨌든 라마 인덱스를 써서 RAG도 해야하는데...from llama_index.llms.openai import OpenAIfrom llama_index.core.llms import ChatMessageclient_llama = OpenAI(model = 'gpt-3.5-turbo')messa.. 더보기 Langchain과 RAG에 관한 찍먹 기본 지식 RAG는 언제, 어떨 때 쓰려고 만들어진 것일까?미리 준비된 지식 베이스에서 관련 정보를 찾아서 정확하고 신뢰할 수 있는 답변을 생성하고 싶을 때. 대충 RAG가 돌아가는 시나리오(RAG pipeline)1) 인공지능 관련 지식을 모아서 [지식 베이스?]에 저장해둔다. (Vector DB에 저장)2) 사용자가 질문을 한다. "인공지능에 대해서 알려줘"3) RAG : 질문을 벡터로 변환(임베딩이라고 부름)한다. (질문 처리는 RAG 시스템의 일부인 특별한 모델이나 컴포넌트가 수행.)4) RAG : 질문과 연관된 정보를 [지식 베이스?]에서 찾는다. 질문 벡터와 가장 유사한 문서 벡터를 찾아낸다. 5) RAG : 가장 관련성이 높은 부분을 추출해 하나의 컨텍스트로 만든다.6) LLM에게 넘겨준다. "사용자.. 더보기 이전 1 다음