Day 024|條件路由:讓 Agent 根據結果選擇下一步
系列100 天系統學習 AI Agent 開發當前階段LangChain 與 LangGraph 工程化今日目標條件路由可以根據工具結果、置信度、用戶權限或錯誤類型決定流程分支。真正讓流程像 Agent 的不是節點而是岔路口檢索到充分證據時回答問題含糊時追問工具暫時超時可以再試一次用戶無權限則立即終止。節點本身只是做事條件路由才把觀察結果變成下一步。這里也最容易失控。有人會寫“confidence 0.8 就回答”仿佛 0.8 是天然真理。可不同檢索器的分數不可直接比較相似度也不等于答案可靠。閾值必須從自己的標注數據校準而且不能單獨承擔權限和安全決策。今天要實現的路由規則否是可重試且未重試不可重試/預算用盡無錯誤充分不足且問題可補充知識庫無資料檢索或工具結果用戶有權限終止并審計工具是否報錯重試一次失敗并解釋證據是否充分生成帶引用回答追問一個關鍵字段拒答并說明范圍注意順序權限判斷在置信度之前。再“相關”的片段只要用戶無權訪問就不能被用來回答。路由輸入要結構化fromdataclassesimportdataclassfromenumimportEnumclassNextStep(str,Enum):ANSWERanswerASK_USERask_userRETRY_TOOLretry_toolFAILfailREJECTrejectdataclass(frozenTrue)classRouteState:has_permission:booltool_error_kind:str|Noneattempts:intevidence_complete:boolmissing_user_fields:tuple[str,...]defchoose_next(state:RouteState)-NextStep:ifnotstate.has_permission:returnNextStep.REJECTifstate.tool_error_kindretryable:returnNextStep.RETRY_TOOLifstate.attempts1elseNextStep.FAILifstate.tool_error_kind:returnNextStep.FAILifstate.evidence_complete:returnNextStep.ANSWERifstate.missing_user_fields:returnNextStep.ASK_USERreturnNextStep.FAIL這段代碼故意沒有 similarity_score。第一版用“evidence_complete”這個經過證據檢查的布爾值更容易測試。以后如果加入分數應同時考慮來源權威、版本匹配、證據覆蓋和重排結果而不是只看向量距離。“證據充分”如何定義以部署問題為例用戶要環境和命令檢索結果只覆蓋命令即使相似度很高也不完整。可以先將需求拆為 evidence_points{required_points:[環境要求,安裝命令],covered_points:[安裝命令],evidence_complete:false,missing_points:[環境要求]}這時系統可繼續檢索、追問版本或回答“現有資料只確認了命令環境要求暫無依據”。不要把“低置信度”當成一句籠統提示。路由測試表場景輸入狀態期望下一步高質量證據且有權限completetrueanswer缺產品版本missing_fields[version]ask_user首次短暫超時retryable, attempts0retry_tool第二次仍超時retryable, attempts1fail參數非法validation_errorfail不重試無權限permissionfalsereject無資料且無可追問項completefalsefail/unsupported真實接 LangGraph 時條件邊的 API 寫法要按官方文檔核對上面的 RouteState 與純函數可以先獨立測試再映射到圖節點名。三種失敗模式分支條件重疊。同時缺權限又工具超時如果判斷順序不固定可能錯誤重試敏感工具。返回任意字符串。模型生成不存在的節點名圖運行到未知位置。無默認出口。新增錯誤類型沒有匹配分支任務卡在 running。每個路由都應有窮盡的枚舉和兜底失敗狀態返工還要有總預算。下一篇做 checkpoint 時路由結果與 attempts 必須被持久化否則恢復后可能再次獲得一次重試機會。面試官會追問條件路由應該交給規則還是模型能由確定字段判斷的就用規則權限、金額閾值、錯誤類型、schema 是否通過、最大輪數。只有語義分類或開放任務才讓模型參與而且模型輸出仍要落到有限枚舉。例如客服路由可以分兩層代碼先攔截無權限與高風險動作模型再在 faq、order_query、complaint 三類意圖中選擇低置信度進入 ask_user。這樣模型不會越過硬邊界規則也不用窮舉全部語言表達。測試時不能只覆蓋“正確分支”還要覆蓋路由震蕩同一任務在兩個節點之間來回跳。給 state 增加 route_history 與 step_budget一旦重復模式超過閾值就終止并輸出診斷而不是無限消耗 Token。

