Categorias:

Funções de cadeia de caracteres e binários (funções de AI)

AI_SENTIMENT

Nota

AI_SENTIMENT é a versão atualizada do ENTITY_SENTIMENT (SNOWFLAKE.CORTEX). Para obter a funcionalidade mais recente, use AI_SENTIMENT.

Retorna o sentimento geral e de categoria no texto de entrada fornecido.

Sintaxe

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

Argumentos

Obrigatório:

text

Uma string contendo o texto no qual o sentimento é detectado.

Opcional:

categories

Uma matriz contendo até dez categorias (também chamadas de entidades ou aspectos) para as quais o sentimento deve ser extraído. Cada categoria é uma string. Por exemplo, se extrair um sentimento de uma avaliação de um menu de um menu de um menu do, você pode especificar ['cost', 'quality', 'service', 'wait time'] como as categorias. Cada categoria pode ter no máximo 30 caracteres.

Se você não fornecer esse argumento, AI_SENTIMENT retorna apenas o sentimento geral.

Retornos

Um valor OBJECT contendo um campo categories. categories é uma matriz de registros de categoria. Cada categoria inclui estes campos:

  • name: o nome da categoria. Os nomes das categorias correspondem às categorias especificadas no argumento categories.

  • sentiment: o sentimento da categoria. Cada resultado de sentimento é uma das seguintes strings.

    • unknown: a categoria não foi mencionada no texto.

    • positive: a categoria foi mencionada positiva no texto.

    • negative: a categoria foi mencionada negativamente no texto.

    • neutral: a categoria foi mencionada no texto, mas não positiva nem negativamente.

    • mixed: a categoria foi mencionada tanto positiva quanto negativamente no texto.

O registro da categoria overall é sempre incluído e contém o sentimento geral do texto.

Exemplo:

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

Requisitos de controle de acesso

Os usuários devem usar uma função que tenha a função do banco de dados SNOWFLAKE.CORTEX_USER. Consulte Privilégios obrigatórios para obter mais informações sobre essa função.

Notas de uso

AI_SENTIMENT pode analisar o sentimento em inglês, francês, alemão, hindi, italiano, espanhol e português. É possível especificar categorias no idioma do texto ou em inglês.

Exemplos

O exemplo a seguir usa AI_SENTIMENT para obter o sentimento geral de uma avaliação do serviço de alimentações.

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

Valor de retorno:

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

Neste exemplo, uma tabela chamada reviews contém uma coluna chamada review_content contendo o texto das resenhas de filmes enviadas pelos usuários. A consulta retorna o sentimento de várias aspectos de até dez avaliações.

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

Disponibilidade regional

AI_SENTIMENT está disponível nas seguintes regiões:

Função
(Modelo)
AWS US West 2
(Oregon)
AWS US East 1
(N. Virginia)
AWS Europe Central 1
(Frankfurt)
AWS Europe West 1
(Ireland)
AWS AP Southeast 2
(Sidney)
AWS AP Northeast 1
(Tokyo)
Azure East US 2
(Virginia)
Azure West Europe
(Países Baixos)
AWS
(Entre regiões)

AI_SENTIMENT

Limitações

As funções do Snowflake Cortex não são compatíveis com tabelas dinâmicas.