出貨單審批 Agent:AI 認字、判斷交給規則
先看這件事有多煩
一家公司要出貨前,後台得先審一筆單。審核員手上有三份文件:一張出貨審批單、一張金額核算表(是拍照或掃描的圖)、還有一到三份蓋了章的合同(也是掃描的 PDF)。
他要做的事很笨、但很重要:把三份文件攤開,用眼睛一項一項核對——品名一樣嗎?單價一樣嗎?數量乘起來金額對嗎?合同編號對得上嗎?核一筆要很久,而且賭的是錢:看漏一個數字,放出去的就是一筆不該出的貨。
最直覺的念頭,其實最危險
很多人第一個反應是:「這種比對,丟給 AI 自動做不就好了?」
聽起來很合理,但對跟錢有關的關卡,這個念頭很危險。因為今天的 AI 是「大部分時候會對」——它平均很聰明,可是你要的不是平均,是「這一筆、這個數字,到底對不對」。一個大部分時候會對的東西,意思就是它偶爾會錯;而在放行貨款這種地方,偶爾錯一次的代價,可能就吃掉它幫你省下的所有時間。
我的做法:AI 只幫忙「讀」,「判斷」交給規則
我幫這家公司做了一個小工具。你把那一包單據丟進去,它直接告訴你三種結果之一——可以出貨 / 不能出貨 / 需要人再確認,而且每一條結論都附上理由,你看得懂、也能拿去交代。
關鍵在我怎麼分工:
真正「判對不對」的,是一套固定規則,不是 AI 的直覺。 同樣的單據,它永遠給同樣的答案,而且能說出為什麼——這叫「可被稽核」,出了事查得到根據。AI 完全不參與這個判斷。
那 AI 做什麼?只做一件它真正擅長的事:把看不清的掃描件認成字。 有些掃描很糊,傳統的圖片轉文字會出錯,這時候 AI 比較強。但我把它當成一個「幫你謄稿的人」,不是「幫你做決定的人」。
而且就算讓 AI 讀,我也不直接相信它。 我讓它獨立讀兩次,再用程式去對:兩次讀出來的一樣嗎?金額乘起來對得上嗎(單價 × 數量 = 總額)?那份檔案有沒有被偷改過?三個都通過,才採用這個讀數;只要有一個對不上,就丟回去給人看。
比對是「一字不差」,不是「差不多就好」。 因為對這種關卡,「掃描把一個字認錯」和「對方真的換了一個版本」絕對不能被當成同一件事——前者是雜訊,後者可能是出包。
只要有一點不確定,它就說「需要人再確認」,絕不自己放行。 寧可多麻煩你一下,也不要放錯一筆錢。
而且它不是「寫死」的——你用講的就能改
一般買一個現成 App,檢查邏輯是寫死的:想多加一條規則、或改一下比對方式,你得發需求、等工程師排版本,下次更新才會有。
這個工具不一樣。它的檢查規則是攤開的,而且我把 AI 接成它的「設定窗口」——你可以直接用講的:「再加一條:出貨日期要落在合同效期內」「這個產品的舊型號名,跟新名字算同一個」「這類大額單,要兩個人簽過才放行」……AI 聽懂你的意思,幫你把規則加上去或調好。等於這套檢查你開口就能長大,不必每次回頭等工程師改版。
但有一條界線要講清楚,也呼應前面:AI 只在「幫你改設定」這個環節當互動介面;真正在判每一筆的,還是那套固定規則。 所以你拿到兩邊的好處——調整時像跟人講話一樣靈活,跑起來時又像機器一樣穩定、可稽核。一個寫死的 App 只給你後者;一個全交給 AI 的方案只給你前者(還不穩);這個工具兩個都要。
這不是隨手做的 demo
它有大量自動測試(約 260 個)證明真的跑得動,不是 PPT。整個「判斷」的過程完全在你自己的電腦上跑,不連網、不把你的單據傳出去。
它也是一個真實顧問案的去識別版本:公開出來的這份,裡面的公司名、合同編號、品名全是我換成假的;真實資料只留在客戶自己的機器上、不會進到我公開的程式碼裡。所以它能當作品給人看,客戶的東西不外流。
我真正想說的
做 AI 導入,真正值錢的判斷,不是「這件事能不能用 AI」,而是「這件事裡,哪一塊該讓 AI 碰、哪一塊絕對不能」。
把會出錢、會出包的決定,留給一套可靠又說得清楚的規則;只在 AI 真正比較強的那一小塊(認爛掃描)讓它上場,而且還幫它複查一遍。對一個「出錯要賠錢」的場景,這才是把 AI 用得安全、又用得上的樣子。