首页 > 其他分享 >51c大模型~合集52

51c大模型~合集52

时间:2024-09-13 10:25:37浏览次数:11  
标签:软件开发 LLMs 51c Agent 52 端侧 AI 合集 模型

#Carpentopod

当代版木牛流马?国外网友造出「会走路的桌子」,引百万人围观

你想喝瓶啤酒,于是就把桌子叫了过来。这不是吃了菌子才有的场景,而是国外网友的一项发明,名叫 Carpentopod。

51c大模型~合集52_大模型

整个桌子有 12 条腿,里面内置了电机,是木工、电子和编程结合的产物。只要按下遥控器,桌子就会向你走来,像一个家用机器人一样。

从图上可以看出,Carpentopod 走起来非常平稳,这是它的腿部参数不断「进化」的结果。这个「进化」过程在软件的虚拟环境中进行,数千个虚拟腿部变体在该环境中竞争,只有得分高的腿部变体才能混合「基因」。

如此精巧的结构制作起来自然是非常不易。作者表示,「早在 2008 年,我就写了一些有趣的软件来生成各种优化的步行机制。近年来,我掌握了一些电子和木工技能,于是能够将其中一种机制变成一个真正的无线步行木制咖啡桌。」

这种机器人技术与木工的结合令人眼前一亮。作者 @Giliam de Carpentier 表示将参加近期的一个活动,届时会做更多介绍。

这个咖啡桌在网上吸引了上百万人的关注,很多人表示想要一个。

在一篇文章中,作者介绍了从设计到材料选择,再到加工和装配的全过程。其中包括使用数控机床加工竹板部件,还包括控制电机和 Arduino 系统以实现桌子的移动功能。

51c大模型~合集52_大模型_02

文章链接:https://www.decarpentier.nl/carpentopod

设计新连杆

Carpentopod 腿部连杆是由作者编写的软件生成的。这个软件让数千个虚拟腿部变体进行竞争,以此进化。为了挑选出最佳的变体,每个变体都被赋予一个基于其行走速度、间隙和材料使用的「适应度」分数。在行走周期中最低的三分之一阶段,作者额外奖励了那些腿尖能更水平和更平滑移动的变体。这样的设计有助于三条腿协同作用,以最大程度减少行走时的晃动和足滑。 

通过比较每种变体的适应度分数,只有最优秀的变体才能混合其基因(即腿部参数),创造出一代又一代的新变体。除了通过「自然选择」混合基因外,作者还定期引入基因突变,以帮助发现新的解决方案并保持多样性,直到找到最佳解决方案。作者用 C++ 编写了包括运动学求解器在内的所有程序,使得这个模拟每秒可以进化数十代,让人可以清晰地看到从初步设计到高度优化设计的转变。 

51c大模型~合集52_大模型_03

上面的动图展示了 20 秒钟的进化过程。每帧显示 5000 个「存活」的变体中的一个。同时,视频中叠加了所有 5000 个个体的腿尖轨迹,这些轨迹随时间推移合并成一个红、绿色光晕,最终收敛成一个单一的解决方案。作者最终选择的腿部连杆,是通过运行一个规模更大、时间更长的模拟程序简单选出的。命名结合了古拉丁语和希腊语单词:carpentum(一种有盖的马车,如下图)和 pod(代表脚或有腿的)。 

51c大模型~合集52_大模型_04

看过 Theo Jansen 鼓舞人心的 Strandbeest 雕塑的人可能都会发现,他的雕塑的腿部连杆机构与 Carpentopod 连杆机构十分相似。但 Carpentopod 的连杆具有一套完全不同的组件比率,以及一个额外的关节点和一个进化过的圆形脚趾直径。这些额外的参数使得进化过程能够找到一种更紧凑、减少脚部滑动的解决方案。

51c大模型~合集52_大模型_05

51c大模型~合集52_大模型_06

Strandbeests 是荷兰动感雕塑艺术家 Theo Jansen 发明的「风力仿生兽」,依靠机械原理和自然风力移动前行,结构巧妙之处在于合理的利用平衡性进行物理变量的转化,能源转化率非常高。

脚部滑动的原因是不同的脚趾着地的速度不完全一致,因此在实践中会导致这些腿试图相互减速。(不过,Strandbeest 的腿似乎通常都采用某种灵活 / 滚动的脚趾,而不是刚性的脚趾,这可能在一定程度上有助于弥补这种影响)。下面的动图比较了两种不同的设计,包括它们对尺寸、重心和脚滑动 / 滑行的影响。

设计会走的桌子

