We're sunsetting PodQuest on 2025-07-28. Thank you for your support!
Export Podcast Subscriptions
cover of episode Product Metrics are LLM Evals // Raza Habib CEO of Humanloop // #320

Product Metrics are LLM Evals // Raza Habib CEO of Humanloop // #320

2025/6/3
logo of podcast MLOps.community

MLOps.community

AI Deep Dive AI Chapters Transcript
People
R
Raza Habib
Topics
Raza Habib: 我认为产品指标和LLM评估之间没有真正的区别,或者说,最好的评估与产品指标是相同的。评估的目的是衡量AI系统的质量,而生成式AI的出现使得衡量性能变得更加主观。在某些情况下,最好的评估是最终用户的体验,即用户是否达到了他们想要的结果。评估是为了在开发过程中提供替代方案,因为在产品投入生产之前,不一定能获得最终用户体验。我们使用LLM创建的许多评估,如LLM作为评判者或自动化评估,实际上也在作为生产指标运行。如果在与AI互动后完成了某个步骤,那就是一次成功,并且可以很容易地判断是否采取了最佳行动。

Deep Dive

Shownotes Transcript

他们现在不知道自己得到了什么福气。你如何看待产品指标并将它们与评估结合起来。所以我认为产品指标和评估之间没有真正的区别。

或者至少最好的评估与产品指标相同。我的意思是?我认为你试图用评估解决的很多问题是,你试图衡量你的 AI 系统的质量。随着生成式 AI 和大型语言模型的出现,发生了变化的是,更多的用例很难客观地衡量其性能。

如果你正在写电子邮件、总结文档或回答问题,那么就不再只有一个正确答案了。因此,很难说什么是正确的答案?以总结为例。会议总结非常依赖于上下文,至于它是否是好的总结。如果你进行销售电话,你需要不同类型的总结。不同的销售人员会关心不同的东西,例如你是否获得了关键信息?所以不再只有一个正确的答案了。

从某种意义上说,你希望在实践中拥有的最佳评估,将是最终用户的结果。用户是否获得了他们想要的结果?他们是否能够实现他们的目标?他们是否使用了文本?他们是否喜欢它?根据用例的不同,代理是否以他们预期的方式为用户实现了它应该实现的目标?客户支持信息是否有用?评估真正想要做的是给你一个替代方案,而你

在开发过程中,因为你可能无法在将东西投入生产之前就拥有它。因此,希望这两者高度相关,产品指标和评估并非

并没有那么不同。许多人使用 LM 作为评判者或类似的自动化评估来创建的评估,也经常用作生产指标,对吧?因此,在每次表达中,他们实际上都使用分类器、代码片段或 LM 作为评判者对其进行评分,然后监控事物如何随时间推移而发生变化,或者在发生变化时发出警报。你是否认为这是产品中快乐之路?我正在尝试采取下一步,

如果在我与 AI 交互后完成了这一步,那么就是一个成功。你可以很容易地看出这是非黑即白的。就像我采取了这一步。我采取了下一个最佳行动,或者我没有。

是的,所以在实践中,我们看到三种非常常见的类型的生产评估,例如默认的最终用户指标,以及更定制的或特定于用例的指标。所以最基本的指标,每个人都会看到它们出现在很多应用程序中。所以最简单的事情就是最终用户的反馈,点赞、点踩、评分等等。

它们有点用。你实际上不会得到你想要的那么多,而且它会偏向极端。我总是对此感到好笑,因为这就像那些点赞和点踩的人只是你用户群中的一小部分。但它仍然是有用的数据,对吧?所以我们经常看到人们在 Human Loop 中做的事情是查看那些获得差评的示例,因为他们想要真正了解系统出错的地方,系统在哪里出错?

然后你得到更正。如果人们正在生成文本或获得某事的答案,他们正在编辑法律文件或类似的东西,并得到建议的编辑,那么他们可能会在使用文本之前对其进行一些编辑。因此,这种更正可以成为一个非常有用的信号,既包括他们更正了多少,也包括作为该情况下正确答案的存储数据点。

最后,正如你所说的行动,下一个自然行动是什么,用户是否采取了该行动?他们是否发送了消息?他们是否复制了文本?无论它在你的应用程序中是什么上下文。我们看到人们将这些用作基线。然后我们看到的是,人们经常会构建非常特定于用例的自定义 LMS 评判者或代码评估器。

这些可能会监控语气,是否存在,你知道,品牌相关的东西或类似的东西,这些东西可能更主观地进行监控。他们可能只希望在开发中使用它,或者他们可能不希望在开发和生产中都使用它。是的,因为当你进入企业时,他们不能只是将东西 YOLO 到生产中。是的。

是的,完全正确。因此,当我们构建 Human Loop 的第一个版本时,最初的重点是帮助人们衡量系统在生产中的工作情况,并利用它来指导改进。这仍然是平台的核心部分。但是,当我们走向高端市场,并开始向中端和企业公司销售更多产品时,你就会遇到这个问题,你必须能够确信它在开发中运行良好,然后你才愿意将其推出给测试用户组或所有用户。是的。

因此,你需要某种方法来在开发中构建一套严格的测试指标,希望这些指标能够预测你实际部署到生产环境中时会发生什么。所以基本上,你带着这个想法进入了 HumanLoop。我喜欢你谈论演变,你也看到事情是如何变化的。我是什么时候和你谈话的,大约三四年以前,HumanLoop 刚开始的时候?就在两年前,是的。所以大约是……

实际上是在 ChatGPT 推出几个月前,因为我认为我们录制了那一集。经典。时机把握得很好。是的,我现在就是这样划分世界的,ChatGPT 之前和之后。对某些人来说,这是基督。对其他人来说,这是 ChatGPT。是的,公元前。那是大约三个月前。是的,你改变了什么?你如何……

