跳至主要内容

04|什麼是 Context Window?AI 的「視野上限」

"什麼是 Context Window?AI 的「視野上限」"

👁️ 一句話:Context Window 是 AI 一次能「看見」多少 token——超過了,就會被截掉或丟失。


一、Context Window 是什麼

每個 LLM 都有一個「一次處理的 token 上限」。

[System Prompt + 對話歷史 + RAG 結果 + 你的問題]

≤ Context Window

[模型處理]

[回應]

→ 加總超過上限的部分會被截掉,最常見的後果是「AI 忘了你開頭講的事」。


二、各家 Context Window 一覽(2026 中)

模型Context Window約 = 多少字
GPT-3.5 (legacy)4K-16K3K-12K 中文字
GPT-48K-32K6K-24K
GPT-4o / GPT-5128K-1M96K-750K
Claude 3.5200K150K
Claude Opus 4.x / Sonnet 4.x200K150K
Gemini 3 Pro1M-2M750K-1.5M
Llama 3.3 70B128K96K

⚠️ 中文要打折——中文 token 數約英文 1.5-3 倍,詳見 Token 篇

Claude 200K context 對英文 ≈ 150K word,對中文 ≈ 80K-130K 字


三、為什麼有上限?

LLM 用的 Transformer 注意力機制計算量大致是 O(n²)——n 是 token 數。

4K context → 4K² = 16M 運算
128K context → 128K² = 16,384M 運算(多 1024 倍!)
1M context → 1M² = 1,000,000M 運算

→ Context 愈長:

  • 處理愈慢
  • GPU 記憶體吃愈多
  • 成本飆升
  • 訓練難度暴增

各家用各種變形(sparse attention / sliding window / linear attention)擴大,但「愈長愈不準」這個物理限制還在。


四、長 Context 的隱藏代價

光看「200K」覺得很爽,但實際用會發現:

① 中段資訊容易被忽略("Lost in the Middle")

研究發現:把資訊放在 context 開頭或結尾,回想率 > 90%;放中段只剩 50-60%。

[開頭 90% 記得] ← 系統 prompt + 早期對話
[中段 50-60% 記得] ← 容易被遺忘的死區
[結尾 90% 記得] ← 當下提問 + 最後幾輪

→ 重要指令放 system prompt 或 user message 最後。

② Cost 線性增加

200K context 的 Claude Sonnet 4 input:

  • 200K × $3/M = $0.60/query
  • 1000 query/月 = $600(約 NT$ 19,000/月)

→ 「用大 context 取代 RAG」是常見錯誤——通常 RAG 撈 5-10 段比塞整本書更準也更便宜。

③ Latency 增加

10K context → 1-2 秒 100K context → 5-10 秒 500K context → 15-30 秒

→ 用戶體驗 / 即時 agent 都不能塞滿。


五、Needle in a Haystack 測試

業界有個經典測試:在長 context 中段藏一句「無關事實」(例:「我家貓叫小白」),然後問 AI 那個事實是什麼。

模型100K context 回想率200K context 回想率
Claude 3 Opus99%95%
GPT-4 Turbo95%86%
Gemini 1.5 Pro (1M)99%99%
Llama 3.3 70B90%78%

這個分數是「最簡單的任務」——多事實、跨段推理、矛盾資訊的場景,所有模型表現都差很多


六、實務管理 Context Window 的 4 個策略

① RAG 出最相關片段

不要把整本書塞進去,做向量檢索撈最相關的 5-10 段。

② 摘要長對話歷史

對話超過 50 輪就太肥。可定期把前 30 輪壓成 2-3 段摘要,省 90% token。

③ 結構化壓縮

JSON / 表格 比 prose 省 token。 「2026 Q1 營收 1.2 億,較去年 +8%」比寫一段話省一半。

④ Skill 動態載入

Skill 機制:用到才載入,不用就不佔 context。


七、案例:一份數十萬字的文件塞不塞得進

一份數十萬字的長文件對應 Context Window 規劃:

模型一次塞得進嗎?
GPT-3.5 (16K)❌ 不可能
Claude Sonnet 4 (200K)⚠️ 勉強塞英文版,中文版要切 2-3 段
Gemini 3 Pro (2M)✅ 一次塞得進,但成本高 + 中段精度下降
Llama 70B (128K)❌ 中文版裝不下

正確作法:文件切成 chunks 進 RAG,每次只撈相關 5-10 段 → 各模型都能用、精度更高、成本更低。


八、常見誤解

❌ 誤解✅ 正解
「200K 就放得下整份合約」中文 contract 常超過,且中段精度下降
「Context 愈大愈聰明」一定程度後反而變糊
「大 context 取代 RAG」RAG 通常更便宜、更準
「Claude 200K = Gemini 200K」各家內部機制不同,實際表現可差 30%

延伸閱讀