多年来,上述成果只是一个兴趣项目的有趣结果。但最近几年,作者也对制作实物产生了兴趣。他尝试制造的第一件东西是之前版本连杆的一个微型模型,由于其对紧凑性的优化较少,因此不适合成为最终的 Carpentopod 桌子。这只是为了测试他新开发的技能, 并在尝试更大项目之前试用新的 CNC(数控机床)。

接下来,他决定制作一个可以行走的木制咖啡桌,因为他认为这既实用又具有美观价值。由于 Carpentopod 连杆中的每个独立腿部只占行走周期的三分之一,因此这个桌子本身需要十二条腿以保持稳定。为了保证行走的平滑性,腿部组件也需要以亚毫米级的精度制作并维持这种状态。这就是作者选择用层压竹板进行 CNC 加工的原因,这种材料坚固、自然、耐用且稳定,非常适合将机械元素与有机风格结合起来。 

作者使用 Autodesk Fusion 360 设计了桌子的所有组件,这使他能够在同一个软件包中完成建模、测试、渲染和所有 CNC 的准备工作。能够在其行走周期的任何阶段从任何角度实际查看完全组装的模型,极大地方便了美学调整和确保所有间隙都恰到好处。 

51c大模型~合集52_大模型_07

51c大模型~合集52_大模型_08

51c大模型~合集52_大模型_09

51c大模型~合集52_大模型_10

在一端的六条腿和另一端的六条腿之间,作者还留出了一个中空的「腹部」,用来放置电子设备、电机和电池。为了让它看起来不那么棱角分明,他把框架和腹部设计成弧形,就像一个倒置的百宝箱。这可能是有些人说它看起来像 Terry Pratchett《碟形世界》(Discworld)小说中的「行李箱」(如下图)的原因之一。

中央的腹部还能使所有支腿至少与中心保持一定距离,从而使所有支腿都能更有效地参与转弯。每组六条腿都被设计成与自己的曲柄轴相连,由一个电机驱动。这样,它们只需要两个单独控制的电机就能像坦克一样「驱动」和转动桌子。

构建过程

为了将 3D 设计实物化,作者尽可能多地使用 CNC。这不仅因为精确度的需要,也因为这样可以更容易地批量制造出十二个相同的木制部件。由于这只是一个兴趣项目而不是生产线,所以作者决定使用他便宜的三轴 CNC 路由器亲手制作所有东西。 

三轴 CNC 只能从顶部去除材料。但是由于许多零件也需要从底部和 / 或侧面移除材料,以制造更复杂的形状和凹陷,作者将大部分腿部零件设计成由三片层压竹子制成,他可以分别加工每层竹子,然后将其粘合在一起。

当然,即使是单个部件也可能需要使用不同尺寸和形状的切削工具多次过刀,并可能需要精确地翻转以进行双面加工。但这正是数控加工的现实 —— 如果你不想买更贵的五轴 CNC,也不想使用塑料进行 3D 打印的话,这就是你必须面对的。 

除了作者自己数控加工、抛光、上漆并用更多的滚珠轴承和钢轴组装的 100 多个竹制部件外,设计还要求制作两个曲轴。他最终通过将 D 形轴和带 D 形孔的旋转偏心体锤在一起,精心地从普通铝杆和铝板中数控加工出这些部件。

51c大模型~合集52_大模型_11

51c大模型~合集52_大模型_12

51c大模型~合集52_大模型_13

51c大模型~合集52_大模型_14

桌子的弧形「腹部门」是通过在同一层压竹中精细地切割制成的,然后蒸汽处理使其更加柔韧,最后在弯曲夹具中干燥,以赋予其新的形状。然后,这些部分被粘贴在两个带有嵌入式磁铁的隐形铰链肋上,使得门易于打开和关闭。最后,他还焊接了一件与之高度相同的电视柜,并将一块芒果木加工成两件家具的桌板,有效地将它们组合成一套。

让桌子动起来

两个六腿部分应由各自的电机驱动。但实际上,是每个部分的单个曲轴协调腿部的相对运动。在下图中可以看到,作者只是简单地推动一个没有电机的部分向前移动,该部分就可以表现得像一个轮子。 

图中还展示了脚趾是如何轻触地面(由黑线表示),但并不试图穿透它的。这意味着,桌子在行走时不会有太多的「颠簸」。当然,最小化颠簸也是连杆在进化过程中的适应度指标之一。

