본문 바로가기

langchain10

[LangChain & RAG 공부] 벡터 스토어와 리트리버 PART 5에서는 LLM에게 미리 정보를 줄 때 사용하는 것들을 배운다.먼저 벡터 스토어와 리트리버에 대해 간단히 설명하고 시작하겠다.벡터 스토어 : RAG 시스템에서 임베딩 벡터를 저장하고 검색하는 데이터베이스리트리버 : 사용자의 질문과 가장 관련성이 높은 정보를 벡터 데이터베이스(스토어)에서 찾아 제공하는 역할자 이제 벡터 스토어에서 나온 임베딩이라는 단어부터 설명하면서 시작하겠다!임베딩: 문서들을 청크로 쪼개고, 이 청크들을 벡터 스토어에 저장하기 전에, 벡터화된 숫자 표현으로 변환하는 과정임베딩이 필요한 이유는 LLM은 텍스트를 바로 처리하지 못하기 때문이다.따라서 텍스트의 의미를 수학적으로 이해해서 (0.1, 0.5, 0.9) 같은 숫자 벡터로 변환한다. 이 숫자 벡터들은 나중에 사용자가 질문을.. 2025. 11. 12.
[LangChain & RAG 공부] 데이터 로드와 텍스트 분할 PART 4로 넘어왔다.PART 4는 RAG 시스템에서 첫 번째 단계로 진행하는 문서 로드와 텍스트 분할을 배운다.문서 로드: 우리가 가진 문서(document)를 데이터베이스(db)에 불러오는 역할SK DEVOCEAN OPENLAB에서 이 내용을 발표한 경험이 있어서 ppt로 설명하겠다!document 객체 : LangChain의 기본 문서 객체, 문서 로더로 다양한 형식의 문서 파일들을 document 객체 형태로 변경하여 저장한다.PDF나 Web 페이지를 불러와서, 내부의 내용들을 document객체로 저장하여 LLM에게 학습시키는 것은 정말 활용도가 많을 거 같다!Loader들을 계속해서 발전하여 등장하기 때문에, RAG 시스템을 구현할 때, 찾아보고 활용하는 것이 더 좋을 거 같다!Parser앞.. 2025. 11. 12.
[LangChain & RAG 공부] 메모리 PART 3 '모델과 메모리' 중, Chpater8(메모리)를 공부했다. Client는 GPT와 대화할 때, 내가 과거에 알려줬던 정보를 기억하기를 바란다.하지만 GPT 모델 자체는 대화 내용을 기억하는 기능을 가지고 있지 않다!> 따라서 개발자들이 이전 대화를 기록하는 '메모리 기능'을 별도로 구현해야 한다!먼저 대화 버퍼 메모리에 대해 배워보자 대화 버퍼 메모리(ConversationBufferMemory) : 사람의 Input과 AI의 Output을 짝지어서 저장 memory = ConversationBufferMemory()memory.save_context( inputs={ "human": "안녕하세요, 비대면으로 은행 계좌를 개설하고 싶습니다. 어떻게 시작해야 하나요?" .. 2025. 8. 13.
[LangChain & RAG 공부] 모델 오늘부터 PART 3 '모델과 메모리'에 대해서 공부할 것이다!PART 3는 Chapter7(모델), Chpater8(메모리)로 이루어져 있다.Let's go Chpater 07. 모델우리가 모델을 변경할 때는 RAG 시스템의 전체 구조는 그대로 유지하면서 LLM 모델만 교체하면 된다. 모델이 워낙 많아서 사용할 모델을 정하면 그때그때 API 키를 발급받고, '. env' 파일에 업데이트하여 사용하면 된다!LLM 답변 캐싱 : 동일한 질문에 대한 답변을 별도의 공간에 저장애플리케이션에서 캐싱을 위해 사용 가능한 방식인메모리 캐시 : 메모리 공간에 저장하여, 프로그램 종료 시 사라지지만, 가볍고 빠르다(단기)SQLite 캐시 : 데이터베이스 파일에 저장하여, 프로그램 종료해도 캐시 정보 유지(장기)간단하게.. 2025. 8. 12.
[LangChain & RAG 공부] 출력 파서 지난번 배운 PART 2의 '프롬프트'에 이어서,PART 2의 Chapter 6인 '출력 파서'에 대해서 배울 것이다.Chapter 6. 출력 파서 : LLM의 출력값을 더 유용하고 구조화된 형태로 해석해서 변환(파싱)하는 역할 주로 LangChain 프레임워크에서 다양한 종류의 '출력 데이터'를 파싱하고 처리하는 데 활용된다. 즉, 출력 파서를 사용해서 LLM의 응답을 구조화한다! 두 개의 output을 보면, 출력 파서 사용 전은 '우리가 원하는 핵심내용'이 빠져 있을 수 있다.출력 파서를 사용하면 위처럼 JSON 형식으로 구조화된 답변을 얻을 수 있다.(JSON : 파이썬의 딕셔너리처럼 key : value의 항목이 쌍으로 묶인 형식) 여기서 보낸 사람, 이메일 주소, 날짜 형식처럼 사전에 정의된 .. 2025. 8. 6.
[LangChain & RAG 공부] 프롬프트 오늘부터 PART 2 '프롬프트와 출력 파서'에 대해서 배울 것이다.PART 2는 Chapter5와 Chapter6으로 이루어져 있다.Chapter 05. 프롬프트프롬프트 단계 : 리트리버(retriever)에서 검색된 문서들을 바탕으로 언어 모델이 사용할 질문이나 명령을 생성하는 과정'RAG 이해' 게시글에서 사용했던 그림을 가져왔다.빨간 네모로 표시된 RAG 과정 이후 만나는 것이 Prompt이다. LLM 프롬프트 템플릿 : AI 모델과의 상호작용을 표준화하고 효율적으로 만들어 주는 구조화된 텍스트 형식5.1 프롬프트 템플릿 만들지시 사항(Instruction)사용자가 입력한 질문(Question)검색된 정보인 문맥(Context)c.f.1.당신은 질문-답변(Question-Answer) Task를 .. 2025. 8. 1.
[LangChain & RAG 공부] LangChain 시작하기2 이어서 PART 1의 CHAPTER4 "LangChain 시작하기'를 마저 진행하겠다.저번 시간에는 체인에 이것저것을 추가하면서 LLM에 대해 배워보았다.Chapter 04. LangChain 시작하기4.7 batch() 함수로 일괄 처리하기Runnable이라는 프로토콜을 사용해서 '사용자 정의 체인'을 만들 것이다. Runnable : LangChain에서 프롬프트 템플릿, LLM 호출기, 출력 파서 등 다양한 컴포넌트들을 연결하고 실행하는 방식을 표준화한 공통 인터페이스 Runnable 프로토콜 : 표준화된 인터페이스를 제공해 사용자의 요구에 맞게 체인을 호출할 수 있다. Runnable 표준 인터페이스stream() : 응답의 청크를 스트리밍 한다.invoke() : 입력에 대해 체인을 호출한다.b.. 2025. 7. 31.
[LangChain & RAG 공부] LangChain 시작 Chapter 04. LangChain 시작하기이제 실습을 시작해 보자.이 책의 저자가 깃허브에 올려놓은 프로젝트를 다운로드하였다. (이제 돈 쓸 시간..!)4.1 ChatOpenAI 주요 매개변수와 출력OpenAI 사의 채팅 전용 Large Language Model(LLM)이다.즉, 우리는 Chat GPT를 가져와서 사용할 것이다. 여러 가지 매개변수가 존재한다.temperature샘플링 온도(답변을 얼마나 창의적으로 할 것인지)0~2 사이의 값을 선택한다(높을수록 출력을 더 무작위 하게 만들고, 낮을수록 더 집중되고 결정론적으로 만든다.).max_tokens채팅 완성에서 생성할 토큰의 최대 개수값 미지정 시, 모델에서 허용된 최대 토큰 수까지 허용model_name적용가능한 모델 리스트c.f. gp.. 2025. 7. 29.
[LangChain & RAG 공부] 환경 설정 & LLM 기본 용어 Chapter 02. 환경 설정나는 맥북을 사용 중이라 책에서 Part.02 MacOS에서 환경 설치를 따라했다. 이 책이 정말 잘 되어있는 게, 내가 따라 하면서 단 한 번도 막힌 적이 없었다..!나는 이런 실습 전 환경 설치에서 막힐 때가 정말 많았었다. 왜 그런지는 모르겠지만..환경 설치 중, pyenv와 poetry를 설치했다.pyenv : 파이썬의 버전을 선택해서 실행할 수 있게 도와주는 도구이다.poetry : LangChain을 배울 때 파이썬의 다양한 기능을 사용하기 위해 많은 파이썬 패키지를 설치하게 된다. 이때 패키지 충돌을 관리해 주는 도구이다. 환경 설치가 완료되면 VS Code까지 설치해 주었다.이제 OpenAI API Key와 LangSmith Key를 발급받자.1. OpenAI.. 2025. 7. 25.
[LangChain & RAG 공부] RAG 이해 머신러닝과 딥러닝 강의를 끝내고, 곧 시작할 스터디를 좀 더 깊게 공부해 보자는 마인드로 RAG 공부를 시작하고자 한다!내가 RAG를 공부할 책은 바로 "테디노트의 랭체인을 활용한 RAG 비법노트(기본 편)"이다.이 책을 고르게 된 경위는, AI부터 데이터 분석, 백엔드까지 통달하여 현재 LG와 협업 중인 천재 of 천재인 GOAT '김 수 빈' 형님께서 추천해주셨습니다.(감삼다 꾸벅) 이 책은 8단계로 구성되어 있다.PART 1에서 LLM과 RAG의 기본 개념을 익히고,PART 2~5에서 RAG의 필수 기술들을 실습하며 익히고,PART 6~8에서 LangChain 실습으로 Streamlit을 이용해 실제 챗봇 웹 앱 프로젝트를 진행한다. 자 이제 PART 1부터 공부해 보자!PART 1은 CHAPTER.. 2025. 7. 25.