project
MMSkills - 上海交大与小红书联合推出的多模态技能框架
MMSkills 是上海交通大学与小红书联合推出的面向通用视觉 Agent 的多模态技能框架,支持将可复用技能从纯文本步骤扩展为包含文本流程、运行时状态卡片和多视...
MMSkills是什么
MMSkills 是上海交通大学与小红书联合推出的面向通用视觉 Agent 的多模态技能框架,支持将可复用技能从纯文本步骤扩展为包含文本流程、运行时状态卡片和多视角关键帧的多模态程序性知识,通过 branch loading 机制在运行时高效调用视觉证据,在 OSWorld、macOSWorld、VAB-Minecraft 等 GUI 与游戏任务上为 Gemini、Qwen、Kimi、GLM 等多模型家族带来稳定提升。
MMSkills的主要功能
- 多模态技能包构建:整合文本流程、运行时状态卡片与多视角关键帧,形成可复用的视觉程序性知识单元。
- 自动化技能生成:基于公开非测试交互轨迹,通过任务聚类、技能规划、合并泛化与视觉审计五阶段,自动提炼多模态技能库。
- Branch Loading 分支加载:主 Agent 在运行时临时开启 skill branch,按需调用技能而非一次性注入完整上下文,避免视觉证据污染主决策流程。
- View Selection 视角筛选:根据当前截图、历史动作与状态卡片,从技能包中智能选择最相关的关键帧与视角进行对齐。
- 结构化决策指导:分支完成视觉对齐后,向主 Agent 返回包含 applicable、subgoal、plan、do_not_do 和 verify 的紧凑决策支持。
- 跨领域任务覆盖:同时支持 GUI 桌面自动化与视觉游戏任务,如 Minecraft、Super Mario Bros,实现多模态技能的跨场景迁移复用。
MMSkills的技术原理
- 多模态技能包定义:MMSkills 将传统文本技能扩展为包含 SKILL.md 文本流程、State_cards.json 运行时状态卡片和 Images 多视角关键帧的完整单元,使 Agent 能基于视觉状态判断何时使用技能、如何验证进度。
- 自动化技能生成:通过任务聚类、簇内技能规划、技能合并泛化、文本草案生成、视觉 grounding 与审计五阶段,从公开轨迹中自动抽取可复用的诊断性状态知识,而非简单保存原始演示。
- Branch Loading 运行时机制:主 Agent 判断技能可能有用时,临时打开 skill branch 执行 View Selection 选择关键状态视角,再由 Branch Planning 将视觉证据与当前环境对齐,返回压缩后的结构化决策支持。
微信关注回复 “开源”,加入AI开源项目交流群
如何使用MMSkills
- 获取技能库:访问 Hugging Face 数据集下载预生成的多模态技能包。
- 集成主 Agent:将 MMSkills 分支加载机制接入现有视觉 Agent 的推理流程。
- 触发技能调用:主 Agent 在运行时判断当前任务可能匹配某技能,发起 branch loading 请求。
- 接收结构化指导:临时分支完成视觉证据对齐后,返回 applicable、subgoal、plan 等决策支持。
- 执行并验证:主 Agent 依据返回指导执行动作,并通过状态卡片验证任务进度。
MMSkills的核心优势
- 状态感知决策:技能包包含运行时状态卡片,Agent 能判断当前界面是否满足技能前置条件。
- 视觉证据对齐:多视角关键帧帮助 Agent 将文本条件 grounding 到真实画面,避免误操作。
- 上下文高效管理:Branch Loading 避免完整技能包直接注入主上下文,防止参考图片污染当前决策。
- 小模型增益显著:外部多模态程序性知识在 Qwen3-VL-8B 等小模型上提升超一倍,补充其内部过程先验不足。
- 行为模式优化:显著减少无效点击和重复动作,使 Agent 从探索式试错转向状态感知执行。
MMSkills的项目地址
- 项目官网:https://zkangning.github.io/MMSkills_for_Visual_Agents/
- GitHub仓库:https://github.com/zkangning/MMSkills_for_Visual_Agents
- HuggingFace模型库:https://huggingface.co/datasets/zhangkangning/mmskills
- arXiv技术论文:https://arxiv.org/pdf/2605.13527
MMSkills的同类竞品对比
| 维度 | MMSkills | Text-only Skills |
|---|---|---|
| 技能表示 | 文本流程 + 状态卡片 + 多视角关键帧 | 纯文本步骤或动作图 |
| 状态判断 | 通过运行时状态卡片和截图判断当前界面状态 | 仅靠文本描述推断,易忽略界面实际状态 |
| 运行时加载 | Branch Loading 临时分支选择性加载视觉证据 | 通常直接注入完整文本技能到主上下文 |
| 上下文污染 | 通过 View Selection 过滤,避免参考图片污染主 Agent | 文本虽无图片污染,但缺乏视觉 grounding |
| 典型失败案例 | 能识别当前激活工作表、按钮可用状态等 | 易在错误工作表创建图表、误点灰色按钮 |
| OSWorld 整体表现 | Gemini 3.1 Pro: 50.11%;Qwen3-VL-235B: 39.17% | Gemini 3.1 Pro: 40.76%;Qwen3-VL-235B: 28.57% |
MMSkills的应用场景
-
桌面 GUI 自动化:在 Ubuntu / macOS 环境中完成跨应用复杂操作(如 LibreOffice 图表创建、文件权限修改)。
-
游戏 AI 智能体:在 Minecraft 生存模式中执行长程物品获取与合成规划,或在平台跳跃游戏中基于视觉状态决策。
-
企业 RPA 增强:为现有机器人流程自动化系统增加视觉状态感知能力,提升跨软件操作的稳定性。
-
视觉任务教学:将人工操作经验沉淀为可复用多模态技能库,用于培训或辅助其他 Agent 学习。