工程师需要解决的一系列新问题

AI能否治愈疾病而非制造灾难,取决于软件工程师能否解决多智能体系统带来的基础设施、身份、安全与监控难题。

KATELYN LESSE(@KATELYN_LESSE)观点长文 · 已翻译 · 约 6 分钟
阅览室 · AI 最佳实践#智能体#工程#问题#身份#授权原文

很多软件工程师正在经历一场只能被称为身份危机的东西。这份工作已经发生了很大变化。有些人感到沮丧,另一些人则正享受着人生中最美好的时光。我看到一件非常具体的事情正在发生,它让我对接下来——姑且说一两年——工程工作的样子感到非常兴奋:除非软件工程师去解决问题、让这一切成为可能,否则 AI 根本无法创造出它有能力创造的那种惊人成果。这是关乎存亡的事,而说实话,这也非常有趣,所以现在对软件工程师来说是一段相当不可思议的时期。

多智能体系统正在制造这些问题

智能体最初只是基础的、人在回路中的聊天。后来模型在更难的问题上能够运行更长时间,智能体系统开始迁移到云端。与此同时,模型开始更擅长协同工作,人们也构建出了基础的多智能体系统。比如一个编排器为给定任务生成若干子智能体,或者给智能体分配执行之外的工作来改善结果,比如评分、建议或“梦境操控 ”等。

现在,一些人开始构建真正令人惊叹的多智能体系统,去攻克世界上最难、最重要的问题,比如严肃的研究、发现和硬件设计。想象一下数千个智能体持续不断地朝着这些成果努力。这带来了一系列新的软件工程问题,而我们已经看到它们开始冒头。

基础设施需要演进,以处理更加突发性的工作负载。我们需要恰当的身份验证和授权来识别智能体、让它们协同工作、使它们能够采取应该采取的行动,并阻止它们采取不该采取的行动。对于不受信任的代码和内容,安全与恰当的隔离至关重要。而且我们必须具备监控能力,以及在系统偏离正轨时将其就地叫停的能力。

模型会不断进步,这类多智能体系统也将变得极为强大。但软件工程师必须解决所有这些问题,才能真正释放这种能力,让世界信任它能带来好结果——比如治愈疾病——而不是坏结果。

问题所在

基础设施需要演进

软件行业一直构建在 Kubernetes 之上,而 Kubernetes 是为无状态、可复制的应用或稳定编号的有状态 Pod 集合而设计的。智能体则完全不同。它们本质上是隔离的、有状态的、单实例的工作负载。它们可能在两次工作之间任意长时间地闲置,并且大量时间花在等待工具、模型推理、其他智能体或人类输入上。有些工作负载需要快速启动,有些需要避免浪费算力,还有些需要极大的规模。优秀的工程师们正在这一问题上奋力推进——比如构建新文件系统和沙箱产品的 AI 基础设施公司,以及构建 Agent Substrate 这一新运行时的 Google 团队。还有大量问题有待解决。

身份与访问

智能体认证方面存在一些待解决的问题——即如何识别执行了某个操作的智能体。这一领域得益于微服务世界已经构建并经过强化的基础组件,例如使用短期证书而非静态密钥的工作负载身份,人们正开始将这些概念应用到智能体上。

智能体授权作为一个问题空间则开放得多——你允许智能体做什么?许多智能体代表人类工作,使用该人类的身份和凭证来访问各种系统并执行操作。这里已经存在一个问题,即如何识别执行操作的是智能体而非真正的人类。但在这种代表授权(OBO)模式中还有更深层的问题,比如同意。如果多智能体系统持续工作数周,人类如何有意义地批准其智能体可以做什么?工具调用的自动批准等智能体平台功能有所帮助,但要在高规模下正确处理这一点,还需要更深层的权限管理。此外,还有智能体以自身身份工作的情况,这一问题解决得更不充分,以及如何将其应用于协同工作的智能体——一个智能体如何信任另一个向它提出请求的智能体?

安全与隔离

过去几个月,尤其是最近几周,漏洞浮现的速度远超行业修补的速度,其中许多出现在众多系统所依赖的关键核心软件中。试想一下,成千上万的持久化智能体运行在这些核心软件之上,编写不受信任的代码、读取不受信任的内容。在这样的世界里,那些未修补的漏洞会变得危险得多,而软件工程师最重要的工作之一,就是想方设法加固这些软件——内核、浏览器、运行时和常用库。

多智能体系统还带来了另一层问题。一个被攻陷的智能体可能向与其协作的其他智能体传递注入的指令,而这些指令可能进入记忆,被未来的智能体误信。爆炸半径变得真实可感——当第一个智能体被攻陷时,整个多智能体系统有多少部分处于风险之中?在这样的世界里,隔离变得至关重要——智能体应当使用强隔离的沙箱执行环境来执行操作。我曾在这里写过一些相关内容。

监控与中止

最后,我们需要一些工具来确保这些多智能体系统朝着积极的方向运行,并在它们偏离方向时及时发现并切断它们。我们需要跨智能体的 OTel 追踪,并确保一个智能体永远无法修改自己的追踪记录或其他智能体的追踪记录。我们需要监控系统能够触发的终止开关,能够真正一次性停止整个系统并切断其凭证。真正困难的部分其实在于如何判断系统正在朝错误的方向发展。出于善意、坚持不懈地解决某个问题,看起来可能很像恶意行为——例如反复尝试访问不在其允许列表中的域名。

软件工程师应当感到兴奋

这篇文章是写给那些正经历身份危机的工程师的——他们觉得自己的知识和技能将不再重要。事实上,你和你的技能可能正是决定这些问题能否被解决、多智能体系统能否解决世界上最棘手问题的关键。你可以而且应该在这些领域深入钻研,学习新知识,形成自己的见解。这个问题的很大一部分空间都对新解决方案敞开大门。现在正是让你的技能大显身手的激动人心的时刻。

已读完 · 本文由熊猫易读翻译重排