Catégories :

Fonctions de chaîne et fonctions binaires (Fonctions AI)

AI_SENTIMENT

Note

AI_SENTIMENT est la version actualisée de ENTITY_SENTIMENT (SNOWFLAKE.CORTEX). Pour obtenir les dernières fonctionnalités, utilisez AI_SENTIMENT.

Renvoie le sentiment général et par catégorie du texte saisi.

Syntaxe

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

Arguments

Obligatoire :

text

Une chaîne contenant le texte dans lequel le sentiment est détecté.

Facultatif :

categories

Un tableau contenant jusqu’à dix catégories (également appelées entités ou aspects) pour lesquelles le sentiment doit être extrait. Chaque catégorie est une chaîne. Par exemple, si vous extrayez le sentiment d’un avis de restaurant, vous pouvez spécifier ['cost', 'quality', 'service', 'wait time'] comme catégories. Chaque catégorie peut comporter un maximum de 30 caractères.

Si vous ne fournissez pas cet argument, AI_SENTIMENT ne renvoie que le sentiment général.

Renvoie

Une valeur OBJECT contenant un champ categories. categories est un tableau d’enregistrements de catégories. Chaque catégorie comprend ces champs :

  • name : Le nom de la catégorie. Les noms des catégories correspondent aux catégories spécifiées dans l’argument categories.

  • sentiment : Le sentiment de la catégorie. Chaque résultat de sentiment est l’une des chaînes suivantes.

    • unknown : La catégorie n’était pas mentionnée dans le texte.

    • positive : La catégorie était mentionnée de manière positive dans le texte.

    • negative : La catégorie était mentionnée de manière négative dans le texte.

    • neutral : La catégorie était mentionnée dans le texte, mais ni de manière positive ni négative.

    • mixed : La catégorie était mentionnée à la fois de manière positive et négative dans le texte.

L’enregistrement de catégorie overall est toujours inclus et contient le sentiment général du texte.

Exemple :

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

Exigences en matière de contrôle d’accès

Les utilisateurs doivent utiliser un rôle auquel le rôle de base de données SNOWFLAKE.CORTEX_USER a été accordé. Voir Privilèges requis pour plus d’informations sur ce rôle.

Notes sur l’utilisation

AI_SENTIMENT peut analyser les sentiments en anglais, en français, en allemand, en hindi, en italien,en espagnol et en portugais. Vous pouvez spécifier des catégories dans la langue du texte ou en anglais.

Exemples

L’exemple suivant utilise AI_SENTIMENT pour obtenir le sentiment général d’un avis sur un service de restauration.

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

Valeur de retour :

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

Dans cet exemple, une table nommée reviews contient une colonne nommée review_content contenant le texte des avis relatifs à un film soumis par les utilisateurs. La requête renvoie le sentiment de plusieurs facettes de dix avis maximum.

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

Disponibilité régionale

AI_SENTIMENT est disponible dans les régions suivantes :

Fonction
(Modèle)
AWS US West 2
(Oregon)
AWS US East 1
(Virginie du Nord)
AWS Europe Central 1
(Francfort)
AWS Europe Ouest 1
(Irlande)
AWS AP Sud-Est 2
(Sydney)
AWS AP Nord-Est 1
(Tokyo)
Azure Est US 2
(Virginie)
Azure Europe de l’Ouest
(Pays-Bas)
AWS
(inter-régionale)

AI_SENTIMENT

Limitations

Les fonctions de Snowflake Cortex ne prennent pas en charge les tables dynamiques.