FinchAIRUNE1 / PREVIEW
FinchAI-Rune1-Preview · 2026.10.17

小模型,专注工具调用的判断。

调用之前,
先想清楚。

我们的 AI 业务,现以 FinchAI 为名。首个模型 Rune1-Preview 面向本地 Agent:选择合适的工具,确认参数是否齐全,也判断什么时候不必调用。

基于面壁智能 OpenBMB MiniCPM-V 4.7-1B 进行 LoRA 微调。这是一份专注特定场景的预览版,不是全能助手。

工具判断 · 交互示例
判断依据

这是预设交互示例,不是在线推理;不会执行工具,也不会上传数据。

模型参数量
1.55B
LoRA 可训练参数
7.47M / 0.48%
程序化合成训练样本
600
当前发布格式
f16 · safetensors

不是每个问题,都要调用工具。

微调关注的是执行前的判断。真正的权限校验、参数校验与执行控制,仍由接入它的应用负责。

先读定义,再选工具

“列出文件”与“搜索文件内容”并不是同一件事。依据工具定义与参数结构选择,而不只认一个眼熟的工具名。

缺参数时,先问一句

没有给出必填目录时,先询问路径,不猜一个位置去执行。参数已经完整时,则不应重复追问。

把报错当作下一步的线索

训练包含“调用出错 → 阅读错误 → 修正后重试”的样本。这是训练目标,不代表每一次真实错误都能自动解决。

模型给出建议,执行权留在应用里。

工具调用是一份结构化提议,不代表操作已经执行。把模型判断与应用执行分开,才能保留可检查、可拒绝、可确认的边界。

01 / REQUEST

读懂当前任务

传入用户请求与工具定义,明确用途、必填项及参数结构。

02 / DECISION

调用、反问或回答

选择合适的工具、询问缺失信息,或在不需要工具时直接回答。

03 / VALIDATION

校验并取得确认

宿主检查工具名、参数、权限及用户确认,不直接执行未知调用。

04 / FEEDBACK

回填真实执行结果

把工具的真实结果或错误回填给模型,让后续回答有执行证据。

训练的不是一张工具名清单。

训练沙箱会变化工具名、路径和参数结构。目标是让模型阅读当轮定义,而不是背下某个固定工具的调用写法。以下均为项目发布说明中的训练设计。

600条合成样本 · 六类配比
Agent210
代码120
问答90
身份60
拒绝60
多轮对话60

Agent 样本包含标准调用、报错恢复、工具消歧、不调用工具及参数反问。项目说明不含真实用户数据。

  • 先切分沙箱,再生成数据

    文档描述了 20 个训练沙箱与 6 个留出沙箱。生成器阻止留出样本进入训练,并隔离工具名、路径与文件名。

  • 检查模型真正看到的文本

    在 chat template 渲染后检查 token 预算与标识符,并核对调用中的参数名是否属于对应工具定义。

  • 只微调文本主干的一小部分

    LoRA r=8 / alpha=16,可训练参数约 7.47M,占模型约 0.48%;视觉模块被排除。这说明训练范围,并不等于质量保证。

多轮迭代修正了参数结构不一致,补入正反例,并扩展句式覆盖。这些措施能减少直接重合与矛盾示范,但不能据此断言所有数据泄漏或泛化问题都已消除。

用小样本验收,也把边界写清楚。

项目使用七组、共 27 条探针做内部验收。下面列出与工具判断相关的分项,数据来自项目发布说明,并非独立第三方评测。

验收项目基座Rune1
缺参数反问0/33/3
相似工具选择0/33/3
无需工具的判断3/33/3
留出沙箱调用6/66/6

探针数量少,且由项目自行设计;通过比例不能外推为真实任务成功率。陌生句式与工具环境仍可能失败。

一个小规模、可检查的训练实验。

微调方式
LoRA r=8 / alpha=16 · 仅文本主干
数据设计
六类合成样本;20 个训练沙箱与 6 个留出沙箱。
训练序列上限
950 token · 不等于已验证的上下文窗口
可检查的材料
项目仓库提供训练脚本、数据生成器、验收脚本与 LoRA adapter。

完整权重保留视觉组件,但本次 LoRA 没有针对视觉训练。不能用这些探针宣称视觉能力或长上下文能力已得到验证。

在本地跑过,也注明跑在什么条件下。

