如何为Qwen-MM-Plugins添加新能力?开发者必看的详细指南

【免费下载链接】Qwen-MM-Plugins Make any agent harness multimodal-native. 【免费下载链接】Qwen-MM-Plugins 项目地址: https://gitcode.com/gh_mirrors/qw/Qwen-MM-Plugins

Qwen-MM-Plugins是一个让任何智能体具备多模态原生能力的开源项目,本文将为开发者提供详细的指南,帮助你快速为其添加新能力。

快速入门:复制模板开始开发

添加新能力最快的方式是复制项目中已有的示例模板进行修改。项目提供了一个可直接运行的模板,位于src/capabilities/example/目录下。你只需将该目录复制一份,然后根据自己的需求进行修改即可。

Qwen-MM-Plugins核心功能使用示例

新能力的结构组成

一个完整的Qwen-MM-Plugins能力通常包含以下两个部分:

  1. Agent Skill:位于skill/目录下,主要包含SKILL.md文件,用于描述能力的名称、功能等信息。

  2. MCP server 包:这是一个Python包,目录名即为导入名,需要是合法的Python标识符。该包下通常包含:

    • __init__.py:定义版本信息、注册工具等
    • __main__.py:通用入口文件
    • tools/目录:存放具体的工具实现,每个工具一个.py文件

工具开发约定

tools/目录下新建工具文件时,需要遵循以下约定:

  1. 定义一个Pydantic模型作为工具的参数,用于自动生成工具的inputSchema并校验每次调用。

  2. 导出TOOL变量,包含工具的名称、描述和参数模型。

  3. 实现handle函数,接收参数并返回MCP content blocks(如文本或图片)。

示例代码结构如下:

from pydantic import BaseModel, Field

class EchoArgs(BaseModel):
    message: str = Field(description="Text to echo back.")
    repeat: int = Field(default=1, description="Repeat count (1-10).")

TOOL = {"name": "echo", "description": "...", "args": EchoArgs}

def handle(arguments: dict) -> list[dict]:
    ...
    return [{"type": "text", "text": ...}]

Qwen-MM-Plugins API使用示例

运行与安装新能力

开发完成后,你可以通过以下方式运行和安装新能力:

从源码直接运行

python3 src/capabilities/yourname/qwen_mm_plugins_yourname --version
python3 src/capabilities/yourname/qwen_mm_plugins_yourname --check-system

安装到应用中

首先将你的能力添加到marketplace.json,然后执行以下命令安装:

claude plugin marketplace add <本地仓库路径或 git URL>
claude plugin install qwen-mm-plugins-yourname@qwen-mm-plugins

修改配置文件

添加新能力后,需要修改以下配置文件:

  1. pyproject.toml:添加入口、依赖项、包目录映射等。
  2. .claude-plugin/marketplace.json:在plugins中添加新能力的信息。
  3. 插件目录下的.plugin.json:描述能力的元信息。

Qwen-MM-Plugins安装界面

复用共享库代码

项目提供了一个共享库src/shared/,包含多种实用功能,如配置管理、内容处理、图像处理、视频处理等。你可以直接导入这些模块来复用代码,提高开发效率。

例如,使用共享库中的图像处理功能:

from shared.image import draw_boxes, save_image

测试新能力

完成开发后,不要忘记为新能力添加测试。项目的测试相关文档可以参考测试。虽然conftest会自动发现你的server包,但schema baseline等步骤需要手动添加。

通过以上步骤,你就可以成功为Qwen-MM-Plugins添加新的能力了。开始动手尝试吧!如果你在开发过程中遇到问题,可以查阅项目的官方文档或向社区寻求帮助。

【免费下载链接】Qwen-MM-Plugins Make any agent harness multimodal-native. 【免费下载链接】Qwen-MM-Plugins 项目地址: https://gitcode.com/gh_mirrors/qw/Qwen-MM-Plugins

更多推荐