Azure Databricks 中的模型服务
本文介绍 Mosaic AI 模型服务,包括其优点和限制。
什么是马赛克 AI 模型服务?
马赛克 AI 模型服务提供统一的接口,用于部署、治理和查询 AI 模型进行实时和批量推理。 你提供的每个模型都可用作 REST API,可以集成到 Web 或客户端应用程序中。
模型服务提供高度可用的低延迟服务来部署模型。 该服务会自动纵向扩展或纵向缩减以满足需求变化,节省基础结构成本,同时优化延迟性能。 此功能使用无服务器计算。 有关更多详细信息,请参阅模型服务定价页。
模型服务支持服务:
- 自定义模型。 这些是打包为 MLflow 格式的 Python 模型。 可以在 Unity 目录或工作区模型注册表中注册它们。 示例包括 scikit-learn、XGBoost、PyTorch 和 Hugging Face 转换器模型。
- 代理服务作为自定义模型受支持。 请参阅为生成式 AI 应用程序部署代理
- 由基础模型 API 提供的最先进的开放模型。 这些模型是支持优化推理的特选基础模型体系结构。 基本模型(如 Meta-Llama-3.1-70B-Instruct、GTE-Large 和 Mistral-7B)可用于立即用于按令牌付费定价,以及需要性能保证和微调的模型变体的工作负载可以使用预配的吞吐量进行部署。
- Databricks 建议将模型服务用于
ai_query
批处理推理。 对于快速试验,ai_query
可与按令牌付费终结点一起使用。 准备好对大型数据或生产数据运行批处理推理时,Databricks 建议使用预配的吞吐量终结点来提高性能。 有关如何创建预配的吞吐量终结点,请参阅 预配吞吐量基础模型 API 。- 请参阅使用 ai_query 执行批处理推理。
- 若要开始使用 Unity 目录表上的 LLM 进行批量推理,请参阅使用基础模型 API 预配吞吐量的 Batch 推理中的笔记本示例。
- Databricks 建议将模型服务用于
- 外部模型。 这些是在 Databricks 外部托管的生成式 AI 模型。 示例包括 OpenAI 的 GPT-4、Anthropic 的 Claude 等模型。 可以集中管理为外部模型提供服务的终结点,客户可以为其建立速率限制和访问控制。
注意
可以使用 AI 操场与受支持的大语言模型进行交互。 AI 操场是一种类似聊天的环境,可在其中测试、提示和比较 LLM。 此功能在 Azure Databricks 工作区中可用。
模型服务为 CRUD 和查询任务提供了统一的 REST API 和 MLflow 部署 API。 此外,它还提供单个 UI 来管理所有模型及其各自的服务终结点。 你还可以使用 AI 函数直接通过 SQL 来访问模型,以便轻松集成到分析工作流中。
有关如何在 Azure Databricks 上提供自定义模型的介绍性教程,请参阅教程:部署和查询自定义模型。
有关如何在 Databricks 上查询基础模型的入门教程,请参阅开始在 Databricks 上查询 LLM。
为什么使用模型服务?
- 部署和查询任何模型:模型服务提供统一接口,以便你管理一个位置中的所有模型,并使用单个 API 对其进行查询,无论它们是托管在 Databricks 上还是外部。 此方法简化了跨各种云和提供商在生产环境中试验、自定义和部署模型的过程。
- 使用专用数据安全地自定义模型:模型服务基于 Data Intelligence 平台构建,通过与 Databricks 功能存储和 Mosaic AI 矢量搜索的本机集成简化了功能集成和嵌入模型。 为了提高准确性和上下文理解,可以使用专有数据对模型进行微调,并在模型服务上毫不费力地部署模型。
- 治理和监视模型:可以通过服务 UI 在一个位置集中管理所有模型终结点,包括外部托管的终结点。 你可以管理权限,跟踪和设置使用限制,以及监视所有类型的模型的质量。 这使你能够民主化对你的组织中的 SaaS 和开放 LLM 的访问,同时确保实施适当的防护措施。
- 通过优化的推理和快速缩放来降低成本:Databricks 实现了一系列优化,以确保为大型模型获得最佳吞吐量和延迟。 该终结点会自动纵向扩展或纵向缩减以满足需求变化,节省基础结构成本,同时优化延迟性能。 监视模型提供成本。
注意
对于延迟敏感或涉及每秒大量查询的工作负荷,Databricks 建议对提供终结点的自定义模型使用 路由优化 。 联系 Databricks 帐户团队,确保为工作区启用高可伸缩性。
- 为模型服务带来可靠性和安全性:模型服务专为高可用性、低延迟的生产使用而设计,每秒可支持超过 25K 个查询,开销延迟小于 50 毫秒。 服务工作负荷受多层安全保护,确保为最敏感的任务提供安全可靠的环境。
注意
由于生产部署存在不稳定的风险,模型服务不提供现有模型映像的安全修补程序。 从新模型版本创建的新模型映像将包含最新的修补程序。 有关详细信息,请联系 Databricks 帐户团队。
要求
- Unity 目录或工作区模型注册表中的已注册模型。
- 对已注册模型的权限如服务终结点 ACL 中所述。
- MLflow 1.29 或更高版本。
- 如果使用Azure 专用链接来遵守工作区上配置的与网络相关的入口规则,Azure 专用链接仅支持使用预配吞吐量的终结点或提供自定义模型的终结点的模型服务终结点。 请参阅从无服务器计算配置专用连接。
为工作区启用模型服务
无需执行其他步骤即可在工作区中启用模型服务。
限制和地区可用性
Mosaic AI 模型服务施加了默认限制,以确保可靠的性能。 请参阅模型服务限制和区域。 如需对这些限制或不受支持区域中的端点进行反馈,请联系 Databricks 帐户团队。
模型服务中的数据保护
Databricks 非常重视数据安全。 Databricks 了解你使用 Mosaic AI 模型服务进行分析的数据的重要性,并实施以下安全控制来保护你的数据。
- 客户对模型服务发出的每个请求都经过逻辑隔离、身份验证和授权。
- Mosaic AI 模型服务会加密所有静态数据 (AES-256) 和传输中数据 (TLS 1.2+)。
对于所有付费帐户,Mosaic AI 模型服务不会使用提交给服务的用户输入或服务的输出来训练任何模型或改进任何 Databrickss 服务。
对于 Databricks 基础模型 API,在提供服务的过程中,Databricks 可能会暂时处理和存储输入和输出,以防止、检测和缓解滥用或有害使用。 你的输入和输出与其他客户的输入和输出相隔离,在与你的工作区相同的区域中存储最多三十 (30) 天,并且只能用于检测和响应安全或滥用问题。 基础模型 API 是 Databricks 指定服务,这意味着它遵循 Databricks Geos 实现的数据驻留边界。