用户提问:“北京的天气怎么样?”系统分析问题类型(classify_question),判断为天气问题。调用天气 API 获取北京的天气信息。生成回复并返回给用户。
执行过程中断
假设在步骤 3 调用天气 API 时,系统需要等待 API 返回结果。在等待期间,系统保存当前状态(current_node 为 node2,context 包含用户提问和会话 ID)。
保存状态
保存的状态信息可能如下:
{"graph_id":"weather_graph","current_node":"node2","node_outputs":{"node1":{"output":"weather","timestamp":"2023-10-01T12:00:00Z"}},"context":{"user_input":"What's the weather in Beijing?","session_id":"session_123456"},"status":"paused"}
复制代码
恢复执行
当天气 API 返回结果后,系统从存储中加载状态并恢复执行:
定位到 current_node(node2)。使用 API 返回的天气数据更新上下文。继续执行后续节点(node3 生成回复)。