Skip to content

[Bug]版本更新后模型调用完skills出现大段报错。 #7044

@Nyxlux-bot

Description

@Nyxlux-bot

What happened / 发生了什么

调用自己写了个生图的skills,跑完也能正常返图。然后到最后突然出现一大段报错,偶发状况,有时候不会。没更新版本前也不会这样。

Reproduce / 如何复现?

调用比较复杂的skills,使用ChatGPT的模型。

AstrBot version, deployment method (e.g., Windows Docker Desktop deployment), provider used, and messaging platform used. / AstrBot 版本、部署方式(如 Windows Docker Desktop 部署)、使用的提供商、使用的消息平台适配器

AstrBot 版本:v4.22.1
部署方式:uv包管理器
使用的提供商:第三方中转
使用的消息平台适配器:QQ机器人(websocket)

OS

Linux

Logs / 报错日志

[2026-03-27 17:01:38.904] [Core] [INFO] [runners.tool_loop_agent_runner:867]: Tool `astrbot_execute_shell` Result: {"stdout": "done\n/opt/Astrbot/data/skills/google-gemini-image-native/tmp/gemini_image_1774602084830250449.jpg\n", "stderr": "", "exit_code": 0} [2026-03-27 17:01:43.030] [Core] [INFO] [runners.tool_loop_agent_runner:640]: Agent 使用工具: ['send_message_to_user'] [2026-03-27 17:01:43.030] [Core] [INFO] [runners.tool_loop_agent_runner:686]: 使用工具:send_message_to_user,参数:{'messages': [{'type': 'plain', 'text': '老板 看我 ', 'path': '', 'url': '', 'mention_user_id': ''}, {'type': 'image', 'text': '', 'path': '/opt/Astrbot/data/skills/google-gemini-image-native/tmp/gemini_image_1774602084830250449.jpg', 'url': '', 'mention_user_id': ''}]} [2026-03-27 17:01:46.912] [Core] [INFO] [runners.tool_loop_agent_runner:867]: Tool `send_message_to_user` Result: Message sent to session 小紫:FriendMessage:14E3029D523DE1F0618BDFD3B397066B [2026-03-27 17:01:47.949] [Core] [ERRO] [v4.22.1] [sources.openai_source:577]: API 返回的 completion 无法解析:ChatCompletion(id='resp_0a1381086d7f357e0169c6477f6ea08193acd82d53874734ed', choices=[Choice(finish_reason='stop', index=0, logprobs=None, message=ChatCompletionMessage(content=None, refusal=None, role='assistant', annotations=None, audio=None, function_call=None, tool_calls=None, reasoning_content=None), native_finish_reason='stop')], created=1774602111, model='gpt-5.3-codex', object='chat.completion', service_tier=None, system_fingerprint=None, usage=CompletionUsage(completion_tokens=4, prompt_tokens=13783, total_tokens=13787, completion_tokens_details=CompletionTokensDetails(accepted_prediction_tokens=None, audio_tokens=None, reasoning_tokens=0, rejected_prediction_tokens=None), prompt_tokens_details=PromptTokensDetails(audio_tokens=None, cached_tokens=13568)))。 [2026-03-27 17:01:47.950] [Core] [WARN] [v4.22.1] [runners.tool_loop_agent_runner:283]: Chat Model CMAmc/gpt-5.3-codex request error: API 返回的 completion 无法解析:ChatCompletion(id='resp_0a1381086d7f357e0169c6477f6ea08193acd82d53874734ed', choices=[Choice(finish_reason='stop', index=0, logprobs=None, message=ChatCompletionMessage(content=None, refusal=None, role='assistant', annotations=None, audio=None, function_call=None, tool_calls=None, reasoning_content=None), native_finish_reason='stop')], created=1774602111, model='gpt-5.3-codex', object='chat.completion', service_tier=None, system_fingerprint=None, usage=CompletionUsage(completion_tokens=4, prompt_tokens=13783, total_tokens=13787, completion_tokens_details=CompletionTokensDetails(accepted_prediction_tokens=None, audio_tokens=None, reasoning_tokens=0, rejected_prediction_tokens=None), prompt_tokens_details=PromptTokensDetails(audio_tokens=None, cached_tokens=13568)))。 Traceback (most recent call last): File "/root/.local/share/uv/tools/astrbot/lib/python3.12/site-packages/astrbot/core/agent/runners/tool_loop_agent_runner.py", line 258, in _iter_llm_responses_with_fallback async for resp in self._iter_llm_responses(include_model=idx == 0): File "/root/.local/share/uv/tools/astrbot/lib/python3.12/site-packages/astrbot/core/agent/runners/tool_loop_agent_runner.py", line 235, in _iter_llm_responses yield await self.provider.text_chat(**payload) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/root/.local/share/uv/tools/astrbot/lib/python3.12/site-packages/astrbot/core/provider/sources/openai_source.py", line 803, in text_chat ) = await self._handle_api_error( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/root/.local/share/uv/tools/astrbot/lib/python3.12/site-packages/astrbot/core/provider/sources/openai_source.py", line 754, in _handle_api_error raise e File "/root/.local/share/uv/tools/astrbot/lib/python3.12/site-packages/astrbot/core/provider/sources/openai_source.py", line 791, in text_chat llm_response = await self._query(payloads, func_tool) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/root/.local/share/uv/tools/astrbot/lib/python3.12/site-packages/astrbot/core/provider/sources/openai_source.py", line 285, in _query llm_response = await self._parse_openai_completion(completion, tools) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/root/.local/share/uv/tools/astrbot/lib/python3.12/site-packages/astrbot/core/provider/sources/openai_source.py", line 578, in _parse_openai_completion raise Exception(f"API 返回的 completion 无法解析:{completion}。") Exception: API 返回的 completion 无法解析:ChatCompletion(id='resp_0a1381086d7f357e0169c6477f6ea08193acd82d53874734ed', choices=[Choice(finish_reason='stop', index=0, logprobs=None, message=ChatCompletionMessage(content=None, refusal=None, role='assistant', annotations=None, audio=None, function_call=None, tool_calls=None, reasoning_content=None), native_finish_reason='stop')], created=1774602111, model='gpt-5.3-codex', object='chat.completion', service_tier=None, system_fingerprint=None, usage=CompletionUsage(completion_tokens=4, prompt_tokens=13783, total_tokens=13787, completion_tokens_details=CompletionTokensDetails(accepted_prediction_tokens=None, audio_tokens=None, reasoning_tokens=0, rejected_prediction_tokens=None), prompt_tokens_details=PromptTokensDetails(audio_tokens=None, cached_tokens=13568)))。

Are you willing to submit a PR? / 你愿意提交 PR 吗?

  • Yes!

Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:providerThe bug / feature is about AI Provider, Models, LLM Agent, LLM Agent Runner.bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions