カテゴリ:

:doc:`/sql-reference/functions-string`(AI 関数)

AI_SENTIMENT

注釈

AI_SENTIMENT は ENTITY_SENTIMENT (SNOWFLAKE.CORTEX) の更新されたバージョンです。最新の関数については、 AI_SENTIMENT を使用してください。

指定した入力テキストの全体および 感情 カテゴリを返します。

構文

AI_SENTIMENT( <text> [ , <categories> ] )
Copy

引数

必須:

text

感情が検出されるテキストを含む文字列。

オプション:

categories

感情を抽出する必要がある最大10個のカテゴリ(エンティティまたはアスペクトとも呼ばれる)を含む配列。各カテゴリは文字列です。たとえば、レストランのレビューから感情を抽出する場合は、['cost', 'quality', 'service', 'wait time'] をカテゴリとして指定できます。各カテゴリの長さは最大30文字に設定できます。

この引数を指定しない場合、AI_SENTIMENT は全体的な感情のみを返します。

戻り値

categories フィールドを含む OBJECT 値。categories はカテゴリレコードの配列です。各カテゴリには、以下のフィールドが含まれます。

  • name:カテゴリの名前。カテゴリ名は、categories 引数で指定されたカテゴリと一致します。

  • sentiment:カテゴリの感情。各感情の結果は、次の文字列のいずれかです。

    • unknown:カテゴリについてテキストで言及されていませんでした。

    • positive:カテゴリについてテキストで肯定的に言及されていました。

    • negative:カテゴリについてテキストで否定的に言及されていました。

    • neutral:カテゴリについてテキストで言及されていましたが、肯定的または否定的な意味合いのいずれでもありませんでした。

    • mixed:テキストでは、カテゴリは肯定的な意味合いおよび否定的な意味合いの両方で言及されていました。

overall カテゴリレコードは常に含まれ、テキストの全体的な感情が含まれます。

例:

{
  "categories": [
    {
      "name": "overall",
      "sentiment": "mixed"
    },
    {
      "name": "Brand",
      "sentiment": "unknown"
    },
    {
      "name": "Cost",
      "sentiment": "negative"
    },
    {
      "name": "Professionalism",
      "sentiment": "unknown"
    }
  ]
}

アクセス制御の要件

ユーザーは、 SNOWFLAKE.CORTEX_USER データベースロール が付与されているロールを使用する必要があります。このロールの詳細については 必要な権限 をご参照ください。

使用上の注意

AI_SENTIMENT は、英語、フランス語、ドイツ語、ヒンディー語、イタリア語、スペイン語、ポルトガル語で感情を分析できます。テキストの言語または英語でカテゴリを指定できます。

次の例では、AI_SENTIMENT を使用してフードサービスのレビューに関する全体的な感情を取得しています。

SELECT AI_SENTIMENT('A tourist\'s delight, in low urban light,
    Recommended gem, a pizza night sight. Swift arrival, a pleasure so right,
    Yet, pockets felt lighter, a slight pricey bite. 💰🍕🚀');
Copy

戻り値:

{
  "categories": [
    {
      "name": "overall",
      "sentiment": "positive"
    }
  ]
}

この例では、reviews という名前のテーブルに review_content という名前の列があり、ユーザーが投稿した映画に関するレビューのテキストが格納されています。クエリは、最大10件のレビューのいくつかのファセットの感情を返します。

SELECT
  AI_SENTIMENT(
    review_content,
    ['concept', 'performance', 'script', 'cinematography', 'soundtrack']
  ),
  review_content
  FROM reviews LIMIT 10;
Copy

リージョンの可用性

AI_SENTIMENT は以下のリージョンで利用できます。

関数
(モデル)
AWS US西部2
(オレゴン)
AWS US東部1
(N.バージニア)
AWSヨーロッパ中部1
(フランクフルト)
AWS ヨーロッパ西部1
(アイルランド)
AWS AP 南東部2
(シドニー)
AWS AP 北東部1
(東京)
Azure東部 US 2
(バージニア)
Azure西ヨーロッパ
(オランダ)
AWS
(リージョン横断)

AI_SENTIMENT

制限事項

Snowflake Cortex関数は動的テーブルをサポートしていません。