移动版OpenAI,手机的杀手还是救星?

news/2024/5/19 18:38:44/

        AI登陆手机,难度因人而异。

        原本小编还以为「2023年是属于元宇宙的一年」,实在没想到以ChatGPT为代表的AI技术能在这么短的时间内抢走元宇宙的风头,成为2023年的技术关键词。从OpenAI到搜索引擎、从绘图工具到游戏公司,几乎所有「稍微出名点」软件企业都在今年推出了自己的自然语音AI对话模型。

        但可惜的是,本应「造福所有人」的AI技术,却不是每个人都用得上。比如有的AI模型严格限制使用者的IP地址,有的AI模型动不动就会封禁某个区域的用户账号,相比之下那些「资源有限」要求排队抽签领取测试资格的AI模型都变得那么的平易近人。

        当然了,有使用门槛就意味着有信息差,也意味着有人可以用这个信息差「大赚一笔」:在Google Play、App Store甚至是微信小程序平台,我们可以找到各式各样的AI App。他们有些调用的是OpenAI给出的免费接口,有些则直接挂羊头卖狗肉,用货不对本的低级AI模型来糊弄用户。但有一点这些App倒是表现出惊人的一致性:他们要么全是广告,要么向用户收费。

        不过这些App的好日子马上就要结束了。

        前段时间,推出了大量成功AI模型的OpenAI更新了招聘职位列表,开始寻找「移动工程师」,简单来说就是正在组建移动平台上的AI团队。没错,OpenAI终于要对移动互联网生态下手了。


姗姗来迟的AI移动端

        尽管OpenAI这才开始组建移动团队,其他几大AI平台行业也都不约而同地选择了浏览器(网页端)作为自己的主要载体,但从App Store、Google Play等平台的搜索量以及第三方App的下载量来看,移动端AI显然有着极为广阔的市场前景:

        比如文心一言才发布没多久,在App Store上就出现了很多「第三方文心一言」App。这些App从LOGO到文案介绍都和文心一言别无二致,再配上有模有样的图片展示,让很多网友们以为,这就是百度官方推出的文心一言App。

        虽然小雷不建议大家使用这一类「第三方AI App」,但从下载量来看,确实有不少人对这种手机AI App有迫切的需求。不过话又说回来,为何各大AI模型都还只提供浏览器的访问入口?在移动平台上部署AI,真就这么难吗?

        从开发者的角度看,「将AI模型带到移动平台」具体可以分为两种情况:只在本地部署前端,模型放在远端的「在线模型」以及将整个AI模型部署在移动设备上的本地模型。

        我们先说第一种,所谓「只有前端在本地」这个方案其实已经非常成熟,成熟到无数「第三方AI App」都已经实现了这个需求。简单来说,只部署前端指的是用户手机上安装的App只负责用户界面等软件交互,实际上所有的数据都通过AI模型的API发送到对应的远端服务器中。举个不太恰当的例子;用户安装在手机里的App只不过是一个外卖软件,实际炒菜的是外面的餐厅。至于最终炒菜的餐厅是「丽晶饭店」还是「丽晶苍蝇馆」,用户并不知悉。

        在这里小编也必须澄清一点,这类只提供前端的第三方App并非都是「偷蒙拐骗」的App,有些App确实能解决OpenAI的ChatGPT在使用上的不便。如果大家有使用过ChatGPT,应该对它复杂的访问环境要求和烦琐的登录验证流程有印象。即使小编是都是通过Google直接登录,但反复的验证确实也非常麻烦。

        而有些第三方App就在本地重写了ChatGPT的交互,优化了原本使用浏览器时的不便。这类App通常需要用户自己在OpenAI的控制板中生成自己端口的API(AI ID)并添加到App中。

        可能有人觉得这类App技术技术含量低,但至少从OpenAI招聘启事来看,他们正在组建的移动App团队,采取的也是这种方案。对于采用这种方案的App来说,它的难点主要在于如何把一个有潜力成为国民级App的交互界面设计得更人性化,而不是像某个真国民级App那样让全国人民教产品经理做软件。

        换句话说,这种App做起来并不难。但作为对比,采用第二种方案开发的App,它的工程难度高了可不止一点半点。


