GenAI 应用是一个应用程序,它使用生成 AI 模型(例如大型语言模型、图像生成模型和文本转语音模型)创建新输出、自动执行复杂任务或基于用户输入进行智能交互。
GenAI 应用可以由对 LLM 或其他 GenAI 模型或复杂 AI 代理的简单调用提供支持。 详细了解 复杂性级别。
可以使用专有数据自定义 GenAI 应用的代理、工具、评估、模型和其他方面。 这种数据驱动的自定义推动了数据智能的发展,使您能够超越现成 AI 模型提供的一般智能。
GenAI 应用程序
面向用户的 GenAI 应用程序可以采用多种形式,例如:
- 聊天应用,例如使用 Databricks Apps 部署的聊天应用
- API 终结点,例如 部署到模型服务的代理
- 面向分析师的 SQL 函数,例如 AI 函数
使用 GenAI 应用程序通常需要两组技能:应用程序开发和 AI 评估。 GenAI 应用开发非常类似于开发非 AI 应用程序,需要依赖于应用程序类型的软件技能。 但是,对 GenAI 应用程序的评估需要专门的工具和技术来处理 GenAI 的复杂性和开放式响应。
若要了解如何在 Azure Databricks 上构建行业特定的 GenAI 应用,请参阅:
- Databricks 行业解决方案 用于用例、客户和其他资源
- Databricks 解决方案加速器,比如可以运行和修改的用例实现
GenAI 评估
GenAI 模型、代理和应用程序通常具有复杂的开放式行为。 用户可以输入任何查询。 允许 AI 代理在执行期间收集文本、图像等。 输出可以是任意文本、图像或其他媒体,并且有许多“好的”答案。
这些复杂性使得评估 GenAI 具有挑战性。 适当的评估需要:
- 利用 AI 对 AI 进行评估的自动化
- 专家和用户的人工反馈,收集地面真相并校准自动评估
- 深入探讨复杂的代理以了解和调试行为
Azure Databricks 托管的 MLflow 和相关工具为 GenAI 评估提供了基础:
- 评估和监视 AI 代理 - 了解评估、生产监视和人工反馈。
- 入门:适用于 GenAI 的 MLflow 3 - 尝试跟踪、评估和收集人工反馈。
- MLflow 跟踪 - GenAI 可观测性 - 了解 MLflow 跟踪以记录和分析代理行为。
Agents
代理或代理系统是一个 AI 驱动的系统,可以自主感知、决定并在环境中采取行动以实现目标。 与仅在出现提示时生成输出的独立 GenAI 模型不同,代理系统拥有一定程度的 代理。 新式 AI 代理使用 GenAI 模型作为系统“大脑”,即:
- 接收来自其他代理的用户请求或消息。
- 有关如何进行的理由:要提取哪些数据、要应用的逻辑、要调用的工具,或者是否需要从用户请求更多输入。
- 执行计划,并可能调用多个工具或委托给子代理。
- 返回答案或提示用户进行其他说明。
通过连接 常规智能(GenAI 模型的预先训练功能)和 数据智能(特定于业务的专业知识和 API),代理系统可为复杂的操作任务启用高影响力的企业应用场景,例如高级客户服务流、数据密集型分析机器人和多代理协调。
从简单的 GenAI 模型到复杂代理都有一个连续性。 若要了解详细信息,请参阅 代理系统设计模式。
Azure Databricks 提供了一系列用于生成代理的选项,从完全引导到完全自定义:
- Agent Bricks 为关键应用程序(如知识助手和信息提取)提供引导式代理生成器。
- AI Playground 提供用于创建调用工具代理的用户界面,您可以从中导出生成的代理代码。
- 使用代理框架 ,可以使用自定义代码或第三方代理创作库来生成和部署代理。
工具
AI 代理可以调用工具来收集信息或执行作。 工具是 LLM 可以调用的单个交互函数,用于完成定义完善的任务。 AI 模型通常为每个工具调用生成参数,该工具提供简单的输入输出交互。
常见工具类别包括:
-
检索或分析数据的工具
- 语义检索:查询矢量索引以查找相关文本或其他非结构化数据。
- 结构化检索:运行 SQL 查询或使用 API 检索结构化信息。
- Web 搜索工具:搜索 Internet 或内部 Web 库。
- 经典 ML 模型:调用机器学习模型来执行分类、回归或其他预测。
- GenAI 模型:生成专用输出,例如代码或图像。
-
修改外部系统状态的工具
- API 调用:调用 CRM 终结点、内部服务或其他第三方集成。
- 电子邮件或消息应用集成:发布消息或发送通知。
-
运行逻辑或执行特定任务的工具
- 代码执行:在沙盒中运行用户提供的或 LLM 生成的代码。
工具可以内置到代理逻辑中,也可以使用 MCP 等标准化接口进行访问。
工具与代理:
- 工具执行单个明确的操作。 代理可以执行更多开放式任务。
- 工具通常是无状态的,并且除了每次调用外,不会保持持续的上下文。 代理在迭代地解决任务时保持其状态。
工具错误处理和安全:
由于每个工具调用都是外部作,例如 API 调用,因此系统应正常处理故障。 超时、格式不正确的响应或无效输入不应导致代理本身完全失败。 在生产环境中,限制允许的工具调用次数,如果工具调用失败,请进行回退响应措施,并应用保护措施以确保代理系统不会重复尝试相同的失败的操作。
详细了解 Databricks 中的 AI 工具:
- AI 代理工具 - 工具方法指南
- Databricks 上的模型上下文协议 (MCP) - 托管、自定义和外部 MCP 服务器
GenAI 模型和 LLM
大型语言模型(LLM)是在大规模文本数据集上训练的 AI 模型,可以理解、生成和推理人类语言。 LLM 通过根据输入提示预测和生成上下文相关的文本,为聊天机器人、代码助手和内容生成工具等应用程序提供支持。
更通常,GenAI 模型或基础模型是在大规模文本、图像、视频、音频或其他数据上训练的,以便了解文本以外的模式。 多模式模型学习将人类语言与图像、音频和其他媒体连接在一起。 LLM 是一种 GenAI 或基础模型,但这些术语通常被松散地和互换使用。
GenAI 模型提供 GenAI 代理和应用背后的智能。 简单应用通常使用通过提示工程自定义的单个模型生成。
了解如何在 Azure Databricks 上使用 GenAI 模型:
提示工程
GenAI 模型通常采用提示,或说明告知模型如何处理用户输入。 可以使用详细步骤、专家知识、数据和其他信息对提示进行大量自定义。
Azure Databricks 提供了灵活的方法来进行提示工程。 例如:
- Agent Bricks 会根据数据和反馈自动化你的提示工程。
- AI Playground 提供用于手动交互式提示工程的 UI。
- MLflow 提示优化 和 DSPy 提供数据驱动的提示优化例程。
微调模型
GenAI模型还可以通过微调自定义,使用自定义数据对模型进行特定领域或应用的调优。
Azure Databricks 提供灵活的方法来微调模型。 例如:
- Agent Bricks 自动执行数据驱动的自定义,并有在后台进行微调的可能性。
- 无服务器 GPU 计算 提供计算基础结构,用于完全自定义的微调。 请参阅示例。
什么是 GenAI 平台?
GenAI 需要组合的数据 + AI 平台。 对于开发人员和管理员,GenAI 的关键组件必须在简单的统一平台中进行连接和管理。
关键组件包括:
- AI 资产,例如模型、代理和应用
- 数据资产,如文件、表、处理管道、矢量索引和功能存储
- AI 部署,例如模型和代理的端点
- 用于生成和部署 AI 和数据资产的工具
关键治理功能包括:
- 统一治理 AI 和数据资产。 有关详细信息,请查看什么是 Unity 目录?
- GenAI 模型终结点的统一治理。 在 马赛克 AI 网关简介中了解详细信息。
- 统一的安全方法。 在 Databricks AI 安全性中了解详细信息。
- 统一管理 AI 和数据工具。 在 管理中了解详细信息。
另请参阅 Mosaic AI 功能 以适用于 GenAI 和 Databricks 体系结构。
了解详细信息
- 生成 GenAI 应用的主要挑战 - GenAI 中的主要挑战 ,以及使用 Databricks 的解决方案
- 代理系统设计模式 - 简单到复杂的 GenAI 代理,以及实用建议
- Databricks 上的 AI - Databricks 上的 AI 用例、客户案例和其他资源