Skip to content

企业微信应用模式下,gpt-4o 图片消息静默失败 (无回复) #2625

@perfectleons

Description

@perfectleons

前置确认

  • 我确认我运行的是最新版本的代码,并且安装了所需的依赖,在FAQS中也未找到类似问题。

⚠️ 搜索issues中是否已存在类似问题

  • 我已经搜索过issues和disscussions,没有跟我遇到的问题相关的issue

操作系统类型?

Docker

运行的python版本是?

python 3.10

使用的chatgpt-on-wechat版本是?

Latest Release

运行的channel类型是?

other

复现步骤 🕹

  1. 使用最新的 master 分支代码和 Docker 进行部署。
  2. docker-compose.yml 中配置好 CHANNEL_TYPE: "wechatcom_app" 以及一个确认有效(Tier 1, 余额充足)的 gpt-4o API Key。
  3. 启动容器 docker-compose up --build -d
  4. 向企业微信应用发送一条文字消息,机器人正常回复。
  5. 向企业微信应用发送一张图片。

预期结果:
机器人分析图片内容后,返回文字回复。

实际结果:
机器人没有任何回复。应用日志正常,无任何报错。

问题描述 😯

问题概述

在使用 Docker 基于最新的 master 分支代码部署后,机器人处理文字消息完全正常,但处理图片消息时会静默失败,即机器人不作任何回复。

详细情况

  1. 环境与配置:使用 docker-compose 构建和运行,配置了企业微信应用 (wechatcom_app) 和 gpt-4o 模型,OpenAI 账户为 Tier 1 且余额充足。
  2. 程序日志表现:根据详细的 debug 日志,程序能够成功接收并下载图片消息,上下文 (context) 也被成功创建并送入后台处理队列 (Produce finished.)。全程没有任何错误或异常日志。
  3. OpenAI 后台用量:在发送图片后,OpenAI 的 Usage 页面显示 Images 类型的请求为 0,证明 API 请求从未成功从服务器发出。
  4. 终极测试:在容器内部执行一个独立的 Python 测试脚本 (test_vision.py),使用相同的 API Key 和图片,可以成功调用 gpt-4o API 并获得正确的图片分析结果。

最终结论

上述情况证明,部署环境、网络、Docker 配置、OpenAI 账户及 API Key 均完全正常。问题最终指向 chatgpt-on-wechat 项目在处理 ContextType.IMAGE 类型的消息时,其后台工作线程(Worker Thread)存在一个深层的静默bug,导致任务在被队列接收后、调用 OpenAI API 之前就无声地失败了。

终端日志 📒

chatgpt-on-wechat | [INFO][2025-08-27 20:02:47][wechatcomapp_channel.py:153] - [wechatcom] receive params: <Storage {'nonce': '1756154085', 'msg_signature': '7addab8966bf4e5a5ed67b448285fdc82cd171e1', 'timestamp': '1756324936'}>
chatgpt-on-wechat | [INFO][2025-08-27 20:02:47][wechatcomapp_channel.py:169] - [wechatcom_debug] Received image message, MediaId: 1E1n8M3Zy4ZmE_YXXbbvulxn25zrwZGz1ngL0GMPIrHYtI777Iux3xcO-5gCqwMvQCvI64RZMrR8o1V2qANm4zg
chatgpt-on-wechat | [INFO][2025-08-27 20:02:47][wechatcomapp_message.py:34] - [wechatcom_debug] Immediately downloading image, MediaId: 1E1n8M3Zy4ZmE_YXXbbvulxn25zrwZGz1ngL0GMPIrHYtI777Iux3xcO-5gCqwMvQCvI64RZMrR8o1V2qANm4zg
chatgpt-on-wechat | [INFO][2025-08-27 20:02:49][wechatcomapp_message.py:38] - [wechatcom_debug] Image downloaded successfully into memory!
chatgpt-on-wechat | [INFO][2025-08-27 20:02:49][wechatcomapp_channel.py:187] - [wechatcom_debug] Context created, producing to channel...
chatgpt-on-wechat | [INFO][2025-08-27 20:02:49][wechatcomapp_channel.py:189] - [wechatcom_debug] Produce finished.
chatgpt-on-wechat | 172.18.0.1:46178 - - [27/Aug/2025 20:02:49] "HTTP/1.1 POST /wxcomapp" - 200 OK

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions