คำถามและการตอบกลับ
กราฟ agent ถูกตั้งค่าเรียบร้อยแล้ว และแชทบอทพร้อมทำงานแล้ว ขั้นตอนต่อไปคือการกำหนดฟังก์ชันที่ช่วยให้แชทบอทตอบคำถามโดยใช้ ChatGPT ฟังก์ชันนี้จะสตรีมผ่าน event ของกราฟแบบเรียลไทม์ และคืนค่าข้อความล่าสุดเป็นการตอบกลับคำถามของผู้ใช้
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การออกแบบระบบ Agentic ด้วย LangChain
คำแนะนำการฝึกหัด
- กำหนดฟังก์ชัน
stream_graph_updates()ให้รับuser_inputเป็นพารามิเตอร์ชนิด string สำหรับการรันแชทบอท - เรียกใช้เมธอด
.stream()กับgraphเพื่อสตรีม event โดยส่งuser_inputเป็นข้อความ"user"ใน"messages" - สำหรับแต่ละ
itemในevent.values()ให้ดึงข้อมูลและพิมพ์การตอบกลับโดยใช้คีย์"messages"ในitem - ส่ง
user_queryไปยังฟังก์ชันstream_graph_updates()เพื่อทดสอบแชทบอท
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Define a function to execute the chatbot based on user input
def stream_graph_updates(____: ____):
# Start streaming events from the graph with the user's input
for event in graph.____({"____": [("____", ____)]}):
# Retrieve and print the chatbot node responses
for ____ in event.values():
print("Agent:", ____["____"])
# Define the user query and run the chatbot
____ = "Who is Ada Lovelace?"
stream_graph_updates(____)