百度沈抖:智能,生成无限可能

4月16日,Create 2024百度AI开发者大会在深圳举行。会上,百度集团执行副总裁、百度智能云事业群总裁沈抖正式发布新一代智能计算操作系统——百度智能云万源。它能管理万卡规模的集群,极致地发挥GPU、CPU的性能;它有强大的大模型作为核心引擎,构建起全面的大模型服务能力。它让应用开发像搭积木一样简单,提升AI原生应用的开发效率与体验,加速AI原生应用的爆发。

沈抖表示,传统的云计算系统依然重要,但不再是主角,我们需要一个全新的操作系统,对新的计算平台,也就是智能计算做好抽象和封装,重新定义人机交互,为开发者提供更简单、更流畅的开发体验。百度智能云万源,就是这样的新一代智能计算操作系统。

image.png

百度集团执行副总裁、百度智能云事业群总裁 沈抖

以下为演讲实录:

image.png

大家上午好!今天,我想用一句我非常喜欢的话来开场:“简单是终极的复杂”。

这句话来自苹果公司的第一本宣传册,也有人说它来自达芬奇。不论来自哪里,它代表着我们对极简之美的共同追求。

在百度,我们的使命就是“用科技让复杂的世界更简单”。回到今天的主题“人人都是开发者”,那我们追求的一种简单,就是让每个人都可以用极简的方式开发出极强的软件。

640.gif

80年前,第一代“程序员”手动插拔电缆、转动旋钮,用布线板来操作计算机,难度大、效率低还容易出错。

640 (1).gif

后来,汇编语言和汇编器出现了。我们可以用一种相对自然的方式告诉机器如何工作,大大提高了开发效率。这种让程序代替人工、让软件管理硬件的方式,就是操作系统的雏形。

但这还远远不够。

640 (2).gif

再后来,高级编程语言和编译器诞生了,计算平台进一步进化,开发者可以用更接近人类的方式表达需求,无需关心底层软硬件的复杂性。大多数的应用可以在不修改任何代码的情况下,都可以迁移到其它硬件上去运行。

640 (3).gif

9,000+行代码的UNIX6

640 (4).gif

4,300,000+行代码的WinNT

640 (5).gif

45,000,000+行代码的WinXP

软件越来越复杂,硬件越来越先进。随之升级的是快速迭代的操作系统。

本质上,操作系统就是管理硬件和软件,往下一层层屏蔽底层的复杂性、往上抽象成简单的交互界面。对开发者来说,只需要关注业务本身的逻辑,使用简单的编程工具和语言,开发相应的软件功能。

640 (6).gif

随着软件规模和复杂度的提高,单台机器已经不能满足需求,集群出现了。

集群出现以后,操作系统管理的对象,不再是单台机器和运行在上面的“进程”,而是整个集群和上面运行的各种“微服务”,管理的对象和复杂性有了质的变化。

640 (7).gif

云计算应运而生,集群管理的复杂性从此被隐去,开发者可以按需扩缩容,灵活响应市场的变化。

640 (8).gif

到了今天又不一样了,大模型出现了。机器和系统第一次不再是人类的提线木偶,而是具备了“理解、生成、逻辑和记忆”的能力。这将彻底改变人和机器的关系,这其中最重要的一点就是软件开发的范式。编程不再是少数经过专业训练的程序员的特权。相反,人人都是开发者。编程不再需要从C/C++学起,而是从自然语言开始;编程不再是面向过程、面向对象,而是面向需求,以后编程的过程,就是一个人表达愿望的过程。

这是革命性的变化。它会彻底颠覆原有的操作系统。

在操作系统的内核中,底层的硬件从以CPU算力为主变成以GPU算力为主,而且第一次增加了硬件和软件以外的资源,也就是被大模型压缩的世界知识。操作系统管理的对象,从管理进程到管理微服务,进而进化到了管理智能。

image.png

传统的云计算系统依然重要,但不再是主角,我们需要一个全新的操作系统,对新的计算平台,也就是智能计算做好抽象和封装,重新定义人机交互,为开发者提供更简单、更流畅的开发体验。那这种操作系统到底应该长什么样子呢?

640 (9).gif

它需要能管理万卡规模的集群,需要极致发挥GPU、CPU的性能,需要高速互联。

640 (10).gif

它需要有强大的大模型作为核心引擎,不仅是语言大模型,还有视觉大模型。

而这些就构成了操作系统的内核。

640 (11).gif

在内核层之上,还需要构建起强大的大模型服务能力,我们刚才提到内核层的各种模型,它们的精调、评估、部署、调用等工具链,我们都要建立起来。

640 (12).gif

而在这之上,我们还有好的应用开发工具去做工作流编排、插件管理,让应用开发像搭积木一样简单!

640 (13).gif