为了让它自行移动,作者订购了两个便宜的齿轮驱动的 24V 无刷电机,这类电机通常用于自动窗帘,输出最大 1.5 Nm @ 130 RPM。它们内置的电子设备还允许使用额外的 PWM 信号线直接控制速度。遗憾的是,当尝试让它们低速运行时,电机几乎立即进入了一种因温度过高而自动持续几秒的关机保护模式,即使仅在极小的负载下也是如此。幸运的是,将 PWM 信号保持在 100%,并直接改变电压,情况就好多了。如下图所示,作者直接将可调试的实验室电源连接到其中一个六腿部分的电机上。 

为了能自动控制电机电压,作者购买了两个便宜的升降压转换器模块,这些模块可以将任何电池的电压转换成 0 至 24 伏之间的任意电压。然后,他对这些模块进行了改造,使它们的输出电压可以直接通过一个来自改造后的 Arduino Nano 微处理器板的快速 PWM 信号来设定。这些电压转换模块还提供了一个可调的最大电流设定功能,这使他能够对每个电机的最大堵转扭矩进行控制,从而确保了操作的安全性,尤其是保护了手指。 

接下来,他将露出的霍尔效应电机传感器的信号接入了 Arduino 板,并用 C 语言编写了一套软件来实现自己的闭环电机控制系统。这样一来,电机现在能够独立且精确地控制到任何可能达到的速度和位置,而且这种控制不受负载的影响。 

51c大模型~合集52_大模型_15

在最后一步,作者将一个蓝牙模块连接到 Arduino 上,并编写了一些 C 语言代码,使其能够连接并解析来自改造的无线 Nunchuck 操纵杆的数据。在安装了一个 14.8V 的锂电池之后,桌子就可以在客厅里任意走动了,作者通过一个小型遥控器控制桌子。

,时长00:17

最后,作者公开了他的连杆图纸,想要复制该项目的读者可以参考。

51c大模型~合集52_大模型_16





#Agent4SE 

面向软件工程的AI智能体最新进展,复旦、南洋理工、UIUC联合发布全面综述

本篇综述的作者包括来自复旦大学 CodeWisdom 团队的研究生刘俊伟、王恺欣、陈逸轩和彭鑫教授、娄一翎青年副研究员,以及南洋理工大学的陈震鹏研究员和伊利诺伊大学厄巴纳 - 香槟分校(UIUC)的张令明教授。

自从首个全自动 AI 软件工程师 Devin 问世以来,面向软件工程的 AI 智能体广受关注、层出不穷,例如最近的 Genie、Replit、Cursor 等,它们正在对传统软件开发的范式产生着深刻影响。基于大模型的 AI 智能体(LLM-based Agents,后简称 Agent)通过增强推理、记忆、规划以及使用拓展工具的能力,极大地提升了大模型解决复杂软件开发维护任务的能力,为进一步实现自动化、智能化的软件开发提供了新思路。AI 智能体正在成为软件工程领域的研究新热潮。

复旦大学 CodeWisdom 团队联合南洋理工大学、UIUC 共同对 106 篇相关文献进行梳理和解读,分别从软件工程和 Agent 两个视角全面展现了 Agent 在软件工程领域的最新进展。从软件工程视角,该综述梳理了 Agent 在软件开发全周期各个任务上的应用现状;从 Agent 视角,该综述展示了目前应用于软件工程领域的 Agent 的基础架构、多智能体设计模式以及人机协同模式。最后,该综述展望了 Agent 在软件工程领域的研究机会与发展方向。

51c大模型~合集52_大模型_17

  • 论文地址:https://arxiv.org/pdf/2409.02977
  • Agent4SE 论文列表:https://github.com/FudanSELab/Agent4SE-Paper-List

一、Agent 覆盖软件开发维护全流程

如图 1 所示,目前 Agent 已基本覆盖了软件开发和维护的全流程,不仅可以解决某个特定的软件开发环节(例如静态检查和测试),而且在应对更复杂的端到端的软件开发和维护任务上也表现出了巨大潜力,包括:

  • 端到端软件开发(End-to-end Software Development):Agent 通过执行多种开发子任务,包括需求工程、设计、代码生成和质量保证(包括静态检查和测试等),完成从需求到最终程序的全流程开发。
  • 端到端软件维护(End-to-end Software Maintenance):Agent 支持多种维护活动,如故障定位、修复和特性维护,完成从问题报告到补丁生成的端到端维护。

51c大模型~合集52_大模型_18

图 1: 软件开发与维护任务流程上的 Agent 分布

端到端软件开发

目前面向端到端软件开发的 Agent 主要模拟真实的软件开发团队,设计不同的软件开发角色,互相协作共同完成软件开发任务。

