我用一个 skill 把视觉活外包了
内容提要
作者介绍了一种解决AI模型不支持多模态图片识别的方法:通过skill调用外部多模态模型API,将识别结果返回给当前会话模型。整个流程对用户无感,代码包含SKILL.md和analyze_image.py两个文件,兼容OpenAI和Anthropic格式,搭配阿里百炼qwen3.7-plus效果良好,并已开源在GitHub上。
延伸解读
Skill 的本质与局限
作者指出,skill 本质上是一份 Markdown 说明书,本身不会运行在其他模型上,真正执行的是当前模型。这意味着 skill 的能力受限于当前模型能否调用外部工具(如 Python 脚本)来访问 API。因此,设计 skill 时需确保当前模型能理解并执行调用外部多模态模型的步骤,否则无法实现图片识别。
架构设计:无感桥接
该方案通过 skill 调用外部多模态模型 API,将识别结果返回给当前会话模型,整个过程对用户无感。这种桥接方式允许在不更换当前模型的情况下扩展其能力,适用于模型不支持多模态但需要图片识别的场景。实现上仅需两个文件(SKILL.md 和 analyze_image.py)及配置文件,降低了集成门槛。
兼容性与实践建议
代码兼容 OpenAI 和 Anthropic 两种 API 格式,增加了适用性。作者推荐搭配阿里百炼的 qwen3.7-plus,效果良好。对于有类似需求的用户,可参考开源代码进行部署。但需注意,实际效果可能因所选多模态模型和 API 配置而异,建议根据自身需求调整。
Q&A
如何在不更换当前AI模型的情况下实现图片识别?
通过创建一个skill,调用外部多模态模型的API来识别图片,并将识别结果返回给当前会话模型。这样当前模型无需支持多模态,也能完成图片识别任务。
deepseek-v4-flash模型支持图片识别吗?
deepseek-v4-flash模型本身不支持多模态图片识别,但可以通过调用外部多模态模型API来间接实现。
这个图片识别方案需要哪些文件?
需要两个文件:SKILL.md(告诉模型何时使用及如何使用)和analyze_image.py(负责调用API),配置放在config.json中。
这个方案兼容哪些API格式?
兼容OpenAI格式和Anthropic格式的API。
作者推荐搭配哪个多模态模型使用?
作者推荐搭配阿里百炼的qwen3.7-plus,效果非常不错。
这个图片识别方案的开源代码在哪里可以找到?
代码已开源在GitHub上,地址为:https://github.com/anghunk/image-analysis-fallback,也可以通过指令git clone https://github.com/anghunk/image-analysis-fallback.git ~/.zcode/skills/image-analysis-fallback下载。