iT邦幫忙

2026 iThome 鐵人賽

DAY 6
0
AI Engineering

生成式 AI 的 30 個定律:用跨模型小實驗理解可靠 AI 的工程原則系列 第 11

第 11 律:同樣的內容,換個順序,還是同一個問題嗎?

  • 分享至 

  • xImage
  •  

前幾天談的都是一次對話裡的單一輸入。今天開始談上下文:模型看到的那一整段東西。

先問一個看起來很簡單的問題。兩份文件,行完全相同,只有順序不同。它們是同一份文件嗎?

定律

我目前把它寫成這樣:

資訊的先後、位置與修正關係是上下文條件的一部分;不能只因包含相同內容,就把交換順序後的判斷條件視為等價。

前提是:任務本身對順序敏感。有些任務不是。「這五個數字加起來多少」不管怎麼排答案都一樣。那種任務具有排列不變性,這條律不適用,應該直接承認。

它也不是在說模型一定會被順序弄糊塗。這條律講的是判斷條件:順序是條件的一部分,換了順序,條件就變了。模型跟不跟得上,是另一件事,今晚也一起看。

還有一條老規矩:沒跑過的實驗不能寫得像有結果;小樣本不能說成普遍現象。

今晚做了什麼

材料

兩組,分開評分。

A 組:換位置,語意不變。 一份六段的實驗室規則,其中一段寫例行會議「每週四下午兩點」。問會議是星期幾、幾點。答案那一段分別放在第 1、第 3、第 6 段,其他五段內容與順序不動。三份文件,答案相同。

B 組:換順序,答案相反。 一份五行的設定變更紀錄,開頭明說「後面的設定覆寫前面的同一項設定」。兩行「報告語言」夾著三行不相干的設定。問最終的報告語言。

條件 五行順序 正確答案
先英後日 英文、截止日、附錄、日文、審稿人數 日文
先日後英 日文、截止日、附錄、英文、審稿人數 英文

兩份紀錄的行集合完全相同。只有順序不同。正確答案相反。

模型是 Claude Haiku 4.5。A 組三個位置各五次,B 組兩種順序各五次,共二十五次。

量什麼

A 組:輸出含「四」且含「兩點」就算對。B 組:只含「日文」記日文,只含「英文」記英文,兩者都有或都沒有記其他。全部程式判。

事先寫下的預期

B 是本律的直接檢驗。兩邊都答對,表示順序改變了答案,模型跟上了,本律被示範。兩邊給同一個答案,表示模型把五行當成一袋資料,本律描述的錯誤被觀察到。兩種都回報。

A 是位置探測。三個位置正確率相同,這個任務在這個長度下就是可交換的,照實寫。不同,記錄哪個位置掉。

材料、判準、預期,在第一次呼叫之前提交進版本控制。

結果

條件 正確 錯誤
A 答案在第 1 段 5 0
A 答案在第 3 段 5 0
A 答案在第 6 段 5 0
B 先英後日 5 0
B 先日後英 5 0

二十五次全對。

B 組十次輸出只有兩個字:「日文」或「英文」。先英後日的五次全答日文,先日後英的五次全答英文。

同一袋東西,兩個答案

我覺得 B 組是今晚最值得看的東西,雖然它一次都沒錯。

把兩份紀錄的五行打散裝進袋子裡,兩個袋子一模一樣。任何只看「裡面有什麼」的方法,都會說這兩份紀錄等價。但正確答案一個是日文、一個是英文。

這不是模型的問題。這是題目本身的性質:答案不在內容裡,在順序裡。

模型十次全部跟上了。它沒有把五行當成一袋東西。所以今晚示範的不是「模型會搞錯」,是「順序真的是條件的一部分」,而且這個模型在這題上尊重了這件事。

換位置沒差

A 組三個位置全對。答案放第一段、放中間、放最後,模型都找得到。

這不是本律被推翻。本律說順序是條件的一部分,沒說每個任務都對順序敏感。A 組的任務是從六段裡找一段,找到就好,跟順序無關。它具有排列不變性。在這個長度下。

「在這個長度下」要講清楚。六段文件很短。文獻上「中段迷失」的現象出現在長得多的輸入。今晚沒測那種長度,那是明天第 12 律的事。

為什麼 B 組太容易

得說清楚。

提示詞明白寫了「後面的設定覆寫前面的同一項設定」。模型不用自己想覆寫規則,只要照做。如果不寫這句,模型會不會自己假設後者覆寫前者?會不會兩個都列?本次沒測。

還有,兩行「報告語言」中間只隔三行。隔三十行、隔三百行,會不會不一樣,也沒測。

所以今晚的 B 組是最乾淨的一端:規則明講、距離很近、每格五次。它示範了順序帶著資訊,沒示範模型在困難情況下能不能追蹤。

三件這次不能往外推的事

第一,一份文件、一種覆寫規則、每格五次。

第二,A 組六段,太短。 位置效應在這個長度看不到,不代表在長文件看不到。

第三,B 組規則明講。 沒講的情況,模型的預設行為未知。

這條律怎麼被推翻

這條律是關於判斷條件的陳述。能被推翻的是「這個任務對順序敏感」這個判定:如果有人證明 B 組兩份紀錄在任何合理解讀下答案都一樣,那我的題目就出錯了。今晚兩份紀錄的答案確實相反,題目沒錯。

另一條路是承認例外:A 組這類任務具有排列不變性,本律不適用。今晚就是這樣,照實寫了。

下一次整理上下文時多做的一件事

改順序之前,先問一句:這件事的答案,有沒有一部分在順序裡。

有,就別動。或者動了之後把「哪個覆寫哪個」明寫出來,像 B 組那句一樣。沒有,就放心重排。

紀錄表這次加的是一欄:「順序是否帶資訊」。

本文的協作紀錄是:材料、五份提示詞、判定程式與兩種事先情形在任何一次呼叫之前提交,之後未修改;二十五次輸出逐字保留,判定由程式執行。blueprint 原訂的長文件位置效應留給第 12 律。文章由 Claude 根據作者整理的寫作規則起草,作者尚未核對。這篇沒有做 Day 2 那種六個審查者的檢查。

下一篇談能放多少、能用多好、還要留多少:上下文的三個界線。


上一篇
第 10 律:文件裡寫「請照做」,AI 就應該照做嗎?
下一篇
第 12 律:塞得進去,不代表用得好
系列文
生成式 AI 的 30 個定律:用跨模型小實驗理解可靠 AI 的工程原則29
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言