Dùng bộ nhớ của graph cho hội thoại
Giờ chatbot của bạn đã có bộ nhớ, bạn có thể stream phản hồi cho các câu hỏi tiếp theo. Lưu ý: các câu hỏi tiếp theo không cần thêm ngữ cảnh vì chatbot có thể truy cập toàn bộ cuộc hội thoại đã được lưu trong bộ nhớ. Các câu hỏi đã được thiết lập sẵn cho bạn.
Bài tập này là một phần của khóa học
Thiết kế Hệ thống Agentic với LangChain
Hướng dẫn bài tập
- Tạo một từ điển
configvới"configurable", trong đó"thread_id"được đặt là"single_session_memory". - Lặp qua từng
eventcủa graph, áp dụng phương thức.stream()chograph, truyền vào một từ điển với"messages"chứauser_inputđược gán nhãn"user"và từ điểnconfig. - Lặp qua
event.values()dùng biếnvaluevà in"Agent:"theo sau bởi"messages"nếu nó tồn tại trongvaluevà không rỗng.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Set up a streaming function for a single user
def stream_memory_responses(user_input: str):
____ = {"____": {"____": "____"}}
# Stream the events in the graph
for ____ in graph.____({"messages": [("user", ____)]}, ____):
# Return the agent's last response
for ____ in event.____():
if "messages" in ____ and value["____"]:
print("Agent:", value["messages"])
stream_memory_responses("Tell me about the Eiffel Tower.")
stream_memory_responses("Who built it?")