Fine-Tune FunctionGemma with Ertas

    Google 的 270M 参数专用工具调用模型——一个 Gemma 3 衍生模型,专为将自然语言意图映射到函数调用而训练。它是开源权重生态中最小的可信函数调用模型,并明确邀请你针对自己的工具 schema 进行微调。

    270MGoogle

    Overview

    FunctionGemma 是 Google 于 2026 年 5 月 5 日发布的一个 2.7 亿参数 Gemma 3 衍生模型,为单一任务训练:接收用户消息加一组工具 schema,并以正确参数发出正确的函数调用。它不进行对话、不做长篇总结、不做长程推理。它将意图映射到调用,且在 Q4 量化下不到 200MB——小到可以在树莓派、手机或 Jetson Nano 上运行。

    该模型是 Google 围绕专用小模型这一更大叙事的一部分。Gemma 3 与 Gemma 4 是具备原生多模态能力的通用家族,而 FunctionGemma 被 Google 明确定位为微调的*基础*。它们在模型卡中的声明毫不含糊:'旨在为你的具体函数调用任务进行微调'。这在开源权重发布中并不寻常——大多数实验室发布通用检查点,并默认把专门化留给用户,而 FunctionGemma 的训练与定位将微调推到了推荐工作流的最前沿。

    FunctionGemma 在标准 Berkeley Function Calling Leaderboard (BFCL) 任务上开箱即达 82–88%,与体量大 10–30 倍的 3B–8B 通用模型相当。在领域特定的工具 schema 上微调后——通常使用 200–1,000 个精心挑选的函数调用样本——目标工具上的准确率常常攀升到 95% 以上,超过通用 7B–14B 模型在同一评估集上的表现。这种小尺寸加上微调后专门化的组合,使 FunctionGemma 成为 2026 年'智能体专家'趋势的标志性范例。

    Key Features

    FunctionGemma 的输入格式是一个系统块,列出可用函数及其参数 schema,后跟用户消息。模型发出单一结构化输出:函数名及其参数(JSON 格式)。没有对话层、没有前言、没有散文——输出直接以函数调用开始。这使解析器集成变得简单,并消除了通用模型通过提示式 JSON 格式做工具调用时困扰人的后处理脆弱性。

    该模型按 Gemma 使用条款(Gemma 3 时代的许可证)授权。Google 尚未像 2026 年 4 月对 Gemma 4 那样把 FunctionGemma 重新授权为 Apache 2.0,因此商业用户对触及禁用列表的用例应审阅许可条款。对于大多数产品应用——移动助手、智能体工作流、内部自动化——许可证足够宽松。

    FunctionGemma 的分词器与基础架构继承自 Gemma 3,因此标准 llama.cpp、Ollama、MLX 与 TensorRT-LLM 工具链无需修改即可支持。Q2_K 到 Q8_0 的 GGUF 量化均可获取;Q4_K_M 产出约 180MB 的二进制文件,在消费级 GPU 上以 800+ tokens/秒运行,在现代笔记本 CPU 上以 180–250 tokens/秒运行。

    Fine-Tuning with Ertas

    FunctionGemma 是 Ertas 工具调用产品故事的标准微调目标。训练数据格式与 Ertas Studio 原生支持的 JSONL 函数调用 schema 相同:每个样本是一个工具列表、一个用户查询和预期的函数调用。因为模型如此之小,全参数微调可在消费级 GPU 上完成——一块 12GB 的 RTX 3060 可在不使用 LoRA 的情况下以全序列长度训练 FunctionGemma——但 LoRA 与 QLoRA 同样可用,并产出小于 50MB 的适配器,可在推理时热切换。

    FunctionGemma 的典型 Ertas 工作流是:在 Studio 的 Data Craft 模块中定义你的工具 schema、生成 300–800 个有代表性的函数调用样本(使用为 ChatGPT/Claude/Gemini 发出提示模板的批量生成流程)、划分训练/验证集、在 Studio 中以 FunctionGemma 为基础进行微调、在留出函数调用上评估、并导出为 GGUF。在代表性工具 schema 上的完整周期在 Studio 标准 GPU 等级上 1–3 小时即可完成,并产出在已训练工具集上达 95%+ 准确率的模型。

    对于移动部署,Ertas Deployment CLI 接收 GGUF 输出,并将其接入安装了 llama.cpp 依赖的 iOS Swift、Android Kotlin、Flutter 或 React Native 项目。端到端——从原始工具 schema 到在真实应用中设备端运行的微调函数调用模型——是几小时的工作量,主要由数据集精选而非训练或部署管道决定。

    Use Cases

    FunctionGemma 的主要用例是智能体系统中的函数调用层:把用户请求变成结构化工具调用以供下游代码执行。对于具有少量高频工具的移动应用——预订、调度、搜索、用户数据上的 CRUD 操作——设备端 200MB 的 FunctionGemma 完全替代云 API 调用,消除按 token 成本,并把网络往返从延迟敏感的流程中移除。

    对于支持兼容 OpenAI 端点的智能体框架(LangGraph、Pydantic AI、OpenAI Agents SDK、Smolagents、Mastra、Vercel AI SDK),FunctionGemma 可作为更大推理模型背后的专用工具路由层。模式:7B–14B 模型处理开放式推理,FunctionGemma 处理结构化工具调用发射,二者均在本地运行。推理成本戏剧性下降,而工具调用可靠性不降。

    小尺寸也使 FunctionGemma 成为嵌入式与边缘部署的合适选择:算力受限的工厂车间机器人、需要自然语言控制的 IoT 设备、模型权重每兆字节都被争抢的车载系统。任何场景下,通用 3B–8B 模型过大、但需要干净的意图到调用映射时,FunctionGemma 都是默认起点。

    Hardware Requirements

    在 Q4_K_M 量化下,FunctionGemma 权重约 180MB,推理时(包括短上下文 KV 缓存)总共需要约 250MB RAM。它能舒适装进手机(iOS 14+ 设备、2GB+ RAM 的 Android 设备)、单板计算机(树莓派 4/5)、嵌入式板(Jetson Nano)以及任何笔记本或台式机。

    消费级硬件上的吞吐量:现代笔记本 CPU(Apple Silicon M1/M2 或 Ryzen/Intel 移动版)上 180–250 tokens/秒,消费级 GPU(RTX 3060 及以上)上 800+ tokens/秒,数据中心 GPU 上 1500+ tokens/秒。因为工具调用很短(通常输出少于 100 tokens),从提示到完整函数调用的端到端延迟在大多数消费硬件上为 50–200ms——足够快到无可察觉的停顿,可用于交互式使用。

    对于 Ertas Studio 中的微调,一块 12GB 消费级 GPU(RTX 3060、RTX 4060)能在 1024-token 序列长度下处理全参数训练。LoRA 与 QLoRA 将其降至 6–8GB 并产出小到可作为模型补丁分发的适配器。在代表性工具调用数据集(300–800 样本,3–5 个 epoch)上的训练时间,在 Studio 的标准 GPU 等级上通常为 30–90 分钟。

    Supported Quantizations

    Q2_KQ4_0Q4_K_MQ5_K_MQ6_KQ8_0F16

    Related Resources

    Ship AI that runs on your users' devices.

    Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.