“凌晨三点,又一次被系统告警惊醒……”
这或许是每个运维工程师都经历过的场景。在互联网行业,运维工程师被戏称为“24 小时待机的工程师”,永远处于随叫随到的状态。尤其在电商大促、支付高峰等关键时刻,一个微小的系统异常都可能造成巨大损失,这让运维工程师的工作既重要又充满压力。
然而,随着 AI 技术的发展,运维工程师的角色正在发生微妙的变化。
去年年初,ChatGPT 的横空出世让 AI 成为最热门的技术话题。紧接着是 Claude、Gemini、Llama 等大模型的你追我赶,以及今年初 OpenAI 推出的 o1 模型带来的推理能力突破。这一系列进展让人不禁想象:AI 是否能接管那些需要 24 小时待命的工作?运维工程师的未来会怎样?
有趣的是,面对这个问题,业界出现了两种截然不同的声音。有人认为 AI 终将取代大部分运维工作,运维工程师这个职业正在走向消亡;另一派则认为,在可预见的未来,AI 更可能是一个“助手”而非“替代者”,真正的挑战在于如何让 AI 和人类形成最佳配合。
带着对 AIOps(智能运维)未来的疑问,CSDN《新程序员》在不久前结束的 2024 1024 程序员节上采访了蚂蚁集团高级算法专家蒋炜。这位资深 AIOps 专家见证并参与了 AIOps 的完整演进过程,从美国电信运营商到蚂蚁集团,六七年的实践经验,让他对 AIOps 的现状和未来有着独特的见解。在程序员节的技术分享中,他还以《智能画布 muAgent,全新体验 Agent 框架》为题,引发了我们对智能体(Agent)的诸多遐想。
在接下来的对话中,我们不仅了解到蒋炜对 AIOps 的深入思考,更感受到他作为一线 AI 专家的独特视角:
“在大模型出现之前,我们 AI 自动化的范畴很局限,只能面向结构化和半结构化数据。大模型的出现扩展了可被 AI 自动化替代的范畴,带来了更多想象空间。”
“我坚信开源道路最终会胜出。当整个行业的智慧都集中在一件事情上时,比起闭门造车,开源一定能带来更好的技术迭代和发展。”
“正如开发一个大型项目需要多人分工协作一样,每个参与者都有其专长。从这个角度看,Agent 的必要性在于通过协作,让每个智能体发挥其优势,从而更好地完成任务。”
“未来 3-5 年,我最期待的是用 Agent 逐步替代传统的应急响应流程,让运维人员不再需要 24 小时待命,而能将精力投入到更具创造性的工作中。”
蒋炜 蚂蚁集团高级算法专家
AI 为运维带来的变革:从人工到智能化
《新程序员》:请谈谈您的职业背景和当前工作重点。
蒋炜:我最早在电信行业工作,2020 年左右加入蚂蚁。这些年一直专注于 AIOps 领域,负责蚂蚁 AIOps 建设,具体工作涉及从监控、应急到变更、容量领域的风险防控、效率提升和成本节约。我们更关注如何运用 AI 技术,将原本需要人工处理的繁重重复性工作通过自动化方式解决。到了 2023 年初,随着以 ChatGPT 为代表的大模型技术兴起,我现在主要研究大模型与运维领域的结合,本质上仍是围绕效率提升这个核心。总体来说,我在这个领域应该有六、七年经验了。
《新程序员》:您是在什么契机下开始接触 AI 技术的?在当前大模型浪潮之前,您对这一领域的技术积累和认知是怎样的?
蒋炜:我本科数学专业,硕士阶段专注统计学,基本都涉及相关模型,主要是传统机器学习,AI 又是传统机器学习的延伸。因此在我看来,我其实一直都在 AI 领域深耕。
《新程序员》:基于您在 AIOps 领域多年的实践经验,能否分析一下大模型技术为传统运维带来的本质性变革?同时谈谈您对 AIOps 与 DevOps 在理念和实践上异同的理解?
蒋炜:从我这几年的经历看,运维在传统观念中可能都是人工或人肉运维。这几年的发展历程是从人工到简易工具,再到平台化,最后发展到模型运维,探索如何通过智能化手段解决问题。整体发展趋势是系统化、问题清晰定义、平台化和智能化。
在大模型出现之前,模型技术主要解决时序、日志、拓扑等结构化或半结构化数据的智能分析。但对于人类而言,更擅长的是语言沟通、文字记录、代码编写等非结构化数据处理。在大模型出现前,像知识图谱或自然语言处理项目在企业中往往难以落地,多停留在概念层面。大模型的出现扩展了可被 AI 自动化替代的范畴,带来了更多想象空间。
《新程序员》:对于传统运维或者说 DevOps 工程师而言,转型 AIOps 需要构建怎样的知识体系?有哪些核心能力需要重点培养?
蒋炜:在大模型浪潮初期,我们原本计划针对运维这个垂直领域建设专门的模型。但随着开源技术的快速发展,我们发现构建能力的速度可能赶不上技术发展的节奏。因此,无论是运维、开发还是技术人员,不应局限于模型构建层面。我们更应该以开放的心态拥抱新技术,尝试在自己的场景中应用这些技术,用新技术替代原本需要自己处理的工作。
《新程序员》:刚刚的问题是针对“人”的改变,那对于模型来说,您认为评估运维场景下大模型效能的关键指标应该包含哪些维度?
蒋炜:我不想从模型视角去谈评测和打榜,这只是侧面印证。我认为应该从实际效率提升的角度考虑。正如我最初提到的,开展 AI 工作是为了面向场景应用和落地。从运维角度或模型与运维结合的角度,我们更应该思考:投入这项工作能带来多少效率提升。这是思考项目或能力建设时应该采用的视角,然后再落实到具体的技术指标,明确应该达到什么效果。
《新程序员》:那从实践经验来看,垂直领域大模型与通用大模型在运维场景中最显著的差异体现在哪些方面?随着技术的不断演进,您认为垂直领域大模型与通用大模型的界限会如何发展?是会趋向统一,还是像移动互联网时代的应用生态那样以 Agent 为主导?或者可能出现新的范式?
蒋炜:这个问题我有一定发言权。去年初期,当时 GPT-3.5 发布,市面上还没有很好的开源模型。我们针对特定场景进行模型优化确实很有价值。但今年随着 OpenAI o1、Qwen-2.5 等模型的发展,我们发现自己训练半天的效果,往往赶不上通用模型技术迭代的速度。
从这个角度考虑,我认为应该保持开放心态。底层技术就像云服务一样,未来可能就是一个 API,某种程度上能被统一。但面向不同应用场景的产品,其独特的语义和环境是无法被替代的。底层的通用能力未来一定会趋向统一。
《新程序员》:如果底座模型确实走向统一,您如何看待开源与闭源两种路线的风险?
蒋炜:我坚信开源道路最终会胜出。当整个行业的智慧都集中在一件事情上时,比起闭门造车,开源一定能带来更好的技术迭代和发展。
开源与多智能体:蚂蚁的技术实践
《新程序员》:能否谈谈您在蚂蚁的开源工作?
蒋炜:我也是近几年才开始投入开源工作中,简单说下我的一些浅薄看法。好的技术值得被看见和分享,更多人的参与也会让技术越来越好,相比企业内部重复造轮子,不如能在行业证明自己。同时相比闭门造车,独立一套生态带来巨大的开发成本,每年新的项目投入导致老旧功能维护不过来,好的技术开源能让研发迭代变得更有效率,只有这样才能让好的技术有长期发展和存续的可能。
《新程序员》:目前业界对开源 AI 的定义存在争议,常看到有人对 MetaAI 的 Llama 提出的开源程度质疑。您是如何看待的?
蒋炜:从企业做开源的角度看,短期内可能更关注技术影响力,让大家使用你的能力,形成更完备的生态系统,而不是独立的封闭生态。但对企业来说,某种程度上还是要考虑商业化,毕竟企业需要盈利。短期内我更关注的是大家一起建设生态,所有开发都围绕这个生态进行,这样才能更好地发展。从长期来看,企业确实需要盈利,所以一些特性和功能会作为商业版本推出,这是可以理解的,毕竟投入了大量资源建设这些能力。
同时,面向开发者,他们可能更愿意自己部署开源仓库。而对于普通消费者,可能没有相关经验和背景,直接使用商业化版本对大家都有帮助,让技术能被更多人使用。
《新程序员》:蚂蚁的 OpsGPT 是怎么诞生的?你们最初是怎么想到要做一个智能化的运维模型?
蒋炜:我认为(灵感)来源于自下而上和自上而下两个层面。从需求层面来说,在大模型出现之前,我们能自动化的范畴很局限,只能面向结构化和半结构化数据。大模型出现后,我们能够拓展这个范畴。从技术发展的角度,我们需要将技术融入需求中,从长远角度设计技术的迭代和演进。这两个方向不谋而合,推动了 OpsGPT 项目的建设和迭代。
《新程序员》:2024 年被称为 Agent 元年,多智能体架构受到广泛关注,而你们继 OpsGPT 之后现在又推出了 muAgent 项目,中间经历了怎样的技术思考过程?您如何看待 Multi-Agent 架构的核心价值,是什么因素推动了这个方向的快速发展?
蒋炜:最初我们主要面向运维场景提供服务。但当我们深入分析运维能力时,发现很多本质上都是复杂多步任务处理的问题。我们后来意识到不应该仅局限于运维领域。既然我们能在运维这样复杂的场景(相比开发更具挑战性,因为运维需要理解全链路系统,而开发往往只关注特定模块)取得成功,那么这些经验和技术完全可以推广到其他领域。这促使我们考虑构建一个面向通用场景的 Agent 框架。
大模型更像是一个独立个体,而 Agent 的设计很大程度上借鉴了人类的协作模式。正如开发一个大型项目需要多人分工协作一样,每个参与者都有其专长。从这个角度看,Agent 的必要性在于通过协作,让每个智能体发挥其优势,从而更好地完成任务。
《新程序员》:您在 2024 程序员节的演讲中将 muAgent 比喻为"智能画布",这个比喻背后的技术含义是什么?
蒋炜:市面上主流的 Agent 框架大致可分为两类:一类以 AutoGPT 为代表,完全依赖模型进行推理和任务决策编排;另一类以 Dify.AI 为代表,更类似于传统的固定决策树。我们的理念是在人类经验指导下进行探索和推理,而不是完全随机发散。这就需要一种方式来录入人类经验,我们希望通过简单的可视化操作,就像制作 PPT 或流程图一样,通过拖拽和文字描述来输入经验。这就是“智能画布”的由来——所画即所得。传统上,你画完流程图后还需要编写代码来实现功能,而我们的目标是让流程图本身直接变成可执行的功能。
《新程序员》:目前的 Agent 实现常有“新瓶装旧酒”的感觉,停留在 RPA(Robotic Process Automation, 机器人流程自动化)的层面。未来要如何让 Agent 名副其实,实现真正的智能自主代理?
蒋炜:从实际体验来看,目前的模型在处理单步骤任务方面表现不错,比如编写 SQL 查询、查看监控数据或天气信息等。但面对生产环境中复杂的 SOP(Standard Operating Procedure),仍然存在挑战。
举个例子,如果支付宝用户扫码支付失败,这不是通过查看单个监控就能解决的问题。这需要一系列复杂任务:查看监控、检查数据库、分析日志,最后综合决策判断,才能定位问题并采取相应的应急措施。这种复杂的多步骤任务,是衡量 Agent 是否能真正落地,或在某种程度上替代人工的核心问题。
《新程序员》:这让我想到了一个有趣的技术问题。目前 Anthropic 的 Claude 3.5 模型采用完整历史记录扫描机制,这导致了较高的 token 消耗和相应的成本——经常用着用着就被限制了消息窗口。您认为如何在保证性能的同时优化这种资源消耗?
蒋炜:在多轮次交互长历史上下文场景中,大模型可能会出现信息的指令遵从问题,同时 token 消耗较大。我觉得通过记忆管理模块能在一定程度上解决这类问题,通过历史信息的检索、加工来减少上下文的长度,提供最准确、最关键的信息。
《新程序员》:这种标记关键信息的行为可以通过人工方式实现吗?
蒋炜:这属于信息检索领域的问题。除了传统的最近 K 条记录或按日期检索外,现在还可以利用像 BGE 这样的向量模型,通过语义相似度或词向量来提取最相关的信息。
《新程序员》:我很感兴趣 muAgent 的一些技术细节。能否谈谈为什么会将 Communication(通信)作为多智能体框架的核心组件之一?
蒋炜:我们的 Agent 设计参考了人类团队协作模式。正如团队需要有效沟通才能完成任务一样,我们需要深入理解人类是如何交流协作的,并将这种模式应用到 Agent 的设计中。这也是将通信作为核心技术模块的原因。
《新程序员》:那实际上限制 Agent 互相沟通的关键因素是什么?是模型的上下文窗口吗?
蒋炜:上下文窗口是其中一个限制因素,另一个重要的问题是模型的指令遵循和理解能力。如果所有消息都发送给同一个智能体,那本质上就变成了单 Agent 系统。
《新程序员》:再就是 Memory Manager(记忆管理)的设计,能否详细解释一下为什么选择将记忆管理设计为独立的核心组件,而不是由各个 Agent 自行管理记忆?
蒋炜:这个问题可以用一个常见场景来解释:当我们突然被拉入一个群聊并被@提问时,大多数人的第一反应是困惑的,需要回溯历史上下文才能理解问题并作出回应。我们的目标是建立一个机制,能够把最相关的信息汇总并提供给需要的 Agent。这就是设计 Memory Manager 模块的原因。之所以选择统一管理消息,是为了有一个 master 或主持人的角色,帮助处理和分类这些信息,确保每个 Agent 都能获得它需要的适当信息。
让 AI 成为助手,而不是替代者
《新程序员》:在您看来,大模型在运维领域最容易被误解或过度期待的方面有哪些?
蒋炜:就像去年 ChatGPT 刚出现时,我们的想法是把所有事情都交给模型,给它语料就能完成工作。但经过一年半的探索和落地实践,我发现并没有这么简单。很多任务还是要细分,为每个任务提供详细的语料和各种 API,进行定制,才能真正把场景落地好。我认为现阶段对 AI 模型过分的期待就是认为它无所不能,但在稳定性或专业性要求较高的场景,你仍需要不断训练和教导它,它才能真正变得可用。
《新程序员》:除了在运维领域的专业应用外,您在日常工作或生活中是如何运用 AI 工具的?对这些工具的实际体验如何?
蒋炜:除了面向企业运维领域的 AI 落地,作为 AI 从业者,我在编写代码时遇到不清楚的问题或命令,也会询问 AI。现在能感受到,AI 能力已经融入生活的方方面面,比如我在写文章或论文时,会用 AI 进行翻译和表述优化。
《新程序员》:展望未来运维领域的发展趋势,您认为 AIOps 会完全取代传统运维模式吗?是否存在某些必须保留人工参与的环节?
蒋炜:这个问题仍然需要人的参与。运维往往涉及责任界定,而模型在一定程度上存在不确定性。当线上出现故障后,模型给出应急方案,我认为仍需要人工确认,而不是直接让模型自动化操作,特别是面对高风险操作时。从目前模型能力来看,不谈未来十年,模型更像是 Copilot,扮演辅助角色。它能帮我们完成很多工作,但最后的确认环节,就像公司的业务审批流程一样,还是需要相关人员把关,这样我们才更放心。
《新程序员》:在 AI 技术初露峰芒时,您自己是否经历过对自身职业前景的焦虑?如何看待 AI 对运维工程师角色的影响?
蒋炜:去年年初 AI 技术真正兴起时,很多人的观点,包括我们最初做这项技术时的想法是:把相关语料都输入给模型,它是否就能完成所有工作。但在实际落地过程中,我发现目前的模型能力距离这个目标还有相当距离。它可能在一般性问题上给出不错的结论,但面对企业级的高可用生产环境,还有很多薄弱点,不是简单输入语料就能完美解决问题。
其次,我认为应该从发展的角度看问题。每年都会有新的挑战需要解决,同时已有系统也需要维护。模型能够帮助处理一些相对成熟的领域,这样人就能释放更多精力去做创新性工作,或者在新领域进行布局,而不是将所有精力都投入在原有事务中。
《新程序员》:您认为目前限制 AI 在高可用场景应用的主要是技术问题还是认知问题?突破这个瓶颈最需要解决的核心问题是什么?
蒋炜:我认为主要还是技术问题。如前所述,要让模型真正实现智能化,核心需要解决任务决策规划和复杂多步推理的问题。这也是我们现在开源项目 muAgent 致力解决的核心问题。
《新程序员》:展望未来 3-5 年,您认为 AI 在运维领域最有可能实现突破的方向是什么?
蒋炜:运维领域很广,不同公司的定义可能存在差异。但对任何企业,特别是像蚂蚁这样处理金融交易的公司来说,最核心的问题是保障系统稳定性。未来 3-5 年,虽然需要解决各种技术问题,但我最期待的是用 Agent 逐步替代传统的应急响应流程,让运维人员不再需要 24 小时待命,而能将精力投入到更具创造性的工作中。
《新程序员》:正好您提到了蚂蚁的工作会经常涉及到金融交易,这让我想追加一个问题。在多智能体系统中,如何确保高可用场景下的安全性和准确性?
蒋炜:正如前面提到的,目前模型更多表现为可预测的模式。在实际落地过程中,我们会对操作进行风险分析。对于影响范围小、风险较低的操作,随着效果和稳定性的提升,我们会逐步实现完全自动化。但对于高风险场景,仍然需要人工介入进行二次确认。
《新程序员》:2024 年 AI 领域的三个热点话题是:多模态、Agent 和推理模型(如 OpenAI 的 o1 模型)。目前国内大模型公司在推理能力跟进方面相对滞后。您如何看待大模型推理能力的发展趋势?蚂蚁在这方面有什么规划?
蒋炜:蚂蚁确实在持续迭代基础大模型,推理能力是其核心能力之一。我认为每家厂商都在这个方向持续建设。对于大模型技术来说,目前很多应用停留在阅读理解或翻译层面。如果要真正替代人类解决问题,逻辑推理能力是必不可少的。就像招聘新员工,我们希望他们不只是记忆知识,更重要的是有逻辑推理和发散思维的能力。这必然是每个厂商都会重点关注的方向。
《新程序员》:推理能力的增强对 Agent 系统会带来怎样的质变?同时,如何解决推理过程中层层叠加的计算成本问题?
蒋炜:推理能力增强确实会让整个系统链路更稳定。但无论模型多强大,如果不赋予其周边工具和环境,它仍然无法获取最新信息。模型更多是面向通用语料和数据,而企业级应用往往需要处理私有语料和数据。如果无法获取这些信息,就无法理解具体环境下应该如何操作。
模型的推理能力提升会让 Agent 应用更容易落地,但 Agent 的应用层仍然具有不可替代性。关于成本问题,这一直是困扰模型商业化的痛点。很多 2C 产品需要收费,2B 场景的收费往往也难以覆盖模型成本。目前各家厂商都在加大投入,通过量化、剪枝、蒸馏等技术手段降低推理成本,同时在运维层面也有性能容量优化。另一个角度是优化模型使用方式,通过记忆管理减少上下文负载,利用外部知识库减少推理过程,从而降低 token 消耗并提升性能。
《新程序员》:随着推理能力的升级,我们应该能看到更强大的 AI 出现。基于您的经验,您如何看待 AGI(通用人工智能)的发展路径?是趋向单一 AGI 还是像 OpenAI 提出的分级演进模式?
蒋炜:我倾向于保守回答这个问题。以当前的技术水平,我们没有能力去构建一个完全的 AGI 系统。从现实角度出发,更重要的是面向不同场景做好产品应用。我们的产品应用底层采用通用化设计,能够快速接入新的能力。从我的角度,不会投入纯 AGI 研发,它更像是一个 API。如果有更完善的能力建设,我们当然欢迎使用。
《新程序员》:从个人发展角度,您认为自己身上的哪些专业技能最难被 AGI 取代?
蒋炜:我认为无论在企业还是其他环境中,人际交往能力都是难以替代的。比如我最近用大模型搭建一些创意游戏的经历,在处理人际关系和情感层面,模型确实还存在明显的局限性。
《新程序员》:请为想要进入 AIOps 领域的年轻工程师提供一些建议。在什么情况下适合选择这个发展方向?
蒋炜:最重要的是拥抱新技术,并将这些技术融入实际工作中。企业不缺纯粹的技术专家。从互联网发展历程来看,从百度到阿里,再到字节跳动、小红书,技术在不断迭代,但真正稀缺的是能够良好运用技术的人才。对于 AIOps,更重要的是思考如何通过创新场景设计,更好地将 AI 融入运维过程中。我认为这才是值得深入思考的问题。
muAgent:全新体验的 Agent 框架,将 KG 从知识获取来源直接升级为 Agent 编排引擎!
欢迎参与项目: https://github.com/codefuse-ai/CodeFuse-muAgent
CodeFuse 「编码挑战季」
活动火热进行中,诚邀广大开发者们参与 muAgent、MFTCoder、ModelCache、CodeFuse-IDE 代码仓库的编码挑战。
社区任务会在 https://github.com/orgs/codefuse-ai/projects 中进行发放。
当前已有任务成功发放,快来参加吧~
手机端可扫描上方二维码查看
不同难度的任务完成后得分如下,完成任务即得积分,积分可自主兑换 CodeFuse 定制周边礼品(奖品将在活动结束后统一发放)。此外各项目在活动结束后还将依据此次活动参与贡献的情况,为在社区内做出卓越贡献的开发者,奉送神秘大奖,敬请期待~
关于报名:
1、关注 CodeFuse 微信公众号,并回复“报名”即可获得报名链接
2、根据 Github 页面活动提示完成报名
加群:扫描下方二维码,即可加入群聊,对本次活动有任何疑问都可以在群内进行提问~