第 3 課模組一:模型內部是怎樣運作 12 分鐘· 程度: 入門

Tokenization:為甚麼同一句話中文比英文貴

用切樂高積木的比喻講解 token 是甚麼,並解釋中文為何耗用更多 token、以及這對成本與字數控制的實際影響。

Read in English

一句話答案:模型看不到「字」,它看到的是一堆預先切好的碎片;中文一句話切出來的碎片,往往比同樣意思的英文多,所以同一份教材的中文版會佔用更多額度。

由一個「明明數得到」的問題說起

一位小四中文科老師想做一份筆順練習,於是叫 AI 幫手:「『學而時習之,不亦說乎』這句有幾多個字?」AI 答「九個字」。老師自己數,連標點是十個字、不連標點是八個字。無論怎樣數都不是九。

她再試:「請寫一首藏頭詩,每句第一個字連起來是『勤學不倦』。」AI 寫出來的四句,第一個字是「勤、學、不、勞」。最後一個字錯了。

同一個 AI 可以寫出結構完整的教案、可以分析文言文的修辭,卻數不到九個字。這不是它「唔夠聰明」,而是它根本看不到你所謂的「字」。

樂高積木:模型手上的零件盒

想像你要用樂高砌一句話。你的零件盒裡不是每個中文字一塊積木,也不是每個英文單字一塊積木,而是廠商預先決定好的一套碎片——大約十萬塊左右,有些是完整的常見字詞,有些只是半個字、一個字母組合,甚至是一段標點。

模型讀一句話,第一件事就是把它拆成這些現成的碎片;寫一句話,也是逐塊碎片拼出去。這些碎片叫 token,中文通常譯作「詞元」。

零件盒是怎樣定出來的?簡單講:訓練者拿一大堆文字統計,把最常一起出現的字母組合合併成一塊積木,重複幾萬次,就得到一套「常見的東西一塊起,罕見的東西砌幾塊」的零件盒。這套做法叫 BPE。這也解釋了為甚麼常用詞往往剛好是一個 token,而罕見的專有名詞會被切得零零碎碎。

關鍵在於:零件盒主要是用英文為主的資料統計出來的。

為甚麼中文比較貴

OpenAI 自己給的英文估算是:大約四個英文字母等於一個 token,一百個 token 大約是七十五個英文單字。

中文的情況不同。中文沒有空格分詞,而且字元集大得多,所以在同一個零件盒裡,常見中文字大致是一個字一個 token,較罕見的字、人名地名、以及部分標點可能要兩至三個 token 才砌得出來。

把這個差異放到實務上:

  • 一段 300 字的英文短文,大約 380 至 420 個 token。
  • 一段意思相同的 300 字中文短文,大約 350 至 600 個 token,視乎用字。
  • 一份三十頁的中文校本課程文件,很容易去到三至五萬 token。

再加上一個常被忽略的地方:輸出也算 token,而且輸出的單價通常是輸入的幾倍。你叫 AI 用中文寫兩千字的教案,佔用的額度比你想像中大。

要看清楚這件事,最直接的方法是用 OpenAI 的 Tokenizer 工具,把你自己的教材貼進去看它怎樣切。

這如何影響上下文長度

上下文視窗是模型的「大腦記憶體」——它一次過能夠拿在手上的東西有多少。現時主流旗艦模型的上下文大約是一百萬 token 上下,聽起來近乎無限,但注意:計算單位是 token,不是字。

對學校而言,實際的限制是這樣的:一百萬 token 大概可以放下一整年的中文教材,但這不代表你應該這樣做。原因有兩個,一個是成本(部分供應商對超長請求另有加價),另一個是準確度——把大量無關內容塞進去,模型反而更容易漏掉中間的重點。這個現象在 Chunking 與重排序那一課 會詳細處理,而正確做法是 用 RAG 只取相關段落

一個課室裡的例子

一位中三通識科主任想把全科的校本筆記、過去三年的評估卷與評分準則都放進 AI,讓同事問「我們對『粵港澳大灣區』單元的評分要求是甚麼」時可以即時得到答案。

