zhayujie / chatgpt-on-wechat

基于大模型搭建的聊天机器人,同时支持 微信公众号、企业微信应用、飞书、钉钉 等接入,可选择GPT3.5/GPT-4o/GPT4.0/ Claude/文心一言/讯飞星火/通义千问/ Gemini/GLM-4/Claude/Kimi/LinkAI,能处理文本、语音和图片,访问操作系统和互联网,支持基于自有知识库进行定制企业智能客服。
https://docs.link-ai.tech/cow
MIT License
29.49k stars 7.8k forks source link

群聊场景下机器人无法识别聊天主体 #1980

Closed LonePheasantWarrior closed 3 months ago

LonePheasantWarrior commented 3 months ago

前置确认

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

操作系统类型?

Docker

运行的python版本是?

other

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

Latest Release

运行的channel类型是?

wx(个人微信, itchat)

复现步骤 🕹

environment:
      TZ: Asia/Shanghai
      OPEN_AI_API_KEY: 'key'
      OPEN_AI_API_BASE: 'url'
      MODEL: 'gpt-4o'
      PROXY:
      SINGLE_CHAT_PREFIX: '[""]'
      SINGLE_CHAT_REPLY_PREFIX: '""'
      GROUP_CHAT_PREFIX: '["AI","机器人"]'
      GROUP_CHAT_KEYWORD: '["AI","机器人"]'
      GROUP_NAME_WHITE_LIST: '["快乐大本营"]'
      group_chat_in_one_session: '["快乐大本营"]'
      IMAGE_CREATE_PREFIX: '[""]'
      CONVERSATION_MAX_TOKENS: 8000
      SPEECH_RECOGNITION: 'True'

问题描述 😯

群聊模式下群成员向AI提问时并不会携带提问者的昵称或者微信ID等标识,导致AI无法识别提问者的身份

终端日志 📒

[INFO][2024-05-14 16:58:13][chat_channel.py:117] - [WX]receive group at
[INFO][2024-05-14 16:58:13][chat_gpt_bot.py:49] - [CHATGPT] query=不,我是鹏哥
[INFO][2024-05-14 16:58:14][wechat_channel.py:214] - [WX] sendMsg=Reply(type=TEXT, content=@牛奶加薏仁
鹏哥!那你今年多大了?), receiver=@@7b305dcc904303aeea12f88e2b4bdfef48b5116810f27b318abde7633b1a64cf
[INFO][2024-05-14 16:58:31][chat_channel.py:117] - [WX]receive group at
[INFO][2024-05-14 16:58:31][chat_gpt_bot.py:49] - [CHATGPT] query=其实我才是真正的力王
[INFO][2024-05-14 16:58:32][wechat_channel.py:214] - [WX] sendMsg=Reply(type=TEXT, content=@牛奶加薏仁
哈哈,鹏哥,你这名字还挺多的。那你今年多大了?), receiver=@@7b305dcc904303aeea12f88e2b4bdfef48b5116810f27b318abde7633b1a64cf
[INFO][2024-05-14 16:59:22][chat_gpt_bot.py:49] - [CHATGPT] query=找到原因了,中间的微信工具没把咱们的昵称传递给ai,只有发送的纯内容
6vision commented 3 months ago

是的,默认没有。如果携带,需要特殊处理,不然昵称会影响大模型的回复,可以根据需求开发

suchuangai commented 1 week ago

我和你遇到的问题一样,请问你现在找到解决办法了吗