快速结论:当 LiteLLM Proxy 通过 Responses‑API bridge 将 Anthropic 格式的 /v1/messages 请求路由到 OpenAI 模型时(版本 1.83.14),成功回调(cost tracking / spend logs / custom loggers)会被静默丢弃。优先将 LiteLLM 升级到 v1.90.0 或更高版本。
适用环境:LiteLLM Proxy 1.83.14,使用 Anthropic 兼容的 /v1/messages 端点且 custom_llm_provider="openai" 的场景。
最快修复方案:将 LiteLLM 升级到 v1.90.0 或更高版本(修复提交 cfcdf87)。
注意事项:该问题在 stream 场景下无客户端可见症状,但会导致成本记录完全丢失(Issue 报道在生产中 5 天内丢失约 6 万条记录)。升级后如仍有缺失记录,请重新打开 Issue 并提供测试版本。
问题场景
用户通过 LiteLLM Proxy 的 /v1/messages 端点(Anthropic 兼容格式)请求 OpenAI 模型(如 GPT‑4),LiteLLM 内部通过 Responses‑API bridge 转发。在流式(streaming)请求中,客户端正常收到完整的 SSE 流,但所有成功回调(cost tracking、spend logs、custom loggers)均未触发,导致成本数据静默丢失。非流式请求中虽然触发成功回调,但会因类型验证错误产生重复错误日志。
报错原文
Streaming /v1/messages with OpenAI models silently drops all success callbacks (cost tracking lost) — 1.83.14
Exception: [Non-Blocking] LiteLLM.Success_Call Error: 1 validation error for AnthropicResponse
pydantic_core._pydantic_core.ValidationError: 1 validation error for AnthropicResponse
- input_type=ResponseCompletedEvent (streaming, callbacks lost)
- input_type=ResponsesAPIResponse (non-streaming, callbacks survive via duplicate event)
原因分析
根因在于 Responses‑API bridge 的 logging 对象中 call_type 被设置为 "anthropic_messages",但实际传入成功处理程序的结果对象是 Responses‑API 类型(如 ResponseCompletedEvent 或 ResponsesAPIResponse),而非 AntropicResponse。成功处理程序根据 call_type 调用 AnthropicResponse.model_validate(result),导致 pydantic ValidationError。该异常在回调循环之前被重新抛出,对于 streaming(仅一次 fire‑and‑forget 成功事件),整个成功回调流程被终止,成本记录完全丢失。
环境排查
- 确认 LiteLLM Proxy 版本是否为 1.83.14 或更早(修复在 v1.90.0+)
- 检查是否使用 Anthropic 格式的
/v1/messages端点且custom_llm_provider="openai"(启用 Responses‑API bridge) - 查看 Proxy 日志中是否存在
ValidationError for AnthropicResponse及相关堆栈
解决步骤
- 将 LiteLLM Proxy 升级到 v1.90.0 或更高版本(修复提交
cfcdf87,该版本修正了_handle_anthropic_messages_response_logging方法,将 Responses‑API 事件转换为ModelResponse后再执行日志,避免类型验证失败)。 - 重启 Proxy 服务使新版本生效。
- 如果仍无法记录成本,请检查自定义日志中间件是否有额外的过滤条件。
验证方法
使用一个 streaming 的 /v1/messages 请求(路由到 OpenAI 模型),确认 Proxy 日志中:
- 不再出现
ValidationError for AnthropicResponse错误; - 成功回调(如 spend logs、cost tracking)正常触发,并包含正确的
response_cost和call_type = "anthropic_messages"。
参考来源
AI 工具推荐
想把多个 AI 模型放在一个入口?
GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。
推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。
这个方案解决了吗?
可以继续搜索完整报错,或查看同一工具的其他排查指南。
![Bug: [vulkan] llama.cpp not work on Raspberry Pi 5](https://www.chat-gpts.plus/wp-content/uploads/2026/07/9801-8ecbd60c-768x403.jpg)

![Agent Node InvokeError: [models] Error: 'required'](https://www.chat-gpts.plus/wp-content/uploads/2026/07/39274-3d3282fa-768x403.jpg)