51c大模型~合集52_大模型_19

表 1: 面向端到端软件开发任务的 Agent 文献列表

其中,有些 Agent 在工作流设计上主要遵循了现实软件开发中常见的软件过程模型,包括瀑布模型和敏捷开发(测试驱动开发和 Scrum)。

51c大模型~合集52_大模型_20

图 2: 面向端到端软件开发的 Agent 中采用的过程模型

端到端软件维护

目前,面向端到端软件维护任务的 Agent 遵循着 “缺陷定位 - 补丁生成 - 补丁验证” 的基本工作流程;在此基础上,不同 Agent 选择性地引入了预处理、故障重现、任务分解、补丁排名等步骤。

51c大模型~合集52_大模型_21

表 2: 面向端到端软件维护任务的 Agent 文献列表

51c大模型~合集52_大模型_22

图 3: 面向端到端软件维护任务的 Agent 中常用的工作流

这类 Agent 往往以 SWE-bench 及其衍生的数据集作为评测基准。

51c大模型~合集52_大模型_23

图 4: 端到端维护软件任务的数据集演化示意图

特定的软件开发 / 维护任务

除了端到端的软件开发和维护任务,目前 Agent 在面向单个特定的软件开发或维护环节也有着广泛应用,包括需求工程、代码生成、代码静态检查、测试、缺陷定位与修复等。该综述梳理了面向特定不同软件开发 / 维护任务的 Agent 的工作流。

51c大模型~合集52_大模型_24

图 5: 面向特定软件开发 / 维护环节的 Agent 工作流

二、面向软件工程的 Agent 设计

根据 Agent 的基础结构划分(即 规划(Planning)、记忆(Memory)、感知(Perception)、行动(Action)),该综述进一步总结目前面向软件开发和维护的 Agent 在每部分的设计特点。

Agent 中的常用工具

为了进一步提升 Agent 在软件开发和维护任务上的能力,目前 Agent 的行动模块中集成和使用了大量的工具,主要包括搜索、文件操作、静态程序分析、动态分析、测试、版本管理工具等。

51c大模型~合集52_大模型_25

图 6: 面向软件开发和维护的 Agent 中的常用工具分类

人机协作范式

目前在面向软件开发维护任务上,开发者和 Agent 的协作主要发生在规划、需求工程、开发和评估四个环节。主要的协同方式,是由人类提供反馈,引导、澄清或直接纠正 Agent 的输出。

51c大模型~合集52_大模型_26

图 7:面向软件开发和维护任务的 Human-Agent 协作范式

三、未来的研究方向

该综述进一步探讨了面向软件开发和维护的 Agent 的未来研究方向。

  • 更全面的评测基准和更真实的评测数据。当前针对软工任务的 Agent 的评测主要集中在其端到端解决特定任务的能力上,缺少对决策过程和失败原因的深入分析,以及对鲁棒性等可信指标以及效率指标的关注。此外,当前用于评测 Agent 的数据集也存在一些问题,如逻辑过于简化,与现实场景相差较远等。因此,设计更多样化的评估指标和构建更高质量、更现实的数据集基准是准确评估 Agent 能力的重要方向。
  • 探索人机协同新范式。当前针对软工任务的 Agent 人机协同主要局限于需求工程、设计、测试评估等环节,同时缺少对高效友好的交互接口的系统研究。因此,未来研究可关注于拓展人机协同的应用场景,以及提供更加流畅的人机协作模式。
  • 多模态感知。目前针对软工任务的 Agent 主要依赖于文本或视觉感知。探索和整合多样化的感知模态,如语音命令或用户手势,会显著提高 Agent 编码助手的灵活性和可访问性。
  • 将 Agent 应用于更多软工任务。尽管现有的 Agent 已经被部署在各种软工任务中,但一些关键阶段(如设计、验证和功能维护)仍未被充分探索,为这些阶段开发 Agent 系统可能会面临各方面的新挑战。
  • 训练面向软件工程的基座大模型。目前 Agent 通常构建在以通用数据或者代码数据为主要训练数据的大模型之上,而软件开发的全周期往往涉及设计、架构、开发者讨论、程序动态执行、历史演化等代码以外的重要信息。有效利用这些信息可以构建面向软件工程领域的基座大模型,从而在此基础上构建更强大的面向软件开发与维护的 Agent。
  • 将软件工程领域知识融入 Agent 设计。正如最近 Agentless 研究所揭示,流程复杂且高度自主的 Agent 在某些软件维护任务上的效果不如基于传统缺陷定位和程序修复流程所设计的简单工作流。软件工程领域的经典方法论和思想对于设计 Agent 的工作流有着重要的借鉴和指导意义,可以进一步提高 Agent 解决方案的有效性、鲁棒性和效率。



