AI 幫你追文獻、下載、評讀,但他有沒有唬你?花蓮慈濟醫院舉辦 AI Agent 講座 陳柏威醫師解析防唬機制與個資紅線

花蓮慈濟醫院今天辦了一場 AI 講座,主講人是陳柏威醫師。題目取得很直白:「AI Agent 可以幫我自動追文獻、下載、評讀,但他有沒有唬我?」
整場就是沿著這個順序走的。前半講怎麼讓 AI 從一個只會回答問題的對話框,變成真的會去追、去載、去讀的東西;後半講一件更要緊的事,就是它做完之後,你憑什麼相信它。
以下是我的筆記,最後有一些自己的想法。
會聊天的、會查資料的、會動手的
陳醫師把 AI 應用分成三個層級。最基本的是 Chatbot,你問它答,中間所有的複製貼上都是人做的。中間一層是 NotebookLM 這類工具,它會從你指定的固定資料來源裡找答案,回答有出處,但它還是只能講。
最上面一層是 Agent。陳醫師形容它「住在電腦裡、有手、能代辦」,差別在於它會主動去查資料、開檔案、模擬點擊、把結果存下來,而不是等你把東西餵進去。
網頁版 AI 與本機 Agent 的差異,簡單講是三件事:網頁版只能問答,本機版可以直接動你的檔案;網頁版的資料要送到雲端,本機版可以限定只在自己的電腦裡跑;網頁版比較像顧問,給你答案跟建議,本機版比較像一個隨時在線的工程師,直接把事情做掉。
動手之前先把規矩寫成檔案
陳醫師在講開發流程時說了一句話:生成很便宜,修補很昂貴。
因此他強調 SDD(Specification-Driven Development,規格驅動開發)。意思是動手之前,要先把這件事的規矩寫成一份檔案,讓 AI 每一步都能回頭對準它。規矩沒寫下來,AI 就會照它自己的理解一路做下去,等你發現不對的時候,錯的地方已經散在十幾個檔案裡。
他也提到,當 AI 明顯偏離規範時,把規格檔改好重跑一次,通常比一行一行去修那些已經錯掉的程式碼划算。
0.95 的十次方
講座裡有一個數字很重要。
一個任務如果有 10 個步驟,每一步的正確率是 95%,聽起來很高,但 0.95 的十次方大約是 0.60。整件事跑完,合格率剩六成。
陳醫師用這個數字解釋為什麼複雜的研究任務特別容易崩掉,也解釋了為什麼要把任務拆小:步驟越長,乘積掉得越快;把大任務切成一段一段、每段都能單獨檢查,才有辦法把品質留住。
資料一旦送上雲端,就當作已經外流
在醫院裡處理原始病歷資料,個資是絕對的紅線。陳醫師的說法很直接:資料只要送出去,就應該預設它已經外流。
所以他建議的架構是「顧問」跟「工廠」分開。雲端的 LLM 是顧問,負責出主意、寫程式碼,你給它的是需求跟邏輯,不是病歷;真正碰到敏感資料的是本機的程式,也就是工廠,它在自己的電腦裡跑,資料不出門。
在這個架構下,AutoHotkey(AHK)是很好用的工具。它做的事情是模擬人的操作:讀畫面上的文字、模擬點擊、自動填欄位。整個過程不涉及上傳,適合處理院內那些重複性很高的行政作業。
文獻要怎麼抓,才不會害醫院被封 IP
針對最耗時的文獻取得,陳醫師給了一個由上而下的順序:先找免費的公開資源,其次是出版商合法的 API 授權,再來是透過醫院館藏權限的檢索工具,最後才是開源的自動化下載工具。
他特別提醒一件事:用這類自動化工具的時候,絕對不要為了快而去調高下載速度。瞬間流量太大,出版商可能直接封鎖整間醫院的 IP。那不是你一個人的帳號被停用而已,是全院的人都連不進去,後面還有罰款跟行政責任要處理。
評讀這段,AI 只准做標記
追到、載完之後是評讀。這一塊陳醫師走得比較快,我記到的主要是他的分工原則。
在證據等級(GRADE)的評估上,AI 負責標記,把文獻裡的降級因子挑出來,例如用的是替代指標、或者只有相關性而沒有因果推論。至於這些因子加起來該落在哪一級,交給確定性的程式去算,不要讓 AI 自己做數學。
理由不是 AI 算不出來,是你沒辦法確認它這次算的跟上次是同一套邏輯。程式如果寫錯,至少每次都錯在同一個地方,查得出來。
兩個真的跑起來的案例
陳醫師分享的第一個案例是排班。科內的排班規矩很多,QOD、假日怎麼分、誰不能連上,這些規則平常散在資深醫師的腦袋裡。他的做法是先把這些規矩講出來錄下來,整理成規矩檔,再讓 AI 生成排班程式,程式裡另外放一個檢查器負責逐條核對。整套做完大約 30 分鐘。
第二個案例是系統性回顧的文獻篩選,這也是整場的主線。他採用多模型的做法,同時派 GPT 跟 Claude 去篩,最後仍然由人確認。這個設計的用意留到下一節講。
他強調這兩個案例真正的關鍵不是 AI,是領域知識。以文獻篩選為例,你要知道「跟現行治療標準比較」比「跟無治療對照組比較」更有意義,這條規矩才寫得出來。而這種判斷,平常不會有人特別講出來。
那他到底有沒有唬我
回到題目上的問號。陳醫師的立場是,AI 唬人不是偶發的意外,是要預設它會發生,然後用機制去接。
他提了三個原則:要求精準出處、允許它回答不知道、以及人工抽查。第二點最容易被忽略。模型的預設行為是把話講完,你沒有明說可以不回答,它就會湊一個看起來很像的答案給你。拒答要寫進規矩裡,才會真的發生。
篩選文獻用多模型,理由也在這裡。GPT 跟 Claude 的訓練資料不同、盲點也不同,同一篇文獻兩邊都漏掉的機率,比單一模型漏掉的機率低。兩邊意見不一致的時候由第三個模型當仲裁,仲裁完還是回到人手上。這不是為了讓 AI 更聰明,是為了讓它唬人的時候有人看得出來。
文獻本身是不是真的存在,也一樣不靠模型。用程式去 Crossref 的 API 比對標題與作者,查得到才算數。前一節說評讀要交給程式加總,是同一個道理。
JAMA 2026 畫出來的線
最後是學術倫理的部分。依 JAMA 2026 的規範,幾件事情是明確禁止的:審稿人不可以把未發表的稿件丟給 AI,那違反保密;Letter to the Editor 這類評論性文章不能由 AI 生成首稿,核心想法必須來自人;臨床原始影像不能用 AI 修改。
要揭露的則有兩項:PRISMA 流程圖必須增設方框,標明由 AI 篩選出的文獻數量;投稿附錄要附上使用的規矩檔與完整的 prompt 紀錄。
聽完之後
我不做臨床研究,但整場聽下來有一半的時間在對答案。
規格先行那段,是我現在的做法。上個月做臉書粉專留言風險偵測的時候,第一份檔案不是程式碼,是 sdd.md,八百多行,8 月 18 日建立。裡面除了要做什麼,更長的篇幅在寫不做什麼:不自動隱藏、不自動刪除、不自動回覆,所有處置一律由人工在 Meta 後台執行;不抓其他粉專、不抓私訊、不做即時觸發。成功條件也寫成數字,匯出完整率要 99% 以上,人身攻擊的召回率要 90% 以上,用人工標註 200 則來驗。
這些不是寫給別人看的。是寫給後面那個一直想多做一點的自己看的。
專案放在 GitHub:Facebook-fan-page-comment-output-and-risk-content-detection。
所以陳醫師講「生成很便宜、修補很昂貴」的時候,我沒什麼異議。真正讓我坐直的是另一件他沒展開的事:規矩檔本身也會錯。
同一份 sdd.md 裡,我原本把圖片留言的辨識列在範圍外,理由是只處理文字比較單純。結果公傳室的同仁人工標註時發現,已經有人把整段攻擊文字做成圖片貼上來,正好繞過所有文字偵測。資料庫裡 967 則圖片類留言,當時完全沒有判讀。那一行現在底下掛著一句「此決定已被實證推翻,待重新評估」。
規格先行真正的好處不是一次寫對。是錯的時候,你知道要回去改哪一行,而不是在十幾個檔案裡找當初為什麼會變成這樣。
0.95 的十次方那個數字,我也對到了。校稿工具的流程是切檔案、抓文字、送模型、比對、輸出報告這幾段,每一段看起來都還行,但整份稿子跑完我還是得自己再看一遍。當時我以為那是模型不夠準,現在比較願意承認,那是步驟乘起來的結果。
至於資料不能出門那一段,嚴格講不是講給我聽的。陳醫師講的是病歷、是臨床原始資料,那條紅線畫的位置很清楚,我平常碰的東西不在裡面。
不過真正卡住我的還是「沒說出口的規矩」。
什麼樣的留言算人身攻擊、什麼只是酸,這條線不是我能定的,那是公傳室的判斷。圖片那個漏洞也一樣,不是我測出來的,是同仁一則一則標的時候看出來的。我能做的只是把他們的判斷寫成規則、寫進規格,然後在被推翻的時候記得回去改。
排班那個案例之所以有意思,是因為陳醫師把這一步做完了:把老手腦袋裡的常識錄下來,變成一份檔案。工具好不好用決定在這裡,不是在後面生程式碼的環節。
至於題目上那個問號,我後來想到的答案跟講座給的不太一樣。
陳醫師講的唬,是 AI 開口講了一件不存在的事:捏造的出處、算錯的等級、根本沒發表過的文獻。那種唬其實還算好抓,因為它有話可以查。
我自己那份規格裡列的最嚴重失效模式是另一種。留言是分區間擷取的,如果某段期間根本沒抓過,報表對那段期間會回傳空的結果,看起來就跟「這段期間沒有問題留言」一模一樣。我在文件裡把它叫做靜默偽陰性,寫在風險表的第九條。
工具唬你的方式,多半不是講錯話,是給你一份很乾淨的空報表。你不會去查,因為沒有東西可以查。
所以規格裡我把這條的處理列成 P0:報表要記錄每次實際抓過的區間,遇到缺口就直接警告,不能讓空白看起來像沒事。這件事沒什麼技術含量,寫的時候還覺得有點囉唆。
講座最後那句話是「先弄清楚方向,再開始對話」。這句我認。
只是我打開電腦看了一下,sdd2.md 那份規格 8 月 19 日就定稿了,狀態欄到今天還寫著「尚未實作」。
所以要問 AI 這陣子有沒有唬我,比較誠實的答案是還沒輪到它。規格是寫完了,程式我自己還沒開始。