在帮助人们优化模型大约十五年后,我意识到自己一直在解决错误的问题。从根本上说,阻碍人们从这些AI系统中获得价值的,并不是性能。这不是从某个评估函数或某个性能指标中挤出最后0.5%的问题。而是能够自信地信任这些系统。
我无法告诉你,几十年来我们帮助某人优化系统时,他们有多少次会说:“好吧,你破坏了什么?你引入了什么不良行为?因为我过度拟合了这个系统,我现在缺乏什么稳健性?”
我们看到人们今天在LLM中再次做同样的事情,他们专注于这些高级指标、这些最终输出、这些性能评估,而这最终掩盖了系统本身所有这些潜在的不良行为。欢迎收听A16Z AI播客。
我是德里克·哈里斯,本周我和A16Z合伙人马特·博恩斯坦以及Distributional联合创始人兼首席执行官斯科特·克拉克一起,深入探讨了部署和测试AI系统的问题,特别是(但不限于)企业环境中的LLM。我们在这一广泛的主题下涵盖了许多主题,但重点是如何企业能够并且正在尝试与AI建立信任关系,以便他们能够真正地将AI用于重要工作,并将部署扩展到小型项目之外。
讨论从斯科特给出他对机器学习和人工智能略带戏谑的定义开始,然后分享了他的一些背景。
包括来之不易的认识:信任,而不是性能优化,是大型公司部署AI的程度的最大因素。提醒一下,请注意,此处的內容仅供参考,不应被视为法律、商业、税务或投资建议,也不应被用于评估任何投资或证券,并且并非针对A16Z基金的任何投资者或潜在投资者。更多详情,
请访问a16z.com/disclosures。那么,你能否为我们定义一下什么是机器学习,什么是AI?就像一个经历了这个市场起起伏伏的人一样。我记得大概八年前,也许是在A16Z播客上回答过类似的问题。好吧,也许我们可以在这里插入旧答案。我认为答案大致相同。机器学习是现在已经变得容易的东西。然后AI就是所有有趣的新东西。然后一旦它不再成为……
前沿技术,它就变成了,“哦,那只是机器学习”。它不再神奇了。它不再神奇了。我的意思是,你可以一直追溯到早期的达特茅斯会议等等,比如,“哦,
拼写检查是AI”,因为这是一个棘手的问题。但我认为今天没有人会认为那是AI。现在,当然,对于生成式AI,我认为一个很大的区别是,这些系统不再仅仅专注于分类或回归,试图确定某物是否存在于一个集合中或下一个元素应该是什么,现在它们实际上更具交互性。并且像
应用程序的类型,你可以使用这些系统的方式变得越来越大,因为,我的意思是,它们的生成式方面就在名称中,但我认为这从根本上是不同的。我认为这为企业带来了全新的一波价值。在我们深入探讨当今世界现状之前,你能否快速介绍一下你的背景,以及你是如何最终得出启发Distributional的认识的?它始于……
大约10到15年前,我的第一家创业公司SigOpt。这家公司是基于我的博士研究,它完全是关于我们如何帮助公司优化AI系统。那么,你如何从一个非常复杂的模型中获得更高的性能?所以在传统的机器学习时代就是这样。没错。这都是传统的首波ML和AI。AI的定义在过去十年左右的时间里显然发生了变化。但它是,是的,调整XGBoost模型,调整类似
调整强化学习算法,诸如此类。但它完全是关于我如何调整所有不同的参数?当然,现在这些参数仍然存在,例如温度以及你可以分割这些基础模型各个方面的方式。
但它完全是关于我如何获得这个峰值性能?我们做了大约十年,最终在2020年将公司卖给了英特尔,在那里我领导了他们超级计算集团的AI和HPC部门。在帮助人们优化模型大约十五年后,我意识到自己一直在解决错误的问题。
从根本上说,阻碍人们从这些AI系统中获得价值的,并不是性能。这不是从某个评估函数或某个性能指标中挤出最后0.5%的问题。而是能够自信地信任这些系统。我无法告诉你,在与SIGOPT合作的几十年里,以及追溯到我的博士学位,我们有多少次会帮助某人优化系统,而他们会说:“好吧,你破坏了什么?”
比如,“你引入了什么不良行为?因为我过度拟合了这个系统,我现在缺乏什么稳健性?”我们看到人们今天在LLM中再次做同样的事情,他们专注于这些高级指标、这些最终输出、这些性能评估,而这最终掩盖了系统本身所有这些潜在的不良行为。
但这确实是一个更难的问题,因为你不再只是有一个二元输出,现在你可能有更多自由形式的文本。也许你有一个能够做所有这些不同事情的自主代理系统。现在行为比以往任何时候都更重要。
但是,没有很好的系统能够帮助你理解、定义和测试这些系统。而这正是Distributional的目标。它试图通过测试来解决信任问题,而不是像SIGOptoS那样通过性能来进行优化。
你在英特尔管理着一个相当庞大的团队,对吧?并且管理着一个相当庞大的客户群。这是否部分帮助你看到了这个问题的不同形式?绝对的。从收购时管理大约25人的团队到我离开英特尔时领导大约200人的团队,这是一个巨大的飞跃。我能够在更高的层次上看到问题。我开始看到我们的一些客户现在感到沮丧的一些事情,他们
是的,构建这些模型很棒。是的,让它们具有高性能等等也很棒。但归根结底,如果你对你的客户负责,无论是内部客户还是外部客户,你都会关心可靠性。你关心一致性。
我们一直在那里遇到问题。我的意思是,财富500强和全球2000强企业都在遇到这个问题,好吧,我如何有效地安心入睡?我在英特尔时找不到一个好的解决方案。我无法找到一种方法来外包这个。
所以就像任何优秀的企业家一样,如果你有一个问题,然后你发现这是一个非常普遍的问题,你找不到解决方案,你就会尝试自己去构建它。再次这样做真的很令人兴奋。再次利用所有过去的经验教训,所有过去的错误,
作为一个天真的博士生,试图创建一家公司,犯了很多错误。我不会强迫你经历你犯过的错误。也许那是后续播客的内容。是的,我们需要很多播客才能列举所有这些。但现在我们可以再次尝试。现在可以更快地犯十倍的错误。我们与许多创始人合作,他们非常迅速地循环遍历关注领域,这可能很棒。这是一种很好的方法,可以找到产品市场契合点。我认为你……
你知道,这在某种意义上是罕见的,实际上跨越三家公司,你一直在研究类似的核心问题,你几乎痴迷于
痴迷于找到解决它的正确方法。那种顿悟是什么感觉,你就像,“哦,糟糕,我浪费了X年时间做错了这件事?”或者,“哦,我的上帝,这太令人兴奋了。我终于找到了解决这个问题的正确方法。”或者你能稍微个人地谈谈那是什么感觉吗?是的,我认为更多的是后者。坚持不懈的好处(无论好坏)之一是,它使我们能够真正地与正在构建这些系统的人们产生共鸣,并且
我们已经能够与从事机器学习、AI工作的人们合作了十年或更长时间。我们能够看到许多相同的模式、许多相同的系统、许多相同的错误正在被犯。
我们能够帮助他们做得更好一些,做得更多一些。这确实是SIGOPT和现在Distributional的信条之一。这是关于构建工具,以允许这些领域专家更好地发挥他们的专业知识,更自信地去做,真正不必担心他们知道应该担心的一些事情,并且真正专注于他们可以运用自己的专业知识来创造一些伟大的东西的地方。
并且能够与许多相同类型的人合作非常棒。现在负责构建Gen AI平台或将这些大规模用例产品化的人,与构建那些原始机器学习系统的人是相同的人。然而,在系统层面,生成式AI与这些人在LLM时代之前一直在使用的其他机器学习系统相比如何?我认为主要区别在于技术。
这些单元的原子性如何。因此,对于许多传统的ML和AI来说,它完全是关于,我能做出一个具体的决定吗?我能对是否获得贷款做出是或否的决定吗?我能做出具体的预测吗?我知道股票在下一分钟将朝哪个方向走吗?诸如此类。
而对于生成式AI,它变得更具协作性,并且它在实际能够做的事情方面更具扩展性。从能够与它进行对话到我们看到出现的一些自主代理系统,现在你有一个模型调用一个模型,调用一个MCP服务器,调用一个模型,做出一个决定。
这些管道一直存在,但是它们的端到端性质以及它们可以多么独立,它们可以多么依赖于这些内部组件,以及其中一些行为如何通过这个系统传播,我认为这与更原子化的、基于单元的、几乎是微服务的传统ML和AI系统的根本不同。
所以我想这意味着对于产品所有者来说,当某些东西进入新的AI领域与传统的机器学习领域的产品环境时,他们会担心什么?
是的,我认为一些担忧是相同的,因为他们希望这些系统具有高性能。它们必须比今天的现状更好,无论是人类还是传统的机器学习和AI系统。但从根本上说,再次强调,这是我在做了这么长时间之后得到的教训,完全专注于优化是,它不仅仅是性能。它是这些系统的行为。
它确保它不仅达到了你想要的任何KPI,而且它也不会做坏事。它不会有任何不受欢迎的行为。这种不受欢迎的行为可能是,我只是不希望它在我不知道的情况下发生剧烈变化,或者可能是,我明确地不希望它表现出某种偏见或某种类型的反应。
我认为主要的变化是输出空间可以有多大。有三件主要的事情使得量化和理解这些AI系统的行为变得困难。其中之一是它们本质上是非确定性的。
对于一些传统的机器学习和AI系统也是如此。但基本上,这里的想法是,同一个问题可能会得到不同的答案。这种非确定性不仅仅是同一个问题可能会得到不同的答案,而且它也可能是一个非常混乱的系统,其中略微不同的问题可能会得到非常不同的答案。
另一个方面是它们本质上是非平稳的。所以它们实际上在你眼皮底下不断变化。这可能是因为你的LLM提供商决定改变他们的基础设施。然后这改变了内存的访问方式,出于某种原因改变了响应类型。或者可能是因为你的应用程序的上游,有人向你的向量数据库添加了更多内容,或者他们改变了检索提示,或者他们改变了其他一些东西,
这些系统在产品角度来看,不断在你眼皮底下变化。这涉及到这些系统的复杂性的第三个组成部分,它变得越来越大。再次强调,它们不再是这些原子单元,你只是从它们那里得到一个简单的“是”或“否”的答案。它可以是这些系统,是的,你正在检索,然后你正在生成一个响应。然后该响应被馈送到另一个系统,被馈送到另一个系统,在那里可能正在做出自主决策。
因此,围绕非确定性和非平稳性的一些问题最终会通过该系统传播。如果一开始是混乱的,并且在沿途的每一步都是混乱的,那么我们正在创建的输入的这些非常小的变化,单个输出的大变化,现在可以在它实际开始影响最终用户时产生巨大的行为变化。
因此,这非常重要。我认为许多公司现在正在遇到的问题是,如果你只关注最后一步,如果你只关注系统的整体性能,那么就很难理解行为何时、何地以及为何在该应用程序的上游发生变化,并且能够使用这些信息来适应、对你的应用程序进行更改或准确地了解正在发生的事情。我认为我们正迅速进入一个世界,在这个世界里
对AI系统的信任甚至比它们的原始性能更重要,对吧?因为这些东西非常擅长做很多不同的事情。
但是用户,客户如何真正接受这一点?当你描述这个问题时,这是否是你正在谈论的一部分?是的,这种信任可以采取多种不同的形式。它可以确保它是可靠的,确保它是一致的,甚至可以确保这些潜在的行为与我的愿望一致。显然,有很多伟大的公司正在尝试在AGI全球层面解决这个问题。
但是对于各个企业来说,你希望这些应用程序也与你的业务、你的业务价值观、你的个人目标保持一致,而不仅仅是试图挤出更高的点击率、更高的检索性能或其他什么。所以这几乎就像企业必须信任模型或系统将要做什么,以便他们的客户能够信任他们。这是一种公平的说法吗?
想想看。绝对的。就像生活中的任何事情一样,信任很重要,但也要验证。这就是测试的用武之地,因为你确实需要能够信任这些系统。但是你需要一种机制来能够
持续地、可靠地和自适应地验证它们正在这样做,无论是在你进行更改时,还是在世界在你眼皮底下发生变化时,以及在这些模型也发生变化时。这就是你在Distributional所做的,对吧?绝对的。因此,Distributional是一个企业平台,允许团队测试这些应用程序的生产环境,以确保它们的行为符合预期。
你说了很多次“行为”,但是当涉及到AI时,“行为”对很多人来说可能意味着很多事情。那么,你在Distributional试图销售的内容的背景下,你如何定义行为?对于这些应用程序来说,行为最终不仅仅是它产生的结果,而是它如何产生结果。所以所有这些特征都可能是文本本身的特征。所以不仅仅是这是一个好的答案,但也许答案的毒性是多少?答案的阅读水平是多少?语气如何?答案有多长?所有这些都只是可以作为语言本身特征的属性。
但如果它是RAG系统的一部分,那就是,“检索了什么?多久检索一次?与这些个别文档相关的 timestamps 是什么?它是否开始忽略它过去一直引用的内容,反之亦然?
当我们开始进入这些自主代理系统时,我知道谷歌的深度研究团队最近也谈到了这一点。它就像,“好吧,在推理步骤中,这花了多长时间?它进行了多少推理步骤?”所有这些都是模型在线实际行为的特征。
在到达最终答案的路上,在到达性能指标的路上。我绝对不想说性能不重要,因为它确实很重要。这是行为的一个方面。你想要良好的行为。你想要良好的性能。你想要一致的性能。但它从根本上来说是这个非常高级的位。
它可以掩盖所有这些可能对系统产生影响的潜在行为。而且因为这些本质上是非平稳的和混乱的系统,所以你希望能够尽快捕捉到这些潜在的行为。其中一些实际上可能成为你想要作为性能指标的东西,就像传统的机器学习、欺诈检测一样,你希望尽可能准确,但是你
通过检测你存在偏见,也许你希望随着时间的推移将它考虑进你的性能指标中。这是关于随着你学习越来越多的东西,随着时间的推移来适应这种理想的行为。这听起来像我第一次参加工作面试。不仅仅是你说了什么,还包括你如何说。没错。然后你做了什么,因为归根结底,如果你有一个律师或什么……
在LSAT上获得高分很棒,但这并不能告诉你他们在法庭上的行为如何。所以AI,你知道,床边态度或法庭庄重。而且还有很多传统的ML和AI的经典例子。我相信你也会记得其中一些。你训练一个强化学习算法来投棒球。它认为将棒球跑到接球手那里是最有效的方法。你会说,“好吧,我确实告诉你把球放到手套里。”
你从技术上解决了它,但这并不好。但即使在这些Gen AI系统中,最近也出现了一个关于国际象棋的经典例子。或者如果你只是告诉它赢得一场国际象棋比赛,并且你给了它访问棋盘状态的权限,它将重写棋盘状态以获胜。这是一个行为的例子,是的,如果性能指标是赢得的比赛,它有一个很好的性能指标。但行为是它作弊了。
在过去一年半的时间里,我们看到一件非常有趣的事情是,人们已经开始从某种科学项目原型领域转向,在这个领域里,他们有一堆独立的团队试图自己构建堆栈,并且
并试图单独构建他们需要的一切来获得一些东西,转向开始构建更集中的平台。这再次与我们在早期ML和AI时代看到的情况非常相似,当时也许每个数据科学家都像,“我要启动Scikit-learn,我将所有数据都保存在本地,我将拥有某个模型。”这对于快速原型设计和探索非常有效。
但是当涉及到利用这些模型并真正确保你能够大规模地做到这一点时,确保组织能够保护自己,能够真正利用其所有资源,你希望拥有更集中的工具。
因此,与我们在过去十年中看到的ML和AI平台的兴起非常相似,我们现在开始看到这些Gen AI平台的兴起。这具有组织上的好处,再次确保你可以扩展,确保你有适当的成本分配。但它也可以真正抑制CIO和CTO们听到的很多关于影子AI的事情。对。
人们调用他们不应该调用的模型,向它们提供他们不应该提供的东西,创建他们不应该创建的漏洞。所以这也是开始进行测试的完美工具。因为一旦你有了集中的Gen AI平台,一旦你有了记录所有API请求、所有跟踪等等的网关或路由器,
测试就可以建立在这些日志之上,建立在这个数据存储之上,为你提供所有应用程序的更全面的视图。它们的行为如何?哪些行为不同?并免费向最终开发人员提供该平台中的行为分析和测试。那么,与过去相比,影子IT问题在语言模型和生成式AI中是否更严重?
我会说是的,因为每个人都在这样做。你必须知道scikit-learn是什么。是的,没错。这是一个相对局部的问题,因为你正在你的笔记本电脑上进行数据科学,而现在我只是将秘密IP发送给某个SaaS公司或其他什么公司。这样做很容易。你只需要一个API密钥。没错。我的意思是,所有这些……
开发人员工具的存在很棒,它们使事情变得非常容易。缺点是它们也使人们很容易做他们不应该做的事情。我认为许多组织已经开始意识到这一点。因此,你不仅可以从集中化、扩展和支持等方面获益,还可以减轻有时意外造成的损害,例如,“哎呀,我想我们的代码库现在是公开的了。”
或其他什么。因此,如果我现在是一家大公司的技术主管,正在经历这种现象,即小型AI项目到处涌现,其中一些项目做得非常好,并且实际上正在成为我们业务的重要组成部分,
从实际角度来看,我应该考虑做些什么来控制这种情况?我应该考虑构建什么才能达到这种目标,你知道,像平台涅槃一样的状态?老实说,我们在与所有不同的公司交谈或合作时,看到了很多这种不同的变化。
我会说他们试图解决两件事。一个是试图让一个平台足够有用,基本上吸引那些说,“别担心,我已经搞定了。”的人。就像我构建了自己的堆栈一样。因此,其中一部分是通过提供增值服务。所以它就像,“我们将为你处理扩展。我们将为你处理成本优化。我们将把这些事情从你的盘子里拿走。”
他们所做的事情之一是,“好吧,我们将构建一种集中的路由器,以便你可以访问所有这些很棒的LLM模型。我们将创建一个存储,你可以在不同的版本和模型之间切换等等。我们可以将日志记录集中化。因此,你不必处理它可能产生大量日志的事实,并且
最重要的是,你还可以提供测试。所以现在我们可以做这一层,以确保你可以检测和理解这些潜在的行为。这与许多人今天正在推行的这种方式从根本上不同,因为如果你正在使用这些专注于开发人员的“一体化”即用型平台……
它们允许你快速上手,但也许它们并没有记录所有内容。或者他们可能只有非常基本的监控,只关注少数几个性能评估。或者他们有能力查看单个输入和输出并进行手动注释。但这很难大规模地做到。因此,对于这些技术主管来说,他们需要能够想出一种方法来创建这种
或最低公分母接口,以便每个人都可以利用它。但他们也必须提供增值,我们从许多高管那里看到了这一点,以诱使人们迁移到该平台。我的意思是,你关于给开发人员一个想要进入平台的理由的观点很有趣。如果我现在切换到我的开发人员帽子,它就像,
为我消费日志。这听起来很棒。我不知道日志应该放在哪里。为我测试。这听起来很棒。我不喜欢写测试。给我一个以某种方式跨越许多不同LLM标准化接口的存储。这对我来说听起来不太好。听起来你只是在我真正想要使用的东西之间添加了一层。从实际角度来看,哪些部分通常首先出现?如果这是你的工作,你实际上是如何做到这一点的?我们看到的第一批组件之一是这种网关或路由器接口。
其中一些不太是增值,更多的是,“这是我们唯一允许你访问这些东西的方式”。这归结于其中一些模型需要经过GRC流程。它就像,“我们将允许你使用OpenAI,但我们不允许你使用托管的DeepSeek或其他什么东西。”并且,并且,
通过集中化,他们就可以开始控制一些混乱。以下是我们支持的30个不同模型以及我们支持的每个模型的20个不同版本。哦,哇。所以你看到企业实际上会支持这一点。因为我脑子里想象的是,“以下是你可以使用的两个或三个模型。”但听起来你看到一家公司可能有30个可用的模型。人们希望为工作使用合适的工具。不同的模型、不同的版本具有不同的权衡、不同的成本、不同的上下文窗口、不同的速率限制,所有这些事情。
我们也开始看到越来越多的人想要微调或创建 SLM,或者使用更多静态权重模型。因此,最终会成为一个困难的基础设施问题,即针对少量非平稳 API、少量内部模型等进行托管。创建这种统一接口对于开发人员能够挑选、进行 A/B 测试等来说非常有价值。所以一个很大的难题是……
有时激励机制是不一致的。OpenAI 显然希望创建最好的通用基础模型。但个别企业可能需要一个以非常具体的方式很好地解决非常具体问题的模型。开发人员可能只想能够尽快将某些东西部署并集成到他们的应用程序中。
因此,这位平台工程师、技术主管在这两件事之间左右为难,他们需要能够提供对所有这些酷炫工具和所有这些强大功能的访问权限,同时也要尽可能方便开发人员。所以我们看到了
这里有两种方法。一种是他们将利用可能来自云提供商的通用平台,各种云都有很多很好的例子,或者从最佳工具中构建。他们将选择最符合他们需求的向量数据库。他们将选择最适合他们的日志存储和测试解决方案,等等,
但从根本上说,他们试图解决的是将这两块拼图拼在一起的问题。这是全世界每天都在发生变化的伟大研究。而这就是我的开发人员推动他们工作前进所需的东西。
我该如何在这两者之间创建一个通用的拼图适配器,然后在其之上提供足够的价值?这是一个真正的技术问题。正如你所说,如果我有 30 个模型,带有变体和微调等等,那实际上是一个需要解决的真正问题,而不仅仅是我要锁定它。是的,完全正确。如果你只是想启动一些东西,你只会选择一条路线、一条路径等等,
但是,在你构建了该路由器或网关之后,接下来最明显的事情就是说,好吧,实际上有很多数据正在通过这里。我应该将这些数据记录在某个地方,而不是将其丢弃。这就是他们开始利用当今已有的更传统的数据存储的地方,例如,好吧,我们已经有了一种记录 API 调用、跟踪或一些更丰富的信息的方法。
但是,一旦你拥有这些日志,你就可以开始在其之上进行分析、测试、监控等操作。因此,它开始积累这种价值,最终看起来更像是一个传统的平台。与此同时,开发人员开始获得一些现成的功能。因此,他们不必考虑日志记录。他们不必考虑测试。他们不必考虑任何这些。他们可以专注于
微调他们的提示。他们可以专注于将这些代理系统构建到他们当前的用户工作流程中。我认为很多开发人员,正如你所说,当他们试图解决一个狭隘的问题时,认为他们已经解决了这个问题
对。他们有一些测试用例。他们只是玩了一会儿。你知道,人们过去称之为氛围检查。我不知道这个词还在使用吗?他们真正应该考虑什么?从企业的角度来看,人们应该考虑什么?我们认为他们应该考虑这些应用程序的整体行为规模。
因此,这不仅仅是在小型数据集上查看少量性能检查。这不仅仅是输入你最喜欢的 100 个输入并确保你总是得到你最喜欢的 100 个输出。我们与许多公司交谈过,他们害怕跨越这个 AI 置信度差距,从我开发了一些在
理论上有效的东西,我如何在实践中实际扩展它?很多时候我们会与一些人交谈,他们说,每次我引入一个新用户,每次我向其中添加更多数据时,它都会发生一些变化。而且
现在,我正在逐步进行。但是当我打开消防水龙头时,我不知道会发生什么。我害怕那是什么。这可能会造成一个差距,导致事情停留在原型阶段。它们停留在这一点上,我有一个很棒的概念验证,但我仍然害怕将其打开给一百万用户、一千万用户,或者将其打开给真正的企业价值。所以我觉得……
思维方式的转变不应该是,它是否按照我想要的方式工作?它是否更全面地工作?你有没有关于人们不进行测试时出错的事情的好的故事?
是的。我的意思是,有很多故事说明人们认为他们在做正确的事情,认为他们当然,这是一个系统中没有遗憾的增值。它最终会产生这些奇怪的涓滴效应。RAG 显然已在各种行业中变得非常普遍,人们将其用于许多不同的事情。我们与不同的公司谈过
他们说,好吧,我将继续向语料库中添加越来越多的数据,因为更多的数据更好。当然。但这最终会弄乱检索机制。因此,之前它都包含非常近期的数据,并且由于人们询问的是有很多近期性的东西,因此它给出了非常好的回应,现在他们将他们的整个历史都放入了其中。现在它正在获取旧的东西,并且
假装它是新的。1902 年。是的,完全正确。我想要上一季度的收益,但现在你却给了我六个季度前的收益。或者我想要这个具体的实体。
而且一开始它相对来说是独一无二的。但是现在你已经用所有这些其他东西淹没了它,我也在拾取所有这些在它边缘的东西。你有没有看到任何发布的东西让所有客户都感到不安,或者交易策略只是一个无底洞的钱?所以谢天谢地,我们还没有看到这样的事情。但是肯定有……
我的意思是,幻觉仍然是一个问题。这是一件系统可以使自己相信存在证据而实际上不存在,或者使自己相信你想要一个与你实际想要的不同的答案的事情。
有时这是因为它得到了它试图在其间进行插值的信息。有时它只是试图填补空白。从根本上说,这就是这些系统试图做的事情。这可能会导致用户出现非常糟糕的行为。这可能会导致……另一个例子是……
人们以他们一直使用的方式使用该系统,但由于某种原因,它开始触发所有这些防护措施。这是因为系统的中间部分以不同的方式转换或改变了它,突然之间它在某个地方翻转了一个开关。现在他们得到了这种糟糕的用户体验,因为他们被告知他们违反了某些策略,而实际上他们可能只更改了提示中的一个词。
你认为 AI 系统应该基本上以原子方式进行测试,就像我们对传统软件进行单元测试一样,你可以对每个部分进行隔离并确保其性能达到规格?这对于 AI 系统来说是不是同样的想法?我认为你需要能够以原子方式量化行为,但是……
能够更全面地测试该行为,就像回归测试一样。因此,你确实希望能够量化检索步骤发生方式的特征。你不想只查看最终答案,你还想查看输入的变化如何通过系统传播。我明白了。所以这是一个混合体。我知道你已经
做了一些非常深入的数学运算。我正在抵制询问太多数学问题的冲动,因为我知道我们两个人会走得太远了。但是我知道你的团队已经做了一些非常复杂的工作来思考处理这些测试的正确方法。你介意简要概述一下为什么这是一个难题以及你如何解决它吗?是的。所以有一点与直觉相悖,可能与人们今天处理评估的方式略有不同,那就是
与其拥有少量能够最终告诉你某些东西是否正在执行的强大估计器,测试是一个难题,因为,我的意思是,能够量化行为并试图理解这些系统内部固有的东西是一个非常困难的问题。这就是我们与传统 LLM 评估方法略有不同的地方。
因为我们不是试图为性能提出少量强大的估计器,我们可以在其中最终确定 A 比 B 好,而是我们想要大量可能较弱的估计器来确定 A 是否与 B 不同。
你在那个级别上提出了一个根本不同的数学问题,因为拥有这些可能具有较高熵等的弱估计器可以让你深入了解系统行为、作用或处理信息方式的细微变化,然后这些变化将对你的实际性能产生一些最终结果。但是能够关联它,能够回溯并找到根本原因,并能够说我的性能下降是因为
因为这个变化了,因为这个组件改变了。这是分布变化的证据。这是结果不再相同的确凿证据。它可以成为一个极其强大的工具,不仅可以让团队了解情况,还可以让他们实际应对这种情况。因为我们看到的一件事是
当你的性能下降时,这很有帮助,因为你知道一定有什么东西坏了。但这会启动一个全新的研究过程,以便能够说,好吧,我现在需要从头开始构建,而不是因为这个东西不再是以前的样子而导致性能下降。这让你有了立足点,能够去修复它。或者也许并非所有变化都是坏事。也许这实际上是
你也要考虑纳入你的绩效的东西。我明白了。所以你几乎是在说,与其像传统的软件堆栈那样,你只是在测试端到端正在发生的事情,你更像是说你在这个玻璃缸里有一些小的实验对象,你需要连接各种小的传感器和探针来准确地了解它的行为,以便了解发生了什么。没错,没错。它实际上是在提升所有这些传感器和探针。所以不要仅仅查看
实验对象 A 与实验对象 B 是否能够完成迷宫,而是他们的心率是多少?就像所有这些类型的事情,然后可以让你说?所以你实际上是在进行统计测试以了解变化,你知道,在每次迭代中这些传感器中的每一个的变化?或者只是,再次,在非常高的层面上,它是如何工作的?所以这与公司名称有关。我们将所有这些都视为分布式。因此,从根本上说,这不仅仅是关于你可能想要触发或什么的单个输入不好,而是关于整体
从整体上看,这种行为在群体环境中是如何变化的?今天与昨天的行为分布有何不同?这种分布不仅仅是性能的分布,而是这种高维分布,这种行为的分布式指纹。它发生了怎样的变化?这使你能够获得这些见解,这些见解从根本上使你能够找到根本原因并理解
以你无法通过其他方式理解你的模型的方式来理解你的模型。这非常有趣,因为有很多讨论,特别是关于大型语言模型,关于什么是分布内的,什么是分布外的。通常,人们谈论的是在训练数据中很好地表示的内容与没有很好地表示的内容,这很重要,因为这些模型往往擅长在其训练数据中或类似于训练数据中的内容,而不擅长分布外的内容。我看到很少有实际的这种量化,对吧?有一些关于它的好论文。但你所说的对于任何特定系统来说,
这意味着以某种方式使用特定的一组模型和特定的一组提示。你实际上可以逐字地描述分布是什么,然后检查这些分布如何随时间变化。是的,完全正确。输出的分布,以及整个过程本身。
获得这些输出。那里有很多丰富的信息。而今天很多信息都被掩盖了,因为只关注个别事物。这很酷。我的意思是,这真的是一个行业范围的问题。那么,最终部署分布式或某种测试解决方案对企业的益处是什么?是的,所以这是更大的信心,这使他们能够解决更难的问题,说实话。我们看到一些公司……
攻击唾手可得的成果,内部聊天机器人来询问有关人力资源的问题,因为他们害怕采取这一飞跃来解决难题,因为它太笨重了,并且与之相关的风险很大。
许多最有价值的用例也具有最大的固有风险。测试和信心是一种理解和减轻这些运营风险的方法,无论它们是财务风险、声誉风险还是监管风险。鉴于你在这方面看到的情况,当我们采用更多生成式 AI 时,我们对可靠性等事物的定义是否需要发展?例如,如果说,一个系统从未接触过现实世界的条件,那么有人如何才能确信一个系统会按照他们期望的方式运行?是的。
能够定义可靠性意味着什么,它始于变化。它至少始于今天与昨天不同吗?这是一个你可以以无监督方式提出的问题,因为你不需要对两者有任何偏好。但从那时起,你可以开始说,好吧,我喜欢这种变化。我不喜欢这种变化。你可以开始对哪些类型的变化是可以接受的或不可接受的变得越来越具体。
但是,仅仅能够看到差异,你就可以开始应用监督,开始对一个与另一个进行偏好。我认为从根本上说,人们开始积累
积累越来越多的复杂性。也许最初他们只是用 LLM 等替换经典的 NLP 模型。他们开始突破过去可能性的界限,而不仅仅是让它变得更好。是的,它比做 LDA 更容易,就像点击 LLM 之类的东西。但是现在,特别是对于代理来说,他们开始真正看到
这些全新的前沿,但随之而来的是很多不确定性,你需要一种手电筒来能够说这是我理解的,这是我如何真正获得信心的方式,所以关于同一个主题,组织应该如何考虑变更管理成本增加以及这类事情,或者调整事情,或者我猜甚至是交换模型以便确定一个既能提供他们想要的东西,又能让他们信任的系统
我们过去六到十二个月在企业中看到的一件事是,随着他们开始将越来越多的应用程序投入生产,他们开始能够做出不同的权衡,并且他们开始积累技术债务,说实话。当你第一次构建时,它不存在,但当然,就像任何技术一样,它会随着时间的推移而积累,有时。
因此,他们开始尝试在以下方面进行权衡:嘿,我可以使用更便宜的模型吗?我可以清理一下我过去一年反复附加的系统提示吗?但是为了做出这个决定,你需要了解权衡是什么。如果我从这个昂贵的模型切换到这个更便宜的模型会怎样?如果我重构我的系统提示或其他任何东西会怎样?
因此,再次,了解性能影响是其中一个方面。但是了解这如何改变我标记事物的方式?这如何改变此应用程序的行为方式也可以使你能够以更清晰的方式做出这些决定。就像传统的软件一样,你有一个构建。当你重构以确定你是否真的让它更干净或破坏了构建时,你有一个测试套件。
通过拥有良好的行为测试覆盖率,你现在可以使用这些 Gen AI 应用程序提出完全相同的问题。我让它变得更好还是实际上破坏了构建?所以你是在说我的系统提示不应该充满大写字母和感叹号以及恳求,请,请按照我的要求去做。
可能。任何适合你的东西。再次,适合工作的正确工具。也许你可以回去把它变成一个长长的首字母大写请求,而不是……推特上的一位英雄,我不会说出他的名字,他从所有这些东西中提取系统提示。我从中学到的最大收获是系统提示通常……
反映了它所来自的组织。这是康威定律的一种新形式。康威定律是你作为一家软件公司发布你的组织结构的东西。我认为作为一家 AI 系统公司或提示编写者,你也在发布你的组织。这就像谷歌的非常全面、技术性和枯燥。然后是到处都是的创业公司。所以你说的是一件有趣的事情。该
系统甚至发送到语言模型的提示都以某种方式反映了它所来自的组织以及他们正在寻找的行为。没错。当你修改它或当你,我的意思是,它一直向下嵌套系统提示,对吧?当你修改调用他们的提示时,你会得到不同的行为。即使只是选择一个模型,更不用说你自己探索了
系统提示空间本身。再次,至少了解你所做更改的行为影响非常重要,因为
我的意思是,从根本上说,一旦某些东西开始赚钱,一旦某些东西真正有用,你就需要采取稍微保守一点的立场来确保你不会破坏东西,而不是仅仅试图尽快构建某些东西。非常喜欢这个想法,每来一个新人,你知道,就像工程师,然后是合规人员和市场人员,或者每个人都在向提示中添加内容。这个可怜的、困惑的语言模型可能不知道该做什么。有些是冲突的,等等。是的。
是的,策略会发生变化。我们与许多公司交谈过,他们害怕更改该提示,因为他们说,好吧,GRC 团队希望在其中添加这一行,而这个团队希望在其中添加这一行。如果我们把它们结合起来会发生什么?但是有了像你这样的系统,他们基本上能够检查
一旦他们进行了一些这些修复,事情是如何变化的。这很酷。所以对我来说,至少有一件事似乎是正确的,那就是构建许多主要基础模型的人与,你知道,从某种意义上说,他们更像研究人员而不是传统的企业家,然后是企业买家之间存在相当大的差异。但是至少在许多之前的技术转变中,最终是企业采用和销售为这些新技术提供了大部分收入。那么你如何看待企业用户最终
对产品设计施加影响?或者说,这波 AI 是否足够新颖,即使是大型买家也必须继续对大型实验室引入的模型变化做出反应,并且可能比历史上所拥有的控制权或影响力更小?大多数这些 AI 实验室都不是企业人士,这很好。你知道,有很多非常非常聪明的研究人员非常了解他们的领域。但是是的,我很想知道你是否看到了这个界面,你知道,因为我认为一些大型实验室的
大型客户确实比普通开发人员更有影响力?我的意思是,这将是一个共同进化的过程,显然,其中一些实验室非常专注于研究的前沿以及追求 AGI 等,但他们也需要赚钱。因此,他们将适应用户的需求,然后行业将适应可用的工具,这将是来回的。这将就像加拉帕戈斯群岛上的雀类。而且
总的来说,我认为我们将获得一些专业化。某些模型将问世。他们将非常出色地解决具体的企业需求。但总的来说,企业也将继续适应,嘿,我有了这个新工具。嘿,我可以访问这个新东西。我该如何让它适应?
但不幸的是,再次,我觉得这些企业中的平台所有者最终成为了这个连接器。他们需要能够成为这项技术的接口,同时也要以一种易于访问、易于使用和易于理解的方式提供它,最终满足企业的需求,无论是通过测试和审计等等,还是可扩展性。
这很有道理。你是在说这些企业平台实际上在整个行业中扮演着非常重要的角色,如果我理解正确的话,因为实验室会发布他们发布的内容。开发人员喜欢尝试各种东西。有些有效。但是如果没有人在连接拼图,正如你所说,那实际上可能是一个真正的问题。绝对的。有人需要……
确保这些模型继续工作,这些应用程序也随着时间的推移继续工作。我在传统的 ML 和 AI 中看到了这一点,这在传统的软件中也会发生,其中
开发人员离开了,然后需要维护它。它需要保持运行。是的,因为我们还没有 AI 运维团队,对吧?没有专门负责确保系统运行的人员群体。我们所做的方式有点像传统的,你知道,DevOps 等等。当你的 AI 机器人错误地出售办公大楼时,谁会在半夜被叫醒?没错。谁必须弄清楚是谁的错?
归根结底。是的,我认为随着这些 Gen AI 平台的兴起,我们将看到更多 AI 运维人员的兴起,他们必须确保系统正常运行,并了解系统何时不正常运行,然后修复它。我们讨论了针对此可靠性问题的全局解决方案与局部解决方案。你的观点是什么?整个行业应该解决什么问题,而什么问题需要,你知道,这种像局部上下文一样的东西?是的。
绝对的。所以我认为这方面有一些是普遍存在的。能够定义其中一些行为并检测其中大规模的变化,能够建立一个能够为你提供这种洞察力水平的系统。
再次,在那个非常高的层面上。但是每个团队都有不同的行为或他们不想要的东西。因此,你很快需要能够从像我们这样的系统中获取一种检测变化的能力
在全球范围内,然后能够通过工作流程来适应它并构建更好的行为测试覆盖率,这将变得越来越具体,并为你的单个应用程序量身定制,但从根本上说,相同的
全球层面可以帮助组织内的许多不同团队,甚至跨不同组织的团队获得立足点。这就是我们试图通过我们的平台开发的东西。但是,除了平台本身之外,该工作流程还涉及微调它并将其指定为你个人关心的行为。
就是这样,另一集结束了。与往常一样,如果你喜欢这次讨论,请分享这个播客。继续收听,因为我们未来几周还有一些精彩的讨论。