模型页面:FunctionGemma
资源和技术文档:
使用条款:条款
作者:Google DeepMind
型号信息
输入和输出的简要说明和简短定义。
说明
注意:FunctionGemma 旨在针对您的特定函数调用任务进行微调,包括多轮对话应用场景。
FunctionGemma 是 Google 推出的一款轻量级开放模型,可作为创建您自己的专用函数调用模型的基础。FunctionGemma 并非旨在用作直接对话模型,而是旨在通过进一步微调实现高性能,这对于此规模的模型来说很常见。FunctionGemma 基于 Gemma 3 270M 模型构建,采用与 Gemini 模型相同的研究成果和技术,并经过专门的函数调用训练。该模型与 Gemma 3 具有相同的架构,但使用不同的聊天格式。该模型非常适合纯文本函数调用。 凭借独特的超小尺寸,Gemini Nano 可以在资源有限的环境中部署,例如笔记本电脑、台式机或您自己的云基础设施,从而让每个人都能轻松使用先进的 AI 模型,并帮助促进创新。此外,与基础 Gemma 270M 类似,该模型经过优化,具有极高的多功能性,在单轮对话场景中可在各种硬件上实现高性能,但应针对单轮或多轮对话任务特定数据进行微调,以在特定领域实现最佳准确率。为了展示如何通过专门化 2.7 亿参数模型在特定代理工作流中实现高性能,我们在 Google AI Edge Gallery 应用中重点介绍了两个使用情形。
Tiny Garden:经过微调的模型,可为语音控制的互动游戏提供支持。它负责处理游戏逻辑,以管理虚拟地块,将“在第一行种植向日葵”和“给地块 1 和 2 中的花浇水”等命令分解为应用特定的函数(例如 plant_seed、water_plots)并协调目标。这展示了模型在无需服务器连接的情况下驱动自定义应用机制的能力。
移动操作:为了让开发者能够构建自己的专家代理,我们发布了数据集和微调配方,以演示如何微调 FunctionGemma。它会翻译用户输入(例如,“创建午餐日历活动”“打开手电筒”)转换为触发 Android 操作系统系统工具的函数调用。此互动式笔记本演示了如何从头开始获取基础 FunctionGemma 模型并构建“移动操作”微调,以便在 Google AI Edge 图库应用中使用。此使用情形演示了该模型作为个人设备任务的离线专用代理的能力。
输入和输出
- 输入:
- 文本字符串,例如问题、提示或要总结的文档
- 总输入上下文为 3.2 万个 token
- 输出:
- 针对输入生成的文本,例如问题的答案或文档的摘要
- 每次请求的输出上下文总词元数最多为 32K,减去请求输入词元数
模型数据
用于模型训练的数据以及数据的处理方式。
训练数据集
这些模型基于包含各种来源的文本数据数据集进行训练。该模型使用 6 万亿个令牌进行了训练。训练数据的知识截止日期为 2024 年 8 月。以下是关键组件:
- 公开工具定义 - 网络上常见的 API
- 工具使用互动 - 这些互动包括提示、函数调用、函数响应和自然语言响应,模型会使用这些内容来总结函数调用响应,或者在提示不明确或不完整时请求澄清。
数据预处理
以下是应用于训练数据的主要数据清理和过滤方法:
- CSAM 过滤:在数据准备过程中,我们在多个阶段应用了严格的 CSAM(儿童性虐待内容)过滤,以确保排除有害和非法内容。
- 敏感数据过滤:为了确保 Gemma 预训练模型的安全性和可靠性,我们使用了自动化技术来过滤掉训练集中的某些个人信息和其他敏感数据。
- 其他方法:根据内容质量和安全性(符合我们的政策)进行过滤。
实现信息
有关模型内部结构的详细信息。
硬件
Gemma 是使用张量处理单元 (TPU) 硬件(TPUv4p、TPUv5p 和 TPUv5e)训练的。训练视觉-语言模型 (VLM) 需要强大的计算能力。TPU 专为机器学习中常见的矩阵运算而设计,在这一领域具有多项优势:
- 性能:TPU 专为处理 VLM 训练中涉及的大规模计算而设计。与 CPU 相比,它们可以大幅加快训练速度。
- 内存:TPU 通常配备大量高带宽内存,可在训练期间处理大型模型和批次大小。这有助于提高模型质量。
- 可伸缩性:TPU Pod(大型 TPU 集群)提供了一种可伸缩的解决方案,用于应对大型基础模型日益增长的复杂性。您可以跨多个 TPU 设备分配训练任务,以实现更快、更高效的处理。
- 成本效益:在许多情况下,与基于 CPU 的基础架构相比,TPU 可以为训练大型模型提供更具成本效益的解决方案,尤其是在考虑到因训练速度更快而节省的时间和资源时。
- 这些优势与 Google 对可持续运营的承诺相符。
软件
训练使用 JAX 和 ML Pathways 完成。
借助 JAX,研究人员可以利用最新一代硬件(包括 TPU)更快、更高效地训练大型模型。ML Pathways 是 Google 为构建能够跨多个任务进行泛化的智能系统而做出的最新努力。这尤其适合基础模型,包括以下大语言模型。
JAX 和 ML Pathways 共同使用,如关于 Gemini 系列模型的论文中所述;“Jax 和 Pathways 的‘单一控制器’编程模型允许单个 Python 进程协调整个训练运行,从而显著简化开发工作流程。”
评估
模型评估指标和结果。
基准结果
| Benchmark | n-shot | 功能 Gemma 270m |
|---|---|---|
| BFCL Simple | 0-shot | 61.6 |
| BFCL Parallel | 0-shot | 63.5 |
| BFCL 多重 | 0-shot | 39 |
| BFCL 并行倍数 | 0-shot | 29.5 |
| BFCL Live Simple | 0-shot | 36.2 |
| BFCL Live Parallel | 0-shot | 25.7 |
| BFCL Live Multiple | 0-shot | 22.9 |
| BFCL Live Parallel Multiple | 0-shot | 20.8 |
| BFCL 相关性 | 0-shot | 61.1 |
| BFCL 不相关 | 0-shot | 70.6 |
在移动操作数据集上进行微调后对性能的影响
为了展示小型语言模型专业化的价值,我们使用“移动操作”配方比较了基础 FunctionGemma 模型与微调后的模型。
微调显著提高了基础 FunctionGemma 模型正确识别和格式化移动系统调用的能力。
模型 |
移动操作的评估结果 |
|---|---|
基本功能 Gemma 模型 |
58% |
移动操作微调 |
85% |
Gemma 270m 微调后应用场景的设备端性能
我们在 Samsung S25 Ultra 上评估了微调后的应用场景,以评估设备端延迟时间和内存占用情况。
- 上下文:512 个预填充 token 和 32 个解码 token。
- 硬件:S25 Ultra CPU 使用 LiteRT XNNPACK 委托(4 个线程)。
移动设备上的操作对设备性能的影响
后端 |
量化方案 |
上下文长度 |
预填充(每秒 token 数) |
解码(每秒 token 数) |
首 token 延迟(秒) |
模型大小 (MB) |
RSS 内存峰值 (MB) |
|---|---|---|---|---|---|---|---|
个 CPU |
dynamic_int8 |
1024 |
1718 |
125.9 |
0.3 |
288 |
551 |
Tiny Garden 在设备上的性能
后端 |
量化方案 |
上下文长度 |
预填充(每秒 token 数) |
解码(每秒 token 数) |
首 token 延迟(秒) |
模型大小 (MB) |
RSS 内存峰值 (MB) |
|---|---|---|---|---|---|---|---|
个 CPU |
dynamic_int8 |
1024 |
1743 |
125.7 |
0.3 |
288 |
549 |
伦理与安全
伦理和安全评估方法及结果。
评估方法
我们的评估方法包括对相关内容政策进行结构化评估和内部红队测试。红队测试由多个不同的团队进行,每个团队都有不同的目标和人工评估指标。我们针对与伦理和安全相关的一系列不同类别对这些模型进行了评估,包括:
- 儿童安全:评估涵盖儿童安全政策(包括儿童性虐待和剥削)的文本到文本和图片到文本提示。
- 内容安全:评估文本到文本和图片到文本提示,涵盖安全政策,包括骚扰、暴力和血腥内容以及仇恨言论。
- 表征性危害:评估文本到文本和图片到文本提示,涵盖安全政策,包括偏见、刻板印象、有害关联或不准确之处。
评估结果
在所有安全测试方面,与之前的 Gemma 模型相比,我们在儿童安全、内容安全和表征性危害方面都取得了重大改进。所有测试均在不使用安全过滤器的前提下进行,以评估模型的功能和行为。该模型产生的违规内容极少,并且在无根据的推理方面,与之前的 Gemma 模型相比,效果有了显著提升。我们评估的一个局限性在于,它们仅包含英语提示。
使用情况和限制
这些模型存在一定的局限性,用户应加以留意。
预期用途
此模型不适合用作直接对话模型。
开放的大语言模型 (LLM) 在各个行业和领域有着广泛的应用。以下潜在用途列表并不全面。此列表旨在提供有关模型创建者在模型训练和开发过程中考虑的可能用例的背景信息。
- 内容创作和交流
- 文本生成:这些模型可用于生成创意文本格式,例如诗歌、剧本、代码、营销文案和电子邮件草稿。
- 聊天机器人和对话式 AI:为客户服务、虚拟助理或互动式应用提供对话式界面。
- 文本摘要:为文本语料库、研究论文或报告生成简洁的摘要。
- 研究和教育
- 自然语言处理 (NLP) 研究:这些模型可作为研究人员试验 NLP 技术、开发算法并为该领域的发展做出贡献的基础。
- 语言学习工具:支持互动式语言学习体验,有助于纠正语法或提供写作练习。
- 知识探索:通过生成摘要或回答有关特定主题的问题,帮助研究人员探索大量文本。
限制
- 训练数据
- 训练数据的质量和多样性会显著影响模型的功能。训练数据中的偏见或缺漏可能会导致模型回答存在局限性。
- 训练数据集的范围决定了模型可以有效处理的主题领域。
- 情境和任务复杂程度
- 模型更擅长处理可以通过清晰的提示和指令来表达的任务。开放式或高度复杂的任务可能具有挑战性。
- 模型的性能可能会受到所提供上下文数量的影响(通常情况下,上下文越长,输出效果越好,但会达到某个临界点)。
- 语言歧义和细微差别
- 自然语言本身就非常复杂。模型可能难以理解细微的差别、讽刺或比喻性语言。
- 事实准确性
- 模型会根据从训练数据集中学到的信息生成回答,但它们不是知识库。它们可能会生成不正确或过时的事实陈述。
- Common Sense
- 模型依赖于语言中的统计模式。在某些情况下,它们可能无法应用常识推理。
道德考量和风险
大语言模型 (LLM) 的开发引发了多项伦理问题。在创建开放模型时,我们仔细考虑了以下因素:
- 偏见和公平性
- 使用大规模真实世界文本数据训练的 LLM 可能会反映训练材料中嵌入的社会文化偏见。这些模型经过了仔细审查,输入数据预处理已在卡片中说明,后验评估也已在卡片中报告。
- 虚假信息和滥用行为
- 大语言模型可能会被滥用,生成虚假、误导性或有害的文本。
- 我们提供了有关负责任地使用该模型的指南,请参阅负责任的生成式 AI 工具包。
- 公开透明,责任明确:
- 此模型卡片总结了模型架构、功能、限制和评估流程的详细信息。
- 负责任地开发的开放模型可让 AI 生态系统中的开发者和研究人员使用 LLM 技术,从而分享创新成果。
已识别的风险和缓解措施:
- 偏见持续存在:建议在模型训练、微调和其他使用情形中,持续监控(使用评估指标、人工审核)并探索去偏见技术。
- 生成有害内容:内容安全机制和准则至关重要。建议开发者根据其具体产品政策和应用使用情形谨慎行事,并实施适当的内容安全保护措施。
- 出于恶意目的的滥用:技术限制以及开发者和最终用户教育有助于缓解 LLM 的恶意应用。我们还提供教育资源和举报机制,以便用户标记滥用行为。《Gemma 使用限制政策》中概述了 Gemma 模型的使用限制。
- 隐私权违规:模型在经过过滤的数据上训练,以移除 PII(个人身份信息)。建议开发者采用隐私保护技术来遵守隐私权法规。
优势
发布时,与同等规模的模型相比,这一系列模型提供了高性能的开放大语言模型实现,从一开始就为 Responsible AI 开发而设计。