看到产品发展壮大,以及你对生产中 AI 的总体思考?

当我们开始时,LLM 仍然非常新。它们主要被初创公司使用。应用程序更加有限。人们正在构建基于单个提示的应用程序。最早的案例是文案写作或各种形式的写作辅助。用户访问网站,描述他们想要什么,然后输出一篇博客文章,或者帮助他们集思广益。

而且这些模型对于这种情况来说已经足够好了,但是对于更复杂的用例,例如问答或代理,人们正在尝试并构建演示。即使在两年半前,你也有第一个代理演示,但是模型不够智能,无法使其可靠。因此,Human Loop 的第一个版本真正专注于帮助那些正在构建演示的人

第一代 LLM 应用程序来了解它们在生产中的工作情况。因为如果你无法衡量它,就很难改进它,很难知道如何随着时间的推移使其变得更好。主观性和随机性是挑战。它仍然是挑战。

但是如果你考虑文案写作或写作助手,那么评估的极端点是非常主观的。对于许多工程师来说,这是他们第一次构建软件,每次运行时都会得到不同的结果。机器学习社区中的人们,这对他们来说是相对正常的。但我认为,如果你不是机器学习背景,那么这实际上是一种全新的体验。

因此,Humulint 的第一个版本非常简单。它允许你监控生产中发生的事情。因此,基本上,每次有人与你的系统交互以获取输入和输出时,都会收集最终用户的反馈,并将其与不同的提示进行匹配。因此,你可以在生产中进行 A/B 测试或提示比较。

从那时起发生的变化是,随着模型变得越来越智能,用例的复杂性也大大提高了。因此,我们已经从简单的写作应用程序转向人们自动协商法律合同。因此,像 Filevine 和 Entra 这样的公司是我们的客户。或者我们有在 Duolingo 构建语言学习助手的公司。

或者在 Gusto,他们正在构建复杂的代理,这些代理实际上可以执行会计人员以前在工资软件中执行的任务。因此,我们已经从“嘿,帮我生成一篇博客”走到了“实际上帮我做一些复杂的事情”。多步骤的。是的。因此,我们不得不构建

根本问题仍然相同,那就是我试图采用这个不可靠的基础事物 LLM,并在其之上构建一个可靠、值得信赖的应用程序。但是风险增加了。当我们开始与企业合作时,他们更关心避免错误,更关心到位防护措施。应用程序的复杂性增加了。因此,跟踪和可观察性实际上变得更加重要。人们构建的方式也发生了变化。

最初的 Human Loop 只是这种在生产中收集反馈。从那时起,我们将其构建成一个完整的跟踪和可观察性系统。因此,如果你有一个代理正在执行操作,它将允许你查看该系统所做事情的完整路径。因此,用户提出问题,然后是对话的每一次轮换或代理采取的每一个步骤,你都会记录下来,并且你可以用反馈或评估数据来增强它。因此,你拥有这个非常丰富的数据集,它允许你进行治理,也允许你改进你的系统。

什么有效,什么无效,以及我该如何指导它?然后与之相结合的是,我认为实际上已经成为应用程序核心的东西是一个评估工具。这主要用于开发,但它允许人们做的是写下系统需要通过才能良好的标准。

拥有一个测试用例数据集,然后他们可以针对该数据集进行迭代。因此,LLM 开发是迭代式的。你尽快构建管道的第一个版本,获得一个端到端工作的版本。然后你希望从一个端到端工作的版本转变为一个在生产中足够可靠的版本。你正在迭代提示,你正在迭代工具定义、预处理和后处理代码,你正在尝试不同的模型,你正在尝试不同的数据源作为上下文。

如果你没有办法知道当你进行这些更改时,我是在改进事情还是在使事情变得更糟?那么实际上很难取得进展,而不仅仅是空转。因此,评估允许你获得对所做每个更改的定量反馈

这样你就可以实际判断,例如,我是在改进事情吗?这在开发过程中非常有用,可以实际获得一个运行良好的系统。我认为我们在你们组织的最近的 AIOps 大会上与 Filevine 一起发言。他们能够将一个系统的信息提取准确率从略高于 50% 提高到 90% 以上。但是如果没有这个持续的反馈循环,这是不可能的。

是的,这些评估是最重要的。是的,至少对他们来说是这样。我认为它只是众多部分中的一个,但它是一种基本的基线。就像如果你没有好的评估,我认为你将无法在其他方面走得太远。所以它是基础性的。请继续听我说。你听说过蝎子和青蛙的寓言吗?

我听说过,但也许我们应该提醒一下听众。所以有一个蝎子和青蛙的寓言,蝎子试图穿过河。所以它看到一只青蛙,并说,嘿,你能载我一程吗?我需要过河,你能带我过去吗?青蛙说,是的,但你是一只蝎子,你有一条尾巴,如果你蛰我,那么我就会淹死,我会死的。蝎子说,别荒谬了。

如果我坐在你的背上,我为什么要蛰你呢?然后你淹死了,我也淹死了。所以青蛙思考了一下,然后说,好吧,我相信你一次。是的,上来吧。所以青蛙带着蝎子过河。

蝎子无法控制自己。它只是,砰的一声,在某个时刻,它蛰了青蛙,它们都掉下去淹死了。我之所以说这个寓言……当它们溺水时,青蛙对蝎子说,你为什么要蛰我?他说,这只是我的本性。就是这样。这是关键部分。是的,这是我的本性,对吧?我之所以想到这个故事,是因为很多时候我想知道这些 LLM 是否正在将它们关起来

并试图在它们周围设置所有这些防护措施以及所有这些不同的东西。我们正在进行所有这些疯狂的工程,例如评估以及我们所能想到的一切,而这些幻觉只是 LLM 本质的一部分。我们不喜欢它们。

但是我们必须找到一种方法来控制它们。是的,我觉得这里可能有几件事情正在发生。有一些事情需要讨论。让我们先搁置幻觉问题。我真的很想回到这个问题。但是我认为……

在某种程度上,有时人们所做的事情是在解决当前一代模型的局限性,对吧?所以人们所做的一些事情是,哦,系统不够可靠,或者模型不够智能,所以我们必须找到一种解决方法。这是一个权宜之计。但我认为,即使你拥有任意智能的模型,例如假设你只有一个通往爱因斯坦的 API,或者达里奥所说的他的天才数据中心,

我认为尝试迭代你的系统以实现你的目标的需求不会消失。你仍然必须弄清楚模型需要什么上下文才能实现这个目标。

它是否以我期望的方式实现了目标?如果我随着时间的推移改变事情,这是否仍然正确?所以,你知道,打开我发布的是一个新模型,我想尝试一下。例如,这种变化对我的指标有什么影响?例如,系统的准确性提高了,但是人们并不那么喜欢语气,或者类似的事情。所以这并不一定是为了减轻系统的局限性,而是即使你拥有世界上最智能的模型,它也是

它总是会是随机的,对吧?就像这些系统的本质一样。我们并不是试图消除这种随机性。这通常是一个好处。它总是会有一些略微不同的模型特征。因为我认为,再次,坚持达里奥的台词,我认为他有一些很好的台词。你知道,他说,我们与其说是构建这些系统,不如说是培养它们。不同模型的特性具有一定的不可预测性。是的。

这是一个特性,而不是一个错误,因为它意味着我们获得了许多不同的个性、风格、技能或能力差异,我认为人们喜欢并可以使用。我认为这并不会消除对评估的需求。

如果你是一名软件工程师,你正在编写单元测试,你正在编写集成测试。为什么 AI 会有什么不同呢?只是你需要编写的测试类型不同。事实上,如果你来自机器学习背景,你总是会构建一个测试用例集并在其上衡量指标。只是指标的类型和你的操作方式正在发生变化。然后关于幻觉,当我与人们随意谈论这个问题时,我发现很难让人们对他们所说的幻觉与模型出错之间的区别有一个连贯的定义。

例如,当你谈论幻觉时,你是在暗示模型有某种意图。所以大多数人我认为对这两者之间的区别并没有清晰的概念。也许学者们已经定义了一个很好的区别,但是当人们说模型在回答问题时产生了幻觉时,这与它只是回答错误有什么区别?是的。我想幻觉最终是错误的答案。所以这很有道理

它们是一样的。但是那里的想法是减轻错误的答案,而不是以某种方式减轻幻觉。就像,让我们弄清楚如何更一致地给出正确的答案。我们可以通过你所说的那样来做到这一点,拥有这个

对系统如何随时间变化的概述。我觉得当人们使用“幻觉”这个词时,它暗示了他们对 LLM 正在做什么的思维模型。我不确定他们想到的思维模型到底是什么,但是

但至少在我看来,在概念上是模糊的。是的。我认为人们对自己的意思并不清楚。我认为说 LLM 事实上不准确会更清楚。是的。它出错的地方。是的。我喜欢这个。在你所构建的内容内部,你有一个运行的系统,对吧?你认识到系统正在不断发生变化。但是然后……

有生产环境,并且有日志和跟踪返回。它会转到那些产品指标。就像你正在获得产品指标。你正在获得信息。那么你如何利用它来更新你的系统?你如何使这个循环能够持续发生,理想情况下是

每次都变得更好,是的,也许这是一个很好的时机,让我解释一下 Human Loop 中的不同支柱,是的,因为我认为理解我们已经放入 LME 铃声平台中的内容以及我们为什么选择这些支柱可以回答这个问题

所以有三个核心支柱。我们已经讨论了其中的两个。一个是生产中的跟踪和可观察性。另一个是拥有你可以在开发过程中运行的数据集和评估器。然后是我们还没有讨论过的第三个支柱,但这正是这个问题的答案,即用于管理提示、迭代提示、技术人员和非技术人员(他们可能拥有领域知识)之间进行协作的工具,以便能够更改提示或——

对输出进行某种方式的评分。这里的一些具体示例是,我们之前提到了 Filevine。在 Filevine,是律师在做很多提示工程。在 Duolingo,是语言学习专家。在 Fundrise,他们的房地产专家和产品经理参与编写提示。在我们的许多公司中,

查看和评分评估的人,例如奥古斯托的客户支持人员或编写提示的人,并不是工程师本身,是的

因此,平台的一部分也是将配置(提示和工具定义)与代码分开,以便你可以独立迭代提示,但仍然以与传统软件相同的方式对它们进行版本控制和跟踪。这些是组件。然后现在我们可以回答一个问题,好的,我正在监控生产中的所有这些东西。我该如何实际利用它来改进事情?

通常的循环是,有人会查看评估,或者他们会查看来自生产的日志。他们会对系统为什么没有按照预期工作或某些错误的原因有一些假设。因此,他们会在 RAG 系统中发现不准确之处,或者他们会发现语气不对,或者类似的事情。这个人通常是技术人员还是非技术人员?我们实际上在两者中都看到了这种情况。所以通常是 PM。所以 PM 弥合了这一差距。或者可能是工程师自己查看评估日志。

然后他们会说,好的,我认为正在发生的事情是模型没有获得它需要的上下文。我的猜测是,问题实际上是 RAG 系统没有检索足够的信息。我们应该去改进 RAG 系统的召回率。那么,他们可以在 Human Loop 中进行更改。他们可以实际更新工具的配置,或者他们可以更改提示,或者他们可以触发模型的微调,然后他们可以运行评估并查看,我的指标是否真的得到了改进?

然后就可以从那里部署更改。因此,对于你可能想要进行的许多更改,例如对提示、工具定义进行更改,或尝试运行某种微调作业,你通常无需进入代码即可进行。因此,这允许非技术人员快速迭代,并让工程师去做他们想做的事情,例如,PM 和非技术领域专家想要做的事情。否则我们经常看到的事情

是 PM 想要更改提示或想要尝试某些东西,这可能需要完整的应用程序重新部署。也许他们必须在一个像 Jira 或 Linear 这样的系统中打开一个工单,例如,请更新此提示。然后工程师将在代码中编辑它。然后他们将重新部署应用程序。就像,哦,实际上这并没有产生我预期的更改。或者如果他们没有到位好的评估,那么人们就会害怕进行更改,因为他们担心会发生回归。我喜欢你如何弥合所有这些不同角色之间的差距。所以它

可以像你想要的那样技术化,也可以像主题专家一样。- 我们与许多角色进行交互,这可能也与我们在构建产品时看到的最成功的团队所做的事情有关。所以你有你的—— -顺便说一句,很好的过渡。- 你有你的产品工程师,或者实际构建系统的软件工程师,他们正在对 LLM 进行 API 调用,他们实际上正在构建所有管道。

但是他们通常不是定义什么是好的人。他们也不一定是编写提示的合适人选。通常最擅长此工作的人是产品经理。

编写规范与编写评估没有什么不同。对什么是好有一些定义。通常可能会有第三个角色,他可能是也可能不是 PM 本身,即能够定义目标和什么是好的人。有时这只是产品经理,但有时是其他人。这就是律师介入并说,等等。

- 是的。- 你认为这可以吗?- 因此,这些人的使用方式是,他们被用来提供反馈。所以有时人们会做的是,作为评估循环的一部分,他们会将系统映射到测试用例数据集上。他们会让律师或领域专家(无论用例是什么)进来,查看每个输出并将其评分为通过/失败,并附带评论。所以,嘿,这个很好。

还可以,这个很糟糕,因为……然后那些关于哪些足够好以及原因的二元数据将成为告知下一轮提示工程或更新的内容。有时律师会自己进行提示工程,有时工程师或 PM 会这样做,但是这个反馈循环非常有用,而且经常被用来构建作为评判者的 LLM

所以,你知道,人工反馈非常宝贵,但成本很高且难以扩展。而且你通常可以做的是将这种通过/失败反馈和评论的组合,然后基本上将其提炼成一个现在可以大规模使用的提示 LLM。只要它与人工判断高度相关,你就有了进行更可扩展评估的方法,也可以在生产中进行。所以评估是……

主要由 RPM 人员完成,人们谈论数据科学家如何能够很好地扮演这个角色来创建这些评估,也帮助探索提示探索空间。这与数据科学家习惯做的事情非常相似。让团队中有人拥有统计学、机器学习或数据科学背景非常有帮助

只是为了严格地理解如何做好评估,了解保留数据与非保留数据之间的区别,以及你可能想要计算什么样的指标。如果你正在处理随机系统,你可能想要多次运行它们并获得平均值,以及对任何统计学背景的人来说都显而易见和直观的东西,但是没有做过这种思维方式的人可能甚至不知道要考虑这一点。所以我们看到的典型构成通常是,

任何产品团队中通常拥有的工程师数量,可能一名数据科学家,然后是 PM 和领域专家。他们正在一起合作。因此,这些人中的每一个人都在为团队做出贡献。数据科学家通常没有

相关的领域知识来擅长进行提示迭代。因此,你真正想要的是能够为他们提供工具,让他们非技术人员能够参与进来并进行迭代,而不会被这两个群体中的任何一个阻止,并且他们可以在彼此之间共享信息。

这在 Human Loop 中的工作方式是,当你想要运行评估时,你会将你的应用程序或 LLM 系统映射到数据集上。它会生成所有输出,然后对其进行评分。它可以对它们进行评分的一种方式是通过人工反馈。因此,它会为领域专家创建一个作业队列,让他们进来实际提供反馈。

- 然后你是否也将其映射到产品指标?- 所以不是在开发过程中,而是在生产过程中,发生的事情是人们添加一些登录调用,或者我们与 OpenTelemetry 集成,以便他们可以将数据发送到 Human Loop

代理正在做什么。然后,一旦这些跟踪数据到达 Human Loop,人们就可以设置评估器以进入监控模式。这意味着,每次跟踪数据通过时,评估器(例如,作为评判者的 LLM 评估器)都会查看输出,对其进行评分,并且你基本上正在构建这个带有产品指标或最终用户反馈增强的跟踪数据集。因此,当 PM 进入应用程序时,典型的流程可能是,好的,给我看看案例。

LLM 认为此处不好,或者向我展示用户给出差评的案例。我将查看这些案例,并尝试确定是否需要更改提示、微调模型或更新我的 RAG 系统。我将用它来指导我的失败之处。现在你说你可以从 HumanLoop 内部更新 RAG 系统。

因此,人们可以在 HumanLoop 中做一些事情,而有些事情可能需要使用更强大的工具。在 HumanLoop 中,人们通常会指定配置。因此,他们会指定块大小,例如用于实际执行检索的指标,无论是传统的 IR 方法还是使用语义相似性进行操作。因此,他们有一个工具定义。在 HumanLoop 中,这是检索器的较高层配置,他们可以编辑它。

它的工作方式有点像提示和工具定义的 CMS。在生产环境中,它的工作方式是生产应用程序基本上会与 HumanLoop 通信,并说,嘿,当前部署的提示是什么?或者当前部署的工具配置是什么?HumanLoop 将其发回,然后调用检索器,或者将其缓存在本地,然后调用检索器。因此,您正在管理配置,即来自 HumanLoop 内部的提示和工具定义。这使您可以快速迭代并进行更改。

