在為長文件工作選擇模型時,不能僅僅比較標題中的 Context Window 大小,還必須權衡每個輸入 token 的價格,以及每次呼叫時有多少文件內容必須保留在活躍的 context 中。如果每次請求都支付完整的輸入 token 費用,而不是透過快取 (caching) 或分塊 (chunking) 來削減重複成本,那麼宣稱擁有較大視窗的模型並不一定比較便宜。
重點摘要
- Context Window 大小與每個 token 的成本是兩個獨立的變數。一個擁有大視窗但輸入單價較高的模型,其每次文件處理的成本,可能比搭配快取或分塊技術的小視窗模型還要高。
- 如 OpenRouter 最佳實踐指南所述,Prompt Caching 可以透過對快取命中 (cache-hit) 的 token 提供折扣,來降低重複進行長 context 呼叫的成本。但折扣率與快取存活時間 (TTL) 因供應商與模型而異,因此在估算支出前請務必確認當前條款。
- 針對長文件工作負載,在決定使用某個模型系列之前,請先在 TokenLab 的 Model Data Center (/models/data) 上,同時比較候選模型的標稱 Context Window 與當前的輸入/輸出定價。
- Gemini 3.5 Flash 或 DeepSeek V4 Flash 等快速、低成本的模型,是進行高量摘要或提取任務的合理預設選擇;而 Claude Opus 4.8 或 GPT-5.5 等旗艦模型,則更適合需要針對長 context 進行深度推理的任務,而不僅僅是因為它們能處理更多內容。
Context Window 與成本並非同一種槓桿
人們很容易將「Context Window」視為單一的購買決策:選擇能容納最長文件的模型,然後再看價格。這種方法忽略了視窗大小與成本是兩個獨立的軸線。
視窗大小告訴你單次呼叫能容納多少內容。價格則告訴你每次發送該內容時需要支付多少費用。擁有超大視窗的模型讓你免於分塊,簡化了工程流程,但如果輸入 token 的單價很高,且你在對話的每一輪都發送相同的 50,000 個 token 文件,這種便利性就會累積成真實的成本。相反地,較小的視窗會迫使你進行分塊或檢索,這雖然增加了工程工作量,但如果發送的區塊較小且模型本身很便宜,反而能降低總支出。
對於長文件產品,正確的問題不是「哪個模型視窗最大」,而是「以我的應用程式實際呼叫模型的方式來處理這份文件,成本是多少」。這取決於呼叫模式,而不僅僅是文件長度。
發送長文件時,什麼才是真正的成本驅動因素
對於長文件工作負載,有三個因素比原始視窗大小更重要:
輸入 token 佔主導地位。 對於摘要、提取、分類和檢索增強生成 (RAG) 而言,文件本身幾乎總是佔據了計費 token 的絕大部分。相比之下,輸出通常很短。這意味著輸入定價(而非輸出定價)通常是首要優化的數字。
重複會成倍增加成本。 多輪對話、代理 (agentic) 迴圈,或任何在每次呼叫時都重新發送相同文件 context 的工作流程,都會為該 context 反覆付費。除非有某種機制能減少重複成本,否則針對長文件進行十輪對話的成本,可能接近單次處理的十倍。
快取改變了單位經濟效益。 如果供應商支援 Prompt Caching,且你的應用程式在多次呼叫中重複使用相同的前綴(例如長文件、系統提示詞、工具架構),那麼快取的 token 計費方式可能與新鮮 token 不同。這是無需更換模型即可降低長文件成本的最重要槓桿。
Prompt Caching 如何改變計算方式
OpenRouter 關於 Prompt Caching 的文件 (openrouter.ai/docs/guides/best-practices/prompt-caching,觀察日期 2026-07-14) 將快取描述為一種機制:提示詞中重複的部分(通常是穩定的前綴,如系統訊息或放置在 context 前端的長文件)可由供應商快取,並在後續重複使用該前綴的呼叫中以不同費率計費。該指南指出,快取行為(包括如何寫入快取、持續時間,以及快取命中相較於全新讀取能折扣多少成本)因供應商和模型而異。
這種差異對於長文件決策至關重要。兩個擁有相同 Context Window 和相似輸入 token 定價的模型,在考慮快取後,實際成本可能會大不相同,因為某個供應商的快取 TTL 可能足以涵蓋你的請求模式,而另一個供應商的快取則可能在兩次呼叫之間過期。在估算文件密集型工作負載的成本之前,請檢查:
- 你鎖定的供應商是否支援你想要使用的模型的快取功能。
- 什麼會觸發快取寫入與快取命中(提示詞中的內容順序通常很重要)。
- 快取條目在必須重寫之前能持續多久。
- 折扣是僅適用於輸入 token,還是也會影響輸出定價。
這些細節在不同供應商之間都不能假設通用。請將 OpenRouter 的指南以及供應商自己的文件視為事實來源,而不是基於一般預期進行估算。
決策框架:將模型與文件工作負載進行匹配
| 工作負載模式 | 最關鍵因素 | 合理的起點 |
|---|---|---|
| 單次摘要或提取,一份文件,一次呼叫 | 輸入 token 價格,視窗大小足以容納文件而無需分塊 | Gemini 3.5 Flash、DeepSeek V4 Flash 或 /models/data 中的其他低成本路由模型 |
| 針對一份長文件的多輪對話 | 快取支援與快取 TTL,而不僅僅是視窗大小 | 支援 Prompt Caching 的模型;在決定前請驗證當前的快取條款 |
| 反覆處理相同語料庫的代理工作流程 | 重複呼叫下的成本、快取命中定價 | 低成本且對代理友善的模型,例如 TokenLab 代理比較中的 低成本代理模型 |
| 針對長且複雜文件的深度推理(法律、技術審查) | 模型在長 context 推理上的品質,次要於原始成本 | 旗艦模型如 Claude Opus 4.8、Claude Fable 5 或 GPT-5.5,優先評估任務準確度 |
| 跨多份文件的高量批次處理 | 大規模下的總成本,而非單次呼叫成本 | 在選擇前,先在 /models/data 上比較各候選模型的總成本預測 |
| 在廉價與高階模型間進行路由的混合工作負載 | 路由邏輯與備援成本,而非單一模型的價格 | 參閱 AI 模型路由基準測試 的路由分析 |
請將此表格作為初步篩選工具,而非最終答案。在最終確定選擇之前,請務必在 TokenLab 的 Model Data Center 上確認特定模型的當前視窗大小與定價,因為這兩個數字會隨時間變動。
實際的請求格式範例
下方的格式說明了快取友善的請求如何將穩定的可重複使用前綴(長文件)與變動的後綴(使用者的問題)分開,以便文件部分可以在多次呼叫中被快取。確切的欄位名稱和快取控制因供應商和 API 而異,因此請將此視為說明性的虛擬碼,並在實作前根據特定供應商的當前文件進行驗證。
{
"model": "example-model-id",
"messages": [
{
"role": "system",
"content": "You are a document analysis assistant. Answer only from the provided document."
},
{
"role": "user",
"content": "<<LONG_DOCUMENT_TEXT_HERE>>"
},
{
"role": "user",
"content": "Summarize section 3 and list any obligations with deadlines."
}
]
}
針對長文件、多問題工作負載的實際模式是:將文件文字保持在多次呼叫中的穩定位置(以便供應商識別快取的前綴),僅變更結尾的問題或指令。如果你的供應商的快取實作需要明確的快取標記或單獨的快取控制欄位,請根據該供應商的當前文件進行添加,而不是假設上述結構是完整的。
提交前的檢查清單
- 在 /models/data 上確認模型的當前 Context Window 與輸入/輸出定價,而不是依賴記憶或舊的比較。
- 根據預期的呼叫頻率估算每次文件處理的成本,而不僅僅是單次呼叫的成本。
- 檢查你的目標供應商是否為你想要的模型提供 Prompt Caching 文件,以及實際的快取命中折扣和 TTL 是多少。
- 考慮你的實際重複模式,判斷「分塊 + 較便宜的模型」是否優於「較昂貴模型的大視窗單次呼叫」。
- 如果你的工作負載混合了廉價的高量呼叫與偶爾的深度推理呼叫,請考慮使用路由策略而非單一模型;參閱 AI 模型路由基準測試 以獲取基於路由的成本比較。
- 對於反覆觸及長 context 的代理密集型管線,在預設使用旗艦模型之前,請先檢視 低成本代理模型 的選項。
限制
Context Window 數據和定價在各供應商之間頻繁變動,本文中提到的模型具體數字應在閱讀時與 /models/data 進行核對,而非直接採用本文數據。Prompt Caching 行為(包括折扣率和 TTL)是供應商特定的,本文未詳盡列出;在為生產工作負載編列預算前,請諮詢 OpenRouter 的指南及相關供應商自己的文件。本文未針對任何模型在長文件推理上的任務準確度進行基準測試;成本和視窗大小是模型選擇的必要條件,但並非充分條件。
常見問題 (FAQ)
更大的 Context Window 是否總是意味著長文件的成本更低? 不一定。視窗大小決定了單次呼叫能容納的內容,並不決定每個 token 的價格。一個擁有大視窗但輸入單價較高的模型,其每次文件處理的成本,可能比搭配分塊或快取技術的小視窗模型還要高。
每個模型都有提供 Prompt Caching 嗎? 不一定,且即使有提供,折扣率和快取存活時間也會因供應商和模型而異。請查看 OpenRouter 的 Prompt Caching 指南以及你打算使用的模型的特定供應商文件。
在產品發布前,我該如何比較長文件產品的模型? 從 TokenLab 的 Model Data Center (/models/data) 上的當前視窗大小和定價開始,然後根據預期的呼叫量和重複模式估算成本,並將快取(如果可用)納入考量。在最終確定選擇之前,請與 /models/rankings 以及上述連結的路由和代理成本比較進行交叉比對。現在就透過檢視 /models/data 上的當前模型數據,為你的文件工作負載建立自己的成本估算。
來源
價格觀測於 2026-07-14
- OpenRouter prompt caching觀測於 2026-07-14
- TokenLab Model Data Center觀測於 2026-07-14
- TokenLab model rankings觀測於 2026-07-14



