- 人工智能
- GUI 自动化
【免费下载链接】cua-s1-forms
cua-s1-forms 是一个专攻 GUI 表单填写的小型决策模型:仅 706,048 个参数、2.8 MB 权重文件,单次前向推理即可为每个表单字段的全部候选选项打分,在合成测试集上 top-1 准确率达 99.95%,真实表单评测为 100%。本文带你完整拆解它的架构设计、训练数据与权重工程细节。
一、不做生成、只做"选择题":cua-s1-forms 是什么?
很多人以为让 AI 填表需要大语言模型逐字生成答案,cua-s1-forms 走了另一条路——它是一个 System One(直觉式)单次选项打分器:给定一个 UI 元素和一串候选选项(每个文档实体一个fill选项,外加check/click/skip三个固定动作),一次前向传播返回每个选项一个概率,全程不生成任何文本。
它的输入输出契约非常简洁(见 README.md):
- Context(按字节截断至 224 字节):任务、表单标题、当前元素三行,例如
TASK fill the form from the document, then submit+ELEMENT Edit "Phone number" value="" - Options(每项截断至 96 字节):
fill Tel: (503) 555-0142、fill DOB: 03/14/1987……以及check、click、skip - Output:每个选项一个概率。执行层取 argmax,若是
fill则按索引查实体,再把动作发给 cua-driver 的set_value/click
一个关键设计:表单上所有可操作元素都在同一个 batch 里独立、并行地打分。至于执行顺序(先填值、再勾选、最后点一次提交)由下游代码决定,而不是模型——模型只负责"这个元素选哪个",不负责"先做哪个"。
二、架构拆解:70万参数花在了哪里?
完整架构配置就写在侧车文件 cua-s1-forms.json 里:
| 配置项 | 值 | 含义 |
|---|---|---|
layers | 2 | 两层 Transformer 编码器 |
width | 128 | 隐层宽度 |
heads | 4 | 注意力头数 |
context_tokens | 224 | 上下文字节长度上限 |
option_tokens | 96 | 单个选项字节长度上限 |
2.1 字节级嵌入 + 2层 Transformer 编码器
模型用字节级嵌入 + 2 层 Transformer 编码器(宽 128、4 头)分别编码上下文和每个选项的文本。注意是"字节级"而非分词器级——没有 tokenizer 负担,再陌生的标签也不会 OOV(见 README.md 架构节),这也是它能稳定覆盖 55 个概念词表的原因之一。
2.2 选项注意力头(AttentionHead):全模型的核心
这一组件借鉴了 TypeSafe Jev 的思路:
- 每个选项都变成一个 query,对上下文 token 做一次注意力
- 得到该选项专属的attended context 向量——"与这个选项最相关的上下文片段"
- 一个共享点积把每个(选项, attended-context)对映射成一个 logit
- 对"当前存活的选项数"做softmax,输出每个选项的概率
这个结构让选项数量完全动态化:文档里是 5 个实体还是 55 个,模型参数一个都不变,只是点积矩阵多几行而已。
2.3 为什么 70万 参数就够?
关键在于任务契约足够窄。模型不需要理解自由文本、不需要生成答案、不维护对话状态,只需回答一个问题:"这个元素对应候选里的哪一个?"本质上它学的是字段标签与文档实体之间的"语义对齐",70 万参数足以把这种对齐学透并泛化——这就是"小模型做好一件事"的典型样本。
三、训练数据:1万条合成表单 + 刻意设计的"找茬" 🎯
训练配方在 README.md 中有完整描述:
- 10,000 条合成 episode:随机表单(2–16 个字段,来自带同义词表的 55 概念目录)、随机人物、随机文档(含干扰实体)、随机窗口标题后缀 + 20% 标题 dropout
- 强制近似混淆对:数据里刻意塞入
emailvsstreet、phonevsemergency contact phone、statevsuniversity这类极易混淆的实体对,逼模型真正读懂上下文,而不是靠先验概率蒙 - 不相交切分:按"精确表单字段签名"划分 train/test——任何测试表单的字段集在训练集中从未出现
- 训练配置:AdamW、cosine schedule with warmup、6 个 epoch、batch size 128,交叉熵损失作用于"存活选项数"
更有说服力的是打乱上下文对照实验:把 context token 洗乱后,准确率直接掉到 37%,证实模型确实在"读元素",而非利用选项统计捷径。
四、效果数据:99.9% 到底从何而来?
主结果表在 README.md:
| 测试集 | Top-1 | 说明 |
|---|---|---|
| 合成测试(form-disjoint,约 1.5 万决策) | 99.95% | 含强制混淆对 |
| 真实评测(3 张真实表单 + 3 份真实 PDF,196 个决策) | 100% | 零合成数据 |
| 打乱上下文对照 | 37% | 排除捷径学习的基线 |
按动作类型的细分也记录在权重侧车 cua-s1-forms.json 的最佳验证指标中:fill99.99%、check100%、click100%、skip99.90%,ECE 校准误差仅约 0.00015——概率输出本身也是高度可信的。
在与托管版 Jev API 的同任务对决中(零微调):本模型99.7% vs 83.6%;其中"fill vs check vs click"判断型决策托管 Jev 为 96%,"把已填字段识别为 no-op"仅 74%——而这正是 cua-s1-forms 在训练时就被教过的约定。
五、权重工程:safetensors + JSON sidecar 的安全加载 📦
这个仓库的权重组织方式非常值得学习(README.md 文件节):
- cua-s1-forms.safetensors:规范格式,只存张量,约 2.8 MB
- cua-s1-forms.json:JSON 侧车,存放架构配置、对张量的 SHA-256 签名、训练历史与最佳验证指标
- cua-s1-forms.pt:原始 PyTorch pickle 检查点,仅为兼容旧加载方式保留
背后的原因很实际:arbitrary pickle 对公开检查点而言是代码执行风险,所以cua_s1的加载器设计上直接拒绝.pt/.pth文件,safetensors 双文件才是"正版"入口——加载时会先校验格式、版本与张量签名,全部通过才返回模型。两个文件的权重经转换脚本验证为逐位一致的同一组参数。
想要本地获取权重,一条命令即可:
git clone https://gitcode.com/hf_mirrors/cua-ai/cua-s1-forms代码侧用huggingface_hub把 safetensors 与 json 下载到同一目录,再交给cua_s1.model.load_checkpoint(带select_device("auto")自动选卡,用法示例见 README.md);上游cua_s1的 planner 模块实现了完整的"截图 → 打分 → 排序 → 执行"闭环。
六、局限性:知道边界,才能正确选型
README.md 对模型边界描述得很坦诚:
- 只能在文档解析器已找到的
Label: value实体对中做选择,无法凭空发明值 - 完全用合成表单 + 小规模(196 决策)真实评测训练,未在演示集之外的任意真实表单上验证
- 字节级编码器、英语为中心的标签词表
- 独立研究检查点,未做 RLCD 校准,不是 TypeSafe Jev 的复现
总结:小模型做好一件事的完整模板
cua-s1-forms 用 2.8 MB 权重和 706,048 个参数做出了 99.9% 级别的表单决策能力,路径清晰可复制:
- 收窄契约:不做开放生成,只做 N 选 1 的打分
- 并行化:表单所有元素同 batch 独立打分,执行顺序交给下游代码
- 数据里埋"陷阱":强制混淆对 + 不相交切分,从源头杜绝捷径学习
- 权重可验证:safetensors + SHA-256 签名,验证通过才加载
如果你的任务同样属于"有限选项判断"而非"开放式创作",这套 2 层 Transformer + 选项注意力头的架构,非常值得一抄。
- 人工智能
- GUI 自动化
【免费下载链接】cua-s1-forms
相关推荐
深度解析mitra-classifier-2架构:12层2D Transformer如何做到行列双向注意力
深度解析mitra classifier 2架构:12层2D Transformer如何做到行列双向注意力 Mitra v2 分类器(mitra classif
RestoreFormerPlusPlus-fp32如何做到盲人脸修复?VQ-GAN与多头交叉注意力架构深度剖析
RestoreFormerPlusPlus fp32如何做到盲人脸修复?VQ GAN与多头交叉注意力架构深度剖析 RestoreFormerPlusPlus f
D2L.ai注意力机制详解:自注意力、多头注意力与Transformer架构终极指南
D2L.ai注意力机制详解:自注意力、多头注意力与Transformer架构终极指南 D2L.ai是由斯坦福大学、麻省理工学院等全球500多所高校采用的交互式深
人工智能深度学习机器学习教程文档
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考