在应用程序上非常快。那么,您是如何随着时间的推移跟踪配置或跟踪更改的呢?它只是在 GitHub 上吗?我们有内置于 HumanLoop 中的版本控制系统来跟踪它。然后我们还对所有这些进行了序列化版本。我们称它们为文件。因此,HumanLoop 中的每个工具和提示都有其文件类型。有一个 .prompt 文件格式或 .tool 文件格式,人们也会将其检入 Git。

因此,如果他们愿意,人们可以与 Git 同步,并且仍然可以使用 Git 进行版本控制。但我们也在跟踪更改的历史记录。我们有审计日志。您可以查看谁在 HumanLoop 本地更改了什么。因此,如果非技术人员通过 UI 进行操作,您将拥有与工程师提交代码时相同的严谨性。假设我更新了一个提示,或者我开始看到一些情况有点奇怪,然后我将更换一个模型。

CI/CD 流程是什么?因此,典型的流程是有人进入 HumanLoop。他们会在我们的编辑器中进行更改,保存该提示的版本,然后触发评估。有时这些评估实际上是作为一部分触发的——

就像典型的 CI/CD 一样。因此,有人正在运行 CI/CD,GitHub 操作将调用 HumanLib 来运行评估报告。然后他们会收到指标和差异,因此他们可以在例如我们必须高于某些指标才能将某些内容提交到生产环境中设置阈值。

然后它进入生产环境。实际上,这与人们习惯使用的正常 CICD 非常相似。唯一的区别是,您的 CI/CD 系统中的 GitHub 操作或挂钩之一将针对该更改调用 HumanLoop 上的评估报告。您在用例和实际产生收益的 AI 方面看到了什么……

让人们赚钱。谈论所有这些评估以及您可以做的一切总是很容易和有趣的。但归根结底,如果您不关注实际影响

潜力是什么?是的,业务影响在哪里?实际用例是。那么您是否看到人们在这个部门取得成功?是的,绝对的。因此,我们看到了更多面向客户的用例。我认为人们要么节省资金,要么通过 Gen AI 赚钱,这大致分为两类。因此,有内部流程

自动化,人们正在构建客户服务支持代理,而在此之前,他们可能需要人工花费一定的时间,他们可以提高其转移率或提高客户支持等方面的成功率。这是一个非常明显的用例,我知道它在规模上为公司节省了数千万美元。我不能透露公司名称,但我认识至少一家公司,他们每年节省的资金约为 3000 万美元,这与他们之前的状况相比。还不错。

但随后我们花费更多时间的是面向客户的应用程序,因此减少了内部流程自动化。我们自然而然地花费时间或客户构建它的原因是,在内部应用程序中,人们会容忍一定程度的错误,或者它不需要 100% 准确。但是,一旦您将某些内容放在客户面前,那么对其性能符合您预期的可靠性和信心就会大大提高。评估、跟踪和可观察性的需求变得……

至关重要的事情。我们前面提到了 Filevine,这是一家法律科技公司。我之所以要谈论他们,是因为我们一起做了一个案例研究,也分享了它。向 Brianna 致敬。向 Filevine 的 Brianna 致敬。但他们在过去一年半的时间里发布了大约六种新的 AI 产品,这些产品在其合同中,某种程度上是生命周期管理产品和律师的工具。

在过去一年半的时间里,这些产品为他们带来了数千万美元的收入,净新增收入,并且增长非常迅速。法律科技是一个垂直领域。还有其他公司,例如 Harvey、Entra、Ironclad,它们正在利用大型语言模型在法律领域做令人惊叹的事情。

我认为这些是产生大量收入的应用程序。编码工具就像一个垂直领域,我们知道它产生了大量收入。Cursor、Windsurf,现在您有了 Anthropic 原生的 Cloud Code。就像 OpenAI 有自己的工具一样。GitHub Copilot 是 OG,对吧?所以这是我们知道人们从中获得大量价值的另一组垂直应用程序。我们可以在 GitHub Copilot 处暂停一下,因为……

谈谈开辟一个全新的市场,然后又失去它。他们做了如此令人难以置信的工作来创造这个全新的领域,然后让 Cursor 来抢走他们的午餐。是的,你知道,这很有趣。就像,我们会看到我认为游戏还处于早期阶段。我认为现在就断言结果如何还为时过早。

即使现在,这些不同的编码工具之间也没有太大的区别。开发人员非常善变。他们会很快更换模型和使用的工具。所以我不会现在就下结论。是的,但是,是的,它是 GitHub Copilot。我觉得确实是这样,你永远不知道。它可能会突然出现,或者像凤凰涅槃一样从灰烬中崛起。是的。

是的,我的意思是,我很想知道模型提供商本身开始生产什么。有人谈到 Windsurf 被 OpenAI 收购。有传闻说 OpenAI 将要收购 Windsurf。或者他们已经收购了。谁知道呢?然后你有了 Cloud Code。你有了 OpenAI 的 Codex。所以,你知道,他们已经在发布自己的工具了。他们非常清楚地进入了直接竞争编码工具的游戏。是的。而且 Copilot……

与其中一个,我认为可能是 Anthropic,有一些合作关系。

有趣。早期,由于微软与 OpenAI 的关系,他们与微软建立了非常密切的合作关系。早期的 GitHub Copilot 模型是来自 OpenAI 的早期 Codex 模型。他们有点像扔过墙一样。就垂直应用程序而言,法律科技绝对是一个人们正在赚取大量金钱的领域。编码是一个人们正在赚取大量金钱的领域。我们看到的另一个领域是教育科技。

因此,我们有很多公司正在为教师或学生或 AI 辅导员构建工具。我们在那里的一个客户是 Macmillan,他们正在构建一个 AI 辅导员,但 Duolingo 则用于某种语言学习。喜欢 Duolingo。以及许多其他公司。没有帮助。如果您曾经尝试过,您认为自己达到了 7 级或 10 级,然后您去了那个国家,您会说,