以下来自项目在 MacBook Pro M4 / 10 核 / 16 GB / MPS 上的实测记录。输入长度、运行时版本和后端都会影响资源占用。

≈ 2.91 GiB完整权重文件体积
≈ 3.1 GB文档记录的加载后常驻内存
≈ 6.5 GB该环境中记录的峰值占用

训练记录为 600 条样本 × 2 epoch 约 63 分钟,0.5 epoch 增量训练约 14 分钟。这些是训练耗时,不是推理速度,也不是每秒输出 token 数。

文档将较高峰值与长样本关联。请勿为了复现实测而取消系统内存限制;应从短输入开始,并遵循当前运行时的配置说明。

从本地接入,让宿主掌握执行权。

本版发布完整的 f16 命名 safetensors 权重,实际存储精度为 bfloat16,约 2.91 GiB。使用 Transformers 接入;当前没有发布 GGUF 或 MLX 权重。

环境 · 按发布说明要求
pip install "transformers>=5.18.0" torch accelerate
Python · 最小加载示例
from transformers import AutoProcessor, AutoModelForImageTextToText

model_id = "whcl412/FinchAI-Rune1-Preview-f16"
processor = AutoProcessor.from_pretrained(model_id)
model = AutoModelForImageTextToText.from_pretrained(
    model_id, dtype="bfloat16", device_map="auto"
)

生成前需套用模型的 chat template 并传入工具定义。完整推理与训练脚本见仓库;运行环境兼容性以模型卡为准。

接入时,请保留这些护栏

  • 解析 XML 风格工具调用,执行前检查工具是否已注册、参数是否符合 schema。
  • 没有工具调用可能是在直接回答或询问缺失参数,不要把它一律当作失败重试。
  • 区分思考内容和面向用户的正文,并处理偶发的游离思考标签。
  • 删除、覆盖等危险操作必须再次确认。模型输出不等于用户授权。

项目实测环境:MacBook Pro M4 / 10 核 / 16 GB / MPS。约 6.5 GB 的峰值占用仅对应文档中的测试条件,不构成统一内存要求或速度保证。

把小模型,放在边界明确的任务里。

Rune1 是 Agent 中一个专注的组件,不应替代整套系统。任务设计需要说明何时追问、何时校验、何时交给更强的模型,以及何时停止执行。

适合:定义清晰的本地工具

可以从文件列表、内容搜索、计算器等小型工具注册表开始。必填参数要明确,错误信息要能解释缺少什么、为什么失败。

复杂推理:准备升级路径

算法设计和很长的多步任务并不是已经验证的强项。应拆分问题,或交给能力更强的模型,不要靠反复猜测推进。

长文与视觉:不能从底座直接外推

950 token 是训练序列上限,不是架构上下文窗口。更长输入的实际质量,以及视觉任务表现,都没有由这次微调验收验证。

工具幻觉:每次都要检查

未知工具名、格式错误和陌生句式误判仍可能出现。宿主必须检查白名单与参数结构;删除、覆盖等操作还要取得明确确认。

接入后建议自测:参数完整、缺少参数、相似工具、无关问题、工具报错。请补充你自己的场景;项目探针不能替代应用验收。

接入 Preview 前,你可能想知道。

它能替代通用编程助手吗?

不适合这样理解。它专注工具判断,复杂推理、算法设计和长文档不是强项。必要时应拆分任务,或交给能力更强的模型。

底座支持视觉,为什么页面没有主推多模态?

OpenBMB 底座本身是多模态模型;Rune1 的完整权重也保留视觉组件。但此次 LoRA 只训练文本主干,没有证据说明视觉任务得到增强,因此不把它作为本版卖点。

长上下文和工具名幻觉呢?

训练序列上限为 950 token,更长输入的实际效果没有验证。未知工具名、陌生句式误判与游离思考标签仍是已知风险,必须由宿主校验与兜底。

可以用于商业项目吗?

项目标注 Apache 2.0,与基座许可一致。使用时请保留许可要求的声明,并核对模型仓库及依赖的适用条款。

FinchAI · Rune1-Preview

获取权重、查看训练材料,再用你自己的工具与任务验证。此前的 LycheeAI 模型介绍页继续保留。

底座与环境参考: OpenBMB MiniCPM-V 4.7-1B · Preview 发布说明:2026-10-17。训练与验收数据由项目提供,本页面未独立复现训练结果。