第10章 人工智能工程架构与用户反馈
本作品已使用人工智能进行翻译。欢迎您提供反馈和意见:translation-feedback@oreilly.com
到目前为止,本书已经介绍了大量使基础模型适应特定应用的技术。本章将讨论如何将这些技术结合起来,打造成功的产品。
鉴于现有的人工智能工程技术和工具种类繁多,选择合适的技术和工具可能会让人不知所措。为了简化这一过程,本章将采取循序渐进的方法。它从基础模型应用的最简单架构开始,强调该架构所面临的挑战,并逐步添加组件来应对这些挑战。
我们可以花很长时间推理如何构建一个成功的应用程序,但要想知道一个应用程序是否真正实现了目标,唯一的办法就是将其交付给用户。用户反馈一直是指导产品开发的无价之宝,但对于人工智能应用来说,用户反馈作为改进模型的数据源,其作用更为关键。对话式界面让用户更容易提供反馈,但却增加了开发人员提取信号的难度。本章将讨论不同类型的对话式人工智能反馈,以及如何设计一个系统,在不损害用户体验的情况下收集正确的反馈。
人工智能工程架构
一个成熟的人工智能架构可能很复杂。本节将介绍一个团队在生产中可能遵循的流程,从最简单的架构开始,逐步添加更多组件。尽管人工智能应用多种多样,但它们有许多共同的组件。此处提出的架构已在多家公司得到验证,适用于各种应用,但某些应用可能会有偏差。
在最简单的形式中,您的应用程序接收一个查询并将其发送给模型。如图 10-1 所示,模型会生成一个响应,并返回给用户。没有上下文增强、没有防护栏,也没有优化。模型 API框既指第三方 API(如 OpenAI、Google、Anthropic),也指自托管模型。第 9 章将讨论为自托管模型构建推理服务器。
图 10-1. 运行人工智能应用的最简单架构。
从这个简单的架构出发,您可以根据需要添加更多组件。具体过程如下:
-
通过让模型访问外部数据源和信息收集工具,增强模型的上下文输入。
-
设置防护栏,保护系统和用户。
-
添加模型路由器和网关,以支持复杂的管道并增加安全性。
-
通过缓存优化延迟和成本。
-
添加复杂的逻辑和编写操作,最大限度地发挥系统的功能。
本章按照我在生产中常见的流程进行。但是,每个人的需求都不尽相同。您应该遵循对您的应用程序最合理的顺序。
监控和可观察性对于任何应用程序的质量控制和性能改进都是不可或缺的,将在本流程的最后进行讨论。之后将讨论将所有这些组件串联起来的 "协调"(Orchestration)。
步骤 1.增强内涵
平台的初始扩展通常包括添加一些机制,使系统能够构建模型回答每个查询所需的相关上下文。如第 6 章所述,可以通过各种检索机制构建上下文,包括文本检索、图像检索和表格数据检索。还可以使用一些工具对上下文进行扩充,这些工具允许模型通过网络搜索、新闻、天气、事件等 API 自动收集信息。
上下文构建就像基础模型的特征工程。它为模型提供产生输出所需的信息。由于上下文构建在系统输出质量中的核心作用,模型 API 提供商几乎普遍支持上下文构建。例如,OpenAI、Claude 和 Gemini 等提供商允许用户上传文件,并允许其模型使用工具。
然而,就像模型的能力各不相同一样,这些提供商对上下文构建的支持也各不相同。例如,它们可能会限制上传的文件类型和数量。专门的 RAG 解决方案可能会让您上传向量数据库所能容纳的尽可能多的文档,但通用模型 ...
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