前幾天談單一動作。今天談一串動作。
五個步驟,每步 95% 可靠。整件事多可靠?不是 95%。
我目前把它寫成這樣:
若整體成功定義為所有必要步驟皆成功,其機率由各步在先前成功條件下的成功機率共同決定。
這是機率恆等式。前提是「整體成功」的定義:每一步都要對。有這個定義,整體機率就是各步條件機率的乘積,沒有別的算法。
它也不是在說步驟多就一定差。每步成功率可以是 1,那乘起來還是 1。增加檢查點也可能改善流程。本律不拿步數比較流程優劣。它只說:整體是乘出來的。
還有一條老規矩:沒跑過的實驗不能寫得像有結果;小樣本不能說成普遍現象。
一份六列的採購清單,單位和格式故意混雜:「3 打」要換成 36、「NT$120/支」「45 元」「1,250 元」「NT$ 180」「28元」。預算 8,000。
五步鏈,每步一行輸出:
S1 抽出每項的(個數,單價)。S2 算小計。S3 加總。S4 判斷超不超過預算。S5 寫一句報告。
真值:總額 7,928,未超過。刻意接近門檻。
兩組:A 一次做完;B 多一句「每步輸出前先回頭核對輸入與原文,有錯就更正」。
模型是 Claude Haiku 4.5,每組六次,共十二次。
每步一行,各自跟真值比。整體成功等於五步都對。另算每步通過率、每步在前面都對的條件下的通過率,以及把各步通過率乘起來的數字,跟觀測到的整體成功率並列。只並列,不做檢定,六次太少。
S1 的單位換算應該最脆弱。A 如果六次全對,就如實寫:每步成功率可以是 1。B 高於 A,示範檢查點有效;相同,示範「再看一次」在這個長度沒有增益。
材料、判準、預期,在第一次呼叫之前提交進版本控制。
| 組 | S1 | S2 | S3 | S4 | S5 | 整體 |
|---|---|---|---|---|---|---|
| A 一次做完 | 6/6 | 6/6 | 6/6 | 5/6 | 5/6 | 5/6 |
| B 每步核對 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 |
A 少的那一次,是用簡體字寫了「未超过」。數字全對,字對不上判準。嚴格算 A 5/6,語意算 6/6。
「打」的換算,十二次全對。我以為最脆弱的一步沒有掉。
落在事先寫的「每步成功率可以為 1」。
今晚每步都是 1。乘起來是 1。恆等式成立,但成立得很無聊。
要講清楚它不無聊在哪。把每步改成 0.9,五步乘起來是 0.59。改成 0.95,是 0.77。這條曲線的形狀不用實驗,數學就給了。實驗能給的是每一步的那個數字。今晚給的是 1,在六次的解析度下。
六次看到六次全對,只能說每步成功率大概高於七成,不能說是 1。這是樣本量的限制。
B 組多了一句核對指令。輸出長度多了大約 4%。結果跟 A 一樣。
不是核對沒用,是沒有東西可以核對出來。A 已經全對了。這跟第 20 律那天一樣:驗證的價值要在有錯的時候才看得到。今晚沒有錯。
第一,一份清單、五步、每組六次。
第二,鏈很短。 五步、六列,換算規則明寫在題目裡。長鏈、隱含規則、跨工具的步驟,每步的 p 可能就不是 1。
第三,沒做重試。 原本要比較加了檢查點和有限重試的流程,今晚只做了檢查點。
它是恆等式,不被結果推翻。能被推翻的是「整體成功等於每步都對」這個定義:如果某一步錯了整體還算成功,那它就不是必要步驟,不該乘進去。今晚五步都是必要的。
另一條路:某一步掉了,示範乘積的效果。今晚沒有。
替每一步各估一個數字,再乘起來。
不用精確。0.9 還是 0.99,差別在五步之後是 0.59 對 0.95。你估完就知道該把檢查點放在哪一步:放在數字最小的那步前面。今晚每步都是 1,放哪裡都一樣。你的流程大概不是。
紀錄表這次加的是一欄:「每步各自的成功率」。不是整體的。
本文的協作紀錄是:清單、兩份提示詞、判定程式與預期在任何一次呼叫之前提交,之後未修改;十二次輸出逐字保留,判定由程式執行;一次簡體字輸出使嚴格判定失真,兩種算法均列。文章由 Claude 根據作者整理的寫作規則起草,作者尚未核對。這篇沒有做 Day 2 那種六個審查者的檢查。
下一篇談五個 AI 都同意,算不算五份證據。