微软CTO(首席技术官)Kevin Scott拥有41年编程经验,亲身经历了现代软件开发每一次重大技术变革。而Agent智能体作为下一代互联网最重要的技术之一,微软几乎在所有产品矩阵中都增加了相应的功能,非常重视智能体的应用和发展。
事实上,微软也是目前全球智能体的领导者和最大的开发平台之一,有超过7万家企业和数字原生公通过其AzureAIFoundry开发平台来开发、定制、管理智能体和AI应用。
超过1万家组织采用新的AgentService构建、部署和扩展智能体系统;超过23万家组织,包括90%的财富500强企业,都使用了Microsoft Copilot Studio来开发AI、智能体应用。
在今年微软举办的“Build2025”大会期间,Kevin接受了科技博主Every的专访,从技术视角出发,详细解读了微软是如何推动智能体生态的发展,以及一些技术创新和标准构建。
完整专访视频
英语好的小伙伴可以直接听原采访视频,「AIGC开放社区」也会在下面给出详细的采访内容。
主持人:Kevin,你对使用Agent进行编程的看法是什么?有些人担心这会剥夺编程的乐趣和工匠精神。
KevinScott:我喜欢我的团队成员,无论是软件工程师、机械工程师、木工还是陶艺家,如果你真的对自己的工作充满热情,你就会对如何完成工作有自己的强烈看法。我从事木工的时间几乎和我从事编程的时间一样长。这并不是过去四十年中软件开发性质首次发生重大变化。如果Agent要真正有用,它们必须能够代表你采取行动,使用工具、在系统中进行更改,并咨询各种丰富多样的信息源。
为了实现这一点,我们需要一个类似互联网的生态系统。我在微软作为CTO推动的一件事是,我希望我们内部的所有系统都能与我们正在编写的Agent使用标准协议进行通信。保持好奇心,尝试新事物。如果对你有用,就使用它;如果没用,就不要用。
主持人:去年你在节目中提到两个主题:Agent将无处不在,以及对规模定律的强调。今年的焦点似乎转移到了“Agent网络”上。这一年中发生了什么变化?我们从去年学到了什么?
Kevin Scott:我认为有几件事发生了变化。去年,人们还在怀疑规模定律是否还会持续有效,但我们已经一年又一年地证明了,这些定律依然有效并且运行得很好。现在,人们不再需要被提醒这一点。另一个变化是,模型的推理能力实际上已经超出了我们目前在产品中使用模型的方式。我最近一直在谈论一个叫做“能力过剩”的现象。
我认为整个行业需要共同努力,缩小模型实际能力与我们向用户提供的能力之间的差距。这也是为什么今年的Build大会没有像去年那样强调规模定律。
此外,随着过去一年中Agent的大量涌现,我们发现除了推理能力之外,还有许多其他问题需要解决,以使Agent真正有用。
例如,我们需要更好的Agent记忆,因为目前Agent的记忆在很多有趣的方式上受到限制。它们有点事务性,你使用它们完成一项任务,记忆在任务过程中是连贯的,但之后记忆可能会完全消失,下次使用时又得从头开始,这极大地限制了你将越来越复杂的任务委托给它们的能力。
如果Agent要真正有用,它们必须能够代表你采取行动,使用工具、在系统中进行更改并咨询各种信息源。为了实现这一点,我们需要一个类似互联网的生态系统,如果你有一个信息源,你已经有一个网站,你已经有一个API在为人们提供服务,那么你需要弄清楚如何将这些整合起来,让Agent能够与之对话,并且让所有激励措施都朝着让这些参与Agent网络的方向发展。
今年的一个大事是,我们看到了像MCP这样的简单开放协议的初步进展,还有像微软刚开源的NLweb这样的东西,它们在Agent网络中扮演的角色类似于HTML在互联网中的角色。我认为你会看到这些简单、可组合、分层的东西在开放社区中大量涌现,希望它们能够普及,让Agent真正能够做事情。
主持人:所以,你认为Agent需要访问互联网上的信息、计算机上的内容等,需要协议和流程来实现这一点。那么,这对微软来说为什么重要?微软想在这个生态系统中扮演什么角色?
Kevin Scott:我认为有两到三件事情非常重要。首先,我们自己也在开发Agent,为了让我们的Agent对用户有用,我们需要在这些Agent内部解决这些问题。即使你将范围缩小到企业Agent,我在微软作为CTO推动的一件事是,我希望我们内部的所有系统都能与我们正在编写的Agent使用标准协议进行通信,这样我们就不会将整个世界暴露于康威定律。
康威定律是编译器领域的一个有趣现象,它指出你编译器的阶段或传递次数将由参与编译器工作的团队数量决定,你实际上是在“运送你的组织架构图”。在像微软这样的公司内部,你当然不希望在构建Agent时“发送你的组织架构图”,否则会非常低效。
作为工程师,看到没有标准协议和服务供每个人使用时的低效构建过程,就像是一场噩梦。但如果你想象一下Agent真正能做到什么,以及用户希望这些Agent比现在更有用,你需要事情像过去网络发展时那样发生。
我认为MCP是一个很好的例子,是一个非常简单的协议,解决了Agent和平台基础设施构建者以及使用这些系统的用户以及提供商(他们希望参与这个新的Agent网络)的一个非常重要的问题。人们正在减少做一件事,即我知道如何连接,他们正在思考如何将我的东西接入这个网络,以及从商业模式的角度来看,这样做是否有意义。
所以,这两件事是:让我们的Agent更有用,以及微软是一个平台公司,比我们自己编写的Agent更重要的是,微软在过去50年中一直在构建技术平台,我们只是想确保我们能够帮助解决随着Agent网络出现而出现的问题。
主持人:看到微软大力推动MCP并将其整合到Windows等系统中,这真的很酷。这让我想起了关于MCP的一些讨论,有人认为它的安全模型需要大量改进。
你对这个问题怎么看?你一直在将这个堆栈与互联网堆栈进行比较,而互联网有一个安全模型,比如同源策略,它确保如果一个网站为你提供代码,那么它只能在其自己的数据上执行。而MCP并没有这样的东西。那么,你认为这个堆栈的正确安全模型是什么?
Kevin Scott:我不能确切地说我知道正确的安全模型是什么,但有趣的是,MCP如此简洁一致,社区将相对容易决定安全模型是什么。我们有一些企业级的事情非常关心,并且我们正在与MCP团队紧密合作以完成这些工作。我们需要Agent有身份,这样你就可以构建授权系统,可以说这个Agent是代表这个人行事的,并且他们有权查看这个系统中的这些资源。甚至有一种方式可以让Agent去查询许多系统,说“我想做这件事,我需要接触这些系统。
我需要请求哪些权限才能做到这一点?”然后我可以向用户(委托我执行这项任务的人)请求权限,比如“我可以对这些事情进行操作吗?”用户可以回答“是”或“否”。对于这些系统的管理员来说,他们可以决定是否允许这些操作发生。所有这些事情在MCP之上相对容易做到,虽然不是容易,但相对容易做到,并且重要的是,我们要以一种开放的方式去做,我们不需要让它成为我们自己的Agent或我们自己的系统的专有东西,我们只需要弄清楚如何做到让事情像网络那样工作。
主持人:这是一个有趣的问题,因为我觉得可能存在两种潜在的市场模式或商业模式,一种是垂直化的模式,你拥有模型和UI层,你做所有的应用程序等,就像苹果的AppStore和iPhone模型一样,你可以以很多方式保证安全性。而开放模式则更难做到安全性,但你会得到更多的创新,因为没有中央权威。你们在做决策时是怎么考虑这两种模式的?
Kevin Scott:我认为这可能是一个虚假的二分法。在这些开放系统中,有一个特点是它们是无需许可的,拥有无需许可的创新是一个真正的优势。作为个人,我最兴奋的是,你现在可以在不需要获得某人许可的情况下进行创新和构建事物,你不需要他们授权你将事物分发给其他人,也不需要这些复杂的把关环节,这些环节实际上坐在你(有想法的人)和可能从你的想法中受益的人之间。
我认为一些中间层在过去几年中已经出现,它们实际上并没有为交易中真正重要的两方(即付出努力创造事物的人和将花费注意力、金钱或其他有价值的东西来访问事物的人)贡献太多价值。
所以,我对开放系统感到兴奋,这是原因之一。但我也认为,你可以利用现在拥有的AI能力在这些系统中获得真正的强大安全性。例如,你可以有一个Agent,它负责你的个人安全需求,知道你愿意分享什么,不愿意分享什么,并且它对风险评估有一定的了解。
例如,今天早上我准备上台的时候,我收到了一堆电子邮件,因为我是我妻子的备用安全账户,有人在我的妻子的账户上摆弄双因素认证,我做的第一件事是给她发短信,而不是给她发邮件,因为可能有人未经授权访问了她的电子邮件账户。
我给她发短信问她“是你在摆弄配置吗?”她说“是的”。你可以想象,有一个Agent可以访问你所有的通信方式,能够注意到有些奇怪的事情正在发生,然后使用许多资源来确定这是合法活动还是非法活动。所以,我认为你可以同时拥有这两者,不一定非得是你说的那样,要么是安全性,要么是开放性。
主持人:这很有道理。我还有一个问题,软件工程显然正在发生变化。你已经从事软件工程很长时间了,你也非常关心制作东西的工艺,比如你制作陶瓷、制作自己的包,你喜欢亲手制作东西。有些人认为使用Agent进行编程会失去一些制作代码的“感觉”,你怎么看待这个未来由Agent辅助的编程世界呢?
Kevin Scott:让我先说,我喜欢我的团队成员,当我说“我的团队成员”时,我的意思是广义上的“制造者”,无论是软件工程师、机械工程师、木工、陶艺家,还是其他任何从事创造性工作的人,他们从原材料或无中生有地创造东西。
如果你对自己的工作充满热情,你就会对如何完成工作、使用的工具、使用的材料以及如何组合这些东西有非常强烈的看法。这是你做好工作的必要条件。有趣的是,人们有很多不同的意见。正如你所说,我已经做这件事很长时间了,我是一个“老古董”,我12岁时写了我的第一个程序,这意味着我已经编程41年了。所以,当你做一件事很长时间时,你会发现这并不是过去四十年中软件开发性质首次发生重大变化,人们对于变化及其意义有着非常强烈的看法。我认为现实是人们会有选择。例如,当我进入文本编辑器时,我可能不应该说这个,因为我们开发了Visual StudioCode,但我是一个顽固的老家伙,我仍然使用VI,至少我使用Vim。
但我的首选文本编辑器是一个非常过时的东西,我知道这肯定是在优化我工作的一部分,但我仍然选择这样做,因为我有选择权。而在其他方面,无论是软件开发还是我正在做的其他事情,重要的是目标,而不是实现目标的方式。我会选择最强大或最方便的方式来实现目标,我不在乎别人会因为我的选择而批评我。这种现象无处不在。我从事木工的时间几乎和我从事编程的时间一样长。
当我还是青少年时,最大的争论是“如果你使用电动工具,你还是一个真正的木工吗?”真正的木工只使用手工工具。今天仍然有一点这样的争论,但真正的争论是“如果你使用CNC工具,即计算机控制的电动工具,而不是普通的电动工具,你还是一个真正的木工吗?”我理解这种争论本身很有趣。
但有时人们会做出不同的选择,因为他们重视的东西与你不同。如果你更重视过程而不是结果,有时你会做出与那些更重视结果而不是过程的人不同的决定。我认为,当你问“你是一个真正的木工、真正的程序员吗?”时,你实际上是在说“你只有按照我成长的方式去做,你才是真正的”。但在很多方面,这只是一个选择的问题。我永远不会告诉任何人不要对他们的工艺有强烈的看法,这是很好的。我的建议是保持开放的心态,当工具发生变化时,要保持好奇心。
我甚至无法告诉你,有多少次我看到一些其他非软件制作领域的新技术出现时,我会想“哦,我讨厌学习这个东西”,比如3D打印机,我等了很久才去学习如何使用3D打印机,我后悔没有早点开始,因为它们对我所做的几乎所有事情都非常有用,出于各种复杂的原因,我没有让自己对它产生好奇心,这很奇怪。所以,是的,保持好奇心,尝试新事物,如果它对你有用,就使用它;如果没用,就不要用。
主持人:你认为软件工程Agent的未来会是什么样的?会有一个统治一切的Agent,还是会有很多不同口味的Agent?你认为这个生态系统会如何发展?
Kevin Scott:我认为会有很多不同的Agent。拥有许多Agent是好事,我们当然会通过GitHubCopilot和我们正在开发的GitHubAgent工具等产品,努力成为一个许多人会选择的工具,因为它们发现它非常有用。但我认为,期望全球所有开发人员都使用一个工具来完成他们工作的重要部分是不现实的。
开发人员的乐趣之一就是他们实际上有选择权,可以选择和尝试许多不同的东西,做非理性的事情,做理性的事情。这是我过去四十年编程生涯中看到的一个非常一致的现象,那就是人们会不断改变他们的工具。你认为不同Agent之间会有什么区别呢?
我认为Agent最重要的是它们的产品制造部分。所以,我现在看到的最有趣的初创公司并不是试图通过构建某种差异化的基础设施来创新。它们之所以创新,是因为它们认为自己对某个问题的理解比其他人更好,并且它们认为它们可以拿起基础设施、修改基础设施或调整基础设施,以解决他们对这个问题的理解,以一种世界级的方式解决。
所以,我认为这就是我们现在需要的,这将决定Agent的多样性以及哪些东西被用于什么目的。而且,我认为因为现在更容易理解某人的问题,并拿起这些工具去尝试解决它,你会看到许多公司正在构建许多东西,试图解决这些问题。
即使是在软件开发工具领域,过去一年出现的东西也太多了,它们都很有趣。对于一家自己构建软件开发工具的公司来说,要应对这些变化是很困难的,但这是非常非常有趣的。如果你对某人需要的东西有细微的理解,人们会有很高的容忍度和兴趣去尝试。
主持人:好的,我们快没时间了,最后一个人问题。假设一年后我们又回到了Build大会,那么现在人们还在关注的一些热门话题或大问题,哪些在一年后可能不再重要,而一年后我们会关注什么?你对未来有什么预测?
Kevin Scott:我认为那些仍然坚持认为技术还不成熟的人,比如“我尝试过,但它的成本略高,或者它的能力略低于我想要的”,我认为任何以这些为借口等待开始的人将会远远落后。因为一切都会变得越来越便宜,每年都会变得更加强大。我知道,现在在2025年,这已经不是一个很难让人信服的观点了。
过去曾有一阵大声的喧嚣,说“哦,进步即将结束,一切都会停止,每个人都会非常失望”,但现在已经很少有人关注这些了。因为关注那些说“事情即将停止”的人,你实际上是在押注失败,而押注失败与押注乐观之间的成本差异是非常大的。
所以,我认为我们会看到人们用Agent解决的问题的雄心壮志会大大增加。我认为人们关注的模式也会有很大的不同。随着Agent网络开始更加完善,模型的推理和规划能力变得越来越好,你会开始从与Agent的同步交互模式转变为异步交互模式。现在,大多数人使用Agent的方式是,他们坐下来,有一个任务,他们发出提示,然后等待Agent返回结果,然后他们对结果进行操作。
我认为到明年,你会看到人们使用Agent去处理一些需要花费很长时间的任务,Agent会去调用许多系统,它所采取的行动可能需要很长时间才能得到回应。然后它会整合所有这些回应,并进行一些操作,这个过程可能会迭代多次,然后在某个非短暂的时间后,它会说“好吧,我已经做到这里了,现在轮到你采取行动了”。听起来这是一个令人向往的未来。
(文:AIGC开放社区)