본문 바로가기

ReactFileStructure

(42)
미니 프로젝트 제안 이번 미니 프로젝트 관련해서 제안드릴게 있습니다!LLM을 연동한 내외부 문서 기반 질의 응답 시스템을 각자 데이터들로 만들어오고 통합하는 게 어떨까요?  다만, 만들 때 LangGraph 기반으로 만들어서 각기 다른 6개의 LangGraph 가 만들어지고, 개인 발표에서 본인이 어떤 로직을 통해 구현했는지 설명할 수 있을 것 같아요,  어떻게 각기 다른 LangGraph 를 구성하는지에 대해서 생각나는 것 중에 하나로, 오늘 배우고 있는 메모리의 대화 내용을 리스트에 저장하는 과정 중 특정 조건에서 messages 리스트를 초기화하거나, 요약, 제거하는 node 분기를 본인만의 방식으로 구현함으로써 서로 다른 LangGraph 가 완성될 것 같습니다. 이렇게 완성된 6개 주제의, 다른 모양의 LangGr..
LangGraph LLM 을 사용하여 상태를 유지하고 여러 에이전트를 포함한 애플리케이션을 쉽게 만들 수 있도록 도와준다.LangChain 의 기능을 확장하여, 복잡한 에이전트 런타임 개발에 필수적인 순환 그래프를 만들고 관리할 수 있는 기능 추가 예제 Simple chat app with LangGraphStateclass State(TypedDict): # Messages have the type "list". The `add_messages` function in the annotation defines how this state key should be updated # (in this case, it appends messages to the list, rather than overwriting the..
LLM 의 출력을 원하는 형태로 변경, Output parser - 크게 중요한 것은 아니야 인지만 Output ParserLangChain 에서 출력 파서 Output Parser 는 모델의 출력을 처리하고, 그 결괄르 원하는 형식으로 변환하는 역할을 한다. 출력 파서는 모델에서 반환된 원시 텍스트를 분석하고, 특정 정보를 추출하거나, 출력을 특정 형식으로 재구성하는 데 사용된다.
LangChain, GPT LLM 의 적용 랭체인 문서에서 LLM 와 Chat Model 클래스는 각각 다른 형태의 입력과 출력을 다루는 언어 모델을 나타낸다.두 모델은 각기 다른 특성과 용도를 가지고 있어, 사용자의 요구사항에 맞게 선택하여 사용할 수 있다.일반적으로 LLM 은 주요 단일 요청에 대한 복잡한 출력 생성하는 데 적합한 반면, Chat Model 은 사용자와의 상호작용을 통한 연속적인 대화 관리에 더 적합하다.단일 응답 - LLM, 연속 대화 - Chat Model 의 사용Large Language Models ( LLMs)기능 : 텍스트 문자열을 입력으로 텍스트 문자열의 반환, 광범위한 언어 이해 및 텍스트 생성 작업에 사용된다. 특정 주제에 대한 설명을 요청할 때, LLM 은 주어진 텍스트 입력을 바탕으로 상세한 설명을 생성하여..
PromptTemplate... langchain_core 에서 제공하는 거야... prompt 는 사전 지식이 아닌, 지시사항에 가깝다. 모델이 특정 작업을 수행할 수 있도록 방향을 제시하고,  대화나 질문의 맥락을 제공한다. 학습된 데이터가 사전 지식, 프롬프트는 이 지식을 바탕으로 특정 작업에 맞춘 응답을 유도할 뿐, 모델의 기억이나 사전 학습 내용을 변경하지 않는다.하물며 Lang Chain 의 prompt 는 그냥 메시지 같은 느낌?!??Prompt Engineering사용자의 의도와 원하는 결과를 전달하는 프롬프트를 만들어 모델의 성능, 정확성, 유용성을 극대화하는 것이다.구성 요소Instructions : 모델에게 무엇을 해야 하는지, 외부 정보를 어떻게 사용해야 하는지, 쿼리와 어떻게 처리해야 하는지, 출력물을 어떻게 구성해야 하는지 알려주는 부분External infor..
LangChain 활용, 챗봇 고도화 방법론 챗봇 고도화 방법들1. 대화 메모리 추가챗봇이 이전 대화를 기억하고, 이를 바탕으로 더 일관된 응답으르 제공할 수 있도록 메모리를 추가할 수 있다.LangChain 은 다양한 메모리 모듈을 제공하여 대화의 맥락을 유지할 수 있게 도와준다. from langchain.memory import ConversationBufferMemoryfrom langchain.chains import LLMChain# 메모리 설정memory = ConversationBufferMemory(memory_key="chat_history")# LLMChain 설정 시 메모리 추가qa_chain = LLMChain( llm=llm, prompt=prompt_template, memory=memory)Convers..
랭체인 - 간단한 챗봇 구현부터 LangChain 은 자연어 처리와 대화형 인공지능 개발을 위해 만들어진 프레임워크로, 대형 언어 모델을 활용한 애플리케이션을 쉽고 효과적으로 구축할 수 있도록 돕는다.LLM 을 단순히 입력과 출력으로 사용하는 것을 넘어서 문서 검색, 메모리 관리, 고도화된 워크플로우를 설정해 복잡한 대화형 애플리케이션을 만들 수 있는 것이 LangChain 의 주요 특징이다. 프롬프트 관리 : LangChain 은 LLM 에 명령어를 어떻게 전달할지 설정하는 데 도움을 주는 템플릿 관리 기능을 제공한다.연결성과 검색 : 다양한 외부 데이터 소스를 검색하고 연결하여 답변을 생성할 수 있는 기능을 지원한다.메모리 관리 : 대화 히스토리나 문맥을 유지하는 기능을 제공하여, 사용자의 이전 대화를 기억하고 그에 맞게 적절한 답..
벡터 검색 엔진의 설정 - 질문에 대한 유사 문장의 탐색을 위해 벡터 검색 엔진은 문서 임베딩을 저장하고, 입력된 질문에 대한 관련된 문서 임베딩을 빠르게 찾을 수 있도록 도와준다.import faissimport numpy as npfrom sentence_transformers import SentenceTransformer# 임베딩 모델 로드model = SentenceTransformer('all-MiniLM-L6-v2')# 예시 문서 리스트 (임베딩할 문서들)list_of_documents = [ "This is the first document about AI.", "This document is related to machine learning.", "Here is a document about deep learning."]# 문서 임베딩..