대화를 위한 그래프 메모리 사용하기
이제 챗봇이 메모리에 접근할 수 있으므로, 후속 질문에 대한 응답을 스트리밍할 수 있어요. 챗봇이 메모리에 저장된 전체 대화에 접근할 수 있으므로, 후속 질문에는 추가 컨텍스트가 필요하지 않다는 점에 유의하세요. 질문은 이미 준비되어 있습니다.
이 연습은 강의의 일부입니다
LangChain으로 에이전트형 시스템 설계하기
연습 안내
"configurable"를 포함하고"thread_id"가"single_session_memory"로 설정된config딕셔너리를 만드세요.- 각 그래프
event를 순회하며,graph에.stream()메서드를 적용하세요. 이때"messages"에"user"로 라벨링된user_input과config딕셔너리를 담은 딕셔너리를 전달하세요. event.values()를value로 순회하며,value에"messages"가 존재하고 비어 있지 않다면"Agent:"뒤에 이어서 출력하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# 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?")