先确认是同一套配置下,请求内容变大后失败
同一个工具原本能正常回复,加入整份文件、较长日志或更多历史消息后,开始返回 413 Payload Too Large,可以先围绕本次发送的内容做对照排查。
AIGoCode 的错误码说明将输入内容、文件、上下文或历史消息过大列为 413 的可能原因,建议缩短上下文、移除无关文件、降低一次请求的输入规模。下面把这条建议展开成可记录的操作顺序,帮助你找出在哪次内容变化后出现错误,同时保留完成任务所需的信息。
本文不提供统一的文件大小或 token 上限,也不把某次成功当作以后都能通过的保证。
一、留一份失败记录,先别同时改地址和模型
先记录 HTTP 状态码和响应体里的错误信息。只有工具明确返回了 413,才按这篇流程处理;“连接失败”或“没有回复”本身还不足以确定错误类型。
接着核对成功与失败的两次请求:是否使用同一工具、同一模型和同一接入配置?如果成功的是单独的 API 样例,失败的是另一个编程工具,两者尚不能直接作为输入大小对照。可以先用API 成功但工具仍连接失败的核对流程梳理配置差异;具体配置值以当前工具文档为准。
如果只有加入的内容发生变化,先保存一份简短记录:
- 任务目标,例如“解释这一处异常”,而不是只记“运行失败”。
- 本次主动加入了哪些代码、文件、日志和历史消息。
- 使用的工具、模型、发生时间,以及完整错误文本。
- 上一次成功请求与这一次相比,多出了什么。
不要把 API Key、认证头或含有凭据的完整日志放进共享记录。记录文件名、内容类别和必要的脱敏片段即可。
二、做一份精简输入,保留问题成立的条件
先复制一份用于排查的输入,保留原始材料。下文的“移除文件”指不把它加入这一轮请求,不是删除本地项目文件。
精简时要同时保留任务目标、必要背景和判断结果所需的信息。例如,排查某个函数的异常,可以先保留报错内容、相关函数及调用位置;不要删到只剩一句“帮我看看”,否则即使得到回复,也无法说明原来的任务已经能完成。
可按下面的表选择一个最容易控制的部分开始:
| 本次加入的内容 | 精简时优先检查 | 建议保留 |
|---|---|---|
| 整份代码文件或多个文件 | 与当前问题无关的函数、模块和重复片段 | 出错位置、相关调用及必要定义 |
| 长日志 | 重复行、远离错误发生时段的记录 | 错误前后的关键片段和时间关系 |
| 较长历史消息 | 已不再适用的方案、重复解释和中间讨论 | 当前目标、已确认约束和仍有效的结论 |
| 大段参考材料 | 与这一步任务无关的章节 | 本轮需要判断的段落及必要出处 |
这些是整理输入的建议,并不表示所有客户端都能直接选择每项内容。只调整工具明确允许你控制的输入;无法查看或控制的部分,在记录中标明未知,不要把聊天框里看到的文字当作完整请求。
三、固定其他条件,比较精简前后的结果
保持工具、模型和接入配置不变,提交精简后的内容。先比较请求是否成功,再判断回复是否完成了任务。两项结果要分别记录。
| 本轮结果 | 能得到的线索 | 下一步 |
|---|---|---|
| 精简后成功,且回答够用 | 这份精简材料可以完成当前任务 | 保留必要输入,停止添加无关内容 |
| 精简后成功,但缺少信息 | 当前材料不足以完成任务 | 只补回与缺失信息有关的一类内容 |
| 精简后仍是 413 | 本次缩减尚未解决问题 | 检查是否还有可移除的文件、历史或重复材料 |
| 状态码改变 | 错误表现已经变化 | 按新的状态码重新选择排查方向 |
需要补回内容时,一次补一类,并记录这次改动。如果恢复某段历史后再次出现 413,这说明该轮变化与失败同时出现,值得进一步缩小这一部分;它并不能单独证明是哪一层服务拒绝了请求,也不能给出适用于其他请求的限制数值。
例如,在一次“根据报错检查函数”的任务中,可以先只提交必要代码和错误片段;若回答缺少配置背景,再补充相关配置说明。这个例子展示的是排查顺序,不是 AIGoCode 的实测结果。
不要为了得到一个成功响应连续快速重试相同的大输入。每次尝试应能回答一个问题:这次减少或补回了什么,错误有没有变化,剩余材料是否足以完成任务。
四、让下一步工作匹配排查结果
如果较小输入能完成某个明确步骤,可以把后续工作拆成几个各自有完整背景的请求。例如先解释错误,再核对相关函数,最后验证修改是否符合约束。不要机械地按相同字数切开材料;每一步仍要能独立表达目标和必要上下文。
如果任务必须同时参考大量材料,而精简后一直缺少关键关系,就先停止盲目删减。整理一份脱敏说明:任务目标、工具与模型、错误时间、输入组成、已尝试的精简方式,以及每次返回的状态码。需要求助时,这比只发一句“长对话不能用”更容易说明问题。
判断完成的标准是:在原来出问题的使用场景中,必要输入能够得到正常响应,并且回答足以继续当前任务。一次短消息成功只完成了其中的一项验证。