ARC130

Visão geral
Nos laboratórios com desafio, apresentamos uma situação e um conjunto de tarefas. Para concluí-las, em vez de seguir instruções detalhadas, você usará o que aprendeu nos laboratórios do curso. Um sistema automático de pontuação (mostrado nesta página) vai avaliar seu desempenho.
Nos laboratórios com desafio, não ensinamos novos conceitos do Google Cloud. O objetivo dessas tarefas é aprimorar aquilo que você já aprendeu, como a alteração de valores padrão ou a leitura e pesquisa de mensagens para corrigir seus próprios erros.
Para alcançar a pontuação de 100%, você precisa concluir todas as tarefas no tempo definido.
Configuração e requisitos
Antes de clicar no botão Começar o Laboratório
Leia estas instruções. Os laboratórios são cronometrados e não podem ser pausados. O timer é ativado quando você clica em Iniciar laboratório e mostra por quanto tempo os recursos do Google Cloud vão ficar disponíveis.
Este laboratório prático permite que você realize as atividades em um ambiente real de nuvem, e não em uma simulação ou demonstração. Você vai receber novas credenciais temporárias para fazer login e acessar o Google Cloud durante o laboratório.
Confira os requisitos para concluir o laboratório:
- Acesso a um navegador de Internet padrão (recomendamos o Chrome).
Observação: para executar este laboratório, use o modo de navegação anônima (recomendado) ou uma janela anônima do navegador. Isso evita conflitos entre sua conta pessoal e de estudante, o que poderia causar cobranças extras na sua conta pessoal.
- Tempo para concluir o laboratório: não se esqueça que, depois de começar, não será possível pausar o laboratório.
Observação: use apenas a conta de estudante neste laboratório. Se usar outra conta do Google Cloud, você poderá receber cobranças nela.
Cenário do desafio
Você começou a trabalhar recentemente em uma organização como engenheiro júnior de nuvem. Você recebeu projetos de machine learning (ML), e um dos requisitos do cliente é usar o serviço da API Cloud Natural Language no Google Cloud para executar as tarefas necessárias à conclusão de um projeto.
Você precisa ter conhecimento suficiente para realizar as tarefas listadas abaixo.
Seu desafio
Neste desafio, você vai configurar os Documentos Google, fazer análise de sentimento em avaliações de clientes, analisar sintaxe e classes gramaticais com a API Natural Language e criar uma solicitação à API Natural Language para um idioma diferente do inglês.
Você vai precisar:
- Criar uma chave de API.
- Configurar o app Documentos Google e chamar a API Natural Language.
- Analisar a sintaxe e as classes gramaticais com a API Natural Language.
- Realizar processamento de linguagem natural multilíngue.
Para este laboratório com desafio, uma instância de máquina virtual (VM) chamada foi configurada para você concluir as tarefas 3 e 4.
Você precisa seguir estes padrões:
- Confirmar se as APIs necessárias (como a API Cloud Natural Language) foram ativadas corretamente.
Essas tarefas são descritas em detalhes a seguir. Boa sorte!
Tarefa 1: criar uma chave de API
-
Você precisa criar uma chave de API para usar nessa e em outras tarefas ao enviar uma solicitação à API Natural Language.
-
Salve a chave de API para usar em outras tarefas.
Clique em Verificar meu progresso para conferir o objetivo.
Criar uma chave de API
Tarefa 2: configurar o app Documentos Google e chamar a API Natural Language
Para essa tarefa, você precisa configurar o app Documentos Google para usar a API Natural Language e reconhecer o sentimento de um texto selecionado em um documento do app Documentos Google e destacar partes dele com base no sentimento.
Textos com sentimentos negativos são destacados em vermelho, com sentimentos positivos em verde e com sentimentos neutros em amarelo.
-
Crie um novo documento Google.
-
Use o código a seguir no Apps Script. Na função retrieveSentiment, substitua "your key here" pela sua chave de API real do console do Google Cloud.
/**
* @OnlyCurrentDoc
*
* O comentário acima instrui o Apps Script a limitar o escopo de acesso a arquivos
* para este complemento. Ele especifica que esse complemento tentará somente
* ler ou modificar os arquivos nos quais o complemento for usado,
* e não todos os arquivos do usuário. A mensagem de solicitação de autorização
* mostrada aos usuários refletirá esse escopo limitado.
*/
/**
* Cria uma entrada de menu na UI dos Documentos Google quando o documento é
* aberto.
*
*/
function onOpen() {
var ui = DocumentApp.getUi();
ui.createMenu('Natural Language Tools')
.addItem('Mark Sentiment', 'markSentiment')
.addToUi();
}
/**
*
Captura o texto selecionado pelo usuário e destaca-o com base no sentimento
* em verde, para sentimentos positivos; em vermelho, para sentimentos negativos; e em amarelo, para sentimentos
* neutros.
*
*/
function markSentiment() {
var POSITIVE_COLOR = '#00ff00'; // Cores para os sentimentos
var NEGATIVE_COLOR = '#ff0000';
var NEUTRAL_COLOR = '#ffff00';
var NEGATIVE_CUTOFF = -0.2; // Limites para os sentimentos
var POSITIVE_CUTOFF = 0.2;
var selection = DocumentApp.getActiveDocument().getSelection();
if (selection) {
var string = getSelectedText();
var sentiment = retrieveSentiment(string);
// Selecione a cor apropriada
var color = NEUTRAL_COLOR;
if (sentiment <= NEGATIVE_CUTOFF) {
color = NEGATIVE_COLOR;
}
if (sentiment >= POSITIVE_CUTOFF) {
color = POSITIVE_COLOR;
}
// Destaque o texto
var elements = selection.getSelectedElements();
for (var i = 0; i < elements.length; i++) {
if (elements[i].isPartial()) {
var element = elements[i].getElement().editAsText();
var startIndex = elements[i].getStartOffset();
var endIndex = elements[i].getEndOffsetInclusive();
element.setBackgroundColor(startIndex, endIndex, color);
} else {
var element = elements[i].getElement().editAsText();
foundText = elements[i].getElement().editAsText();
foundText.setBackgroundColor(color);
}
}
}
}
/**
* Retorna a string com o conteúdo do texto selecionado.
* Se nenhum texto for selecionado, retorna uma string vazia.
*/
function getSelectedText() {
var selection = DocumentApp.getActiveDocument().getSelection();
var string = "";
if (selection) {
var elements = selection.getSelectedElements();
for (var i = 0; i < elements.length; i++) {
if (elements[i].isPartial()) {
var element = elements[i].getElement().asText();
var startIndex = elements[i].getStartOffset();
var endIndex = elements[i].getEndOffsetInclusive() + 1;
var text = element.getText().substring(startIndex, endIndex);
string = string + text;
} else {
var element = elements[i].getElement();
// Traduza somente elementos que podem ser editados como texto; ignore
// imagens e outros elementos que não sejam texto.
if (element.editAsText) {
string = string + element.asText().getText();
}
}
}
}
return string;
}
/** Recebendo uma string, vai chamar a API Natural Language e recuperar
* o sentimento dessa string. O sentimento será um número real
* no intervalo de -1 a 1, em que -1 indica sentimento altamente negativo
* e 1, altamente positivo.
*/
function retrieveSentiment(line) {
var apiKey = "your key here"; // substitua pela sua chave de API real
var apiEndpoint = "https://language.googleapis.com/v1/documents:analyzeSentiment?key=" + apiKey;
// Crie uma estrutura com o texto, a linguagem, o tipo,
// e a codificação
var docDetails = {
language: 'en-us',
type: 'PLAIN_TEXT',
content: line
};
var nlData = {
document: docDetails,
encodingType: 'UTF8'
};
// Empacote todas as opções e dados para a chamada
var nlOptions = {
method : 'post',
contentType: 'application/json',
payload : JSON.stringify(nlData)
};
// E faça a chamada
var response = UrlFetchApp.fetch(apiEndpoint, nlOptions);
var data = JSON.parse(response);
var sentiment = 0.0;
// É importante que todos os elementos estejam no valor retornado
if (data && data.documentSentiment
&& data.documentSentiment.score){
sentiment = data.documentSentiment.score;
}
return sentiment;
}
- Adicione texto ao documento. Você pode usar o exemplo do romance de Charles Dickens, História em duas cidades (em inglês).
Clique em Verificar meu progresso para conferir o objetivo.
Configurar os Documentos Google e chamar a API Natural Language
Tarefa 3: analisar a sintaxe e as classes gramaticais com a API Natural Language
Para concluir essa tarefa, conecte-se via SSH à instância de VM chamada que foi provisionada para você.
- Crie um arquivo JSON chamado
analyze-request.json usando o código a seguir.
{
"document":{
"type":"PLAIN_TEXT",
"content": "O Google, com sede em Mountain View, apresentou o novo smartphone Android no Consumer Electronic Show. Sundar Pichai disse em uma palestra de abertura que os usuários adoram os novos smartphones Android."
},
"encodingType": "UTF8"
}
-
Transmita sua solicitação (junto com a variável de ambiente da chave de API que você salvou na tarefa 1) para a API Natural Language usando o comando curl ou analise a sintaxe usando os comandos de ML gcloud.
-
Salve a resposta em um arquivo chamado analyze-response.txt.
Clique em Verificar meu progresso para conferir o objetivo.
Analisar a sintaxe e as classes gramaticais com a API Natural Language
Tarefa 4: realizar processamento de linguagem natural multilíngue
Para concluir essa tarefa, conecte-se via SSH à instância de VM chamada que foi provisionada para você.
- Crie um arquivo JSON chamado
multi-nl-request.json usando o código a seguir, que contém uma frase em francês.
{
"document":{
"type":"PLAIN_TEXT",
"content":"Le bureau japonais de Google est situé à Roppongi Hills, Tokyo."
}
}
-
Transmita sua solicitação (junto com a variável de ambiente da chave de API que você salvou na tarefa 1) para a API Natural Language usando o comando curl ou analise a sintaxe usando os comandos de ML gcloud.
-
Salve a saída em um arquivo chamado multi-response.txt.
Clique em Verificar meu progresso para conferir o objetivo.
Realizar processamento de linguagem natural multilíngue
Parabéns!
Parabéns! Você realizou com sucesso a análise de sentimento no texto dos Documentos Google, além de analisar a sintaxe e as classes gramaticais chamando a API Natural Language.

Treinamento e certificação do Google Cloud
Esses treinamentos ajudam você a aproveitar as tecnologias do Google Cloud ao máximo. Nossas aulas incluem habilidades técnicas e práticas recomendadas para ajudar você a alcançar rapidamente o nível esperado e continuar sua jornada de aprendizado. Oferecemos treinamentos que vão do nível básico ao avançado, com opções de aulas virtuais, sob demanda e por meio de transmissões ao vivo para que você possa encaixá-las na correria do seu dia a dia. As certificações validam sua experiência e comprovam suas habilidades com as tecnologias do Google Cloud.
Manual atualizado em 17 de julho de 2024
Laboratório testado em 17 de julho de 2024
Copyright 2026 Google LLC. Todos os direitos reservados. Google e o logotipo do Google são marcas registradas da Google LLC. Todos os outros nomes de produtos e empresas podem ser marcas registradas das respectivas empresas a que estão associados.