Yo hablo espanol。Tu hablas espanol。但我认为随着改进的 AI 工具,这种情况会好得多,对吧?我希望如此。你实际上可以练习对话。没错。因为我需要学习德语。我在德国住了太久,却不会说德语。但是你不会说德语?是的,没错。我一直以为因为你在德国,所以你是德国人。我是德国人。不,我一点也不像德国人。而且现在开始显现出来了。现在我女儿六岁了,她德语说得非常好。

所以我错过了很多对话,因为她会用德语和我妻子说话。所以 Duolingo,我将再次开始使用它,看看是否……看看你是否能说一口流利的德语。因为 HumanLoop,我会说,Raza,你救了我。现在你是让我说德语的原因。我不知道我们能否承担太多功劳。我认为这些公司的优秀员工正在努力工作。我们有望促进这一进程。所以是的,我认为这是三个具体的例子。我可能还能从……

我认为这些应用程序可能比最先进技术的上一代应用程序落后了一代,因为人们使用大型语言模型构建的事物在复杂性方面有所发展。从一开始,每个人都在构建这些写作助手。一开始真正有吸引力的事情只有营销自动化。Copy AI。Copy AI、Jarvis。那是唯一一个。他们筹集了资金。

有很多钱。我不知道此后他们发生了什么。当 ChatGPT 推出时,人们就像,哦,我们不再需要 Copy AI 了。但有趣的是,一些公司设法不断重塑自己。我认为 Rider 发展得非常好。他们一开始的方式非常相似。但他们与众不同之处在于,他们始终专注于私有模型,而不是在大型公共大型语言模型之上进行构建。

所以他们似乎发展得很好。但是是的,您有抄写。然后我认为您开始获得诸如 rag 系统之类的系统,并且人们意识到,嘿,我们实际上可以将其用于客户支持或以各种方式进行事实性问题解答。

我们现在才看到更多代理应用程序真正得到部署。我认为代理的第一个版本仍然非常拟物化,我将使用代理去做我过去用人做的事情。但我们开始看到一些客户构建的东西更进一步,并且正在想象在大型语言模型之前不可能实现的事情。哦,有趣。

所以它们仍然是代理应用程序,但它们不是,我将去替换一个人。它们是,我将去做以前无法做到的事情。一个具体的例子是我们的一个客户,一家名为 Windmill 的公司。你知道,他们解决的问题是大型公司的绩效管理很糟糕。您会收到客户的评论,例如,您不会收到客户的评论,您会在一个周期中收到来自您的经理的反馈,例如每六个月一次。经理并不真正了解发生了什么。这不是一个很好的体验,但是

但是,如果您有一支大型语言模型代理大军,他们就可以出去并随时与您公司中的每个人交谈。他们可以主动向他们提问。他们知道谁是同事。然后他们可以将这些信息汇总起来并双向共享。经理们可以更好地了解现场情况。此外,您还可以从您的同事和经理那里获得实时或持续的反馈,了解您做得如何,这些反馈由这些大型语言模型有效地进行调解……

与每个人交谈。它还处于早期阶段,但这正是一个我认为不可能实现的应用程序的例子。在大型语言模型之前,您无法想象这样做。所以我对人们将代理推向这个方向感到非常兴奋。这是一个有趣的线索,因为您可以转向

现在我们有能力与人们大规模交谈,我们能做什么?是的,绝对的。我想象他们正在与各种各样的人交谈……

也许您会接听电话,并且有一个语音代理。我认为在这种情况下它在 Slack 中,但您可以想象它是一个语音代理。它只会向您发送一条带有几个问题的 Slack 消息。或者它会说,嘿,我们与最密切与您合作的同事进行了交谈,他们认为您做得很好,但这是您做得好的地方。但是我们有一个主题出现在四个不同的人身上,您可能需要改进。这在以前是不可能的。是的。

可怕地接受反馈。所以我根本不喜欢这个工具。是的,我认为我认为您可以想象,更亲人类、更亲社会和更不亲社会的版本。我认为这实际上是一种非常有效的方法,只是真正试图帮助人们更好地沟通。是的,它让我想起了播客朋友 Fausto 的一个想法。他说,你知道,当每个人加入社区时,他们会与一个

化身会向您提问,为什么您要加入这个社区?什么对您来说很有趣?您是在找工作吗?您只是想了解更多信息吗?您是在寻找该领域的其他人吗?因为我们有点知道

人们加入社区时会落入的类别,其中一个是这七件事之一,因此在某种程度上,您不能只在他们注册时使用某种表格来做到这一点,因为人们不会填写表格,这就是问题所在,十分之九的人只是说,是的,去死吧,我不会花五分钟来填写这个表格,即使他们填写了,我们知道了更多信息,我们知道了哇

十分之五加入的人正在寻找该领域的其他人。我们有一个计划,我们让社区中的人们进行一对一的匹配计划。因此,我们可以向他们建议这一点,并确保他们知道我们有这个计划。但是如果您从未获得数据,您就不知道。因此我可以建议它,但也许十分之五次会失败。是的,我认为其中一件事

有趣的是,您可以使用这项技术来做一些您无法仅通过表格就能做到的事情,那就是提出后续问题。并根据情况提出后续问题,您知道,自适应表单。我认为这在以前是不可能的。

因此,它再次回到了能够以更深入的方式与人们大规模交谈。是的。但是构建这些系统,增加了如此多的复杂性,对吧?因此,Windmill 的 PM 正在迭代。在这个阶段,他们可能有数十个甚至更多提示,例如这些提示的数百个版本。每个都需要进行基准测试。

这是一个复杂的系统,能够将迭代提示与将其包含在代码库中(它们可能散布在各处)区分开来是一个很大的优势。我确实欣赏这一点

