ai_extract 函数

适用于:check marked yes Databricks SQL

重要

此功能目前以公共预览版提供。

在预览版中,

  • 基础语言模型可以处理多种语言,但这些函数是针对英语进行了优化。
  • 基础模型 API 存在速率限制,请参阅基础模型 API 限制,了解有关这些限制的最新信息。

ai_extract() 函数允许你调用最先进的生成式 AI 模型,以使用 SQL 从给定文本中提取标签指定的实体。 此函数使用通过 Databricks 基础模型 API 提供的聊天模型服务终结点。

要求

重要

目前可使用的基础模型已获得 Apache 2.0 许可证或 Llama 2 社区许可证的许可。 Databricks 建议查看这些许可证,以确保遵守任何适用的条款。 如果未来出现的模型按 Databricks 的内部基准而言性能更佳,Databricks 可能会更改模型(以及本页提供的适用许可证列表)。

目前,Mixtral-8x7B Instruct 是支持这些 AI 函数的基础模型。

语法

ai_extract(content, labels)

参数

  • content:一个 STRING 表达式。
  • labelsARRAY<STRING> 文本。 每个元素都是一个要提取的实体类型。

返回

STRUCT,其中每个字段对应于 labels 中指定的实体类型。 每个字段包含一个表示提取实体的字符串。 如果找到任何实体类型的多个候选项,则仅返回一个候选项。

如果 contentNULL,则结果为 NULL

示例

> SELECT ai_extract(
    'John Doe lives in New York and works for Acme Corp.',
    array('person', 'location', 'organization')
  );
 {"person": "John Doe", "location": "New York", "organization": "Acme Corp."}

> SELECT ai_extract(
    'Send an email to jane.doe@example.com about the meeting at 10am.',
    array('email', 'time')
  );
 {"email": "jane.doe@example.com", "time": "10am"}