吴恩达:《State of AI report》展现2024的主要趋势和突破(三)

图片

万字长文,2024AI行业的科研角力

©作者|Zhongmei

来源|神州问学

前言

吴恩达的网站在十月中旬发表了一篇名为《A Year of Contending Forces》的文章,该文章是围绕着一个名为《State of AI Report - 2024》的年度报告的总结和点评。该报告由Nathan Benaich和Air Street Capital团队制作,这是该报告的第七年,新报告记录了过去一年推动AI发展的强相互作用力:开源与专有技术、公共与私人融资、创新与谨慎,汇聚了来自于2024年的研究论文、新闻文章、财报等的亮点。本文将对原报告内容进行解读。今天将从报告的第97页开始,之前的内容请看之前连载的两篇

吴恩达:《State of AI report》展现2024的主要趋势和突破(一)

吴恩达:《State of AI report》展现2024的主要趋势和突破(二)

为什么觉得这篇报告重要?

该报告是从投资者的角度审视了上次报告之后的一年时间里AI的发展,力图分析其中的变化并挖掘出趋势。作者们深入研究了今年的研究发现、商业交易和政治动态,希望以此为下个一年的AI提供全面的分析。

报告中的关键信息

报告中考虑了以下关键维度:

●研究:技术突破及其能力。

●行业:AI的商业应用领域及其商业影响。

●政治:AI的监管,其经济影响以及AI不断演变的地缘政治。

●安全:识别和缓解未来高能力AI系统可能对我们造成的灾难性风险。

●预测:未来12个月会发生的事情

由于报告《State of AI Report - 2024》篇幅长达210+页,本篇将只涵盖行业的部分内容,余下的会在接下来陆续发出。

行业

NVIDIA不断压缩其产品发布周期

自2020年A100发布以来,NVIDIA一直在缩短其发布数据中心级GPU的间隔时间,同时GPU提供的TFLOPs显著增加。从A100到H100的时间线长度减少了60%,从H200到GB200又减少了80%。在此期间,TFLOPs增加了6倍。大型云计算公司正在大量购买这些GB200系统:微软的持有量在70万到140万之间,谷歌40万,AWS 36万。更有传闻指出,OpenAI自己至少拥有40万GB200。

基于更快的GPU和计算节点进行扩展

节点内(scale-up fabric)GPU之间的数据通信速度,以及节点之间(scale-out fabric)的速度,对大规模集群性能至关重要。NVIDIA基于过去的技术NVLink,在过去8年中,大幅度增加了每个链接的带宽、链接数量以及每个节点连接的总GPU数量。结合了自家的InfiniBand技术,NVIDIA领先一步将节点连接到大规模集群。与此同时,据报道,像腾讯这样的中国公司已经围绕制裁进行了创新,以实现类似的结果。他们的Xingmai 2.0高性能计算网络据说支持在单个集群中GPU数量超过10万个,可以将网络通信效率提高了60%,LLM训练效率提高了20%。话虽如此,但尚不清楚腾讯是否拥有如此规模的集群。

图片

图1. Nvlink技术变化记录

Art or Science:运行大型集群仍然是中断的艺术和科学

Meta在发布他们的Llama 3模型家族时,分享了他们在预训练Llama 3 405B的54天期间每天经历的8.6次作业中断的分解分析。GPU往往比CPU更频繁地出现故障,而且并非所有集群都是一样的,所以持续监控是必不可少的。由于测试不足,错误配置和有缺陷的组件也经常发生。同时,低成本电力、可负担的网络费率和可用性至关重要

图片

图2. 造成Llama3 405B训练中断的根本原因饼图

大公司寻求摆脱或削弱对NVIDIA的依赖

虽然大科技公司长期以来一直在生产自己的硬件,但是这方面的努力在加速进行,因为科技巨头们至少需要提高自己与NVIDIA的议价能。但这些硬件上的努力往往并未针对最具挑战性的工作负载。

谷歌以其TPU闻名,现已推出基于Armv9架构和指令集的Axion。这些芯片将通过云服务提供,面向通用工作负载,其性能比目前最快的基于Arm的通用实例高出30%。Meta发布了第二代自家AI推理加速器,比前一代的计算能力和内存带宽提升了两倍以上。这款芯片目前用于排名和推荐算法,但Meta计划将其能力扩展到生成性AI的训练。与此同时,OpenAI正在从谷歌TPU团队招聘人才,并与博通(Broadcom)讨论开发新AI芯片的事宜。据报道,Sam Altman还与包括阿联酋政府在内的主要投资者进行了洽谈,希望推动一项数万亿美元的计划,以促进芯片生产。

同时,借助NVIDIA的潮流,AI芯片挑战者正在争夺(风险资本和客户)的市场份额,且少数几家公司已经展示出一定的市场吸引力。

Cerebras以其Wafer-Scale Engine而闻名,这款处理器将整台超级计算机的计算能力集成到一个晶圆大小的处理器上。该公司已提交首次公开募股(IPO)申请,预计2024年上半年收入为1.36亿美元,同比增长15.6倍,其中87%的收入来自总部位于阿布扎比、由政府支持的G42。Cerebras已筹集超过7亿美元资金,客户包括计算密集型的能源和制药行业。该公司最近推出了一个推理服务,旨在为大语言模型(LLMs)提供更快的token生成。

