การเพิ่มโหนดและเอดจ์
เมื่อ StateGraph() พร้อมแล้ว ก็ถึงเวลาเพิ่มโหนดของแชทบอตเข้าไปในกราฟ โหนด START และ END ที่สร้างมาให้แล้วนั้น import มาจาก LangGraph โดยตรง ดังนั้นจึงต้องสร้างเพียงโหนด chatbot เพียงโหนดเดียว จากนั้นกำหนดเอดจ์เพื่อระบุทิศทางการสนทนาของแชทบอตตั้งแต่ต้นจนจบ เมื่อเพิ่มโหนดและเอดจ์ครบแล้ว ให้คอมไพล์กราฟเพื่อเตรียมรันด้วยคิวรี
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การออกแบบระบบ Agentic ด้วย LangChain
คำแนะนำการฝึกหัด
- กำหนดฟังก์ชัน
chatbotโดยใช้เมธอดllm.invoke()กับ"messages"ปัจจุบันในstateแล้วส่งคืนผลลัพธ์ที่ได้ - ใช้
.add_node()เพื่อเพิ่มโหนดชื่อ"chatbot"เข้าไปในกราฟ โดยอ้างอิงฟังก์ชันchatbot - เชื่อมโหนด
STARTกับโหนด"chatbot"และเชื่อมโหนด"chatbot"กับโหนดENDโดยใช้.add_edge()เพื่อกำหนดเอดจ์สำหรับการสนทนา - คอมไพล์กราฟด้วย
.compile()เพื่อเตรียมความพร้อมสำหรับการรัน
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Define chatbot function to respond with the model
def chatbot(state: State):
return {"messages": [llm.____(____["____"])]}
# Add chatbot node to the graph
graph_builder.____("____", ____)
# Define the start and end of the conversation flow
graph_builder.____(____, "____")
graph_builder.____("____", ____)
# Compile the graph to prepare for execution
graph = graph_builder.____()