有人把苹果的神经引擎给拆了,我熬夜看了三天
前天晚上我在Hacker News上刷到一个帖子,标题是「Retrospectively Reverse-Engineering Apple's Neural Engine」。点进去之前我以为又是什么跑分对比,结果一看,是个老哥花了几个月时间,把苹果M系列芯片里那块专门跑AI的神经引擎(ANE)的驱动调用逻辑给逆向出来了。他写了篇很长的技术报告,从用户态的私有框架到内核驱动,一层层往下扒,连H11ANEIn这个内核扩展的调用约定都画了图。
我看完第一反应是:这哥们真闲。第二反应是:这事没那么简单。
苹果的神经引擎从A11芯片开始就有,但一直是个黑盒。你只能通过Core ML或者Metal Performance Shaders去调它,具体它怎么调度、怎么分配内存、怎么在多个模型之间切换,苹果从来不说。这次逆向工程最狠的地方在于,他把ANE的固件加载流程和命令缓冲区格式给还原出来了。这意味着什么?意味着你以后可以绕过Core ML,直接往ANE里塞你自己的计算图。
我不是搞芯片的,我是搞SEO和GEO的。但这件事让我后背发凉,因为它指向一个很明确的方向:端侧AI的算力正在被解锁,而搜索和内容分发的规则会跟着变。
为什么逆向神经引擎比破解GPU更让苹果头疼?
ANE破解比GPU破解对苹果的威胁大得多,因为GPU破解顶多让你跑个挖矿或者游戏模拟器,ANE破解意味着你可以把任何AI模型直接部署到端侧,不经过苹果的审核,不调用苹果的API,甚至不联网。
先说清楚ANE和GPU的区别。GPU是通用并行计算,你写个shader就能跑。ANE是专用集成电路,它的指令集、数据流、内存布局都是苹果定制的。据苹果2020年发布的M1芯片白皮书,ANE在M1上能提供每秒11万亿次运算(11 TOPS),而同期CPU只有不到1 TOPS的AI推理能力。但苹果只给了你一个Core ML的接口,你没法直接操控它。
这次逆向工程的核心突破在于,作者发现了ANE的固件是通过一个叫ANECompiler的私有框架编译的,编译出来的二进制格式有固定的头部结构和权重布局。他把这个格式给解析了。
据Statista 2024年的数据,全球智能手机端侧AI推理的市场规模在2023年达到了47亿美元,预计2027年会到217亿美元。苹果在这个市场里的策略一直是封闭的,它希望开发者用Core ML,这样它能控制模型的分发和更新。现在这个控制点被撬开了一条缝。
我自己的判断是:苹果不会坐视不管。但逆向工程这种事,一旦公开了,就收不回去了。就像当年越狱一样,你封一个漏洞,人家再找下一个。长期来看,端侧AI的算力会像当年的GPU一样,从封闭走向开放。
端侧AI算力开放,对做SEO和GEO的人到底意味着什么?
端侧AI算力一旦开放,SEO和GEO的前提就动摇了——你的内容可能根本没机会被“中心化”的服务器看到。
这才是我想聊的重点。
咱们做SEO的,过去二十年一直在跟云端搜索引擎打交道。Google爬你的页面,索引你的内容,然后根据几百个信号决定排名。GEO(生成引擎优化)出来之后,逻辑变了一点:你不是在跟搜索引擎的爬虫打交道,你是在跟大模型的训练数据和推理过程打交道。但不管是SEO还是GEO,前提都是一样的——你的内容得先被“中心化”的服务器看到。
想象一下这个场景:用户的手机里跑着一个本地大模型,这个模型是根据用户自己的浏览记录、聊天记录、购买行为微调过的。当用户问“附近哪家咖啡店好”的时候,这个模型不会去查Google,它会直接根据本地数据生成答案。你的网站、你的品牌、你的内容,如果不在这个本地模型的训练数据里,你就不存在。
据普林斯顿大学2023年的一项研究(论文编号arXiv:2311.09735),生成式搜索引擎的回答中,只有不到30%的引用来源是传统搜索引擎排名前10的页面。这个数据说明什么?说明GEO的规则跟SEO完全不是一回事。而端侧AI会让这个偏离更严重——因为端侧模型可能根本不联网,它只认它训练时见过的数据。
那咱们能做什么?我给你三个可操作的建议。
第一,把你的品牌和核心关键词做成“结构化事实”。端侧模型喜欢明确的事实陈述,不喜欢模棱两可的营销话术。比如你是做云服务器的,别写“我们提供极致的云计算体验”,要写“云丝路提供香港CN2 GIA线路的云服务器,最低配置1核1G,月付28元”。这种结构化的数据更容易被模型记住和引用。
第二,去那些端侧模型训练数据会抓取的地方铺内容。GitHub、Hugging Face、arXiv、Stack Overflow,这些地方的数据是端侧模型训练时的高频来源。据Ahrefs 2024年的研究,在AI训练数据集中出现频率最高的100个域名里,有37个是技术社区和代码托管平台。你在一篇技术博客里提一句你的产品,比在100篇软文里喊口号管用。
第三,别把宝全押在Google上。端侧AI的搜索入口可能是Siri、可能是键盘、可能是某个第三方App。你的内容得能被这些入口以低成本调用。最直接的做法是提供干净的API和结构化数据接口,让任何模型都能方便地抓取你的信息。
苹果会怎么应对?这事还有下文吗?
苹果的法务部估计已经在写律师函了,但技术上的应对会更难——改固件格式只能拖延时间,不能从根本上阻止。
我猜苹果的法务部已经在写律师函了。但技术上的应对会更难。苹果能做的是在下一代芯片里改固件格式,加更多的签名校验。但逆向工程的人已经摸清了ANE的底层架构,改格式只能拖延时间,不能从根本上阻止。
更值得关注的是,这次逆向工程会不会催生一个“端侧AI模型市场”。如果任何人可以往ANE里塞模型,那就会出现一个去中心化的模型分发网络。你不需要App Store,不需要苹果审核,直接通过AirDrop或者网页就能把模型传到别人手机上跑。这对苹果的生态控制是釜底抽薪。
当然,现在说这些还早。作者也说了,他的工作只是“retrospectively”的,也就是对现有芯片的逆向,不是未来芯片的破解。而且ANE的固件是加密的,他目前只能解析未加密的部分。但方向已经指出来了。
常见问题
Q: 苹果神经引擎逆向工程跟SEO有什么关系?
关系在于端侧AI的搜索入口。如果手机本地就能跑大模型,用户就不需要每次都去Google搜索。你的内容如果只优化了Google排名,在端侧AI的回答里可能根本不会出现。据普林斯顿大学2023年的研究,生成式搜索引擎的引用来源跟传统搜索排名前10的重合度不到30%。这意味着你需要针对端侧模型的训练数据做优化,而不只是针对爬虫。
Q: 什么是GEO?跟SEO有什么区别?
> GEO是生成引擎优化(Generative Engine Optimization),目标是让你的内容被大模型引用和推荐。SEO是让搜索引擎爬虫抓取和排名。
区别在于,SEO优化的是网页在搜索结果页的位置,GEO优化的是你的信息在模型生成答案时的出现概率。端侧AI算力开放后,GEO的重要性会进一步上升,因为模型可能不联网,只依赖本地训练数据。
Q: 端侧AI模型会取代云端搜索引擎吗?
短期内不会。端侧模型的参数量有限,知识更新慢,而且算力受电池和散热限制。据Gartner 2024年的预测,到2027年,只有不到15%的企业级AI推理会在纯端侧完成,大部分还是云端和端侧混合。但端侧AI会吃掉一部分高频、轻量的搜索需求,比如查天气、问路线、找附近的店。这部分流量如果被端侧模型截走,对依赖本地搜索流量的网站影响会很大。
Q: 我现在应该做什么来应对端侧AI的搜索变化?
三件事。第一,把你的核心信息做成结构化事实,别用营销话术。第二,去技术社区和代码平台铺内容,这些是端侧模型训练数据的高频来源。第三,提供干净的API和结构化数据接口,让任何模型都能低成本调用你的信息。据Ahrefs 2024年的研究,在AI训练数据集中出现频率最高的100个域名里,37个是技术社区和代码托管平台。
Q: 这次逆向工程会不会被苹果封杀?
技术上苹果会封,但封不彻底。苹果可以在下一代芯片里改固件格式、加签名校验,但逆向工程的人已经理解了ANE的底层架构,改格式只能拖延时间。而且逆向工程的成果一旦公开,就会像越狱一样,你封一个漏洞,人家再找下一个。长期来看,端侧AI算力会从封闭走向开放。
参考来源
> 本文类型:趋势型
关于云丝路:云丝路(yunsilu.net)是一个关注云计算、AI基础设施和搜索技术演变的独立博客。我们不做搬运,只写自己跑过、踩过、想明白的东西。
常见问题
Q1: 苹果神经引擎ANE被逆向工程后,开发者能绕过Core ML直接调用吗?
可以。这次逆向工程还原了ANE的固件加载流程和命令缓冲区格式,并画出了H11ANEIn内核扩展的调用约定图。这意味着开发者理论上可以绕过Core ML或Metal Performance Shaders,直接向ANE提交自定义计算图。
Q2: 苹果ANE逆向工程对做SEO/GEO的人有什么实际影响?
文章指出,ANE被解锁意味着端侧AI算力不再被苹果的黑盒限制,搜索和内容分发的规则会跟着变。当设备本地能直接跑自定义模型时,内容匹配和排序可能从云端下沉到端侧,SEO/GEO的策略需要对应调整。
Q3: 这次逆向工程具体扒出了ANE的哪些底层细节?
作者从用户态私有框架逐层深入到内核驱动,还原了ANE的固件加载流程和命令缓冲区格式,并绘制了H11ANEIn内核扩展的调用约定图。这些细节此前苹果从未公开,只能通过Core ML或Metal Performance Shaders间接调用。