【功能建议】允许机器人在群组中处理被回复消息的内容
**问题类型 (Issue Type):**
* [x] 功能请求 (Feature Request)
****功能问题相关****
当前,在群聊中,如果用户通过“回复”功能指向某条先前的消息(包含文本或图片),并在回复的文本中 `@` 提及机器人并发出指令(例如“总结这段话”、“描述这张图片”),机器人无法获取被回复消息的内容。
**具体场景 (Scenario):**
1. 用户 A 在群里发送一条消息(可能是长文本或一张图片)。
2. 用户 B 想要让机器人基于用户 A 的消息执行操作。
3. 用户 B 使用“回复”功能,选中用户 A 的消息。
4. 在回复输入框中,用户 B 输入 `@机器人 请总结` 或 `@机器人 这是什么图片?`。
5. **当前行为 :** 机器人接收到 `@机器人 请总结` 或类似指令,但因为它没有访问被回复消息(用户 A 的消息)的内容,所以它无法执行任务。它可能会回复说它看不到文本/图片,或者只是基于用户 B 输入的指令本身进行回应(如截图所示)。
6. 机器人在回复中被提及时忽略上下文(文本/图片)
7. **期望行为:** 机器人应该识别出这是一个回复操作,自动获取被回复消息(用户 A 的消息)的文本或图片内容,并将其作为上下文来执行用户 B 在回复中给出的指令。
**截图示例:**
* 截图 1 & 2 显示用户回复了一条包含**文本**的消息并 `@` 机器人要求总结,但机器人表示无法看到该段落。
<img width="454" alt="Image" src="https://github.com/user-attachments/assets/42b112d4-6a10-4d72-acde-ec4b152bf6c8" />
<img width="454" alt="Image" src="https://github.com/user-attachments/assets/ce3133bc-60c6-4d7d-9df9-88354fb1e343" />
*
* 截图 3 显示用户回复了一条包含**图片**的消息并 `@` 机器人要求描述,但机器人首次回复表示无法看到图片。(第二次截图显示直接发送图片并 `@` 机器人是可以识别的,证明问题在于“回复”的上下文传递)。
*
<img width="454" alt="Image" src="https://github.com/user-attachments/assets/906fcb15-1489-4e4d-9461-cca3640f3c44" />
****解决方案****
希望机器人能够集成聊天平台的“回复”上下文信息。当机器人被 `@` 提及的消息本身是一个“回复”时,它应该:
1. 检测到该消息是对另一条消息的回复。
2. 从聊天平台 API (如果可用) 获取被回复的原始消息的 ID。
3. 根据 ID 获取原始消息的内容(文本或图片数据)。
4. 将原始消息的内容作为处理用户指令的主要输入/上下文。
5. 例如,对于 `@机器人 总结一下` 的回复,它应该总结被回复消息的文本。对于 `@机器人 描述图片` 的回复,它应该分析被回复消息中的图片。
6. 使机器人能在被提及时理解并回应被回复的文本/图片
**考虑过的替代方案**
目前的解决方法是:
* 手动复制粘贴原文,然后 `@` 机器人。
* 重新上传图片,然后 `@` 机器人。
这两种方法都非常繁琐,破坏了“回复”功能带来的便利性和对话流程的自然性。
**其他信息**
* 能够处理回复上下文是现代聊天机器人交互的核心功能之一,极大地提升了在群聊环境中的可用性。
* 这使得用户可以方便地针对历史消息进行提问、总结、分析等操作,而无需打断对话流去复制粘贴。
1 条评论