शुरू करेंमुफ़्त में शुरू करें

मेमोरी के साथ मल्टी-टर्न बातचीत सक्षम करें

आप अपने चैटबॉट के अपडेट को स्कूल प्रशासन के साथ साझा करने के लगभग लिए तैयार हैं! छात्रों को सुचारू लर्निंग अनुभव देने के लिए यह ज़रूरी है कि वे फॉलो-अप प्रश्न पूछ सकें। इस तरह, अगर चैटबॉट के पहले उत्तर में कोई जानकारी छूट गई हो, तो छात्र बातचीत करके अपने प्रश्न सुधार सकेंगे। अब आप अपने चैटबॉट की स्ट्रीमिंग फंक्शन को मल्टीपल टर्न्स के लिए अनुकूलित करेंगे, जिसमें यूज़र की क्वेरी और चैटबॉट का उत्तर दोनों प्रिंट होंगे। मेमोरी सक्षम करने के लिए, फॉलो-अप प्रश्न आने पर LangGraph पूरी बातचीत LLM को भेजेगा। शुरू करने के लिए, एक यूज़र के लिए आपके config पैरामीटर पहले से सेट हैं:

config = {"configurable": {"thread_id": "1"}}

यह अभ्यास पाठ्यक्रम का हिस्सा है

LangChain के साथ Agentic Systems डिज़ाइन करना

पाठ्यक्रम देखें

अभ्यास निर्देश

  • हर टर्न के लिए, queries सूची से यूज़र की query प्रिंट करके शुरुआत करें.
  • app.stream() का उपयोग करके msg और metadata पर इटरेट करें, जहाँ query को HumanMessage के content के रूप में config के साथ पास करें, और msg.content मानों को जॉइन करें.
  • चैटबॉट के उत्तर निकालने के लिए, HumanMessage लेबल वाले किसी भी msg को छोड़ते हुए msg.content प्रिंट करें, और अगली क्वेरी से पहले एक नई लाइन जोड़ें.

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

# Print the user query first for every interaction 
def user_agent_multiturn(queries):  
    for ____ in ____:
        print(f"User: {____}")
        
        # Stream through messages corresponding to queries, excluding metadata 
        print("Agent: " + "".join(____.____ for ____, ____ in app.____(
                {"messages": [____(____=_____)]}, config, stream_mode="messages") 
            
            # Filter out the human messages to print agent messages
            if ____.____ and not isinstance(____, ____)) + "____")       

queries = ["Is `stressed desserts?` a palindrome?", "What about the word `kayak`?",
    "What happened on the May 8th, 1945?", "What about 9 November 1989?"]
user_agent_multiturn(queries)
कोड संपादित करें और चलाएँ