您将其从代码库中提取出来,因此您不会遍历一行一行的代码,或者只是搜索那个提示。您希望非常清楚地了解您正在向模型发送什么上下文。这也是我对许多大型语言模型框架(例如代理框架等)的抱怨之一。

我不会提及任何具体的名称,但如果他们正在使用它们,人们就会知道。他们都在某种程度上这样做。许多人已经在互联网上谈论过这个问题。但通常情况下,他们会在框架中硬编码提示。因此,作为最终用户,您不清楚我究竟向模型发送了什么。

提示工程和使用大型语言模型进行构建并不复杂。您真正需要理解的是,模型接收了什么上下文,以便您可以判断模型是否有可能回答或完成任务。

然后我需要更改哪些内容或向其提供更多信息,以便它能够调整语气或更接近可靠性,例如我可能没有想到的极端情况,就像与同事沟通一样。但是,如果模型还被告知了很多隐藏的东西。所有这些随机的身体语言。因此,我认为让用户非常容易地看到模型将接收什么上下文(即跟踪和可观察性),以及将提示分离和集中化非常重要。

这样您就不会将它们散布在代码库中。您多久看到人们在提示中使用变量一次?哦,就像一直一样。这现在是一种常见的模式,对吧?是的,所以我们谈论提示模板。当我们在 HumanLoop 中谈论提示时,我们实际上指的是模型的选择、超参数,然后是提示模板,该模板将在生产环境中包含来自用户反馈的变量,或者将从检索系统等中填充。

所以您有一个带有间隙的模板。人们可能使用类似胡子的句柄或 Jinja 模板化或类似的东西来指定提示模板。因为它提到了我们之前讨论过的推荐系统中的另一部分。

因此,这里的上下文是我们说,在大型语言模型之前使用非常主观的用例进行构建的最接近的类比可能是推荐系统。许多机器学习都有正确的答案,但推荐系统没有。例如,推荐什么电影或服装?没有一个正确的答案。在这方面,它与构建大型语言模型系统非常类似,因为什么是好的是主观的。

然后你说,好吧,现在我想去看电影,我会……我现在 100% 会去 ChatGPT。是的。我认为你是个例外。我可能是。我们会询问聊天,我们会看看人们怎么说。听众可以让我们知道。

但是如果您没有这样做,您应该这样做。所以让我快速地进行我的宣传,那就是,如果您是这些大型语言模型系统(ChatGPT、Claude 等)的重度用户,它正在学习很多关于您的信息。它现在通过记忆了解很多关于您的偏好的信息。您可以向它描述您想要的东西,这对于传统的 Rexxas 系统来说很难做到,它只是说,您与其他人有多相似?

所以,你知道,你可以做一些奇怪的事情。你可以说,嘿,我心情不好,想看一部有点黑暗的政治惊悚片。以盖伊·里奇的风格。是的,以盖伊·里奇的风格。我最近看了一部我非常喜欢的电影,我想,我心情不好,想看一些类似的东西。还有什么像这样的东西?或者我真的很喜欢克里斯托弗·诺兰的电影。例如,还有哪些导演也玩弄时间旅行的主题等等?你无法从 Rexus 系统中获得这些信息。不。是的,我在想,哦,

这是我最近真正喜欢的最后五部电影。你也可以这样做。再给我五部,或者至少给我两部,因为我现在可能不会看全部五部。是的,我认为这不是对传统 Rexus 的替代。但看到这一点很有趣,你知道,你可以做一些以描述或文本等为条件的嵌入。所以我认为这两个世界会有点碰撞。

我认为你是个例外,因为这需要认知负荷。即使对你来说,你坐在那里,你就像,不,这真的很酷,因为我可以非常有创意,你可以得到比仅仅在 Netflix 上滚动浏览水平条更好的推荐。但后来我看着它,我说,是的,但是,伙计,

点击比试图表达电影要容易得多,我认为这归根结底是,如果我去 Netflix 并滚动浏览一段时间,它已经知道我已经看过什么了,并且它已经给我带来了不同的电影,那么它

更容易说,是的,好吧,这看起来不错。但是,我认为我也不是那样的人,因为我通常会从 TikTok 上的人那里获得我的电影推荐。好的,有趣。我会在 TikTok 上看到不同的人分解,例如,这是前十名,这些电影,这个插入你最喜欢的电影类型。但大多数情况下,

您只需点击或滚动的推荐系统。如果我们要使用推荐系统,那么 TikTok 拥有最好的推荐系统,对吧?因此,如果您将其推断出来,也许对于电影来说是这样。但如果是像 TikTok 这样的社交网络,我心情不好,想看一些有趣的东西。它必须与猫和这个那个有关。而且

要获得一些东西,您只需获得这些信号并滚动,这将需要付出更多努力。是的,我认为这可能是真的。这不是我认真思考过的事情,尽管我想到的一件事是,与……

推荐系统的一个难题是,您经常处于小型数据体制中,对吧?例如,新用户加入,您对他们的了解很少。能够从对该人的描述或查找有关他们的某些信息开始,然后使用它来查找哪些人与他们相似,这可能是一种克服这些冷启动的非常有趣的方法。

这是一种很酷的插入方式。但我个人不是专家,所以我不会有太强的意见。说到你擅长的领域,当你展望未来……

你接下来会做什么?实际上有两件事。其中一件我们将在未来一两周内推出,因此当这个播客发布时,它至少将处于测试阶段,并被人们使用。其中一件是我们试图为正在原型设计和构建代理的人们提供更好的支持。

代理评估也比评估更简单的系统要困难得多。因为涉及的步骤吗?是的,因为代理可以执行的许多事情存在分支树。因此,对代理可能执行的操作进行良好的覆盖是困难的。此外,通常为了评估代理甚至运行代理,它们会与用户或其他系统交互。您必须能够将这些系统作为评估的一部分进行模拟。

