강의

멘토링

커뮤니티

Inflearn Community Q&A

sangin1park8507's profile image
sangin1park8507

asked

Large Language Models (LLM) for Everyone Part 2 - Building Your Own ChatGPT with LangChain

FewShotPromptTemplate - Easily configure Few-Shot prompts

memory+ Retriever +llm 질문있습니다.

Written on

·

224

0

prompt는 memory+ Retriever +llm를 결합하여 사용할 때 사용할 수 없나요?

chatgptllmlangchain

Answer 1

0

AISchool님의 프로필 이미지
AISchool
Instructor

안녕하세요~. 반갑습니다.

아래와 같은 형태로 묶어서 사용하시면 됩니다.

1. retriever 설정

retriever = vectorstore.as_retriever()
  1. memory에서 채팅 history를 불러오는 함수 작성

def load_memory(input):
    return memory.load_memory_variables({})["history"]
  1. retriever + memory 결합 prompt 작성

from langchain.prompts import PromptTemplate

template = """다음과 같은 맥락과 채팅히스토리를 사용하여 마지막 질문에 대답하십시오.
맥락: {context}
채팅히스토리: {history}
질문: {question}
도움이 되는 답변:"""
rag_prompt_custom = PromptTemplate.from_template(template)
  1. llm과 최종 합성 프롬프트를 사용하여 답변생성

    # RAG chain 설정
    from langchain.schema.runnable import RunnablePassthrough
    from langchain_core.prompts import MessagesPlaceholder
    
    rag_chain = {"context": retriever, "question": RunnablePassthrough(), "history": load_memory} | rag_prompt_custom | llm
    rag_chain.invoke('안녕?')

    좋은 하루되세요~.


    감사합니다.

sangin1park8507's profile image
sangin1park8507

asked

Ask a question