#端侧大模型的研究进展综述

边缘智能的新时代
  • Jiajun Xu : Meta AI科学家,专注大模型和智能眼镜开发。南加州大学博士,Linkedin Top AI Voice,畅销书作家。他的AI科普绘本AI for Babies (“宝宝的人工智能”系列,双语版刚在国内出版) 畅销硅谷,曾获得亚马逊儿童软件、编程新书榜榜首。
  • Zhiyuan Li : Nexa AI CTO,斯坦福校友,前斯坦福CEO协会主席, Octopus系列论文作者。他在 Google Labs 和 Amazon Lab126 拥有丰富的端侧 AI 模型训练、部署和产品开发经验。
  • Wei Chen : Nexa AI CEO,斯坦福博士,前斯坦福CEO协会主席。他深耕人工智能领域,先后发表多篇Octopus系列模型论文,其中Octopus-V2模型曾在huggingface全球60万模型中位列第二,并在Google 2024 IO上被feature。
  • Qun Wang : 旧金山州立大学计算机系助理教授,曾在劳伦斯伯克利国家重点实验室做博后,犹他州立大学博士。研究方向主要集中在下一代通信网络中边缘计算的能效和安全优化,以及边缘智能系统的通信和训练加速。先后在IEEE发布多篇论文。
  • Xin Gao, Qi Cai : 北德州大学博士生
  • Ziyuan Ling : Nexa AI 初创设计师,伯克利设计系研究生

1 序言:边缘智能的新纪元

在人工智能的飞速发展中,大型语言模型(LLMs)以其在自然语言处理(NLP)领域的革命性突破,引领着技术进步的新浪潮。自 2017 年 Transformer 架构的诞生以来,我们见证了从 OpenAI 的 GPT 系列到 Meta 的 LLaMA 系列等一系列模型的崛起,它们不仅在技术层面上不断刷新我们对机器理解与生成人类语言能力的认知,更在实际应用中展现出巨大的潜力和价值。

然而,这些模型传统上主要部署在云端服务器上,这种做法虽然保证了强大的计算力支持,却也带来了一系列挑战:网络延迟、数据安全、持续的联网要求等。这些问题在一定程度上限制了 LLMs 的广泛应用和用户的即时体验。正因如此,将 LLMs 部署在端侧设备上的探索应运而生,它不仅能够提供更快的响应速度,还能在保护用户隐私的同时,实现个性化的用户体验。

随着技术的不断进步,边缘 AI 市场的全球规模正以惊人的速度增长。预计从 2022 年的 152 亿美元增长到 2032 年的 1436 亿美元,这一近十倍的增长不仅反映了市场对边缘 AI 解决方案的迫切需求,也预示着在制造、汽车、消费品等多个行业中,边缘 AI 技术将发挥越来越重要的作用。

51c大模型~合集52_大模型_27

图 1:2022 年至 2032 年按终端用户划分的端侧 AI 全球市场规模(单位:十亿美元)。

在这样的背景下,本综述文章深入探讨了在边缘设备上部署 LLM 的策略和进展。我们将详细分析模型压缩技术、能效计算策略以及轻量级模型架构的创新设计。此外,文章还将讨论硬件加速策略、边缘 - 云协同部署方法,并重点介绍在边缘场景中有效利用 LLM 的部署策略,以及这些技术在行业中的应用实例和带来的益处。

51c大模型~合集52_大模型_28

  • 论文标题:On-Device Language Models: A Comprehensive Review
  • 论文链接:https://arxiv.org/abs/2409.00088
  • 相关链接:LLMsOnDevice.com

通过本综述,我们希望为读者提供一份关于如何在端侧设备上部署和优化 LLMs 的全面指南,同时指出当前研究的方向和面临的挑战,为未来的技术发展提供参考和启示。我们相信,通过跨学科的共同努力,我们能够实现智能计算的普及。

51c大模型~合集52_大模型_29

图 2:本篇综述结构

2 技术进展:探索端侧 LLMs 部署

在人工智能的浪潮中,端侧大型语言模型(On-Device LLMs)正以其迅猛的发展速度和广泛的应用前景,成为技术革新的新宠。自 2023 年起,随着参数量低于 10B 的模型系列如 Meta 的 LLaMA、Microsoft 的 Phi 系列等的涌现,我们见证了 LLMs 在边缘设备上运行的可行性和重要性。这些模型不仅在性能上取得了长足的进步,更通过混合专家、量化和压缩等技术,保持了参数量的优化,为边缘设备的多样化应用场景提供了强大支持。

