次の方法で共有


ai_extract 関数

適用対象:check marked yes Databricks SQL

重要

この機能はパブリック プレビュー段階にあります。

プレビューでは:

  • 基になる言語モデルでは複数の言語を処理できますが、これらの関数は英語用にチューニングされています。
  • 基になる Foundation Model API にレート制限があります。これらの制限を更新する方法については、「Foundation Model API の制限」を参照してください。

ai_extract() 関数を使うと、最先端の生成 AI モデルを呼び出し、SQL を使って特定のテキストからラベルで指定されたエンティティを抽出できます。 この関数では、Databricks Foundation Model API で使用できるエンドポイントを提供するチャット モデルを使用します。

要件

重要

現時点で使用できる基になるモデルは、Apache 2.0 ライセンスまたは Llama 2 コミュニティ ライセンスでライセンス付与されます。 Databricks では、該当する使用条件に準拠するために、これらのライセンスを確認することをお勧めしています。 将来、Databricks の内部ベンチマークに従ってパフォーマンスが向上するモデルが開発された場合、Databricks によってモデルが変更される可能性があります (変更に伴い、このページで提供されている該当するライセンスの一覧も変更されます)。

現在、Mixtral-8x7B 指示は、これらの AI 関数を実行する基になるモデルとなっています。

構文

ai_extract(content, labels)

引数

  • content: STRING 式。
  • labels: ARRAY<STRING> リテラル。 各要素は、抽出するエンティティの種類です。

返品

各フィールドが labels で指定されているエンティティ型に対応する STRUCT。 各フィールドには、抽出されたエンティティを表す文字列が含まれます。 あるエンティティ型の候補が複数見つかった場合は、1 つだけ返されます。

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"}