他最初的做法是每次對話都把全部文件貼進去。結果有三個問題:一是每次貼上都要等很久;二是模型有時會引用到完全無關的單元;三是他發現同一份中文文件,轉成英文之後 token 數少了三成,於是一度考慮把校本筆記全部譯成英文——這當然不可行,因為學生讀的是中文。

正確的解法不是壓縮語言,而是改變取用方式:把文件切成段落、建立索引,每次只把最相關的三至五段連同問題一併送進模型,並要求答案註明引用來源。這就是校本知識庫的做法,token 用量由每次五萬降到每次三千,準確度反而更高。

先自己試一次

把下面貼進任何 AI 工具,你會親眼看到 token 邊界造成的現象:

以下這句話有幾多個中文字(不計標點)?請逐個字列出來,再數一次確認。
「香港特別行政區政府教育局課程發展處」
另外,請告訴我這句話大約會佔用幾多個 token,以及為甚麼你數字數的時候容易出錯。

多數模型會答錯字數,或者第一次數完和第二次數完不一致。這不是模型壞了,而是你要求它做的事情(逐個字元計數)剛好卡在它的零件盒邊界上。

這對你的課堂意味甚麼

  1. 需要精確字數的工作,交給文書軟件。 「這篇作文夠不夠 500 字」用 Word 的字數統計,「這班平均分幾多」用試算表。AI 用來寫評語和分析,不要用來做計數。
  2. 估算長度時把中文乘以一點五。 想知道一份教材塞不塞得下,用「中文字數 × 1.5」作粗略 token 估算,通常夠用。
  3. 不要為了慳 token 而犧牲提示的清晰度。 提示裡多寫兩句條件所花的 token,遠低於輸出不合用之後重做一次的成本。
  4. 與供應商談價錢時,問清楚計價方式。 「每百萬 token 十美元」對學校沒有意義,除非你知道學校一年會用幾多 token。以學校年費訂閱、AI 用量包含在內的計價方式,對預算編製友善得多,因為它把 token 波動的風險由學校身上移走。

下一步

現在你知道模型是用碎片來讀寫的。但那套「知道哪些碎片常一起出現」的知識,究竟儲存在哪裡?答案是參數,而參數的數量正是每次新聞稿都要吹噓的那個數字。下一課我們看看它究竟代表甚麼。

繼續閱讀:參數的意義。上一課:Transformer 架構白話版

本課重點

  • 能夠解釋 token 不等於字,也不等於詞,而是模型字彙表裡的一塊碎片。
  • 能夠估算一份中文教材大概會用掉幾多 token,並判斷是否超出上下文長度。
  • 能夠解釋為甚麼叫 AI 數中文字數、數句子或做藏頭詩經常會出錯。
  • 能夠在採購或報價討論中,分辨「每百萬 token 價錢」與「學校實際支出」的分別。

常見問題

不一定。常見的中文字通常是一個 token,較罕見的字、專有名詞與標點可能被切成兩個或更多。粗略估算可以用「一個中文字約等於一至兩個 token」,而英文則大約四個字母等於一個 token。

對純粹的指令部分,用英文確實較省;但如果你要求輸出繁體中文,輸出部分的 token 數不會因此減少,而且用英文描述香港課程脈絡容易失真。實務建議是指令用你最能寫得精準的語言,不要為了慳 token 而犧牲清晰度。

因為它看到的不是一個個字,而是切好的碎片,碎片的邊界跟字的邊界並不一致。要數字數、數句數或做藏頭詩,交給文書軟件或試算表處理,比要求模型自己數可靠得多。

資料來源、信任標籤與免責聲明
  • · 本文所有價格、功能與規格以上列官方文檔為準;供應商可隨時調整,請於採購前自行覆核。
  • · 文中提及的產品名稱與商標均屬其各自擁有者所有。Edor.ai 與該等公司並無合作、代理或贊助關係。
  • · 本文為教育用途的獨立整理與評測,不構成任何採購建議或法律意見。
  • · 涉及學生個人資料的應用,請按學校政策及《個人資料(私隱)條例》(PDPO)自行評估後才使用。
訂閱教育 AI 通訊

每月一封:給香港學校的 AI 教學實戰文章、平台更新與撥款資訊。隨時可取消。

我們只會用此電郵寄送通訊,不會分享給第三方。