Använda grafminne för konversation
Nu när din chatbot har tillgång till minne kan du strömma dess svar på uppföljningsfrågor. Observera att uppföljningsfrågorna inte behöver något extra sammanhang, eftersom chatboten kan komma åt hela konversationen som lagrats i minnet. Frågorna har redan ställts in åt dig.
Den här övningen är en del av kursen
Designa agentbaserade system med LangChain
Övningsinstruktioner
- Skapa ett
config-ordboksobjekt med"configurable", där"thread_id"är satt till"single_session_memory". - Iterera genom varje graf-
eventgenom att använda metoden.stream()pågraph, och skicka ett ordboksobjekt med"messages"innehållandeuser_inputmärkt som"user"samtconfig-ordboksobjektet. - Iterera genom
event.values()med hjälp avvalueoch skriv ut"Agent:"följt av"messages"om det finns ivalueoch inte är tomt.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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?")