【BUG】关于模型请求失败,请稍后重试。 (4054) 的问题

你的运行环境(版本号「点击帮助-关于-复制」):

TRAE 版本:0.1.23(TRAE SOLO CN)
操作系统:macOS 26.5.1(Build 25F80,Darwin 25.5.0),Apple Silicon(arm64)
模型接入:自定义模型(Anthropic 格式),上游为 NVIDIA Inference API 的 aws/anthropic/bedrock-claude-opus-4-8
链路:TRAE 自定义模型 → 本机 Anthropic 兼容代理(base_url = http://192.168.64.1:8787/v1/messages )→ 上游
问题描述(你遇到了什么问题?):

在累积了大量截图/图片的长会话里,自定义模型几乎每一轮都报「模型请求失败,请稍后重试。(4054)」/「Custom model internal error… check the proxy response」,即使只发一句“你好”也失败;而新建会话做同样的事完全正常、秒回。该会话最终彻底不可用、无法自救。

逐条核对本地代理日志(代理就跑在本机,可读完整 proxy.log)与 TRAE 自身日志后,定位到 4 个 TRAE 侧可改进的点(根因里上游网关阈值那部分是 NVIDIA/Bedrock 侧、TRAE 改不了,下面只列 TRAE 能改的):

每轮重发全部历史 + 图片,无裁剪 → 图一多,会话永久性变慢变脆。 该会话累积约 156 次 image tool-call / 930 处 image 引用(TRAE 侧 prompt_max_tokens=184000,带 0.9 自动压缩)。即便只输入“你好”,TRAE 仍把整段多模态历史一起发往模型,导致该会话每一轮在网络上都是 18~44 秒的巨型请求(实测 ttfb 7~8s、total 18~44s);新会话同样“你好”约 2 秒。用户无法让该会话任何一轮变轻。

客户端在“慢但合法”的流式响应上误判失败。 代理日志显示这些慢请求大多数其实成功了(本次启动以来 38 次正常 stream done、仅 1 次中断),包括那条“你好”(18s 内完成、收到完整 message_stop),但 TRAE 仍向用户报失败。说明客户端对耗时较长(>~20–30s)的流式响应存在超时/状态误判,即使流已完整返回。

流式中途被截断后,未原子回滚,残缺 turn 固化进历史,导致会话永久损坏且用户无法自救。 TRAE 自身 ai-agent 日志中可见:某次流被中断后出现 task failed: LLMRemoteError { code: 4054 },紧接着 update_content_message_if_need_upsert_finish error-finish … parse task content error: Error(“missing field task_id”)。即一条失败/截断的 turn 没有被干净回滚,留下了缺字段的残缺记录写入会话历史。此后该会话每次新消息(哪怕“你好”)都携带这条坏历史一起发出,被持续判失败,会话再也无法恢复;前端又不提供删除/重置最后一条失败 turn 的能力,用户只能放弃整个会话。建议:流被中断时原子回滚该 turn,且提供“删除/重置最后一条失败消息”的自救入口。

错误文案误导。 4054 / check the proxy response 把原因指向代理,但代理实际已成功返回;UI 完全看不出真实原因(上游 504 网关超时 / 流中途被截断 / 客户端超时 / 历史损坏)。建议把代理/上游返回的真实原因透传到 UI(可折叠在“详情”里),否则用户只能像这样翻日志才能定位。

附加建议:

重试策略区分:首字节超时(可重试)vs. 流已开始返回后中途截断(不应盲目重发整条长流,应提示用户拆分)。
多模态历史增量/缓存,避免每轮重发全部图片。
大图/长产物会话预警:“当前会话体量较大,建议拆分或新建会话”,而不是撞墙后报 4054。
自定义模型允许配置请求/流超时与 keep-alive。

复现步骤(如何才能重现这个 Bug/问题?):

配置一个自定义模型(Anthropic 格式),指向任意本机可用的兼容端点;
在同一个会话里持续进行带大量截图/图片的多轮对话,直到累积上百张图、产物较大;
之后在该会话发送任意消息(哪怕只是“你好”)→ 频繁出现「模型请求失败 (4054)」/「check the proxy response」;
若其间某轮流式响应被中途截断,该会话此后将持续失败、无法恢复;
新建会话发送同样的消息 → 正常秒回。
报错信息或截图(如有):

UI 报错: 模型请求失败,请稍后重试。(4054) Custom model internal error… check the proxy response

本地代理日志节选(证明:大多数请求其实成功,故障在上游/客户端侧): 08:56:14 [fwd] 大请求进来 (stream) 08:56:18 首字 ttfb=3902ms ← 上游正常起流 08:57:29 stream broken: terminated total=75010ms ← 上游流跑 75s 后被对端中断 09:05:09 retry 1/2 (prev: HTTP 504) ← 上游网关首字节 504 超时(HTML 错误页) 09:51:37 [fwd] “你好” 这一轮 09:51:44 首字 ttfb=7203ms 09:51:55 stream done total=18216ms ← 代理成功返回完整响应,但 TRAE 仍报失败 本次启动累计:stream done 38 / stream broken 1 ← 大多数请求其实成功

TRAE 自身日志节选(证明:会话历史被残缺 turn 污染而永久损坏): ERROR … [CloudTaskService] task failed: LLMRemoteError { code: 4054, message: “Custom model internal error occurred. Please check the proxy response for details.” } ERROR … update_content_message_if_need_upsert_finish error-finish … parse task content error: Error(“missing field task_id”, line: 0, column: 0)

注:代理侧 terminated(undici)与 TRAE 6/24 自身日志里的 hyper IncompleteMessage 是同一现象的两端——“响应流被对端异常中断”。复现规律:小请求秒回;累积大量图片的会话里每一轮(含“你好”)都慢且易失败;一旦某轮被截断,该会话即永久不可用。

1 个赞

哇!这份排查报告太硬核、太详细了,非常感谢你花时间深入分析了 TRAE Work(原 SOLO)桌面版在自定义模型长会话下的这几个痛点 :+1:

你总结的这 4 个点(多模态历史未裁剪、慢流式响应误判、残缺 turn 固化导致会话损坏、错误文案误导)都切中了目前处理大体量图片长会话的核心机制问题。特别是流被截断后未原子回滚,导致整个会话永久损坏且无法自救,这个体验确实非常糟糕。

因为这涉及到比较底层的通信机制、状态管理和重试策略,你在论坛发出的这份包含代理日志和 TRAE 自身日志的详细分析非常有价值,开发同学在论坛看到后会很有帮助。

如果方便的话,你也可以将这些日志文件打包发送到 feedback@mail.trae.cn,方便产研团队做进一步的追踪和优化。再次感谢你对 TRAE 的深入使用和硬核反馈!:blush:

1 个赞


发个对话ID

1 个赞

1021860984925852:629038ad0e5b81fbedddf9b95ce7472d_6a325a1d8e76995c6aaf919a.6a3e4b59a61d73bd63e85f89.6a3e4b59505ec0a8044188b8:TRAE Work CN.0.1.23.no_sid.no_ppe.T(2026/6/26 17:50:17) @TRAE技术支持-麻辣鸡腿堡

1 个赞

还有新一点的对话嘛

1 个赞

.7589100948376175634:764863c52ad5f71ab30573b34627ea9d_6a3b8b91b95dcf0455610014.6a43525698e76c3f5d16b28e.6a4352555d8fc7c819afa939:Trae.T(2026/6/30 13:21:26)又是用不了,昨天还能用,放到第二天一样的环境就报错4054

1 个赞

.7589100948376175634:c50399e2329915003d96e558923f9a86_6a43b1abddc2f66667a4a1dc.6a43b1adddc2f66667a4a1de.6a43b1ac89f2a9242276c7f3:Trae.T(2026/6/30 20:08:13)这个就是报错4054,同一时间的同一天电脑同一个模型,.7589100948376175634:6fb0f99daa4c03fcefe51264501ea35a_6a3b6dccb95dcf045560fca0.6a43b1da551b16ab58f8da7d.6a43b1d8d8f851e5c881618f:Trae.T(2026/6/30 20:08:58)这个就没有报错4054,到底什么问题?

1 个赞

这个问题得到解决了吗 接入模型就遇到这个问题 对话一长就存在这个问题

.7602446529681753108:a461b916f81aa8d790bc31cac3fbd759_6a4b3fd68f3706519e98d08a.6a4b6ff6e6f0a50659668702.6a4b6ff58225b86cf5354810:Trae.T(2026/7/6 17:05:58)

1 个赞

我也遇到了相同的问题,我新开会话都会这样,trae 的兼容性太差了吧

1 个赞

我是对话一长就出现这个问题 目前还没有得到任何解决和相关技术人员回复

1 个赞

这个是自定义模型内部返回的报错,问下模型服务商,可能是他们做了什么限流的动作。

1 个赞

并没有啊 切换新对话流程就正常了

1 个赞

不是的,细节里已经明确说了,新开会话正常对话,在过长有文件图片的对话里超过一定阈值会话就废了。

1 个赞

求导出或者访问坏掉的session 的对话记录的方法,否则这个坏掉的session 内容太多,拯救不出来,新启会话做工程迁移也做不彻底。现在发现似乎sqlite是加密的?

1 个赞

长任务超出API接口限制,先尝试新开会话+分段执行任务吧

1 个赞

关键是之前4、5月份的时候使用没有问题,6月份不知道那次更新以后就出现了

1 个赞

已经无语了,中午的时候怎么样都不行,放着不管到下午自己就好了,真的不理解为什么