SENTIMENT (SNOWFLAKE.CORTEX)

Snowflake Cortex AI oferece duas funções específicas para tarefas que permitem realizar facilmente a análise de sentimentos em dados de texto, como comentários ou avaliações de clientes.

ENTITY_SENTIMENT oferece sentimento geral e granular específico da entidade. É ideal para casos de uso que exigem análise de sentimento para aspectos específicos do texto ou que requerem identificação diferenciada de sentimento: positivo, negativo, neutro e misto. Por exemplo:

  • Análise detalhada de produto

  • Estudos abrangentes de percepção da marca

  • Inteligência de mercado avançada

  • Mapeamento da jornada da experiência do cliente

SENTIMENT retorna uma pontuação numérica de sentimento que identifica o grau de negatividade ou positividade. Ele foi projetado para casos de uso que priorizam a velocidade e o custo-benefício em relação à análise granular no nível de entidade, como, por exemplo:

  • Monitoramento e alerta de sentimentos sociais

  • Triagem de feedback de clientes de alto volume

  • Verificação do desempenho de conteúdo

Qualidade de sentimento

ENTITY_SENTIMENT oferece precisão líder no setor tanto para sentimento baseado em aspectos quanto para o sentimento geral. A tabela a seguir fornece informações sobre o desempenho de modelos populares nos benchmarks de sentimento baseado em aspectos (ABSA-mix) e Sentimento geral, incluindo os modelos oferecidos pela Snowflake, bem como outros modelos populares.


Função ou modelo
Sentimento baseado em aspecto
Precisão (ABSA-mix)

Precisão geral do sentimento

Cortex AI ENTITY_SENTIMENT

0,91

0,86

claude-3-5-sonnet

0,84

0,72

mistral-large2

0,83

0,77

GPT-4

0,82

0,73

llama3.3-70b

0,81

0,72

llama3.1-8b

0,77

0,79

Cortex AI SENTIMENT

n/a

0,71

Dica

Se não tiver certeza de qual função é a melhor para suas necessidades, comece com ENTITY_SENTIMENT para definir uma linha de base. Em seguida, experimente SENTIMENT para ver se a granularidade e as nuances adicionais fornecidas por ENTITY_SENTIMENT são necessárias para seu caso de uso.

ENTITY_SENTIMENT

Cortex AI ENTITY_SENTIMENT captura um espectro de opiniões de clientes que vai além dos buckets positivos, negativos e neutros em geral. Para a análise de sentimento baseada em aspectos, especifique o conteúdo (como um comentário de cliente ou uma avaliação) e as entidades (aspectos ou categorias) para as quais você deseja analisar o sentimento. ENTITY_SENTIMENT retorna pontuações de sentimento para cada entidade, bem como uma pontuação geral de sentimento.

O exemplo a seguir usa ENTITY_SENTIMENT para obter a classificação de sentimento de uma avaliação de produto.

SELECT SNOWFLAKE.CORTEX.ENTITY_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. 💰🍕🚀',
  ['Cost', 'Quality', 'Waiting Time']);
Copy

Resposta:

{
  "categories": [
    {
      "name": "overall",
      "sentiment": "mixed"
    },
    {
      "name": "Cost",
      "sentiment": "negative"
    },
    {
      "name": "Quality",
      "sentiment": "positive"
    },
    {
      "name": "Waiting Time",
      "sentiment": "positive"
    }
  ]
}

O exemplo a seguir “passa por” entidades não relacionadas ao conteúdo da avaliação do produto, profissionalismo e marca, e as classifica como “desconhecidas”.

SELECT SNOWFLAKE.CORTEX.ENTITY_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. 💰🍕🚀',
  ['Cost', 'Professionalism' ,'Brand']);
Copy

Resposta:

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

Se quiser apenas o sentimento geral, especifique o conteúdo sem entidades de análise.

SELECT SNOWFLAKE.CORTEX.ENTITY_SENTIMENT('I went to the store, bought the leggings and exact same as shorts...
  they are expensive but i heard such great things. After wearing them twice i noticed a string popping out already.
  And aince i believed that they were this amazing luxury brand i didnt keep the receipt 😭 ');
Copy

Resposta:

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

SENTIMENT

A função Cortex AI SENTIMENT retorna o sentimento geral como uma pontuação entre -1,0 e 1,0. Quanto mais próximo de 1, maior a probabilidade de o texto ter um sentimento positivo; quanto mais próximo de -1, maior a probabilidade de o texto ter um sentimento negativo. O gráfico abaixo fornece orientação sobre como interpretar as pontuações de sentimento:

Sentimento

Pontuação de sentimento

Positivo

0,5 a 1

Neutro

-0,5 a 0,5

Negativo

-0,5 a -1

O exemplo a seguir usa SENTIMENT para obter a classificação de sentimento de uma avaliação de serviço de alimentação, que podemos inferir como positiva, dada a pontuação de probabilidade de 0,54.

SELECT SNOWFLAKE.CORTEX.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

Resposta:

0.5424458

Restrições de modelo

Todos os modelos disponíveis em Snowflake Cortex AI têm limitações quanto ao número total de tokens de entrada e saída, o que é chamado de janela de contexto do modelo.

A janela de contexto de ENTITY_SENTIMENT é definida de forma que o modelo possa sustentar um alto nível de precisão. Para obter mais contexto, ENTITY_SENTIMENT foi treinado e otimizado para entradas de texto de 2.048 tokens (aproximadamente 1.600 palavras), e você pode passar um máximo de 10 categorias de entidades, cada uma com no máximo 30 caracteres.

Nota

ENTITY_SENTIMENT e SENTIMENT estão atualmente otimizados para o inglês.

Função

Janela de contexto (tokens)

Máximo de rótulos de entidades

ENTITY_SENTIMENT

2,048

10

SENTIMENT

512

n/a

Disponibilidade regional

ENTITY_SENTIMENT e SENTIMENT estão disponíveis 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)

ENTITY_SENTIMENT

SENTIMENT