LLM 應用最痛的問題是指令與資料走同一條通道,prompt injection 至今沒有根治解法,護欄成了必要的一層。本系列以 Google Cloud Model Armor(雲端託管)與 地端自建的 ShieldGemma 微調護欄(地端)兩條線並行,從 OWASP LLM/Agentic Top 10 出發,實作 L1 規則、L2 分類器、L3 LLM-as-judge 三層防禦,涵蓋 Agent 工具呼叫與 MCP 場景,最後用同一套 zh-TW 攻擊語料與統一誤判率條件做誠實對照,給出金融級混合架構建議。每個數字附測試集與樣本數。
先講範圍 PII 在本系列只佔兩天(今天與 Day 16),原因寫在 Day 10 結尾:完整的去識別化、可控還原與台灣特種個資處理,是另一個 30 天系列《L...
為什麼輸出端要管 URL 一個被間接注入成功的 RAG 助理,最常見的下手方式不是直接洩漏資料,而是在回應裡放一個連結:「更多資訊請見 https://…」。使...
從「自己呼叫」到「自動套用」Day 8–12 的所有測試都是 Day 3 講的「位置 A」:程式碼自己在呼叫模型前後打 sanitize API。這種做法的問題...
企業的真實狀況:模型不只一個 Day 13 的零改碼只對 Vertex AI 上的 Gemini 有效。但企業的真實狀況是:客服用 Gemini、內部工具接 O...
Week 3 開場:從最便宜的一層開始 雲端線走完了。Week 3 在 DGX Spark 上把地端護欄從零疊起來,順序照 Day 5 的三層:今天與明天是 L...
為什麼 checksum 值得一整天 Day 11 實測 DLP 自訂 infoType 只能做 regex。[A-Z][12]\d{8} 這個模式在真實文本裡...
L2 要選一個模型,選型不是看 benchmark 就好 地端線的 L2 是一個小型分類器模型。候選很多,但金融業客戶的選型會議上,benchmark 分數通常...
第一個坑:ARM DGX Spark 的 GB10 是 Grace CPU + Blackwell GPU,CPU 是 aarch64。很多現成的推論容器只有...
微調要解決的問題,先寫清楚 Day 17 的基準測試(未微調)預期會顯示兩個缺口:ShieldGemma 原本是 safety 分類器,對 injection...
訓練設定 用 LoRA 而不是全參數微調,理由:資料量不大(千筆級)、任務單一、要保留原版能力、GB10 訓練時間可控。 # train/lora_sft.py...