使用 ai_query()
查询服务模型
重要
此功能目前以公共预览版提供。
本文介绍如何使用 ai_query()
从 SQL 查询模型服务终结点。
ai_query()
是什么?
ai_query()
函数是一个内置的 Azure Databricks SQL 函数,是 AI 函数的一部分。 它支持从 SQL 查询访问以下类型的模型:
- 由模型服务终结点托管的自定义模型。
- 由 Databricks 基础模型 API 托管的模型。
- 外部模型(在 Databricks 外部托管的第三方模型)。
有关语法和设计模式,请参阅 ai_query 函数。
当使用此函数查询模型服务终结点时,它仅在可使用且已启用模型服务的工作区和区域中可用。
要求
- 请参阅 要求。
使用 ai_query()
查询终结点
可以在无服务器版或专业版 SQL 仓库上使用 ai_query()
查询终结点背后的模型。 有关评分请求和响应格式,请参阅 查询生成 AI 模型。
注意
- 对于 Databricks Runtime 14.2 及更高版本,笔记本环境(包括 Databricks 笔记本和作业)支持此函数。
- 对于 Databricks Runtime 14.1 及更低版本,笔记本环境(包括 Databricks 笔记本)不支持此函数。
示例:查询大语言模型
以下示例使用 text
数据集查询 sentiment-analysis
终结点背后的模型,并指定请求的返回类型。
SELECT text, ai_query(
"sentiment-analysis",
text,
returnType => "STRUCT<label:STRING, score:DOUBLE>"
) AS predict
FROM
catalog.schema.customer_reviews
示例:查询预测模型
以下示例可查询 spam-classification
终结点后面的分类模型,以批量预测 inbox_messages
表中的 text
是否为垃圾邮件。 模型采用 3 个输入功能:时间戳、发送方、文本。 模型会返回布尔数组。
SELECT text, ai_query(
endpoint => "spam-classification",
request => named_struct(
"timestamp", timestamp,
"sender", from_number,
"text", text),
returnType => "BOOLEAN") AS is_spam
FROM catalog.schema.inbox_messages