当然了,一个操作系统,作为企业服务,安全和运维也必不可少。

640 (14).gif

此外,它还要隐藏掉上一代云原生系统的复杂性。

而且最后,它要能够推动加速AI原生应用的爆发。

image.png

这就是新一代智能计算操作系统……万源!

鼓个掌!这个鼓掌很值得,为什么呢?

有一种说法叫软件定义世界,而今天我们呈现的万源就是用来帮助人类去定义软件。

image.png

接下来,我们打开万源,看看里面的每一个部分。

image.png

首先是内核层。大模型不是免费的午餐,强大的模型能力需要巨大的算力、甚至电力,算力的有效管理至关重要。实际上现在因为不合理的算力管理和使用方法,当下社会上很多算力被浪费掉了。我们需要一个强大的操作系统将现有的算力资源发挥到极致,支撑大模型和应用创新的迭代。

我们知道,要训练一个好的大模型,需要上万张卡的集群。但是,如果要让上万张卡像一张卡一样工作、实现性能的线性扩展、保障任务不间断,这对集群的设计、调度、容错都是巨大的挑战。

目前,在百舸,我们的万卡集群上的有效训练时长占比达到了98.8%;线性加速比和带宽有效性都超过了95%。这绝对是业界最高级别的算力效能。

image.png

在算力方面,国内还有一个特殊情况,就是芯片供应的不确定性,这必然会导致将来多款芯片并存的格局。短期看,这是大家被动接受的局面;但是长期看,这一定是大家主动选择的结果。因为只有这样,才能摆脱对单一芯片的依赖,实现更优的成本,保证更有弹性的供应链。

但是,不同厂商的芯片差异很大;即使同一厂商,不同代际的芯片差距也很大。用来推理还可以,但如果想训练大模型、尤其是在单一训练任务上,把不同芯片用好非常难。

今天,我很高兴地告诉大家,百舸平台上已经实现了百卡规模、单一训练任务下,不同厂商芯片的混合训练,而且把训练的性能损失控制在3%,即使在千卡规模下,性能损失也不超过5%。可见百舸已经给大家屏蔽掉了芯片之间的差异,给了大家选择不同芯片组合的权利!

这里真的应该有掌声,我们苦芯片久矣。芯片会变得越来越多元,我们需要这样的能力去帮助我们管理不同的芯片,把它们绑在一起像一款芯片一样工作。

image.png

当然了,内核中的另一个重要组成部分是大模型。它压缩了庞大的世界知识,将理解、生成、逻辑、记忆能力封装起来、向上提供简单的接口,让AI原生应用可以高效运行。

万源的内核,既包含了业界领先的ERNIE 4.0、3.5这些海峰刚刚讲过的模型、也包括ERNIE Speed/Lite/Tiny系列轻量模型,此外还包括文心视觉大模型和一些各有特色的第三方大模型,充分满足用户在不同业务场景下的多样化需求。

image.png

内核之上是千帆ModelBuilder。内核中的这些模型的管理、调度、二次开发,都可以通过ModelBuilder解决。很多场景化的需求,不需要从头去训练大模型,只要在合适的基础大模型上,做些模型精调、甚至就是改一下提示词,就可以很好地解决问题。

ModelBuilder的目的就是要把这些工具产品化,屏蔽掉模型开发的复杂性,让更多人只需要投入少量的数据、资源和精力,就能快速精调出适合自己业务的模型。

在实际应用中,就像Robin刚才提到的,我们需要合理地组合不同的模型。ModelBuilder提供的模型路由服务,会自动给不同难度的任务选择最合适的模型,实现效果和成本的最优组合,在效果基本持平的情况下,它可以使得推理成本降低30%以上。

image.png

再往上看,是工具层。千帆AppBuilder和AgentBuilder是强大的应用开发平台,正如Robin刚才已经演示了好几个这样的案例,它们可以支持各种agent和应用的快速开发和发布。通过AppBuilder开发的应用,可以一键发布到百度搜索、微信公众号等平台,也可以通过API或SDK的方式直接集成到您自己的系统中。真正做到极速开发,轻松上市。

image.png

当然了,现阶段,大模型还不够完美,有些场景下,人的经验可以帮agent做更好的任务规划,因此AppBuilder发布了工作流编排功能。基于AppBuilder的工作流编排,开发者可以使用预置的模板和组件,轻松定制自己的业务流程,还可以在上面集成、扩建自己特色的组件,在不同节点上选用不同的模型。如果您在ModelBuilder上精调了模型,那现在在AppBuilder上也可以很方便地直接调用,整个过程非常便捷。

image.png

所以现在大家可以看到,万源从内核到Shell、再到应用开发工具,已经实现了层与层的有机结合、端到端的效能优化。过去一年多,在内外部客户的各种实际应用中,不断打磨、持续完善,万源,已经成为AI原生时代的智能计算操作系统,为用户提供极简的开发体验、智能的系统内核,和高效的异构算力。