进入 2024 年,新模型的推出愈发密集,如图 3 所示,Nexa AI 的 Octopus 系列、Google 的 Gemma 系列等,它们不仅在文本处理上有所增强,更在多模态能力上展现了新的可能性,如结合文本与图像等多模态输入,以适应更复杂的用户交互需求。

51c大模型~合集52_大模型_30

图 3:on-device LLM 的演进,展示了自 2023 年以来的重要模型和发展里程碑。

然而,要在资源受限的设备上部署这些强大的模型,我们必须面对内存和计算能力的双重挑战。研究者们通过量化感知缩放、稀疏更新等创新方法,有效解决了这些问题,使得大型模型即便在参数量巨大的情况下,也能在设备端高效运行。

相较于完全依赖云端的 LLM 服务,端侧推理的优势显而易见。它不仅减少了数据传输的延迟,更保护了用户数据的隐私安全。图 4 的投票分布显示,大多数参与者更倾向于边缘云协作的架构,对现有仅云端的解决方案并不满意。端侧推理的低延迟特性,尤其适用于需要实时响应的应用场景,如 Google 的 Gemini Nano 支持的 TalkBack 功能,即便在完全离线的情况下也能正常工作。

51c大模型~合集52_大模型_31

图 4:用户对不同 LLM 部署方式的偏好情况

衡量端侧 LLMs 性能的指标包括延迟、推理速度、内存消耗等。这些指标直接关系到模型在边缘设备上的实际运行效果,以及用户的使用体验。随着技术的不断成熟,我们期待这些性能指标能得到进一步的优化,使得端侧大语言模型能在更多场景下发挥其潜力。

3 架构创新:优化边缘设备的性能

在智能手机和边缘设备上部署大型语言模型(LLMs)正成为人工智能领域的新挑战。面对有限的内存和计算能力,研究者们提出了一系列创新的架构设计原则和方法,旨在实现资源的高效利用和性能的最大化。架构创新变得尤为关键,其中包括参数共享、模块化设计以及紧凑的表示形式。例如,MobileLLM 通过深度和瘦长的模型结构优化了参数量在十亿以下的模型,而 EdgeShard 框架则通过边缘云协作计算实现了模型的分布式处理,显著降低了延迟并提高了吞吐量。

同时,模型压缩与参数共享技术的应用,如 AWQ 方法和 MobileLLM,不仅减少了模型尺寸,还在保持性能的同时加快了推理速度。这些技术通过保护关键权重和优化模型结构,为 LLMs 在端侧的部署提供了新的可能性。协作和层次化模型方法通过分散计算负载和利用不同能力模型的组合,解决了资源受限设备的部署难题。EdgeShard 和 LLMCad 的研究成果展示了这种方法的有效性,它们通过在多个设备上分配计算任务,提升了 LLMs 的可扩展性和效率。

在内存和计算效率的优化方面,Samsung Electronics 提出的 PIM 和 PNM 技术,以及 MELT 基础设施,都显著提升了内存带宽和容量,同时降低了能耗,为 LLMs 的移动部署铺平了道路。MoE 架构的应用,如 EdgeMoE 和 LocMoE,通过稀疏激活和动态路由,进一步提高了 LLMs 的效率。这些方法通过优化专家网络的选择和路由,减少了模型的内存占用和提高了计算速度。

此外,总体效率和性能提升的研究,如 Any-Precision LLM 和 LCDA 框架,通过提供多精度支持和软硬件协同设计,为 LLMs 在边缘设备上的高效运行提供了新的视角。随着这些创新技术的迅速发展,我们期待在移动设备和边缘设备上享受到与云端相媲美的智能体验,这将为用户带来更加快速、个性化的服务,同时确保数据的安全性和隐私保护。智能边缘计算的未来正变得愈发清晰,它将为人工智能领域带来深远的影响和无限的可能性。

4 模型压缩:平衡性能与效率

在边缘设备上部署大型语言模型(LLMs)时,保持性能的同时提升计算效率尤为关键。本文综述了四种关键的模型压缩技术:量化、剪枝、知识蒸馏和低秩分解,这些方法通过在性能、内存占用和推理速度之间找到平衡,确保了 LLMs 在端侧应用的可行性。

