ARC130

Présentation
Dans un atelier challenge, vous devez suivre un scénario et effectuer une série de tâches. Aucune instruction détaillée n'est fournie : vous devez utiliser les compétences acquises au cours des ateliers du cours correspondant pour déterminer comment procéder par vous-même. Vous saurez si vous avez exécuté correctement les différentes tâches grâce au score calculé automatiquement (affiché sur cette page).
Lorsque vous participez à un atelier challenge, vous n'étudiez pas de nouveaux concepts Google Cloud. Vous allez approfondir les compétences précédemment acquises. Par exemple, vous devrez modifier les valeurs par défaut ou encore examiner des messages d'erreur pour corriger vous-même les problèmes.
Pour atteindre le score de 100 %, vous devez mener à bien l'ensemble des tâches dans le délai imparti.
Préparation
Avant de cliquer sur le bouton "Démarrer l'atelier"
Lisez ces instructions. Les ateliers sont minutés, et vous ne pouvez pas les mettre en pause. Le minuteur, qui démarre lorsque vous cliquez sur Démarrer l'atelier, indique combien de temps les ressources Google Cloud resteront accessibles.
Cet atelier pratique vous permet de suivre les activités dans un véritable environnement cloud, et non dans un environnement de simulation ou de démonstration. Des identifiants temporaires vous sont fournis pour vous permettre de vous connecter à Google Cloud le temps de l'atelier.
Pour réaliser cet atelier :
- Vous devez avoir accès à un navigateur Internet standard (nous vous recommandons d'utiliser Chrome).
Remarque : Ouvrez une fenêtre de navigateur en mode incognito (recommandé) ou de navigation privée pour effectuer cet atelier. Vous éviterez ainsi les conflits entre votre compte personnel et le compte temporaire de participant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.
- Vous disposez d'un temps limité. N'oubliez pas qu'une fois l'atelier commencé, vous ne pouvez pas le mettre en pause.
Remarque : Utilisez uniquement le compte de participant pour cet atelier. Si vous utilisez un autre compte Google Cloud, des frais peuvent être facturés à ce compte.
Scénario du challenge
Vous avez récemment rejoint une organisation et travaillez en tant qu'ingénieur cloud junior au sein d'une équipe. Vous avez été affecté à des projets de machine learning (apprentissage automatique). L'une des exigences de votre client est d'utiliser le service API Cloud Natural Language dans Google Cloud pour effectuer des tâches en vue de mener à bien un projet.
Vous êtes censé disposer des compétences et des connaissances requises pour effectuer les tâches qui suivent.
Votre challenge
Pour ce défi, vous devez configurer Google Docs et effectuer une analyse des sentiments sur des avis clients, analyser la syntaxe et les parties du discours à l'aide de l'API Natural Language, et créer une requête pour l'API Natural Language dans une langue autre que l'anglais.
Vos tâches sont les suivantes :
- Créer une clé API
- Configurer Google Docs et appeler l'API Natural Language
- Analyser la syntaxe et les classes de mots avec l'API Natural Language
- Effectuer un traitement multilingue du langage naturel
Pour les besoins de cet atelier challenge, une instance de machine virtuelle (VM) nommée a été configurée pour vous permettre d'effectuer les tâches 3 et 4.
Voici quelques normes que vous devez respecter :
- Vérifiez que toutes les API nécessaires (par exemple, l'API Cloud Natural Language) sont activées.
Chaque tâche est décrite en détail ci-dessous. Bonne chance !
Tâche 1 : Créer une clé API
-
Pour cette tâche, vous devez créer une clé API que vous utiliserez ici et dans d'autres tâches lors de l'envoi d'une requête à l'API Natural Language.
-
Enregistrez la clé API pour l'utiliser dans d'autres tâches.
Cliquez sur Vérifier ma progression pour valider l'objectif.
Créer une clé API
Tâche 2 : Configurer Google Docs et appeler l'API Natural Language
Pour cette tâche, vous devez configurer Google Docs pour qu'il utilise l'API Natural Language et reconnaisse le sentiment véhiculé par un texte sélectionné dans un document Google Docs. Vous devez ensuite mettre en surbrillance des parties du texte en fonction du sentiment identifié.
Le texte est surligné en rouge pour les sentiments négatifs, en vert pour les sentiments positifs et en jaune pour les sentiments neutres.
-
Créez un document Google Docs.
-
Utilisez le code suivant dans Apps Script. Dans la fonction retrieveSentiment, remplacez "your key here" par votre clé API réelle provenant de la console Google Cloud.
/**
* @OnlyCurrentDoc
*
* The above comment directs Apps Script to limit the scope of file
* access for this add-on. It specifies that this add-on will only
* attempt to read or modify the files in which the add-on is used,
* and not all of the user's files. The authorization request message
* presented to users will reflect this limited scope.
*/
/**
* Creates a menu entry in the Google Docs UI when the document is
* opened.
*
*/
function onOpen() {
var ui = DocumentApp.getUi();
ui.createMenu('Natural Language Tools')
.addItem('Mark Sentiment', 'markSentiment')
.addToUi();
}
/**
* Gets the user-selected text and highlights it based on sentiment
* with green for positive sentiment, red for negative, and yellow
* for neutral.
*
*/
function markSentiment() {
var POSITIVE_COLOR = '#00ff00'; // Colors for sentiments
var NEGATIVE_COLOR = '#ff0000';
var NEUTRAL_COLOR = '#ffff00';
var NEGATIVE_CUTOFF = -0.2; // Thresholds for sentiments
var POSITIVE_CUTOFF = 0.2;
var selection = DocumentApp.getActiveDocument().getSelection();
if (selection) {
var string = getSelectedText();
var sentiment = retrieveSentiment(string);
// Select the appropriate color
var color = NEUTRAL_COLOR;
if (sentiment <= NEGATIVE_CUTOFF) {
color = NEGATIVE_COLOR;
}
if (sentiment >= POSITIVE_CUTOFF) {
color = POSITIVE_COLOR;
}
// Highlight the text
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);
}
}
}
}
/**
* Returns a string with the contents of the selected text.
* If no text is selected, returns an empty string.
*/
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();
// Only translate elements that can be edited as text; skip
// images and other non-text elements.
if (element.editAsText) {
string = string + element.asText().getText();
}
}
}
}
return string;
}
/** Given a string, will call the Natural Language API and retrieve
* the sentiment of the string. The sentiment will be a real
* number in the range -1 to 1, where -1 is highly negative
* sentiment and 1 is highly positive.
*/
function retrieveSentiment(line) {
var apiKey = "your key here"; // Replace with your actual API key
var apiEndpoint = "https://language.googleapis.com/v1/documents:analyzeSentiment?key=" + apiKey;
// Create a structure with the text, its language, its type,
// and its encoding
var docDetails = {
language: 'en-us',
type: 'PLAIN_TEXT',
content: line
};
var nlData = {
document: docDetails,
encodingType: 'UTF8'
};
// Package all of the options and the data together for the call
var nlOptions = {
method : 'post',
contentType: 'application/json',
payload : JSON.stringify(nlData)
};
// And make the call
var response = UrlFetchApp.fetch(apiEndpoint, nlOptions);
var data = JSON.parse(response);
var sentiment = 0.0;
// Ensure all pieces were in the returned value
if (data && data.documentSentiment
&& data.documentSentiment.score){
sentiment = data.documentSentiment.score;
}
return sentiment;
}
- Ajoutez du texte à votre document. Vous pouvez utiliser l'exemple tiré du roman de Charles Dickens, Le Conte de deux villes.
Cliquez sur Vérifier ma progression pour valider l'objectif.
Configurer Google Docs et appeler l'API Natural Language
Tâche 3 : Analyser la syntaxe et les classes de mots avec l'API Natural Language
Pour effectuer cette tâche, connectez-vous via SSH à l'instance de VM nommée qui a été provisionnée.
- Créez un fichier JSON nommé
analyze-request.json à l'aide du code suivant.
{
"document":{
"type":"PLAIN_TEXT",
"content": "Google, headquartered in Mountain View, unveiled the new Android phone at the Consumer Electronic Show. Sundar Pichai said in his keynote that users love their new Android phones."
},
"encodingType": "UTF8"
}
-
Transmettez votre requête (ainsi que la variable d'environnement de la clé API que vous avez sauvegardée précédemment à l'étape 1) à l'API Natural Language à l'aide de la commande curl ou analysez la syntaxe à l'aide des commandes gcloud ML.
-
Enregistrez la réponse dans un fichier nommé analyze-response.txt.
Cliquez sur Vérifier ma progression pour valider l'objectif.
Analyser la syntaxe et les parties du discours avec l'API Natural Language
Tâche 4 : Effectuer un traitement multilingue du langage naturel
Pour effectuer cette tâche, connectez-vous via SSH à l'instance de VM nommée qui a été provisionnée.
- Créez un fichier JSON nommé
multi-nl-request.json à l'aide du code suivant, qui contient une phrase en français.
{
"document":{
"type":"PLAIN_TEXT",
"content":"Le bureau japonais de Google est situé à Roppongi Hills, Tokyo."
}
}
-
Transmettez votre requête (ainsi que la variable d'environnement de la clé API que vous avez sauvegardée précédemment à l'étape 1) à l'API Natural Language à l'aide de la commande curl ou analysez la syntaxe à l'aide des commandes gcloud ML.
-
Enregistrez le résultat dans un fichier nommé multi-response.txt.
Cliquez sur Vérifier ma progression pour valider l'objectif.
Effectuer un traitement multilingue du langage naturel
Félicitations !
Félicitations ! Vous avez réussi à effectuer une analyse des sentiments sur du texte Google Docs, ainsi qu'à analyser la syntaxe et les parties du discours en appelant l'API Natural Language.

Formations et certifications Google Cloud
Les formations et certifications Google Cloud vous aident à tirer pleinement parti des technologies Google Cloud. Nos cours portent sur les compétences techniques et les bonnes pratiques à suivre pour être rapidement opérationnel et poursuivre votre apprentissage. Nous proposons des formations pour tous les niveaux, à la demande, en salle et à distance, pour nous adapter aux emplois du temps de chacun. Les certifications vous permettent de valider et de démontrer vos compétences et votre expérience en matière de technologies Google Cloud.
Dernière mise à jour du manuel : 17 juillet 2024
Dernier test de l'atelier : 17 juillet 2024
Copyright 2026 Google LLC. Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms d'entreprises et de produits peuvent être des marques des entreprises auxquelles ils sont associés.