当前位置: 首页 > news >正文

AICore 带来了 Android 专属的 AI 能力,它要解决什么?采用什么架构思路?

在这里插入图片描述

前言

Google 最近发布的 Gemini 模型在全球引起了巨大反响,其在多模态领域的 Video demo 无比震撼。对于 Android 开发者而言,其中最振奋人心的消息莫过于 Gemini Nano 模型将内置到 Android 系统当中,并开放给开发者使用。

事实上,能够自研 LLM 大模型的企业屈指可数,大多数的企业或个人都是在搞基于 LLM 的应用创新。而各大模型们各自为政,提供的能力、对接方式都参差不齐,即便在应用这个维度,开发者也很难整体、高效地去开发、拓展。

要是能够将 AI 相关接口统一、能力整合封装、甚至结合端侧硬件去内置默认的 AI 模型,这将是非常高效、安全的创举!

Google 坐拥全球顶尖的 AI 技术,同时掌控着市占率最高、各领域全面开花的 Android 平台,自然非常有理由、也有实力去做这样的事情。目前已知的是 Google 将在 Android 平台提供 AICore 服务,当前还在宣传阶段、尚未完整公布 API 细节。

笔者将基于披露出来的所有信息,跟大家分享 AICore 的目的和架构思路。

AICore 解决了什么?

早在 Android 14 Beta3 发布的时候,一位开发者 Mishaal Rahman 便在 Pixel 的 /product/priv-app 目录下发现了一个名为 “Google AI Services” 的系统 App。
在这里插入图片描述

  • 具体的包名为 "com.google.android.aicore"
  • 目前只是一个 stub 版本
    在这里插入图片描述

按照 Google 的描述:AICore 是运行在 Android 平台上,可以让开发者便捷访问端侧内置的 AI 模型(on-device model)的系统服务。通过 AICore 可以对类似 Gemini Nano 这种端侧模型实现模型管理、运行时调用、安全检查、多模态等能力,并保留相应的 API 给开发者进行灵活的运用。当然这需要端侧模型本身针对移动芯片等设备做专门的优化。

AI 能力

那么具体来说,AICore 可以做哪些场景的支持呢?

包括但不限如下等强大功能:

  • 高质量文本摘要、问题回答、问题扩展

  • 上下文智能回复

  • 高级校对和语法纠正

应用场景

以 Gemini Nano 在 Pixel 8 Pro 设备上为例:

  1. 即使在手机网络断开的情况下,也能简明扼要地概括录音机应用中的内容,提供端侧摘要能力。
    在这里插入图片描述

  2. 利用 Gemini Nano 的支持,开发者可以通过 AICore 实现在 GboardWhatsApp 等更多的聊天 App 中实现智能回复,给出高质量的回复建议,节省用户的时间。

在这里插入图片描述

原理架构

在这里插入图片描述

这是 Google 公布的 AICore 的 high-level architecture:

  • 对 App 来说,像其他 SDK 一样,暴露 API 和 OS 中的 AICore 能力对接
  • 对内部来说,整体上效仿了 Private Compute Core 的设计方式,通过开源 API 与网络隔离,兼具透明度和可审计性

细看内部:

  1. AICore 首先加载 LoRA 低等级适配程序,以支持开发人员根据自己的训练数据对大模型进行微调
  2. 经过上个步骤可以产生所需的 LLM,比如微调 Google 内置的 Gemini Nano
  3. 同时还构建了专门的 Safety features 层,确保数据的安全

此外,AICore 支持部署在很多的机器学习芯片上,比如最新的 Google Tensor TPU、旗舰产品 Qualcomm Technologies、Samsung S.LSI 和 MediaTek 芯片中的 NPU 等更多的芯片设备。

如何使用?

目前来说,AICore 只支持 Pixel 8 Pro 设备,API 也仍在开发当中,需要的话可以在如下链接申请内测资格:

  • sign up for our Early Access Program
    在这里插入图片描述

我已经申请了内测资格,通过之后深入分析下 API 和整体链路,届时再分享给大家。

结语

每当出现新的技术,Google 总会整合这些能力,建立统一标准,集成到 Android 框架当中,供开发者便捷地封装,App 灵活地调用。从语音兴起时候的语音识别 SpeechRecognizer、语音播报 Text-to-speech 到智能助理活跃时候的语音交互 VoiceInteraction,再到增强现实、虚拟化盛行时候的 ARCore

这次的 AICore 也是一样,将 AI 能力规范化、接口/协议统一化,方便开发者进行 LLM 的选择、调整以及应用创新。再借助数以亿计的 Android 设备的呈现,必将加速 AI 技术的发展和普及。

