CogAgent icon indicating copy to clipboard operation
CogAgent copied to clipboard

落地场景微调

Open yujin2021 opened this issue 5 months ago • 2 comments

您好,感谢你们开源 CogAgent,它在多模态 UI 理解任务中表现非常出色!

我正在将 CogAgent 应用于移动端 App 自动化测试场景,但在实际使用中发现了一些问题:

  • 会误点击不可交互的元素(如灰化/禁用状态的按钮)
  • 输入框的边界框识别范围过大或不精确
  • 无法判断何时应该滑动而非点击(例如目标元素不在当前页面时)

为了提升模型在我们业务场景中的表现,我计划基于特定数据集进行微调。但在准备过程中遇到了以下几个问题,希望能得到一些建议:

  1. 数据收集效率低,尤其是边界框标注困难 目前缺乏高效的标注工具来精确标注 UI 元素(包括文本、坐标、是否可点击等)。请问是否有推荐的标注工具或工作流?例如支持移动端截图标注、可导出为 CogAgent 微调格式的工具?

  2. 微调数据量有限,当前仅积累 20–30 条高质量样本

    • 这样的数据量是否足以带来有效提升?
    • 对于小样本场景,是否有推荐的策略?
    • 针对 UI 导航类任务(如点击、滑动、输入),是否有推荐的最小数据量或训练实践?
  3. 如何在提升领域性能的同时,保留模型的通用能力? 我们希望在优化App 测试表现的同时,不破坏 CogAgent 原有的通用 UI 理解能力。是否有推荐的微调策略或配置?

yujin2021 avatar Sep 04 '25 01:09 yujin2021

使用25条数据去做Lora微调,模型并未遵从user用户输入中的指令,输出像是乱说的 推理数据如下: {"response": "Action: 点击屏幕底部中间的红色“确认无误”按钮,以确认已输入的单位电话无误。\nGrounded Operation: CLICK(box=[[040,424,962,467]], element_info='确认无误')", "labels": "Action: 在页面中找到“请输入(选填)”的文本框,左键单击以激活输入框,准备输入单位电话。\nGrounded Operation: CLICK(box=[[733,284,960,307]], element_info='请输入(选填)')", "messages": [{"role": "user", "content": "Task: 输入单位电话:95555\nHistory steps: \n(Platform: Mobile)\n(Answer in Action-Operation format.)\n\n"}, {"role": "assistant", "content": "Action: 点击屏幕底部中间的红色“确认无误”按钮,以确认已输入的单位电话无误。\nGrounded Operation: CLICK(box=[[040,424,962,467]], element_info='确认无误')"}], "images": [{"bytes": null, "path": "images/10.jpg"}]}

Image

yujin2021 avatar Sep 04 '25 09:09 yujin2021

使用了ms-swift微调,所以微调格式和官方给的有所不同

yujin2021 avatar Sep 04 '25 09:09 yujin2021