提示词上下文窗口 使用指南
统计多轮对话的 token 占用,计算其在模型上下文窗口中的占比,辅助裁剪历史与压缩提示,适用于长对话管理、上下文溢出预警与成本估算。
计算公式与原理
已用 tokens = 系统提示 + 历史 + 当前输入;剩余 = 上下文窗口 − 已用;占用率 = 已用 / 窗口 × 100%
上下文窗口是硬性上限,输入加输出总和超限会被截断或报错。占用超过 90% 时应压缩历史、摘要旧对话或改用更长上下文模型;注意输出也要预留额度,不能把窗口填满。
使用步骤
- 填写「系统提示 token」。
- 填写「历史消息 token」。
- 填写「当前输入 token」。
- 填写「模型上下文窗口」。
- 结果区会即时更新;可一键复制结果用于记录或汇报。
典型使用场景
- 上下文占用=累计 token 数 / 模型上下文窗口长度(如 8k/32k/128k)。
- 多轮对话需扣除历史 token,超出窗口须裁剪或摘要压缩,否则被截断。
- 占用比越高越易触发截断与成本上升,长对话应定期清理低价值历史。
算例参考
- 长对话溢出预警:窗口 32k,当前累计 28k token → 占用 87.5%,剩余 4k 仅够约一句长回复。若再追加 5k 历史将溢出,应裁剪最早 6k 或用摘要替代原文。
注意事项
结果为按上述公式得到的理论估算值,实际表现受数据分布、实现细节与运行环境影响,落地决策请以实测为准;本工具纯前端运行,输入不上传服务器。
- 为什么超出窗口会被截断?
- 模型注意力只能覆盖固定长度上下文,超出的前缀会被丢弃(或报错)。裁剪应保留最近对话与关键事实,避免丢失约束指令。
- 压缩历史会丢信息吗?
- 会。摘要压缩以语义概括替代原文,可能损失细节;权衡做法是保留最近 N 轮原文、更早的做摘要,关键参数始终置顶。