iT邦幫忙

鐵人檔案

2026 iThome 鐵人賽
回列表
AI Security

從 LLM、Agent 到 Guardrails:30 天打造可控、安全、可驗證的 AI Agent 系列

我一直覺得,AI Agent 最讓人不安的地方,不是它答錯問題,而是它開始能幫你開工單、查資料、呼叫 API 之後,誰來決定它能做到哪裡?

這 30 天,我會用 LangChain 建立一個 IT Helpdesk Agent,從最小的 mock 工單功能開始,逐步加入 NeMo Guardrails、RAG 防護、工具權限、人工核准與 audit log。也會用 Promptfoo 測試 prompt injection、越權與工具濫用。目標不是做出看起來很聰明的 Agent,而是做出一個能被測試、被追查,也知道何時該停下來的 Agent。

參賽天數 16 天 | 共 16 篇文章 | 0 人訂閱 訂閱系列文 RSS系列文 |團隊nutc imac
DAY 11

Day 11|RAG 最危險的不是幻覺,而是它把資料當成命令

Day 11|RAG 最危險的不是幻覺,而是它把資料當成命令 Day 10 我把 system prompt、使用者訊息、RAG 文件和 tool result...

2026-09-25 ‧ 由 justin_log 分享
DAY 12

Day 12|塞進更多 Context 後,Agent 為什麼反而更笨了?

Day 10 我先把 context 的來源分開,Day 11 再把惡意 SOP 擋在模型外面。做到這裡,我原本很自然地想:既然不可信內容已經過濾,那多放一點歷...

2026-09-26 ‧ 由 justin_log 分享
DAY 13

Day 13|我把惡意 SOP 丟進 Promptfoo,Agent 到底會不會照做?

Day 11 我做了一份惡意 SOP,Day 12 又整理了 context。不過只擋住一句「忽略先前規則」,還不能代表 retrieval boundary...

2026-09-27 ‧ 由 justin_log 分享
DAY 14

Day 14|我以為 RAG 只是搜尋,後來才發現它也是權限系統

Day 13 我用 Promptfoo 反覆測惡意 SOP,但還有一種文件根本不需要藏指令:它只要屬於別的使用者、部門或 tenant,被當前 Agent 搜出...

2026-09-28 ‧ 由 justin_log 分享
DAY 15

Day 15|我給 Agent 20 個工具後,它反而更常做錯事

Day 14 處理的是哪些文件能進入 RAG。今天輪到另一份同樣會塞進模型 context 的東西:工具定義。 我先故意列出 20 個 Helpdesk 候選工...

2026-09-29 ‧ 由 justin_log 分享
DAY 16

Day 16|AI Agent 為什麼想把內部資料寄給陌生人?

Day 15 我把不需要的外寄工具移出 Helpdesk Agent。不過未來若真的有一條受限流程,要把 SOP 摘要交給支援信箱,事情不會只是把 share_...

2026-09-30 ‧ 由 justin_log 分享