2026-08-06
一個空格就讓提取成功率從 95% 掉到 23%。從手寫規則到 LangGraph 自癒 Agent,我們如何在 17 萬份 FDA 文件上做到 99.4% 準確率與 1,440 倍效率提升。
大多數企業的文件自動化專案,都是從一段 Regex 開始的。
一開始成效很好。針對某一種固定格式的單據,手寫規則可以做到 95% 以上的提取成功率,成本幾乎是零,速度也快。問題出在第二個月——供應商換了模板,某個欄位前面多了一個空格,成功率就從 95% 直接掉到 23%。
這不是假設,是我們在處理 17 萬份 FDA 510(k) 醫療器材文件時真實遇到的狀況。
手寫規則的根本問題不是「寫得不夠好」,而是它假設世界不會變。真實世界的企業文件有幾個特性,讓這個假設必然失效:
所以問題不該是「怎麼寫出更強的規則」,而是「當規則失效時,系統能不能自己修好」。
這是我們整套架構的核心判斷。
直接把文件丟給 LLM 讀取、要它回傳結構化欄位,看起來最直覺,但在企業場景有三個致命問題:每份文件都要付一次 token 成本、結果不可重現、而且無法稽核。第三點在醫療與金融場景幾乎是一票否決——你沒辦法跟稽核人員解釋「這個數字是模型讀出來的」。
我們的做法反過來:讓 AI 去寫那段提取程式碼,然後把程式碼固化下來重複使用。
一旦程式碼寫出來並通過驗證,後續一萬份同格式文件的處理成本就回到接近零,而且結果完全可重現、可稽核——因為跑的是確定性的 Python,不是機率性的模型輸出。
實際架構上,我們用成本由低到高的順序排出三道防線:
| 層級 | 處理比例 | 成本 | 說明 |
|---|---|---|---|
| Tier 1 規則引擎 | 55% | $0 | 已知格式直接命中,10 秒超時就放行給下一層 |
| Tier 2 地端 LLM | 20% | $0 | Llama 3 處理隱私敏感案件,資料不出機房 |
| Tier 3 雲端 LLM | 20% | 低 | 交給雲端模型處理複雜推理 |
| Self-Heal Agent | 5% | 較高 | 最棘手的變異格式,交給自癒迴圈 |
重點在於:最貴的那條路只服務 5% 的案件。很多企業導入 AI 失敗,是因為把 100% 的流量都送進最貴的那條路,結果 POC 很漂亮、上線後帳單無法接受。
那最後 5% 進到 LangGraph 自癒 Agent 之後,流程是這樣:
第 4 步是最容易被忽略、但最關鍵的一步。沒有回歸測試的自癒機制不叫自癒,叫做每次修好一個問題就弄壞三個舊功能。
在 17 萬份 FDA 文件的實戰中:
如果你正在評估類似的專案,有幾個判斷點值得先想清楚:
導入 AI 的瓶頸,往往不是模型不夠聰明,而是舊系統改不動、業務單位不會用。真正有效的做法,是用最輕量的外掛架構,讓 AI 產生實際的商業 ROI——而不是先花半年重構整套系統。