事实上,AICore 内置到 AOSP 当中的话,那么 Android Automotive OS 也将受益。所有从 Android、Automotive 延伸出来的车载机系统,只要芯片硬件上兼容,未来都可以利用 AICore 技术进行很多车载场景的拓展,包括但不限于:

  • 记录用户的口音和表达方式进行训练,以增强本地的语音识别和语意理解,分析对话习惯、并结合多模态定制专属的对话形式和内容,提供个性化的话术内容和情感播报
  • 学习车主习惯,进行车机主题、驾驶模式、导航路线、车控组合等方面的智能推荐
  • 结合车机整体,进行全方位的数据收集,本地进行驾驶、乘坐的回忆统计,给车主更加贴心的总结、建议

大家总说 Android 已趋于成熟、缺乏新意,那么本次的 AICore 绝对是新颖、有趣的话题,赶紧支棱起来。

参考

  • AICore Home page
  • A New Foundation for AI on Android
  • Introducing Gemini: our largest and most capable AI model
  • Android 14’s mysterious AICore system app makes its debut on the Play Store

文章推荐

  • 如何打造车载语音交互:Google Voice Interaction 给你答案
  • Android 标准语音识别框架:SpeechRecognizer 的封装、调用和原理
  • 直面原理:5 张图彻底了解 Android TextToSpeech 机制

相关文章:

AICore 带来了 Android 专属的 AI 能力,它要解决什么?采用什么架构思路?

前言 Google 最近发布的 Gemini 模型在全球引起了巨大反响,其在多模态领域的 Video demo 无比震撼。对于 Android 开发者而言,其中最振奋人心的消息莫过于 Gemini Nano 模型将内置到 Android 系统当中,并开放给开发者使用。 事实上&#xf…...

python学习1

大家好,这里是七七,今天开始又新开一个专栏,Python学习。这次思考了些许,准备用例子来学习,而不是只通过一大堆道理和书本来学习了。啊对,这次是从0开始学习,因此大佬不用看本文了,小…...

【SpringBoot】Spring Boot 单体应用升级 Spring Cloud 微服务

Spring Cloud 是在 Spring Boot 之上构建的一套微服务生态体系,包括服务发现、配置中心、限流降级、分布式事务、异步消息等,因此通过增加依赖、注解等简单的四步即可完成 Spring Boot 应用到 Spring Cloud 升级。 Spring Boot 应用升级为 Spring Cloud…...

el-tree搜索的使用

2023.12.11今天我学习了如何对el-tree进行搜索的功能,效果如下: 代码如下: 重点部分:给el-tree设置ref,通过监听roleName的变化过滤数据。 default-expand-all可以设置默认展开全部子节点。 check可以拿到当前节点的…...

Java使用Microsoft Entra微软 SSO 认证接入

1. Microsoft Entra Microsoft Entra ID 是基于云的标识和访问管理服务,可帮助员工访问外部资源。 示例资源包括 Microsoft 365、Azure 门户以及成千上万的其他 SaaS 应用程序。 Microsoft Entra ID 还可帮助他们访问你的企业 Intranet 上的应用等内部资源&#x…...

“华为杯”研究生数学建模竞赛2016年-【华为杯】A题:无人机在抢险救灾中的优化运用(附获奖论文及MATLAB代码实现)

目录 摘 要: 1. 问题重述 1.1. 问题背景 1.2. 需要解决的问题 1.2.1....

17--异常处理

1、异常概述 1.1 什么是异常 异常:指的是程序在执行过程中,出现的非正常情况,如果不处理最终会导致JVM的非正常停止。 异常指的并不是语法错误和逻辑错误。语法错了,编译不通过,不会产生字节码文件,根本运…...

数据结构 | c++编程实现求二叉树的叶节点的个数。(递归非递归)

目录 非递归 递归 非递归 #include<iostream> #include<stack> using namespace std; struct BTNode {int data;BTNode* left, * right;BTNode(int val) :data(val), left(NULL), right(NULL) {}}; //递归的方式求二叉树的叶子结点数 int countnode(BTNode* t) …...

python读取csv文件

在Python中&#xff0c;你可以使用pandas库来读取CSV文件。以下是一个基本的例子&#xff1a; import pandas as pd# 读取CSV文件data pd.read_csv(filename.csv)# 显示前几行数据print(data.head()) 这里&#xff0c;filename.csv应该被替换为你的CSV文件的实际路径和名称。…...

租一台服务器多少钱决定服务器的价格因素有哪些