image.png

今天的发布是一个起点。未来,我们会进一步开放操作系统各个层面的生态合作。

image.png

向上,我们要开放更多的能力和接口,开发者可以非常简单地开发应用。

image.png

向左,我们可以用万源作为基础、帮助大家打造出适合自己垂直行业的操作系统。

image.png

向右,我们可以把万源直接部署在智算中心,享受稳定、安全、高效的智能计算平台。

image.png

向下,我们会适配更多的芯片,为开发者进一步隐去异构集群的复杂性,让不同的芯片都能发挥最大的效能。

image.png

除了底层硬件,我们也欢迎更多的合作伙伴一起,在模型、工具、应用等各个层面上持续丰富万源的生态。

image.png

这就是我今天要给大家分享的,全新一代智能计算操作系统——万源,强大、敏捷、开放,为在座诸位和每一个有想法的人提供极致简单的开发体验,让您的每一个创意都能在分钟之间上线、应用!

image.png

今天,人人都是开发者,人人都是创造者。

无需等待,即刻启程。

让智能,生成无限可能!谢谢大家!

——————END——————

推荐阅读

基于afx透明视频的视觉增强前端方案

百度一站式数据自助分析平台(TDA)建设

浅析如何加速商业业务实时化

登录系统演进、便捷登录设计与实现

一文带你完整了解Go语言IO基础库

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/574464.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

创新科技赋能旅游服务:智慧文旅引领旅游发展新篇章,智能体验助力产业转型升级

随着科技的飞速发展和人们生活水平的提高,旅游业正迎来前所未有的发展机遇。创新科技在旅游服务领域的广泛应用,不仅提升了旅游体验的品质,也为旅游产业的转型升级注入了新的动力。智慧文旅作为旅游业与信息技术深度融合的产物,正…

【机器学习-12】数据探索---python主要的探索函数

在上一篇博客【机器学习】数据探索(Data Exploration)—数据质量和数据特征分析中,我们深入探讨了数据预处理的重要性,并介绍了诸如插值、数据归一化和主成分分析等关键技术。这些方法有助于我们清理数据中的噪声、消除异常值,以及降低数据的…

AI视频教程下载:用ChatGPT和 MERN 堆栈构建 SAAS 项目

这是一个关于 掌握ChatGPT 开发应用的全面课程,它将带领你进入 AI 驱动的 SAAS 项目的沉浸式世界。该课程旨在使你具备使用动态的 MERN 堆栈和无缝的 Stripe 集成来构建强大的 SAAS 平台所需的技能。 你将探索打造智能解决方案的艺术,深入研究 ChatGPT 的…

PM2管理器无法使用解决方法

之前的项目全是依靠PM2管理器部署的,部署快速,也便于管理 但是宝塔实在是bug毛病太多,最近这两天又出毛病了 这次的问题是在PM2管理器的node版本中无法进行版本切换,如果是第一次使用PM2的话甚至无法设置node版本,之前…

docker 集群管理实战mesos+zookeeper+marathon(一)

一 实验环境 1.1 系统版本,本实验使用cnetos7.9版本镜像 1.2 准备5台虚拟机,其中3台master,两台slave,使用克隆的方式 1.3 使用远程连接工具登录 1.4 修改主机名 1.5 设置域名映射 每个虚拟机都配置一下,这里就演示一…

区块链基础——区块链应用架构概览

目录 区块链应用架构概览: 1、区块链技术回顾 1.1、以太坊结点结构 1.2、多种应用场景 2、区块链应用架构概览 2.1、传统的Web2 应用程序架构 2.2、Web3 应用程序架构——最简架构 2.3、Web3 应用程序架构——前端web3.js ether.js 2.4、Web3 应用程序架构—…

浅谈菊风实时音视频 (RTC)与实时操作系统 (RTOS) 在智能硬件领域应用

近年来,菊风通过实时音视频赋能智能手表、智能门禁、智能门锁/门铃、智能眼镜等数十种智能硬件,与一众合作伙伴共同探索在IoT智能硬件领域的不同场景应用,积累了丰富的实践经验。在智能硬件中,RTOS因其轻量化的系统内核&#xff0…

C#基础之函数基础

函数 文章目录 1、函数基础1、概念2、函数位置3、基本语法4、实际运用5、return 2、ref 和 out1、ref 和 out 使用2、区别思考 登录 3、变长参数和参数默认值1、变长参数2、参数默认值 4、函数重载5、递归函数思考1 阶乘思考2 阶乘相加思考3 竹竿减半思考4 递归循环输出 1、函数…