与此同时,Groq在其AI推理专用的语言处理单元(Language Processing Unit)上完成了6.4亿美元的D轮融资,估值达到28亿美元。同时,Groq已与阿美石油、三星、Meta和绿色计算提供商Earth Wind & Power建立了合作伙伴关系。Cerebras和Groq,两家公司都将速度作为核心竞争力,并致力于云服务,其中Cerebras最近也推出了推理服务。这种做法帮助它们绕过了NVIDIA的软件生态系统优势,但同时也让它们面临云服务提供商这一强有力的竞争者。

软银开始建立自己的芯片帝国

以“大手笔”著称的软银正在进入这一领域,指派其子公司Arm在2025年推出首款AI芯片,并收购了陷入困境的英国初创公司Graphcore,收购价据传为6-7亿美元。软银在此前过早出售NVIDIA股份之后,开始打造自己的芯片帝国。当时,Arm已经是AI领域的一个重要玩家,但历史上,其指令集架构并不适合数据中心训练和推理所需的大规模并行处理基础设施,同时它还一直在与NVIDIA在数据中心业务和成熟软件生态系统方面的优势作斗争。尽管如此,Arm目前的市值已超过1400亿美元,市场对此并不感到担忧。据报道,Arm已与台积电等公司就制造问题展开谈判。

软银还收购了Graphcore,这家公司开创了智能处理单元(IPU)概念,这是一种比GPU和CPU更高效处理AI工作负载的处理器(尤其是在使用小规模数据时)。硬件本身具有高度复杂性,因此在生成AI应用崛起初期,它往往不是一个理想选择。Graphcore将在软银的支持下继续以Graphcore品牌半自主运营。与此同时,因未能就需求达成一致,软银与英特尔针对设计GPU挑战者的谈判停滞了。

美国商务部与芯片制造商展开“打地鼠”式的博弈</