租一台服务器多少钱决定服务器的价格因素有哪些 大家好我是艾西&#xff0c;服务器这个名词对于不从业网络行业的人们看说肯定还是比较陌生的。在21世纪这个时代发展迅速的年代服务器在现实生活中是不可缺少的一环&#xff0c;平时大家上网浏览自己想要查询的信息等都是需要服…...

深度学习(生成式模型)——ADM:Diffusion Models Beat GANs on Image Synthesis

文章目录 前言基础模型结构UNet结构Timestep Embedding关于为什么需要timestep embedding global attention layer 如何提升diffusion model生成图像的质量Classifier guidance实验结果 前言 在前几篇博文中&#xff0c;我们已经介绍了DDPM、DDIM、Classifier guidance等相关的…...

Ubuntu无法解析域名DNS指向127.0.0.53问题处理

用nslookup 域名.com返回127.0.0.53无法解析错误 error"Could not lookup srv records on xxx.com: lookup xxx.com on 127.0.0.53:53: no such host" #首次尝试编辑/etc/resolved.conf文件DNS为8.8.8.8 或1.1.1.1 发现reboot重启后又恢复到127.0.0.53的内容#再次尝…...

Intewell-Hyper I_V2.0.0_release版本正式发布

新型工业操作系统_Intewell-Hyper I_V2.0.0_release版本正式发布 软件发布版本信息 版本号&#xff1a;V2.0.0 版本发布类型&#xff1a;release正式版本 版本特点 1.建立Intewell-Hyper I基线版本 版本或修改说明 基于Intewell-Lin V2.3.0_release版本&#xff1a; 1.Devel…...

Mysql mybatis 语法示例

