एक फंक्शन परिभाषित करें जो चैटबॉट को रोकता है
अब जब आपका चैटबॉट स्टेट सेट हो गया है, तो आपको ऐसे फंक्शन बनाने हैं जो आपके चैटबॉट के ग्राफ़ में वर्कफ़्लो को मैनेज करें. शुरुआत के लिए, आप should_continue() फंक्शन बनाएँगे जो state के भीतर चैटबॉट के आख़िरी संदेश में टूल कॉल्स की जाँच करता है, जिसे आपके लिए पहले से लोड किया गया है. अगर कोई टूल कॉल नहीं है, तो चैटबॉट रुक जाता है. अगर कोई टूल कॉल होता है, तो चैटबॉट अगले टास्क पर बढ़ता है. आपके मैसेजेस को मैनेज करने के लिए, नीचे दिए गए मॉड्यूल आपके लिए इम्पोर्ट किए गए हैं.
from langgraph.graph import MessagesState, START, END
यह अभ्यास पाठ्यक्रम का हिस्सा है
LangChain के साथ Agentic Systems डिज़ाइन करना
अभ्यास निर्देश
stateपैरामीटर के लिए इनपुट टाइपMessagesStateबताएँ.- टूल कॉल्स की जाँच के लिए
stateसे"messages"का इस्तेमाल करके आख़िरी संदेश एक्सेस करें. - जाँचें कि आख़िरी संदेश में
tool_callsमौजूद हैं या नहीं, और अगर हैं तो रिटर्न वैल्यू"tools"दें. - जब कोई
tool_callsमौजूद न हों, तो बातचीत समाप्त करने के लिए रिटर्न वैल्यूENDसेट करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Use MessagesState to define the state of the function
def should_continue(state: ____):
# Get the last message from the state
last_message = ____["____"][____]
# Check if the last message includes tool calls
if ____.____:
return "____"
# End the conversation if no tool calls are present
return ____