写点什么

谷歌推出全新的设备端 GenAI API,将 Gemini Nano 引入 ML Kit

  • 2025-06-05
    北京
  • 本文字数:1165 字

    阅读完需:约 4 分钟

大小:453.67K时长:02:34
谷歌推出全新的设备端GenAI API,将Gemini Nano引入ML Kit

ML Kit 新加入的 GenAI API 使开发者能够在 Android 应用中使用 Gemini Nano 进行本地推理,支持诸如总结、校对、改写和图像描述等功能。


例如,你可以对长达 3000 个英文单词的文档进行总结,可以让文本风格更加正式或更加随性,还可以生成标题、元数据或替代图像描述。


在本地运行意味着所有数据,包括输入、推理和输出,都不会离开本地设备,并且不会产生任何云端成本。谷歌表示,GenAI API 的设计注重易于集成和使用,提供了与其他 ML Kit API 类似的高级抽象。


这意味着你可以直接获得高质量的结果,无需额外进行提示词工程或针对特定用例进行微调。


这是通过将每个专门的 API 构建为一个组件栈来实现的,以 Gemini Nano 作为共同基础。Nano 上面是一个小型的、特定于 API 的 LoRA 适配器模型,用于提高性能,接着是一层定义优化推理参数(如提示词、温度、top-K 和批次大小)的层。最后,评估管道结合了自动化评估器、统计指标和人工评估器,以进一步改进生成的响应。


采用这种方法实现的性能提升通过基准分数来衡量,这些基准分数是为每个 API 定制的,考虑了特定属性,例如文本总结中的事实一致性。这些基准表明所有 API 的性能都有了一致的提升,如下图所示。



ML Kit GenAI API 支持流式和非流式工作流程。流式工作流特别适合需要较长响应的场景,因为它能够在不等待整个响应生成完成的情况下逐步输出内容。


在使用 GenAI API 时,ML Kit 会自动下载 Gemini Nano 和任何所需的特定于 API 的模型。开发者也可以控制这个过程,并选择提前下载模型。假设所有所需的模型都已下载,下面的代码片段演示了总结 API 的工作流程:


val articleToSummarize = ...
val summarizerOptions = SummarizerOptions.builder(context)    .setInputType(InputType.ARTICLE)    .setOutputType(OutputType.ONE_BULLET)    .setLanguage(Language.ENGLISH)    .build()val summarizer = Summarization.getClient(summarizerOptions)
val summarizationRequest = SummarizationRequest.builder(text).build()summarizer.runInference(summarizationRequest) { newText ->    // Show new text in UI}
复制代码


为了确保所有所需功能都可在本地使用,开发者可以调用 summarizer.checkFeatureStatus 方法。


借助 AICore ,ML Kit GenAI API 在搭载了优化的联发科天玑、高通骁龙和谷歌 Tensor 平台的 Android 设备上可用。支持的设备包括 Pixel 9 系列、三星 Galaxy 25、小米 15、摩托罗拉 Razr 60 Ultra 等。


对于有意向开始使用 ML Kit GenAI API 的开发者来说,可以将官方的 ML Kit GenAI API 演示应用作为入手点,它演示了所有新功能,还搭配了官方文档,为开发者提供了更深入的指导。


【声明:本文由 InfoQ 翻译,未经许可禁止转载。】


查看英文原文https://www.infoq.com/news/2025/06/google-mlkit-genai-gemini-nano/

2025-06-05 15:006674

评论

发布
暂无评论

slb与nat及eip的相关联

肖飞码字

负载均衡 NAT 弹性公网IP

第一个spark应用开发详解(java版)

程序员欣宸

Java spark 8月月更

vue高频面试题合集(三)附答案

helloworld1024fd

版本管理工具git的使用总结

TimeFriends

8月月更

每日一R「04」常用的智能指针

Samson

8月月更 ​Rust

真会玩!用手机吹气球你见过不?

岛上码农

flutter ios 前端 安卓开发 8月月更

史上最全的Java并发系列之Java中的13个原子操作类

自然

多线程 并发 Java core 8月月更

估价器测试工具的实现

转转技术团队

测试工具

RocketMQ顺序消息

急需上岸的小谢

8月月更

云原生事件驱动引擎(RocketMQ-EventBridge)应用场景与技术解析

阿里巴巴云原生

阿里云 RocketMQ 云原生

vue高频面试题合集(四)附答案

helloworld1024fd

Vue

Android进阶(十一)Android系统架构讲解

No Silver Bullet

android 系统架构 8月月更

基于AQS实现自己的同步工具

自然

多线程 并发 8月月更

极狐GitLab冷知识:使用 Gitlab Webhook 触发 Pipeline

郭旭东

极狐GitLab JIHULAB 101

开源一夏 | 你不能错过的 Go 强大图形化测试工具

宇宙之一粟

开源 测试框架 testing Go 语言 8月月更

复盘:如何更好的进行技术面试

老张

面试

SRv6在5G移动网络中的部署方式

穿过生命散发芬芳

8月月更 SRv6

Spring Cloud Sleuth简述

阿泽🧸

8月月更 Spring Cloud Sleuth

浅谈营销型企业站文案应该如何写

石头IT视角

编译调试插件功能总结

乌龟哥哥

8月月更

架构实战营模块四作业

zhihai.tu

用好JAVA中的函数式接口,轻松从通用代码中剥离掉业务定制逻辑

程序知音

Java 编程 程序员 后端

软件架构治理 之 如何度量软件架构

码猿外

架构设计 软件架构治理

数据结构——栈

工程师日月

8月月更

Spring 全家桶之 Spring Data JPA(二)

小白

8月月更

shell脚本之格式化输出

Albert Edison

Linux centos 运维 shell脚本编程 8月月更

STM32入门开发 NEC红外线协议解码(超低成本无线传输方案)

DS小龙哥

8月月更

面试官怒了:多级缓存不了解怎么行,那可是数量级的提升?

知识浅谈

缓存 8月月更

史上最全的Java并发系列之Java中的并发工具类

自然

多线程 并发 8月月更

转转用例平台系列 - 脑图组件2.0

转转技术团队

测试开发 测试用例平台开发

C++运算符重载(四)之赋值运算符重载

CtrlX

c++ C# 后端 函数重载 8月月更

谷歌推出全新的设备端GenAI API,将Gemini Nano引入ML Kit_AI&大模型_Sergio De Simone_InfoQ精选文章