service package com.ruoyi.goods.service;import java.util.List; import com.ruoyi.goods.domain.GoodsProducts;/*** 商品Service接口* * author ruoyi* date 2023-08-27*/ public interface IGoodsProductsService {/*** 查询商品* * param ProductID 商品主键* return 商…...

第77讲:二进制方式搭建MySQL数据库5.7版本以及错误日志管理

二进制方式搭建MySQL数据库5.7版本 前面是使用的yum的方式安装的MySQL数据库,在企业生产环境中大多数都用二进制方式安装。 本次使用二进制方式搭建MySQL 5.7.36版本。 1.二进制安装MySQL5.7版本 1.1.下载MySQL5.7版本的二进制文件 [root@mysql ~]# wget https://downloads.…...

R语言,table()函数实现统计每个元素出现的频数+并将最终统计频数结果转换成dataframe数据框形式

在 R中&#xff0c;要统计dataframe数据框中每个元素出现的频数&#xff0c;可以使用table()函数。以下是一个示例&#xff1a; 目录 一、创建数据 二、统计第一列每个元素出现的频数 三、统计第二列每个元素出现的频数 四、将频数结果转换为数据框&#xff0c;并改列名 一…...

微信小程序uniapp记住密码

记住密码功能 在请求登录接口成功后&#xff0c;我们需要判断用户是否勾选记住密码&#xff0c;如果是&#xff0c;则将记住密码状态、账号信息存入本地。 下次登录时&#xff0c;获取本地的记住密码状态&#xff0c;如果为true则获取本地存储的账号信息&#xff0c;将信息回填…...

喜报!Coremail荣获2023信创“大比武”优秀生态融合奖

近期&#xff0c;2023信创“大比武”金融业务创新应用赛道&#xff08;简称金融赛道&#xff09;活动正式落下帷幕。经过赛程的层层考核&#xff0c;中泰证券股份有限公司&#xff08;简称“中泰证券”&#xff09;与Coremail联合组成的“中泰证券CACTER邮件安全保卫队”最终在…...

知识库SEO:提升网站内容质量与搜索引擎排名的策略

随着搜索引擎算法的不断更新和优化&#xff0c;单纯依靠关键词堆砌和外部链接的时代已经过去。现在的SEO&#xff08;搜索引擎优化&#xff09;已经转向了以提供高质量、有价值内容为核心的阶段。知识库SEO便是这个新阶段的重要策略之一。 | 一、知识库SEO的概念与意义 1.定义…...

GPIO复用时5个调试接口引脚要注意

一、JTAG引脚作为GPIO使用要注意 例如PA15引脚&#xff0c;它默认时JTDI引脚&#xff0c;但是可以复用为SPI的NSS片选信号。在初始化时&#xff0c;需要先开启AFIO时钟&#xff0c;再关闭JTAG功能&#xff0c;否则GPIO功能仍然不起作用。初始化代码如下&#xff1a; stm32f10…...

Python爬虫实战:如何绕过央视频加密获取高清视频源(附完整代码)

Python爬虫进阶&#xff1a;视频流媒体解析技术深度剖析 在数字内容消费爆炸式增长的今天&#xff0c;视频平台的技术防护手段也在不断升级。对于开发者而言&#xff0c;理解现代流媒体平台的加密与传输机制&#xff0c;不仅能提升技术视野&#xff0c;更能为合法合规的数据分析…...

深度解析:PaperZZ AI 如何把 “文献综述难产” 变成 “10 分钟定稿”?

Paperzz-AI官网免费论文查重复率AIGC检测/开题报告/文献综述/论文初稿/期刊论文paperzz - 文献综述https://www.paperzz.cc/journalsReviewed 提到本科毕业论文&#xff0c;比起提笔写正文&#xff0c;绝大多数同学的噩梦都是文献综述。这不仅是论文的开篇&#xff0c;更是评判…...

别再为XCode证书头疼了!Unity打包iOS App的保姆级避坑指南(含iOSDeviceSupport下载)

Unity打包iOS应用终极避坑手册&#xff1a;从Xcode证书到真机调试全链路解决方案 每次看到Unity打包iOS时Xcode弹出的红色错误提示&#xff0c;是不是感觉血压瞬间飙升&#xff1f;作为经历过上百次打包踩坑的老司机&#xff0c;我决定把那些官方文档从不提及的"隐藏关卡&…...

DeOldify图像上色服务性能调优:针对STM32嵌入式设备输出的图像优化

DeOldify图像上色服务性能调优&#xff1a;针对STM32嵌入式设备输出的图像优化 你有没有想过&#xff0c;把家里那些泛黄的老照片&#xff0c;用AI技术一键上色后&#xff0c;直接显示在复古的电子相框里&#xff1f;这个想法听起来很酷&#xff0c;但实际操作起来&#xff0c…...

深入解析C++菱形继承:虚基表的内存布局与优化策略

1. 菱形继承的本质问题 我第一次遇到菱形继承问题时&#xff0c;正在开发一个教育管理系统。当时需要设计Assistant类继承Student和Teacher&#xff0c;结果发现这两个父类都有从Person继承的_age成员。这导致每个Assistant对象里存了两份_age——这就是典型的数据冗余问题。 …...

聊天记录数据化生存:WeChatMsg从备份到分析的技术实践

聊天记录数据化生存&#xff1a;WeChatMsg从备份到分析的技术实践 【免费下载链接】WeChatMsg 提取微信聊天记录&#xff0c;将其导出成HTML、Word、CSV文档永久保存&#xff0c;对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/we/WeCha…...

快马AI一键生成链表可视化原型,交互演示助力算法设计

最近在复习数据结构时&#xff0c;发现链表这种基础但重要的结构&#xff0c;光看静态图示很难理解指针变化。正好尝试用InsCode(快马)平台快速搭建了一个可视化演示工具&#xff0c;整个过程比想象中简单很多&#xff0c;分享下实现思路&#xff1a; 需求拆解 首先明确需要实现…...

新手福音:基于快马平台和vmware官网快速上手虚拟化编程实践

作为一个刚接触虚拟化技术的新手&#xff0c;最近在浏览vmware官方中文网站时&#xff0c;发现了很多有用的学习资料。但光看理论总觉得不够直观&#xff0c;于是想通过动手实践来加深理解。在朋友的推荐下&#xff0c;我尝试用InsCode(快马)平台来创建一个简单的虚拟机监控面板…...

钕铁硼磁铁性能参数详解:选型、使用与注意事项

在实际选型过程中&#xff0c;钕铁硼磁铁的参数表常常让人困惑&#xff1a;N35和N42有什么区别&#xff1f;SH、UH、EH后缀代表什么&#xff1f;剩磁、矫顽力这些参数怎么看&#xff1f;本文将系统梳理钕铁硼磁铁的核心性能参数&#xff0c;帮助读者快速掌握选型要点。一、先搞…...

从JIT到AOT再到Cuvil编译器:Python AI推理部署演进史(2024年Q2最新Gartner评估报告核心结论首发)

第一章&#xff1a;Cuvil编译器在Python AI推理中的生产环境部署概览Cuvil编译器是一个面向Python生态的高性能AI推理加速工具&#xff0c;专为将PyTorch/TensorFlow模型无缝转换为低开销、高吞吐的原生可执行代码而设计。它不依赖Python解释器运行时&#xff0c;在部署阶段可生…...