Databricks 上生成式人工智能的实用 MLflow 指南 (Chinese Edition)
by Nuwan Ganganath, Julie Nguyen, Chang Shi Lim
前言
本作品已使用人工智能进行翻译。欢迎您提供反馈和意见:translation-feedback@oreilly.com
构建一个令人印象深刻的人工智能原型其实非常容易。你可以选用一个基础模型,添加一个prompt,或许再加入检索功能,就能得到一个回答方式看似像人的系统。演示成功了。利益相关者们露出了笑容。有人问道:“我们可以发布这个了吗?”
随后,现实便扑面而来。
我们撰写本书正是为了弥合这一差距。在生产环境中,生成式AI应用的优劣取决于其平均用户体验、最严重的故障,以及长期运行所产生的运维负担。用户会提出模糊的问题、混合多种意图,甚至遗漏关键细节。即便在应该放慢节奏并寻求澄清的情况下,应用仍会自信地给出回应。 检索有时会返回无关的上下文,甚至完全没有上下文。代理工具会超时。策略会发生变化。prompt的微调虽然修复了一个问题,却悄无声息地引发了另一个问题。模型升级虽然提高了流畅度,却增加了成本和延迟。在测试中看似没问题的安全规则,在新流量模式下却会失效。而且当出现问题时,系统中究竟哪里出了差错,往往难以察觉。
我们的目标是帮助您从“我们构建了能正常运行的东西”转变为“我们运行着值得信赖的东西”。信任源于证据。证据则源于一个严谨的生命周期,在这个周期中,您可以无需猜测就能回答基本问题:
-
对于每个请求,生成式 AI 应用在每个步骤中具体执行了什么操作?
-
两个版本之间发生了哪些变化,质量为何出现波动?
-
在您的领域中,“优质”意味着什么,又该如何一致地衡量它?
-
如何安全地推广变更并快速回滚?
-
如何监控实际使用情况,以捕捉质量而非仅仅是正常运行时间?
MLflow 是我们解决这些问题的核心支柱。它不仅仅是一个实验追踪器或模型存储库。在生成式 AI 工作流中,MLflow 成为一个记录系统,将您构建的内容、运行的内容、观察到的内容以及做出的决策联系起来。当 prompt、跟踪记录、评估结果、反馈和部署工件都通过相同的溯源链相互关联时,您就可以不再争论截图,而是开始基于证据做出决策。
Databricks 提供了一个环境,使这种规范能够在大规模场景中切实落地。在这里,您的数据、prompt、模型、治理和部署可以共存,并具备清晰的访问控制和可审计性。 Unity Catalog 为您提供了受管控的命名空间和资产生命周期管理。Databricks Model Serving 和 Databricks Apps 为应用程序的部署和运行提供了统一的操作界面。Lakeflow Jobs 则为您提供了自动化能力。一个生产级生成式人工智能(GenAI)应用程序需要一个将生命周期管理内置其中、而非事后附加的平台。
本书刻意侧重实践。我们聚焦于您可以立即采用的模式:
-
将prompt作为第一类资产进行版本管理
-
追踪执行路径,助您自信地进行调试
-
构建能反映实际使用情况的评估数据集
-
定义评估评分器,将自由格式文本转化为可量化的信号
-
通过受控的推广路径进行部署
-
使用您在离线环境中信赖的相同指标监控在线生产质量
通过整合所有这些组件,您将学会如何将生成式人工智能(GenAI)应用程序作为一个系统来构建和运维。
在此过程中,我们将使用一个贯穿全书的实例:为一家名为 Unity Airways 的虚构航空公司开发的客户服务助手。我们选择这个场景是有原因的。它迫使您应对大多数真实生成式人工智能应用所面临的混合场景:非结构化的策略文档、结构化的预订记录、涉及多种意图的用户请求,以及在模糊情况下安全运行的需求。该示例将随着章节的推进而逐步演进。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access