图片关键词识别插件 astrbot_plugin_33recognition
v1.3.4
这是一个用于 astrbot 的插件,它能够调用大型语言模型(LLM)来检测用户发送的图片中是否包含预设的关键词列表(支持谐音模式)。一旦检测到关键词,插件将发送自定义的回复文本和图片。
访问统计
✨ 主要功能
- 图片内容检测: 调用 LLM 对用户发送的图片进行分析,判断图片内容是否包含预设的关键词列表中的词语。
- 相似发音识别: 可通过配置启用谐音模式(
xieyin_mode_on),支持对关键词的发音相似的中文词语(例如,关键词为“33”时,识别“珊珊”或“山山”)进行模糊匹配。 - 自定义回复:
- 支持自定义回复的文本内容。
- 支持配置回复图片列表。
- 可选择是否
@消息发送者。
- 会话控制: 支持白名单和黑名单配置,精确控制插件在哪些群组或私聊中生效。
- 自定义图片转述模型: 支持配置自定义图片转述模型的 ID(
default_image_caption_provider_id),不受单一会话限制。
指令说明
本插件主要依赖消息事件自动触发,不提供直接的指令交互。
| 触发方式 | 功能说明 | 权限 |
|---|---|---|
| 发送带图片的聊天消息 | 插件自动调用大模型检测图片内容,若检测到关键词,则发送自定义回复。 | 所有用户 |
配置项
本插件的配置项结构有所更新,您需要在 AstrBot 的配置文件中配置以下项来自定义插件行为:
| 配置项 | 描述 | 类型 | 默认值 | 备注 |
|---|---|---|---|---|
input_config |
输入配置 包含关键词列表和谐音模式开关。 | dict |
||
important_word_list |
要在图片中检测的关键词列表。 | list |
[] |
LLM 会尝试识别列表中的关键词。若为空,插件不执行检测。 |
xieyin_mode_on |
是否启用谐音模式。 | bool |
true |
true 启用后,LLM 会尝试识别关键词及其相似发音的中文词语。 |
reply_config |
回复配置 包含回复文本、是否 @ 以及回复图片列表。 | dict |
||
reply_text |
检测到关键词后,要发送的回复文本。 | string |
"nybb" |
自定义回复内容。 |
at_on |
回复时是否 @ 消息发送者。 |
bool |
true |
true 为启用,false 为禁用。 |
reply_image_name_list |
回复图片的文件名列表(含后缀)。 | list |
["nybb.jpg"] |
图片文件需放置在AstrBot\data\plugin_data\astrbot_plugin_33recognition下。留空则不回复图片。 |
black_white_list_config |
黑白名单配置 控制插件生效范围。 | dict |
||
white_list_on |
是否启用白名单(仅在列表中的群/私聊生效)。 | bool |
false |
|
white_list |
白名单的 QQ 群号或 QQ 号列表。 | list |
[] |
|
black_list_on |
是否启用黑名单(在列表中的群/私聊不生效)。 | bool |
false |
|
black_list |
黑名单的 QQ 群号或 QQ 号列表。 | list |
[] |
|
default_image_caption_provider_id |
自定义图片转述模型 provider_id。 |
string |
null |
填写 ID 可指定用于图片识别的 LLM 模型,不受会话 LLM 限制。 |
重要更新日志:
v1.3.4
- 修复白黑名单字符串处理问题
- 修复了自定义图片功能失效的问题
v1.3.0
- 支持自定义图片转述模型
provider_id。 - 支持存在多个关键词。
- 优化了配置界面的分布。
注意事项
- LLM Provider: 本插件的图片识别功能依赖于当前会话配置的 llm,或者配置的
default_image_caption_provider_id所指定的 llm。请确保该大模型可以识别图片内容。并且该插件可能会消耗一些 api 额度,请根据自身需要决定是否使用。 - 关键词未设置: 如果
important_word_list为空,插件将不会执行图片关键词检测。 - 图片路径: 配置的回复图片(如
nybb.jpg)必须放置在插件的AstrBot\data\plugin_data\astrbot_plugin_33recognition下。 - 检测结果: LLM 成功检测到关键词后,会返回
"哈基米",插件据此触发回复。 - 若有问题欢迎提交 issue
⭐ Stars
[!TIP]
如果本项目对您的生活 / 工作产生了帮助,或者您关注本项目的未来发展,请给项目 Star,这是我维护这个开源项目的动力 ❤️。