量化是一种通过降低模型权重和激活的精度来减少模型大小的技术。这种方法能够在几乎不损失模型性能的情况下,显著减少模型所需的存储空间和计算资源。后训练量化(PTQ)是一种在模型训练完成后应用的技术,它通过一些先进的补偿策略,如 GPTQ,可以在将模型权重量化到 3 或 4 位的情况下,保持模型的高准确度。而量化感知训练(QAT)则将量化集成到模型的训练过程中,使模型在训练时就适应低精度的约束,从而在量化后保持更高的准确度。

剪枝是另一种通过减少模型复杂性来提升计算效率的方法。结构化剪枝通过移除模型中的整个参数子集,如层、通道或过滤器,来优化硬件性能。无结构化剪枝则在更细的粒度上工作,移除单个权重,提供更高的压缩率。此外,上下文剪枝根据模型的运行上下文动态地移除权重,确保在不同条件下都能保持最优的性能。

知识蒸馏是一种将大型模型的知识迁移到小型模型的技术。黑盒 KD 只使用教师模型的输出进行学习,而白盒 KD 则允许学生模型访问教师模型的内部状态,实现更深入的学习。这种方法可以在不牺牲性能的情况下,显著减少模型的大小和计算需求。

低秩分解是一种将大型矩阵分解为较小矩阵的技术。这种方法利用了矩阵的低秩结构,减少了计算复杂性,同时保持了模型的准确性。Yao 等人的研究将 LRF 与 PTQ 结合,提出了低秩补偿(LoRC),在显著减少模型大小的同时,通过补偿策略保持了模型的准确性。

5 硬件加速:推动端侧 LLMs 的高效运行

硬件加速器在大型语言模型(LLMs)的端侧部署中扮演着至关重要的角色。GPU 和 TPU 等专用硬件提供了强大的计算能力和高内存带宽,它们是训练和加速 LLMs 的重要基础。NVIDIA 的 Tensor Cores 以及 Google TPU 的高效矩阵乘法能力,都为基于 Transformer 的模型提供了强有力的支持。同时,FPGA 以其灵活性,通过稀疏矩阵乘法和量化技术,在 Transformer 层的推理任务中展现出高效能,为特定模型架构提供了定制优化的可能。

软硬件协同设计的方法,如量化感知训练和模型压缩,进一步提升了 LLMs 的效率,使得它们能够跨越从高功率服务器到低功率边缘设备的广泛部署。这些技术通过参数共享和先进的内存管理,减少了模型的存储需求,确保了快速且成本效益更高的部署。此外,各种框架如 Llama.cpp、MNN、PowerInfer 等,根据不同的硬件平台和用例需求,提供了优化的部署策略,从而实现从云端到边缘的无缝协作。

在边缘云部署方面,MLC-LLM 和 VLLM 等技术通过支持高效的量化方法和关键内存管理,优化了 LLMs 在边缘设备和云环境中的部署。OpenLLM 等项目通过 BentoML 等工具,实现了开源 LLMs 的快速部署,提供了与 OpenAI 兼容的 API 服务。随着硬件技术的不断进步,如 NVIDIA A100 GPU 和 Google TPU v4,我们看到了端侧 LLMs 性能的显著提升,这些硬件不仅提供了巨大的计算能力,还通过混合精度训练等技术,大幅减少了模型的内存占用并提高了计算效率。

6 实例与应用:端侧 LLMs 的实践探索

端侧语言模型的实例:Gemini Nano 模型通过 Google AI Edge SDK 为移动操作系统提供了一个小型但功能强大的 LLM,它通过 4 位量化部署,提供了一流的性能和低延迟的推理速度。Nexa AI Octopus 系列模型则在边缘设备上运行,以超越 GPT-4 的准确性和延迟,同时减少了 95% 的上下文长度。Apple 的 OpenELM 和 Ferret-v2 模型通过 iOS 集成,提供了类似系统服务的功能扩展。Microsoft 的 Phi 系列,特别是 Phi-3-mini 模型,即使在移动部署中也展现出与大型模型相媲美的性能。此外,MiniCPM-Llama3-V 2.5 和 Gemma2-9B 等开源模型也在各自的领域内展现出卓越的性能。

端侧大语言模型的应用:端侧 LLMs 的应用范围极为广泛,从即时消息生成、实时语言翻译、会议摘要到医疗咨询、科研支持、陪伴机器人、残障人士辅助以及自动驾驶等。例如,Google 的 Gboard 应用利用 Gemini Nano 模型提供基于聊天内容的快速回复建议。在翻译领域,端侧模型能够在离线环境中快速响应,同时保证翻译质量。会议摘要应用通过分析会议内容,实时生成摘要,避免了云模型订阅服务费用和网络延迟问题。在医疗领域,端侧模型能够在本地处理患者数据,保护隐私同时提供紧急情况下的快速响应。

