A análise de sentimento inspeciona a entrada do usuário e identifica a opinião subjetiva predominante, principalmente para determinar a atitude de um usuário como positiva, negativa ou neutra. Ao fazer uma solicitação de detecção de intent, você pode especificar que a análise de sentimento seja executada e a resposta inclua os valores dessa análise.
O Dialogflow usa a API Natural Language para realizar essa análise. Acesse os tópicos abaixo para mais informações sobre essa API e para consultar a documentação sobre como interpretar os resultados da análise de sentimento do Dialogflow:
Idiomas compatíveis
Para conferir a lista de idiomas compatíveis, consulte a coluna sentimento na página de idiomas.
Se você solicitar uma análise de sentimento para um idioma que não seja compatível, sua solicitação de detecção de intent não falhará, mas o campo QueryResult.diagnostic_info
conterá informações de erro.
Antes de começar
Este recurso só é relevante quando se usa a API para interações do usuário final. Se você estiver usando uma integração, ignore este guia.
Faça o seguinte antes de ler este guia:
- Leia os Conceitos básicos do Dialogflow.
- Execute as etapas de configuração.
Criar um agente
Se você ainda não criou um agente, crie um agora:
- Acesse o console do Dialogflow ES.
- Se solicitado, faça login no Console do Dialogflow. Para mais informações, consulte a Visão geral do Console do Dialogflow.
- Clique em Criar agente no menu da barra lateral à esquerda. Se você já tiver outros agentes, clique no nome do agente, role até a parte inferior da página e clique em Criar novo agente.
- Digite o nome do agente, o idioma padrão e o fuso horário padrão.
- Se você já tiver criado um projeto, insira-o. Se você quiser permitir que o Console do Dialogflow crie o projeto, selecione Criar um novo projeto do Google.
- Clique no botão Criar.
Importar o arquivo de exemplo para seu agente
As etapas deste guia fazem considerações sobre o agente. Portanto, você precisa importar um agente preparado para este guia. Ao importar, essas etapas usam a opção restaurar, que substitui todas as configurações, intents e entidades do agente.
Para importar o arquivo, siga estas etapas:
- Faça o download do arquivo
room-booking-agent.zip
. - Acesse o console do Dialogflow ES.
- Selecione seu agente.
- Clique no botão de configurações settings ao lado do nome do agente.
- Selecione a guia Exportar e importar.
- Selecione Restaurar do zip e siga as instruções para restaurar o arquivo zip que você baixou.
Configurações do agente para análise de sentimento
É possível acionar a análise de sentimento por solicitação de detecção de intent ou configurar o agente para sempre retornar os resultados da análise.
Para ativar a análise de sentimento em todas as consultas:
- Acesse o console do Dialogflow ES.
- Selecione um agente.
- Clique no botão de configurações settings ao lado do nome do agente.
- Selecione a guia Advanced.
- Selecione a opção Ativar a análise de sentimento para a consulta atual.
Usar o simulador do Dialogflow
Você pode interagir com o agente e receber os resultados da análise de sentimento por meio do simulador do Dialogflow:
Digite "Obrigado por me ajudar".
Consulte a seção SENTIMENTO na parte inferior do simulador. Ele deve mostrar uma pontuação de sentimento positiva.
Em seguida, digite "Não funcionou". no simulador.
Consulte a seção SENTIMENTO na parte inferior do simulador. Ele deve mostrar uma pontuação de sentimento negativa.
Detectar intent
Para detectar a intent,
chame o método
detectIntent
no tipo
Sessions
.
detectIntent
e
forneça o campo sentimentAnalysisRequestConfig
.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_ID: o ID do projeto do Google Cloud
- SESSION_ID: um código da sessão.
Método HTTP e URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID /agent/sessions/SESSION_ID :detectIntent
Corpo JSON da solicitação:
{ "queryParams": { "sentimentAnalysisRequestConfig": { "analyzeQueryTextSentiment": true } }, "queryInput": { "text": { "text": "please reserve an amazing meeting room for six people", "languageCode": "en-US" } } }
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project:PROJECT_ID " \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dialogflow.googleapis.com/v2/projects/PROJECT_ID /agent/sessions/SESSION_ID :detectIntent"
PowerShell (Windows)
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_ID " }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dialogflow.googleapis.com/v2/projects/PROJECT_ID /agent/sessions/SESSION_ID :detectIntent" | Select-Object -Expand Content
Você receberá uma resposta JSON semelhante a esta:
{ "responseId": "747ee176-acc5-46be-8d9a-b7ef9c2b9199", "queryResult": { "queryText": "please reserve an amazing meeting room for six people", "action": "room.reservation", "parameters": { "date": "", "duration": "", "guests": 6, "location": "", "time": "" }, "fulfillmentText": "I can help with that. Where would you like to reserve a room?", ... "sentimentAnalysisResult": { "queryTextSentiment": { "score": 0.8, "magnitude": 0.8 } } } }
O campo sentimentAnalysisResult
contém os valores score
e magnitude
.
Para autenticar no Dialogflow, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Para autenticar no Dialogflow, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Para autenticar no Dialogflow, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.