tbtoolbaba

大模型上下文窗口占用计算器

系统 / 工具 / 历史 / RAG / 输出分别算 token,堆叠条看占用、超窗提前预警

相关工具

使用说明

这个工具能做什么

大模型的上下文窗口(context window)是一次请求里「输入 + 输出」共享的 token 总预算。一次真实调用往往由好几部分拼成,这个工具帮你把它们分开算、合起来看

  • 系统提示词:角色设定、全局规则
  • 工具 / 函数定义:function calling / tools 的 JSON schema
  • 对话历史:此前累积的多轮消息
  • 检索上下文 (RAG):召回并注入的文档片段
  • 当前用户输入:本轮的问题或指令
  • 预留输出:为模型回复留出的空间

工具会分别计 token、用堆叠条展示各部分占了窗口的多少、还剩多少、会不会超窗,并顺带估算这次调用的费用。全部在浏览器本地完成,内容不上传服务器

如何使用

  1. 在左侧各分段框里粘贴对应内容(系统提示、工具定义、历史、RAG、当前输入)
  2. 右侧选择目标模型——不同模型的上下文窗口大小差异很大
  3. 填写「为模型回复预留的输出 token」(按预计回复长度估)
  4. 查看堆叠条与占用率:绿色充裕、黄色注意、橙色逼近上限、红色已超窗
  5. 参考「占用明细」看每一部分各占窗口多少,找出最该压缩的部分
  6. 「成本估算」按输入 / 输出分别给出单次调用费用

为什么要单独预留输出 token

上下文窗口是输入和输出共用的。如果输入内容把窗口占满,模型就没有空间生成回复,会被截断甚至直接报错。因此正确的做法是:先扣掉预计的输出 token,剩下的才是真正能用于输入的额度。本工具把预留输出也画进堆叠条(灰色斜纹段),让你一眼看出「输入 + 输出」是否已经触顶。

占用超过 100% 怎么办

当总占用超过窗口上限,堆叠条会画出一条窗口界线,界线右侧即为溢出部分。常见的压缩手段:

  • 压缩对话历史:只保留最近几轮,或对更早的历史做摘要
  • 精简 RAG 片段:减少召回条数、做重排、只保留最相关段落
  • 收敛系统提示与工具定义:去掉冗余说明,工具 schema 只留必要字段
  • 换更大窗口的模型:或把长任务拆成多次调用

精确 vs 估算

  • OpenAI 系(GPT-4o、GPT-4、GPT-3.5 等):使用官方 tiktoken 词表,token 数精确
  • Claude、Gemini、DeepSeek、通义、文心、GLM 等:官方没有公开可在浏览器运行的分词器,本工具用近似编码估算,界面会标注「估算值」,实际以各厂商官方计费为准。

隐私说明

分词、预算计算与成本估算均基于内置词表在你的浏览器本地运行,system prompt、对话历史、RAG 文档等内容都不会发送到任何服务器。

常见问题

上下文预算和普通 Token 计算器有什么区别?

普通 Token 计算器算的是「一整段文本」的 token 数;上下文预算把一次请求拆成系统提示、工具定义、对话历史、RAG 检索、当前输入以及为回复预留的输出等几部分,分别计数并汇总,用堆叠条直观呈现各部分占了上下文窗口的多少,帮你判断会不会超窗、还能塞多少内容。

为什么要给输出单独预留 token?

上下文窗口是「输入 + 输出」共享的总预算。如果输入把窗口占满,模型就没有空间生成回复,会被截断或直接报错。所以要先按预计回复长度预留一部分输出 token,剩下的才是真正能用于输入的额度。

占用超过 100% 会怎样?

超过窗口上限后,多数 API 会直接拒绝请求或从头/尾截断内容,导致丢失关键信息。工具会在超窗时用红色标出溢出的 token 数,并在堆叠条上画出窗口上限界线,提醒你压缩对话历史、精简 RAG 片段或改用更大窗口的模型。

token 数准确吗?

OpenAI 系(GPT-4o 等)使用官方 tiktoken 词表,结果精确;Claude、Gemini、DeepSeek、通义、文心、GLM 等没有公开的浏览器分词器,用近似编码估算,界面会标注「估算值」,实际以各厂商官方计费为准。

我的 prompt 内容会上传吗?

不会。分词、预算计算与成本估算全部在你的浏览器本地完成,system prompt、对话历史、RAG 文档等内容都不会离开你的设备,适合含敏感信息的场景。

更新记录

  • 2026-07-02v1.0.0上下文预算计算器上线:分段计 token、堆叠条可视化窗口占用、超窗预警与调用成本估算