移动AI之难,难于上青天

        从技术的角度看,完全在移动平台上部署AI模型背后的技术难点可以分为五个部分:计算资源限制、网络资源限制、电量限制、储存空间限制和信息安全限制。

        一般来说移动设备的计算资源通常有限,而深度学习模型需要大量的计算资源。因此在移动平台上使用AI的用户一般会使用专门为移动设备设计的硬件来提高计算速度,比如笔记本电脑就会配备更适合AI加速的专业显卡。

        但很显然手机上没有用来加速AI运算的专业GPU,甚至在大多数手机移动平台上,和AI最沾边的不是神经网络单元NPU就是用来处理相机图像信号的ISP。当然了,开发者也可以调整AI模型的逻辑,让AI主动适应移动平台上并不充裕的计算资源。只不过出来的效果可能就只有Siri的级别了。

        网络资源限制听起来有些矛盾,毕竟我们讨论的是部署在移动设备本地的AI模型。但如果大家有试过在本体部署AI模型,应该明白不断更新的网络资源对AI模型的重要性。

        电量限制和存储空间无需多讲——深度学习模型需要进行大量的计算,这会导致移动设备的电量迅速耗尽,这对于本上就不以续航见长的智能手机来说则更是要命。另外在计算机科学领域有一句非常著名的话叫「空间换时间」,简单来说就是算法的「空间复杂度」和「时间复杂度」通常无法两全——想要在手机上部署并维持一个好用的AI模型?OpenAI你问过手机里那一个文件保存5份还会过期的国民级App了吗?

        信息安全限制听起来很复杂,但是实际上非常简单:在移动设备上运行AI模型需要使用大量的用户数据,而手机这个载体记录的个人数据已经远远超过了其他个人电子设备。我们该如何保证AI拿到所有信息都是我们「想让AI知道」的呢?

我们需要怎样的移动AI?

        虽然让AI登陆手机背后有无数的难点,但作为一个AI模型用户,我不得不承认AI技术的加入将对整个手机行业带来天翻地覆的变化,甚至有可能打破iOS与Android之间「一超多强」的格局。

        一旦AI模型登陆手机平台,首先可以肯定的是上游SoC供应商会积极改变产品策略,大幅提升SoC中用于AI运算的NPU数量和性能。AI也不再是我们评判手机拍摄表现时的指标,而是成为一个通用的综合能力指标,甚至跑分软件都会争相加入对AI算力的测试环节。

        而在用户层面,AI技术的加入也将解决一些过去手机中那些有大量数据,但因算力不足而无法解决的问题。比如用AI学习用户的脸部变化,从而提供更安全的口罩人脸解锁或声纹解锁,或者利用AI学习用户的使用习惯,从而在用户横着掏手机时精确判断用户意图并打开相机自动拍摄。针对采用曲面屏的手机,AI的加入可以根据用户拿手机的方式提供更智能的边缘防误触策略。

        至于AI在相机领域的应用更是一绝:在AI的帮助下:某些手机品牌可以跳过拍照的步骤,直接「增强」一张月亮照片出来。实际上,对智能手机行业来说“AI”并不是陌生的词汇,甚至早在七八年前,就已经有手机厂商宣布会借助AI能力对手机体验进行优化,而发展至今AI也依然潜藏在我们的手机里。

        但我们需要认识到的是,ChatGPT技术发展的速度、所展现的能力远不是智能手机上那种“增强AI”可比的,如果类似的大模型AI真的深入到智能手机中,说不定直接会让智能手机变成一个全新的品类。

        但如果OpenAI只想打造一个适用于移动端的App,那么手机厂商暂时还不用过多担心,甚至可以尝试和OpenAI合作说服他们开放接口,好让这种AI能力接入到手机的各个应用层面之中。

        当然了,AI模型的加入也会为手机带来真正智能化的语音助手,而当大型AI模型真正在用户手机上部署时,Siri也应该摆脱「人工智障」的外号了吧。只是又有多少iPhone存得下一个完整的AI模型呢?


http://www.ppmy.cn/news/47409.html

相关文章

2. VBA Excel宏

在本章中,我们来学习如何逐步编写一个简单的宏。 第1步 - 首先,在Excel 2016中启用“开发者”菜单。要完成这个设置,请点击左上角菜单:文件 -> 选项。如下图所示 - 第2步 - 点击“自定义功能区”选项卡并选中“开发工具”。然…

【uniapp】sigmob广告加载失败:-5005、500422没有imei的解决办法(原创可用)

问题 最近打算将开发的uniapp应用对接uni-ad广告中去,在对接sigmob的时候出现了以下问题:①错误码-5005,查询了以下官方文档,发现是说我频繁调用,可是并没有,我是在真机上测试的没成功就没在弄了&#xff…

pyest+appium实现APP自动化测试,思路全总结在这里

目录 01、appium环境搭建 2、搭建pythonpytestappium环境 3、安装pycharm搭建项目编写脚本 4、执行测试 绵薄之力 01、appium环境搭建 安装nodejs http://nodejs.cn/ 为什么要安装nodejs? 因为appium这个工具的服务端是由nodejs语言开发的 安装jdk&#xf…

Nginx+Tomcat负载均衡、动静分离

1.Tomcat多实例部署 Tomcat的多实例部署简单的讲就是基于端口的虚拟主机设置 步骤一:安装jdk (1)关闭防火墙和selinux,防止其对安装过程的干扰 (2)将准备好的软件包拖入/opt目录下,进行安装 #某rpm包尚未…

“C语言之美:结构体、联合体和枚举的魔法“

目录 结构体 联合体 枚举 结构体 结构体是一种用户定义的数据类型,它允许我们将不同类型的数据组合在一起,形成一个单独的实体。结构体由多个元素(也称为成员)组成,并且每个元素可以是不同的数据类型,例…