多客圈子交友系统 uniapp+thinkphp6适配小程序/H5/app/api全开源,多款插件自选,支持个性定制!

网上交友的优点包括: 1. 方便:网上交友可以随时随地进行,不受时间和空间的限制,方便且高效。 2. 匿名性:网上交友可以实现匿名性,用户可以匿名地搜索、聊天或交换信息,保护个人隐私和安全。 3.…

RE | BUUCTF 刮开有奖1

题目:BUUCTF 刮开有奖1 参考: BUUCTF 刮开有奖(特别详细了,尽自己全力理解所写)(这是主参考,写得很详细 BUUCTF_刮开有奖(主参考的参考,思路很清晰 我是大菜鸡…尽力写自…

报错:图片验证码接口对接vue+springboot(下一个笔记会记录整个验证码的代码)

问题:空指针异常ai: 根据错误堆栈信息中提供的方法调用位置,看起来空指针异常是在 AuthCodeServiceImpl 类的 authUserCoded 方法的第 41 行发生的。 为了解决这个问题,你可以检查 AuthCodeServiceImpl 类中 authUserCoded 方法的第 41 行&am…

Qt xml示范

1.数据格式 #ifndef XML_DATA_H #define XML_DATA_H#include<QWidget>struct Student {int s_id;QString s_name;double s_math_score;double s_english_score;}; struct Teacher{int t_id;QString t_name;QVector<Student> t_students_v; };#endif // XML_DATA_H…

【JavaEE网络】TCP/IP协议:细节与应用

目录 TCP/IP协议协议格式传输层重点协议UDP协议UDP协议端格式 UDP的特点TCP协议TCP协议端格式 TCP的特点 TCP/IP协议 协议格式 应用层&#xff08;后端开发必知必会&#xff09;&#xff1a;这一层也有很多现成的协议&#xff08;后面还会重点介绍HTTP协议&#xff0c;这是做…

从0开始用C写贪吃蛇(基于链表)

目录 1. 游戏背景 2. 游戏效果演示​编辑​编辑​编辑 3. 实现目标 4. 技术要点 5. 控制台程序 5.1 设置控制台窗口的长宽和名字 5.2 控制台屏幕上的坐标COORD 6.Win32 API 6.1 GetStdHandle 6.2 GetConsoleCursorInfo 6.3 CONSOLE_CURSOR_INFO 6.4 SetConsole…

CSS 之 transition过渡动画

一、简介 ​ CSS 制作 Web 动画有两种方式&#xff1a; 帧动画&#xff08;Keyframe Animation&#xff09;和过渡动画&#xff08;Transition Animation&#xff09;。针对不同的业务场景中&#xff0c;我们应该选择不同的动画方式&#xff0c;通常来说&#xff1a;对于交互元…

iOS runtime

—参考文章— 暂时没有 一、如何在Xcode中使用runtime Xcode默认是不建议开发者使用runtime的&#xff0c;所以在Xcode直接使用runtime的语法是会报错误的。 如果要在Xcode中使用runtime的语法&#xff0c;是需要配置一下才可以使用&#xff0c;配置方法如下图&#xff1a; 首…

开源向量数据库比较:Chroma, Milvus, Faiss,Weaviate

语义搜索和检索增强生成(RAG)正在彻底改变我们的在线交互方式。实现这些突破性进展的支柱就是向量数据库。选择正确的向量数据库能是一项艰巨的任务。本文为你提供四个重要的开源向量数据库之间的全面比较&#xff0c;希望你能够选择出最符合自己特定需求的数据库。 什么是向量…

Microsoft Edge浏览器:高效、简洁、个性化的网页浏览体验

Microsoft Edge是微软公司推出的一款网络浏览器&#xff0c;它是基于Chromium开源项目开发的&#xff0c;因此与Google Chrome有很多相似之处。以下是一些使用Microsoft Edge的心得体会&#xff1a; 1. 界面简洁&#xff1a;Microsoft Edge的界面设计非常简洁&#xff0c;用户…

Spring Boot集成RabbitMQ快速入门Demo

1.什么是RabbitMQ&#xff1f; RabbitMQ是一款使用Erlang语言开发的&#xff0c;基于AMQP协议的消息中间件&#xff0c;作为一款优秀的消息系统&#xff0c;RabbitMQ有高并发、可扩展等优势&#xff0c;并适用于大型系统中各个模块之间的通信。 RabbitMQ的特点为&#xff1a; 持…

微信小程序按钮点击时的样式hover-class=“hover“

小程序的button组件很好用&#xff0c;按钮点击的时候会显示点击状态&#xff0c;默认的就是颜色加深 但是我们改变了button的背景色之后&#xff0c;就看不出点击效果了&#xff0c;解决起来也很简单 关键代码就是小程序的 hover-class 属性&#xff0c;需要注意的是&#xff…