AI agent 大模型实战之 多伦对话实现
AI
from langchain_core.messages import HumanMessage, AIMessage
from langchain_core.output_parsers import StrOutputParser
from langchain_community.chat_message_histories import ChatMessageHistory
from langchain_core.runnables import RunnableWithMessageHistory
from app.agent.model.qwen import llm
from app.agent.prompts.multi_chat_prompts import multi_chat_prompt_template
chain = multi_chat_prompt_template | llm | StrOutputParser()
store={}
def get_session_history(session_id: str):
if session_id not in store:
store[session_id] = ChatMessageHistory()
return store[session_id]
chain_with_history = RunnableWithMessageHistory(
runnable=chain,
get_session_history= get_session_history,
input_messages_key="question",
history_messages_key="chat_history",
)
session_id=123
while True:
user_input = input("用户:")
if user_input.lower() == "exit" or user_input.lower() == "quit":
break
resp = chain_with_history.invoke(
{"question":user_input},
config={"configurable":{"session_id":session_id}}
)
print("助理:")
for chunk in resp:
print(chunk,end="")
print("\n")
![[衡天云]爆款云服务器 低至12元/月](/hty.png)