เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

กำหนดฟังก์ชันสำหรับหยุดการทำงานของแชทบอท

เมื่อตั้งค่า state ของแชทบอทเรียบร้อยแล้ว ขั้นตอนต่อไปคือสร้างฟังก์ชันที่จัดการ workflow ใน graph ของแชทบอท เริ่มต้นด้วยการสร้างฟังก์ชัน should_continue() ซึ่งตรวจสอบการเรียกใช้เครื่องมือจากข้อความล่าสุดใน state ที่โหลดไว้ให้แล้ว หากไม่มีการเรียกใช้เครื่องมือ แชทบอทจะหยุดทำงาน แต่ถ้ามีการเรียกใช้เครื่องมือ แชทบอทจะดำเนินการต่อไป โมดูลต่อไปนี้ถูก import ไว้ให้แล้ว

from langgraph.graph import MessagesState, START, END

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การออกแบบระบบ Agentic ด้วย LangChain

ดูคอร์ส

คำแนะนำการฝึกหัด

  • กำหนดประเภทของ input สำหรับพารามิเตอร์ state โดยใช้ MessagesState
  • เข้าถึงข้อความล่าสุดจาก state ผ่านคีย์ "messages" เพื่อตรวจสอบการเรียกใช้เครื่องมือ
  • ตรวจสอบว่าข้อความล่าสุดมี tool_calls หรือไม่ และกำหนดค่าที่ return เป็น "tools" หากเป็นจริง
  • กำหนดค่าที่ return เป็น END เพื่อจบการสนทนาเมื่อไม่มี tool_calls

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# 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 ____
แก้ไขและรันโค้ด