PicSearch Plugin
一个利用视觉语言模型(VLM)进行智能图片筛选的 AstrBot 插件。
工作原理
本插件采用一种“淘汰赛”机制来从海量图片中找到最符合用户要求的一张。其工作流程如下:
- 抓取 (Scraping): 根据用户提供的关键词,从 Bing 图片搜索抓取大量(默认为64张)候选图片链接。
- 合成 (Composing): 将一批候选图片(例如16张)在内存中合成为一张带有数字标签的拼接图(Collage)。
- 筛选 (VLM Selection): 将这张拼接图和用户提供的详细描述,一同提交给一个多模态大语言模型(VLM)。
- 淘汰 (Elimination): VLM 会返回它认为符合描述的图片的数字标签。这些被选中的图片将成为“优胜者”,进入下一轮比赛。
- 循环 (Looping): 重复第 2-4 步,直到只剩下一位最终的“冠军”图片。
- 返回结果: 将最终胜出的图片发送给用户。
这个过程通过多轮对比和筛选,能够从一个宽泛的搜索结果中,相对精确地定位到满足具体视觉描述的图片。
使用方法
你可以通过发送指令来使用本插件,同时本插件也已注册llm工具调用。下载安装后请注意配置支持视觉输入的供应商,本插件在gemini-2.5-flash上进行开发验证测试。
指令格式
/搜图 <关键词> <详细描述> [数量]
参数说明
<关键词>: (必填) 用于在搜索引擎进行初步筛选的通用词语。- 示例:
猫,风景,汽车
- 示例:
<详细描述>: (必填) 用于让 VLM 进行精确智能筛选的、对画面的具体描述。描述越详细,结果越精确。- 示例:
一只正在打哈欠的黑猫,雨后黄昏的城市街道,一辆红色的法拉利跑车
- 示例:
[数量]: (可选) 初始抓取的图片数量,用于扩大筛选范围。数量越多,找到满意结果的概率越大,但耗时也越长。默认为64。- 示例:
100
- 示例:
使用示例
/搜图 狗 最凶猛的/搜图 东京街景 雨夜,霓虹灯闪烁 100