我一直覺得,AI Agent 最讓人不安的地方,不是它答錯問題,而是它開始能幫你開工單、查資料、呼叫 API 之後,誰來決定它能做到哪裡?
這 30 天,我會用 LangChain 建立一個 IT Helpdesk Agent,從最小的 mock 工單功能開始,逐步加入 NeMo Guardrails、RAG 防護、工具權限、人工核准與 audit log。也會用 Promptfoo 測試 prompt injection、越權與工具濫用。目標不是做出看起來很聰明的 Agent,而是做出一個能被測試、被追查,也知道何時該停下來的 Agent。
這個系列會從一個能開 IT 工單的 Agent 出發,慢慢補上它真正需要的安全邊界。 我還是學生,沒有真的在公司處理 Helpdesk,也沒有 Jira、內...
今天我先做一個故意很單純的版本:它會開工單,但還不安全。 昨天我先把「Agent 有工具以後會出什麼事」講清楚。今天我不急著加 Guardrails,反而先...
同一把 API Key 同時能查資料、開工單、重設帳號、寄通知時,Agent 的工具清單就不再只是功能清單。 我沒有公司的 API Key。這個專案用的是...
工具失敗時,Agent 最危險的反應往往不是回覆錯誤,而是把同一個請求又送了一次。 Day 3 我只讓 Agent 查 mock SOP、建立 mock 工...
前四天,我把這個練習專案拆得很保守:它只能查 mock SOP,然後在記憶體裡建立 mock 工單。 但程式能動,不代表我知道它會不會在改一行 prompt、補...
我一開始把 Agent 想得太像一個會「理解整個任務」的助手。實際把 Helpdesk Agent 拆開後,感覺比較像一個不停改變狀態的程式:模型看見目前資料,...
Day 6 的 recursion_limit 解決了一件事:graph 不該無限繞圈。但我很快發現,step 數根本不能回答「這次到底花了多少」。一次 ste...
Day 4 做完 timeout、退避重試和降級後,我本來以為這件事差不多收工了:SOP 查不到,最多重試幾次,然後不要開工單。 但那只限制了「同一個請求」。如...
前幾天我把 Promptfoo 放進這個專案時,主要是在看結果:有沒有建立 mock 工單、越權工具是否不存在、SOP 壞掉時有沒有假裝成功。 這些測試還不夠。...
在 Day 6 拆 Agent loop 時,一直卡在同一件事:模型下一輪看到的東西,會同時包含 system prompt、使用者訊息、SOP 查詢結果和工具...