在vue2中el-popover失效,刷新页面后正常显示,el-popover在子组件中,子组件中部分代码:<p v-if="!userName"> <el-popover placement="bottom-start" trigger="hover"> <div class="nav-game"> <ul> <li><el-button class="nav-avatar" type="primary" @click="gotoLogin()">登录</el-button></li> <li><el-link class="nav-avatar" type="primary" @click="gotoRegister()">用户注册</el-link></li> </ul> </div> <el-avatar slot="reference" size="medium" icon='el-icon-user-solid' src="https://i0.hdslb.com/bfs/face/9e684120bdf30f9c7130de8b3f3b004e589f46ef.jpg@96w_96h_1c.webp" ></el-avatar> </el-popover> </p> <p v-else> <el-popover placement="bottom-start" trigger="hover"> <div class="nav-game"> <ul> <li class="nav-a-text"> 用户名:{{ userInfo.name }} </li> <li class="nav-a-text"> id:{{ userInfo.u_id }} </li> <li> <el-menu :default-active="activeIndex" class="el-menu-demo nav-a-item" mode="horizontal" @select="handleSelect"> <el-menu-item index="1" style="border-bottom:none;"> <h3 class="nav-a-num">{{ userInfo.like_num }}</h3> <p class="nav-a-word">点赞</p> </el-menu-item> <el-menu-item index="2"> <h3 class="nav-a-num">{{ userInfo.fans_num }}</h3> <p class="nav-a-word">粉丝</p> </el-menu-item> <el-menu-item index="3"> <h3 class="nav-a-num">{{ userInfo.issue_num }}</h3> <p class="nav-a-word">作品</p> </el-menu-item> </el-menu> </li> <li> <el-menu class="el-menu-vertical-demo" :router="true" style="margin-top: 20px; border-right: none;"> <el-menu-item index="/center"> <i class="el-icon-user" style="color: blue"></i> <span slot="title" class="nav-a-affair">个人中心</span> </el-menu-item> <el-menu-item index="/center"> <i class="el-icon-tickets" style="color: blue"></i> <span slot="title" class="nav-a-affair">稿件中心</span> </el-menu-item> <div style="width: 100%;height: 2px;background-color: gray;"></div> <el-menu-item index="" @click="logout()"> <i class="el-icon-close" style="color: blue"></i> <span slot="title" class="nav-a-affair">退出登入</span> </el-menu-item> </el-menu> </li> </ul> </div> <div slot="reference"> <Avatar :asize="40"></Avatar> </div> </el-popover>
03-30
<think>嗯,用户在使用Vue2的时候遇到了el-popover在子组件中失效,但刷新页面后又正常显示的问题。首先,我需要仔细看一下用户提供的代码片段,看看有没有明显的错误或者可能导致问题的原因。 首先,用户的条件渲染部分用了v-ifv-else,这里可能存在切换时el-popover没有正确销毁或重新初始化的情况。Vue的v-if指令在条件变化时会销毁重新创建组件,可能导致内部状态丢失。比如,当userName从false变为true时,原来的el-popover会被销毁,新的会被创建,但可能在这个过程中某些事件监听没有正确绑定,导致hover触发不了。 然后,检查用户代码中的el-popover结构。注意到在v-else块里的el-popover,其slot="reference"对应的元素是自定义的Avatar组件。这时候需要确认Avatar组件是否正确渲染,并且能够触发hover事件。有时候,如果子组件内部的元素没有正确传递事件,可能会导致trigger="hover"失效。例如,如果Avatar组件内部没有正确处理鼠标事件,那么hover可能无法触发el-popover的显示。 另外,用户提到刷新页面后正常,这说明问题可能出现在动态切换的时候。可能是在组件初次渲染时,el-popover能正确绑定事件,但在条件切换后,新的el-popover没有正确初始化。这时候可能需要强制重新渲染组件,或者使用v-key来管理条件渲染的元素的重新创建。 还有一种可能是Element UI的版本问题。某些旧版本的el-popover可能存在bug,在动态渲染时表现不稳定。建议用户检查Element UI的版本,并尝试升级到最新版本,看是否能解决问题。 此外,代码中的el-menu组件嵌套在el-popover内部,可能存在层级或样式冲突,导致el-popover的位置计算错误。可以尝试调整样式,确保弹出层不受父容器溢出隐藏或其他布局影响。 最后,用户可能需要使用Vue的nextTick方法,在userName状态变化后等待DOM更新完成,再重新初始化el-popover的相关事件。或者,使用this.$forceUpdate()强制组件重新渲染,以修复状态不一致的问题。 总结下来,可能的解决方案包括:检查条件渲染导致的销毁重新初始化问题,确保Avatar组件正确传递事件,升级Element UI版本,使用v-key强制重新渲染,调整样式避免布局问题,以及使用nextTick或forceUpdate来确保DOM更新后的正确行为。</think>在 Vue2 中遇到 `el-popover` 失效但刷新后正常的问题,通常由以下原因解决方案构成: --- ### 一、问题核心原因分析 从代码片段看,`v-if` 条件渲染可能导致 **组件销毁/重建时未正确触发 Popover 的挂载机制**,具体表现为: 1. **`v-if` 切换导致 DOM 重新渲染**,但 Popover 的 `reference` 元素事件监听未正确绑定 2. **异步数据加载延迟** 导致 Popover 初始化时机异常 3. **ElementUI 版本兼容性问题** --- ### 二、分步解决方案 #### 方案 1:强制重新渲染组件(推荐) ```html <!-- 在 v-if/v-else 外层添加 key 强制销毁重建 --> <p v-if="!userName" key="unlogin"> <el-popover>...</el-popover> </p> <p v-else key="logined"> <el-popover>...</el-popover> </p> ``` #### 方案 2:手动控制 Popover 显示 ```javascript // 在数据更新后手动触发 this.$nextTick(() => { // 通过 ref 调用 Popover 方法 this.$refs.popover.doShow() }) ``` #### 方案 3:检查 Avatar 组件事件传递 ```html <!-- 确保自定义组件能传递鼠标事件 --> <div slot="reference" @mouseenter="handleMouseEnter"> <Avatar :asize="40"></Avatar> </div> ``` --- ### 、关键代码优化建议 1. **升级 ElementUI 版本** ```bash npm install element-ui@latest --save ``` 2. **调整 Popover 挂载位置** ```html <el-popover placement="bottom-start" trigger="hover" popper-append-to-body <!-- 避免被父容器裁剪 --> > ``` 3. **添加状态监听** ```javascript watch: { userName(newVal) { this.$nextTick(() => { // 手动更新 Popover 实例 }) } } ``` --- ### 四、典型错误排查点 1. **`slot="reference"` 层级问题**:确保触发元素直接作为 `el-popover` 的子元素 2. **样式覆盖导致定位异常**:检查是否父元素有 `overflow:hidden` 3. **Vue 生命周期时序问题**:在 `mounted` 而非 `created` 阶段操作 DOM --- ### 五、完整修正示例 ```html <template> <div> <p v-if="!userName" key="guest"> <el-popover placement="bottom-start" trigger="hover" popper-append-to-body > <!-- 弹窗内容 --> <el-avatar slot="reference"></el-avatar> </el-popover> </p> <p v-else key="user"> <el-popover ref="userPopover" placement="bottom-start" trigger="hover" popper-append-to-body > <!-- 弹窗内容 --> <div slot="reference" @mouseenter="handleHover"> <Avatar :asize="40"/> </div> </el-popover> </p> </div> </template> <script> export default { methods: { handleHover() { this.$nextTick(() => { this.$refs.userPopover.doShow() }) } } } </script> ``` --- ### 六、延伸建议 - 使用 **Vue Devtools** 检查组件渲染状态 - 在 CSS 中添加调试样式:`border: 1px solid red` 观察元素布局 - 对于复杂场景建议改用 **`<el-tooltip>`** 或 **`<el-dropdown>`** 通过上述步骤可系统性解决 Popover 显示异常问题,建议优先尝试方案1+方案3的组合策略。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值