上下文长度多少合适

入门与上手

按任务类型和成本权衡上下文长度该开多大,给出可执行的档位判断与自查顺序,帮你不为用不上的长度多花钱。

很多人第一次配上下文长度时要么随手拉满,要么完全不管默认值,结果一边白花钱、一边聊到一半开始丢信息。这篇不讲原理,只讲怎么按你手上的活挑档位:先分任务类型,再看输入和输出各占多少,最后用站内工具核一遍数字。末尾给一份排查顺序,配错了能自己找出来。

第一次配上下文长度,很多人只有两种操作:随手拉到最大,或者干脆不管默认值。结果也很固定:一种是把整份资料无脑塞进去,账单悄悄翻倍;另一种是聊到一半开始丢信息,回头还要怀疑模型不行。

这篇不讲原理,只讲怎么按手上的活挑档位。顺序很简单:先分任务类型,再看输入和输出各占多少,最后用站内工具核一遍数字。结尾给一份排查顺序,配错了能自己找出来。

先别急着拉满:长度不是越大越好

上下文长度是上限而不是用量。配大本身通常不额外收费,但它的副作用很实际:你会不自觉地停止筛选材料,把整份文档、整段历史无脑丢进去,实际发送的 token 直接翻倍。钱是花在真实发送量上的,不是花在配置数字上的。

  • 窗口拉满时,模型对中间段落的注意力一般不如开头和结尾,长材料不分段反而更容易漏掉关键句;
  • 超出上限的报错和「聊到一半开始忘事」是两回事:前者是硬限制,后者多半是历史没裁剪;
  • 如果分不清这两个概念,先去 /ai-dict/category/basics 把「窗口上限」和「有效利用」的区别过一遍,再回来配;
  • 配之前先问一句:这份材料里有多少是我真的需要模型看到的?答不上来就别急着调大。

按任务类型对档:四类活对应四种配法

任务类型配法思路留多少余量
短问答、改写、分类够放系统提示加几轮对话即可余量很小,历史该裁就裁
单篇总结、代码文件审阅按一份材料加指令加输出估总量留出约一倍余量
多文档对比、跨文件改代码真正吃长度,前置做检索或分片按去重后的总量估
图文音视频混合输入按换算后的 token 算,不是按文件个数换算口径到 /tools 对照

这套对档的目标不是找到「最优值」,而是让你在「够用」和「浪费」之间有个参照系。真正要花心思想的是第三类任务:多文档对比、跨文件改代码、长对话助手。这类任务不是靠把窗口拉满解决的,而是靠把检索、分片、多轮拼接做在前面。

  1. 先归类把当前任务归到上表四类中的一类,别一上来就调参数。
  2. 估总量把「材料 + 指令 + 期望输出」的 token 加一遍,得到单次请求的大致量级。
  3. 留余量按表格给的比例留一点缓冲,别按最长的材料配,按典型材料配。
  4. 验一遍跑一次真实的活,看有没有报超限、有没有答非所问,再决定要不要加。

长度和钱怎么挂钩:算清三个量

第一个量是实际发送的输入 token,第二个量是生成的输出 token,第三个量是这套活要跑多少次。真正花钱的是前两个量乘以第三个量,不是配置的窗口大小。所以「配大省钱」和「配小省钱」都是伪命题,该看的是每次请求实际塞了多少。

输入量
长材料任务里通常占成本大头,靠裁剪和分片压下来
输出量
生成类、长文类任务反过来,输出敏感的任务要单独盯
调用次数
同一份活跑一次和跑一百次的差别,远大于窗口调一档

算的时候先估次数,再纠结档位。估算入口在 /tools/model-cost-calculator 和 /tools/token-price-calculator,具体单价到 /official-api 核对当时的数字。别拿记忆里的旧数字做决策,单价和档位都可能变。

配完怎么验证:一份自查顺序

配完不是就结束了,要能判断配得对不对。下面四步按顺序走,大部分问题都能定位到具体环节。第一步看报错:如果是超出上限的提示,说明配置或单次输入超了;如果是答非所问,长度可能够,但内容没被有效利用。

  • 第二步做减法:把材料砍掉一半再跑一次,答案质量没明显下降,说明原来的长度在浪费;
  • 第三步做切片:长材料切成几段分别处理再汇总,多数场景比一次塞完更稳也更省钱;
  • 第四步看延迟:窗口越大首字出得越慢,交互式产品要先用 /tools/speed-test 量个基线,再决定值不值得;
  • 如果四步都做完还是拿不准,把两次请求的实际输入量记下来,对比一下就清楚了。

什么情况下这套判断不适用

上面这套判断有个前提:你的任务是可分割的。有些任务天然不可分割,比如核对一份合同里前后条款是否冲突,这需要跨全文做一致性推理,切片会把全局关系切掉,这类只能整体喂,代价要提前接受,别硬套上面那套减法。

另外两种情况也要区别对待。一是上游平台对上下文只给固定档位、不允许连续可调,这时你只能就近选档,别在中间值的放大缩小上纠结;二是中转站或第三方接口,标称长度和实际可用长度可能不一致,接入前先拿小样本实测,判断口径可参考 /tools/verify 和 /about 的说明。

  • 需要跨全文一致性推理的任务:接受整体喂的代价,别切片;
  • 只给固定档位的平台:就近选档,不做无意义的微调;
  • 第三方或中转接口:先小样本实测,再按实测结果配;
  • 涉及对外承诺、合规判断的任务:长度配置只解决能不能塞下,不解决对不对,别混为一谈。
下一步想先看实际单价和量级,再决定配多大,最直接的办法是拿你手上的真实材料去算一遍。

常见问题

上下文长度配得越大,回答质量会越好吗?

不一定。长度只是容量上限,决定质量的是你塞进去的内容有没有用。材料越杂、越靠中间,模型越容易漏;把无关段落删掉往往比把窗口调大更有效。只有确实需要跨全文推理时,大窗口才有明显收益。

我只是日常问答和写点东西,需要动这个设置吗?

多数情况不用动,默认值就够。只有当你反复遇到材料被截断、或者助手聊久了开始忘前面说过的话,才需要看它。前者是上限不够,后者是历史没裁剪,处理方式不一样,先分清再改。

怎么知道我的长度配置是在浪费钱?

把每次请求的输入 token 记下来,和实际用到的材料量对一遍。如果输入远大于你真正提供的信息,说明有大量历史或模板在重复发送。砍掉一半材料再跑一次,结果没变差,就说明原来的配置偏大。

本文依据各平台公开文档与官方公告整理,只做中文归纳;具体做法、参数与限制以官方文档为准。