科研支持方面,端侧 LLMs 能够利用特定领域的大量专业数据进行训练,加速科研进展。陪伴机器人和 IoT 设备通过端侧 LLMs 提升了理解自然语言指令的能力。对于视障人士,端侧多模态模型能够将图像转换为文字,提供丰富的图像描述,并支持离线使用。此外,手语识别和翻译项目也利用了端侧模型的低延迟和离线可用性。

自动驾驶领域,结合大规模视觉语言模型的系统正在改善车辆对复杂和长尾场景的理解,提供即时响应并处理动态场景。

51c大模型~合集52_大模型_32

图 5 展示了端侧 LLMs 在不同应用领域的表现,从文本生成、翻译、会议摘要、医疗应用、科研支持、伴侣机器人、残障人士辅助到自动驾驶等,端侧 LLMs 正以其智能、响应迅速和个性化的特点,改变我们与技术的互动方式。

7 未来展望:边缘计算的智能转型

51c大模型~合集52_大模型_33

图 6:on-device LLM 的未来方向和面临的挑战

在设备上运行的大型语言模型(LLMs)正迅速发展,它们在数据安全、低延迟和个性化 AI 体验方面展现出巨大潜力。然而,要在资源受限的设备上部署这些模型,我们必须克服包括模型压缩、高效推理、安全性和能源效率等一系列挑战。未来的研究将致力于开发新的隐私保护技术,如查询混淆和先进的随机化技术,同时加强风险评估和监控,以确保模型的实用性和数据的安全性。此外,研究者们也在探索适应性边缘 - 云协作,通过智能缓存、请求分析和资源分配算法,优化数据在边缘设备与云服务器间的传输。

多模态和跨模态学习是推动 LLMs 发展的关键方向,它们使模型能够整合并理解多种数据类型,从而提供更丰富的用户体验。研究者们正致力于开发高效的多模态处理技术,以及能够适应不同模态输入的模型架构。同时,资源效率也成为研究的重点,通过模型压缩和执行算法的优化,以及利用模型稀疏性,可以显著降低模型在边缘设备上的能源消耗,这对环境保护具有重要意义。 

为了进一步提升 LLMs 的性能,硬件 - 软件的协同设计变得至关重要。未来的研究将探索新的 PIM/PNM 架构,以及针对 AI 特定需求优化的编译器和运行时系统。此外,确保模型的鲁棒性和可靠性也是未来工作的重点,研究者们正在开发方法以检测和减轻模型输出中的偏见和幻觉,特别是在安全关键的应用中。

个性化 AI 体验是设备上 LLMs 的另一大优势,但这也带来了模型持续学习和适应新信息的挑战。未来的研究将集中于实现知识保留和遗忘的可控机制,以及开发持续学习的理论基础和优化策略。通过这些机制,模型能够根据用户交互和本地数据自主学习新技能,并提高现有能力。

8 结语

在设备上部署的大型语言模型(LLMs)正开启智能边缘计算的新篇章,预示着一个个性化、高效的 AI 时代即将到来。这些模型通过强化数据安全、降低延迟,并提供深度个性化的体验,将彻底改变我们与技术的互动。展望未来,随着技术的不断成熟,我们期待一个设备更智能、服务更精准、生活更便捷的新世界。个性化的 AI 将融入日常生活的方方面面,从智能家居到自动驾驶,从虚拟助手到健康监护,它们将以前所未有的方式提升我们的生活品质。随着研究的深入,一个更智能、更可靠、更贴近人心的 AI 未来正向我们招手,让我们满怀期待,迎接这个由 LLMs 引领的创新纪元。

为了进一步促进学术交流和知识共享,我们建立了一个专门的 GitHub 资源库 ——Awesome LLMs on Device。这个资源库不仅收录了本论文的详细内容,还将持续更新,以反映该领域的最新研究成果和技术动态。

诚邀学术界同仁访问我们的 GitHub 资源库,参与到 LLMs 在边缘设备上的研究中来,共同推动智能边缘技术的创新与发展。

Github Repo:https://github.com/NexaAI/Awesome-LLMs-on-device


标签:软件开发,LLMs,51c,Agent,52,端侧,AI,合集,模型
From: https://blog.51cto.com/whaosoft/11999205

相关文章