因此,如果有一个用户正在作为代理的一部分提出问题——如果代理的工具之一是从用户那里获取信息,那么为了运行良好的评估,您需要能够模拟用户。或者,如果它正在调用第三方 API,则需要将该集成到您的评估系统中。因此,评估代理更复杂。因此,我们正在推出一个新的代理构建器,以及围绕如何评估复杂的代理的更好的工具。所以今天有——

我认为 HumanLoop 中对此有不错的支持,但这只会简化 DX 和 UX,我认为在那里会非常强大。然后,我非常兴奋的是自动优化。我们正在尝试为其想出一个更好的名称,所以也许您可以帮助我命名。我们还没有发布它。但前提是,人们今天在 HumanLoop 中花费大量时间来调整提示、调整工具定义、迭代这些不同的组件。

实际上,我们现在已经对让 AI 系统为您完成许多此类迭代进行了大量的原型研究。因为我们可以访问您的评估分数和数据集,所以我们可以运行它。因此,一旦您基本上设置了数据集和评估,

我们可以让 AI 建议更改提示、更新系统部分、重新运行评估、查看评估报告,然后像人类数据科学家一样,考虑一下,哦,失败的原因是什么,进行调整并重新运行,直到分数提高到一定程度。这比今天的工作效果更好……

我们已经针对 DSPY 进行了基准测试。我们已经针对……我本来想说,它有点 DSPY 的感觉。它有一种 DSPY 的感觉。但是,首先,我们正在查看整个管道,而不仅仅是提示或那些部分。因为他们确实进行了自动提示优化,但你说,好吧,如果需要更换模型怎么办?是的。

因此,让我们在这里测试五个不同的模型,看看这是否能给我们带来额外的提升。是的,让它正常工作需要相当多的复杂性。然后我们已经针对我们在学术文献中可以找到的最好的东西进行了基准测试……

我们目前的表现优于它们。我们实际上将很快与一小部分早期客户一起运行测试版,然后我希望在几个月或几个月后将其发布到 GA。我们的顶级用户每周花费 10 个小时或类似的时间进行此迭代。我认为我们可能可以自动化所有这些。哇。全部?很大一部分。所以基本上就像

您将采用更声明式的工作方式。只需说,给我你的评估,我会给你你需要的东西。给我你的评估,以及该系统工作的第一个版本,准确率为 80% 或其他什么。以及您为从那里获得准确率超过 90% 的系统所做的许多迭代,Filevine 的 Brianna 团队与昂贵的律师一起在 HumanLoop 中花费的所有这些时间。我们可以做一个……

一个非常好的初步尝试,或者至少自动化其中很大一部分。因此,这两件事是我们最兴奋的新事物。- 律师很贵,工程师很贵,PM 也不便宜。- 特别是优秀的,尤其是在 AI 领域。- 如果你在想,嘿,现在这 10 个小时,

为律师打开更多评估的可能性——或者做任何其他事情——律师的工作,无论律师做什么。——是的,我认为这将是相当具有变革性的。我认为我们必须首先建立基础。你实际上不能,就像今天有人不能出现然后说,“嘿,我们想为AI产品构建优化系统。”

因为他们首先要做的是,他们会说,好吧,我们需要的是能够构建评估并在数据集上运行它们,并将它们放入优化的闭环中。我的意思是,人们正在这样做。因此,Anthropic围绕提示改进有一些实验性API。因此,如果您进入Anthropic控制台或其API,他们会获取提示并使用云的最佳实践为您重写该提示。

但它不会告诉你任何关于它有多好……它对你的用例有改进吗?我认为将这个评估套件与自动优化相结合,使我们在该领域的任何其他构建者中具有独特的优势。这听起来有点神奇。所以我希望在您发布它时看到它,然后来向我们展示,因为……

我很乐意回来。我的意思是,我们将尝试做的事情,我们首先与少量客户一起启动测试版的原因正是如此,我们知道会存在怀疑,因为承诺太大了。因此,我们想做的是,我们想用具体的案例研究来启动它,以帮助人们克服最初的怀疑。但我知道从在我们的研究工作中使用它,并对人们试图做什么有很好的直觉,我对这将奏效非常有信心。

那么,无论是创建更精细的提示,还是拥有更多可以从中提取的提示,或者拥有更多评估数据点,这是否会提高成功率,还是无论如何?给我们一个基线,我们将使用合成数据、我们获得的一些评估来补充它,我们甚至不需要你在身边。

最终用户的品味是我们永远无法取代的。他们表达了他们的愿望。你说过以两种方式转向声明式方法。在评估的定义中,以及他们给我们的反馈中。因此,我们可以做的一件事与今天的团队向领域专家寻求反馈的方式大致相同,即对这些输出进行评分。

这是我们可以要求的。然后,已经存在的自动评估也会指导它。所以我们不能——没有免费的午餐。如果没有你的输入,我们不可能神奇地构建比你更好的系统。

但我们正在改变的是,正如你所说,我们只需要你声明性地表达你想要的东西,通过对反馈的决策来表达。所以,是的,这个,不是那个,偏好数据。评估的定义,因此良好外观的最低标准。以及我们可以从中推断出你的目标的系统的第一个版本。然后,我们可以运行。所以当你告诉人们关于Human Loop时,

你如何描述它?所以我们将Human Loop 描述为企业的LLM评估平台。我们专注于评估,因为这往往是最基础的部分。它不是Human Loop的唯一部分,对吧?我们真的试图为你提供所有你需要做的提示管理、可观察性、评估,以获得可靠的AI系统。我认为我们很快就会成为评估方面的行业标准。

所以这是我们首先要做的,因为我宁愿,你知道,100%清晰和80%准确。