ServletConfig和ServletContext 的介绍和代码实现

目录 ServletConfig ServletConfig 基本介绍 ServletConfig 类能干什么 为什么需要 ServletContext 1. 方案 1-DB 2. 方案 2-ServletCntext 代码实战 ServletContext ServletContext 基本介绍 ServletContext 可以做什么 代码实战 代码实战2 ServletConfig Servle…

netlink

Netlink套接字是用以实现内核进程和用户进程通信的一种特殊的进程间通信(IPC),从linux 2.2开始引入内核,当时名为AF_NETLINK,旨在提供一种更灵活的内核和用户空间的通信方法,用以替换笨拙的IOCTL. IOCTL 方式通信&…

dockerFile记录

后端打包dockerFile内容 FROM openjdk:8-alpine RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime RUN echo Asia/Shanghai > /etc/timezone ENV projectName operation RUN mkdir -p /home/${projectName} WORKDIR /home/${projectName} COPY ./ /home/${pro…

「OceanBase 4.1 体验」|国产分布式数据库不好用?别再打脸了

文章目录 分布式数据库分布式数据库有哪些?OceanBase4.1安装部署Index Skip Scan总结 随着互联网的高速发展和数据量的爆炸式增长,如何能够高效、可靠、安全地存储海量数据成为了每个企业的重要课题。 分布式数据库 分布式数据库通常是由多个独立的数据…

从底层理解类

函数调用约定_thiscall thiscall是对象调用类成员函数时的约定 class Role { public:int hp;int mp;int add(int a, int b){return hp mp a b;} }; int main() {Role r;r.add(100, 200); } 查看汇编代码 15: Role r;16: r.add(100, 200); 00F91B08 push 0C…

[网络安全]第三次作业

目录 1. 什么是IDS? 2. IDS和防火墙有什么不同? 3. IDS工作原理? 4. IDS的主要检测方法有哪些详细说明? 5. IDS的部署方式有哪些? 6. IDS的签名是什么意思?签名过滤器有什么作用?例外签名…

记录解决Maven依赖冲突导致的NoSuchMethodError问题的过程

摘要 本文记录了解决 Maven 依赖冲突导致的 NoSuchMethodError 问题的过程。问题出现的原因是多个库包含了 Jackson 库,导致 Jackson 序列化与反序列化时出现 NoSuchMethodError 异常。通过查看依赖树,排除冲突库的方法,最终成功解决了该问题…

查询练习:YEAR 与 NOW 函数

查询 student 表中每个学生的姓名和年龄。 -- 使用函数 YEAR(NOW()) 计算出当前年份,减去出生年份后得出年龄。 SELECT name, YEAR(NOW()) - YEAR(birthday) as age FROM student; ----------------- | name | age | ----------------- | 曾华 | 42 |…

垃圾收集器面试总结(一)

垃圾收集器 Serial 收集器(GC日志标识:DefNew) Serial(串行)收集器是最基本、历史最悠久的垃圾收集器了。大家看名字就知道这个收集器是一个单线程收集器了。 它的 “单线程” 的意义不仅仅意味着它只会使用一条垃圾…

Python OpenCV3 计算机视觉秘籍:6~9

原文:OpenCV 3 Computer Vision with Python Cookbook 协议:CC BY-NC-SA 4.0 译者:飞龙 本文来自【ApacheCN 计算机视觉 译文集】,采用译后编辑(MTPE)流程来尽可能提升效率。 当别人说你没有底线的时候&…

如何使用Socks5代理来保护个人隐私和网络安全

在当今互联网的环境中,我们经常需要通过代理服务器来保护我们的网络安全和隐私。Socks5代理是一种广泛使用的代理协议,它提供了许多安全和隐私保护的功能。在本文中,我们将探讨Socks5代理和网络安全的关系,并介绍如何使用Socks5代…

wps - 使用宏来为每行标记序号

在WPS中遇到需要加序号的虽然可以用项目符符号来标注# 但或许用宏更厉害一些 WPS 的宏是一种自动化工具,可以通过编写宏代码来自动执行一些操作,例如创建和编辑文档、打印、格式化等。 WPS 宏的编写可以使用 VBA(Visual Basic for Applicat…

使用全球融合CDN的10大优势

根据预估,今年的全球内容交付网络(CDN)市场预计将达到424亿美元。而由于移动应用程序的激增和人工智能尤其是ChatGPT等相关领域的快速发展将进一步带来CDN市场的快速增长,可以说全球CDN的黄金时代才刚开始。 融合CDN和多CDN战略是…

39、组合总数

难度:中等 给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 ,并以列表形式返回。你可以按 任意顺序 返回这些组合。 candidates 中的 同一个 数字可以 …

Git详细教程,彻底理解Git运作机制

Git详细教程 前言git常用命令版本管理远程仓库分支管理 正文git版本管理版本回退工作区和暂存区工作区版本库(Repository) 撤销修改删除文件 git远程仓库github使用添加远程库小结 从远程库克隆 git分支管理创建和合并分支git merge vs git rebase 解决冲…