相關新聞

Mind+指紋識別擴展庫開發:圖形化編程實現生物識別應用

Mind+指紋識別擴展庫開發:圖形化編程實現生物識別應用

1. 項目概述:當創客項目遇上生物識別 最近在折騰一個智能門鎖的小項目,手頭正好有一個閑置的指紋模塊,就想把它和Mind這個圖形化編程環境結合起來。Mind對于很多教育者和創客愛好者來說,是連接硬件與創意的一座非常友好的橋梁&…

2026/7/31 1:53:41 閱讀更多
Unity游戲開發中MVC框架的實踐指南:從理論到代碼實現

Unity游戲開發中MVC框架的實踐指南:從理論到代碼實現

1. 項目概述:為什么Unity開發者需要關注MVC? 如果你在Unity社區里混跡過一段時間,或者面試過一些Unity相關的崗位,大概率會聽到過“MVC框架”這個詞。它就像一個傳說中的武林秘籍,人人都說好,但真正能把它在…

2026/8/2 12:25:40 閱讀更多
逆向工程中編碼與加密算法的識別、分析與實戰應用

逆向工程中編碼與加密算法的識別、分析與實戰應用

1. 從“菜雞”到入門:為什么逆向工程繞不開編碼與加密 剛接觸逆向工程的朋友,常常會卡在一個看似基礎,實則至關重要的環節:面對程序里一堆“亂碼”或者經過變換的數據,完全無從下手。你興致勃勃地打開調試器&#xff0…

2026/8/2 12:25:40 閱讀更多
Unity構建優化利器:Build Report Tool深度解析與實戰指南

Unity構建優化利器:Build Report Tool深度解析與實戰指南

1. 項目概述:為什么我們需要一個構建報告工具? 如果你是一個Unity開發者,尤其是負責項目發布和迭代的工程師,那么“構建”這個詞對你來說一定不陌生。從點擊菜單欄的“Build”按鈕,到最終生成一個可執行文件或安裝包&a…

2026/8/2 12:25:40 閱讀更多
國內零門檻部署AI編程助手:Codex替代方案與VSCode集成指南

國內零門檻部署AI編程助手:Codex替代方案與VSCode集成指南

這次我們來看一個在國內免費安裝使用 Codex 的完整方案。對于很多開發者來說,Codex 是一個強大的 AI 編程助手,但直接訪問和使用往往存在門檻。這篇文章的重點不是探討 Codex 背后的復雜技術,而是提供一個清晰、可操作的本地化部署和使用指南…

2026/8/2 12:15:40 閱讀更多
3分鐘搞定!QQ空間歷史說說完整備份終極指南

3分鐘搞定!QQ空間歷史說說完整備份終極指南

3分鐘搞定!QQ空間歷史說說完整備份終極指南 【免費下載鏈接】GetQzonehistory 獲取QQ空間發布的歷史說說 項目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 你是否曾想過,那些年發過的QQ空間說說,那些記錄青春的文字…

2026/8/2 0:04:01 閱讀更多
3分鐘搞定!QQ空間歷史說說完整備份終極指南

3分鐘搞定!QQ空間歷史說說完整備份終極指南

3分鐘搞定!QQ空間歷史說說完整備份終極指南 【免費下載鏈接】GetQzonehistory 獲取QQ空間發布的歷史說說 項目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 你是否曾想過,那些年發過的QQ空間說說,那些記錄青春的文字…

2026/8/2 0:04:01 閱讀更多
AMAT 0100-02186 I/O 分配 PCB

AMAT 0100-02186 I/O 分配 PCB

AMAT 0100-02186 I/O分配PCB板是應用材料(Applied Materials)公司生產的一款用于半導體設備的I/O信號分配電路板。該型號(0100-02186)的核心特點如下:專用于Endura等半導體工藝腔室。集成信號路由與分配功能。連接控制…

2026/8/2 2:51:21 閱讀更多
Nissei Corp FFMN-32L-10-T0 40AX 三相異步電動機

Nissei Corp FFMN-32L-10-T0 40AX 三相異步電動機

Nissei Corp FFMN-32L-10-T0 40AX 三相異步電動機是日本日清(Nissei)品牌的一款工業用三相異步電機,適用于自動化設備及通用機械驅動。該型號(FFMN-32L-10-T0 40AX)的核心特點如下:三相交流異步電動機。額定…

2026/8/2 2:52:49 閱讀更多