1. Panoramica
In questo codelab ti concentrerai sull'utilizzo dell'API Natural Language con C#. Imparerai a eseguire l'analisi di sentiment, entità e sintassi.
L'API Natural Language di Google Cloud fornisce agli sviluppatori tecnologie di comprensione del linguaggio naturale, tra cui analisi del sentiment, delle entità e della sintassi.
Cosa imparerai a fare
- Come utilizzare Cloud Shell
- Come abilitare l'API Natural Language
- Come autenticare le richieste API
- Come installare la libreria client di Google Cloud per C#
- Come eseguire l'analisi del sentiment
- Come eseguire l'analisi delle entità
- Come eseguire l'analisi della sintassi
Che cosa ti serve
Sondaggio
Come utilizzerai questo tutorial?
Come valuteresti la tua esperienza con C#?
Come giudichi la tua esperienza di utilizzo dei servizi della piattaforma Google Cloud?
2. Configurazione e requisiti
Configurazione dell'ambiente da seguire in modo autonomo
- Accedi alla console Google Cloud e crea un nuovo progetto o riutilizzane uno esistente. Se non hai ancora un account Gmail o Google Workspace, devi crearne uno.
- Il Nome progetto è il nome visualizzato dei partecipanti del progetto. Si tratta di una stringa di caratteri non utilizzata dalle API di Google. Puoi sempre aggiornarla.
- L'ID progetto è univoco in tutti i progetti Google Cloud ed è immutabile (non può essere modificato dopo essere stato impostato). La console Cloud genera automaticamente una stringa univoca. di solito non ti importa cosa sia. Nella maggior parte dei codelab, dovrai fare riferimento al tuo ID progetto (in genere identificato come
PROJECT_ID
). Se l'ID generato non ti soddisfa, potresti generarne un altro casuale. In alternativa, puoi provarne una personalizzata per verificare se è disponibile. Non può essere modificato dopo questo passaggio e rimane per tutta la durata del progetto. - Per informazione, c'è un terzo valore, un numero di progetto, utilizzato da alcune API. Scopri di più su tutti e tre questi valori nella documentazione.
- Successivamente, dovrai abilitare la fatturazione nella console Cloud per utilizzare risorse/API Cloud. L'esecuzione di questo codelab non ha alcun costo. Per arrestare le risorse ed evitare di incorrere in fatturazione dopo questo tutorial, puoi eliminare le risorse che hai creato o eliminare il progetto. I nuovi utenti di Google Cloud sono idonei al programma prova senza costi di 300$.
Avvia Cloud Shell
Anche se Google Cloud può essere utilizzato da remoto dal tuo laptop, in questo codelab utilizzerai Google Cloud Shell, un ambiente a riga di comando in esecuzione nel cloud.
Attiva Cloud Shell
- Dalla console Cloud, fai clic su Attiva Cloud Shell .
Se è la prima volta che avvii Cloud Shell, ti verrà mostrata una schermata intermedia che descrive di cosa si tratta. Se ti è stata presentata una schermata intermedia, fai clic su Continua.
Il provisioning e la connessione a Cloud Shell dovrebbero richiedere solo qualche istante.
Questa macchina virtuale viene caricata con tutti gli strumenti di sviluppo necessari. Offre una home directory permanente da 5 GB e viene eseguita in Google Cloud, migliorando notevolmente le prestazioni di rete e l'autenticazione. Gran parte, se non tutto, del lavoro in questo codelab può essere svolto con un browser.
Una volta stabilita la connessione a Cloud Shell, dovresti vedere che hai eseguito l'autenticazione e che il progetto è impostato sul tuo ID progetto.
- Esegui questo comando in Cloud Shell per verificare che l'account sia autenticato:
gcloud auth list
Output comando
Credentialed Accounts ACTIVE ACCOUNT * <my_account>@<my_domain.com> To set the active account, run: $ gcloud config set account `ACCOUNT`
- Esegui questo comando in Cloud Shell per confermare che il comando gcloud è a conoscenza del tuo progetto:
gcloud config list project
Output comando
[core] project = <PROJECT_ID>
In caso contrario, puoi impostarlo con questo comando:
gcloud config set project <PROJECT_ID>
Output comando
Updated property [core/project].
3. Abilita l'API Natural Language
Prima di poter iniziare a utilizzare l'API Natural Language, devi abilitare l'API. Tramite Cloud Shell puoi abilitare l'API utilizzando il comando seguente:
gcloud services enable language.googleapis.com
4. Installa la libreria client dell'API Google Cloud Natural Language per C#
Innanzitutto, crea una semplice applicazione console C# che utilizzerai per eseguire esempi di API Natural Language:
dotnet new console -n NaturalLanguageApiDemo
Dovresti vedere l'applicazione creata e le dipendenze risolte:
The template "Console Application" was created successfully.
Processing post-creation actions...
...
Restore succeeded.
Quindi, vai alla cartella NaturalLanguageApiDemo
:
cd NaturalLanguageApiDemo/
E aggiungi il pacchetto NuGet Google.Cloud.Language.V1
al progetto:
dotnet add package Google.Cloud.Language.V1
info : Adding PackageReference for package 'Google.Cloud.Language.V1' into project '/home/atameldev/NaturalLanguageApiDemo/NaturalLanguageApiDemo.csproj'.
log : Restoring packages for /home/atameldev/NaturalLanguageApiDemo/NaturalLanguageApiDemo.csproj...
...
info : PackageReference for package 'Google.Cloud.Language.V1' version '1.1.0' added to file '/home/atameldev/NaturalLanguageApiDemo/NaturalLanguageApiDemo.csproj'.
Ora è tutto pronto per utilizzare l'API Natural Language.
5. Analisi del sentiment
In questa sezione eseguirai l'analisi del sentiment su una stringa e scoprirai il punteggio e la magnitudo utilizzando l'API Natural Language.
Il punteggio del sentiment è compreso tra -1,0 (negativo) e 1,0 (positivo) e corrisponde al sentiment complessivo derivante dalle informazioni fornite.
La Magnitude del sentiment va da 0,0 a +infinito e indica la forza complessiva del sentiment in base alle informazioni fornite. Più informazioni vengono fornite, maggiore è la grandezza.
Apri l'editor di codice dall'angolo in alto a destra di Cloud Shell:
Vai al file Program.cs
all'interno della cartella NaturalLanguageApiDemo
e sostituisci il codice con il seguente:
using System;
using Google.Cloud.Language.V1;
namespace NaturalLanguageApiDemo
{
class Program
{
static void Main(string[] args)
{
var text = "Yukihiro Matsumoto is great!";
var client = LanguageServiceClient.Create();
var response = client.AnalyzeSentiment(Document.FromPlainText(text));
var sentiment = response.DocumentSentiment;
Console.WriteLine($"Score: {sentiment.Score}");
Console.WriteLine($"Magnitude: {sentiment.Magnitude}");
}
}
}
Dedica un minuto o due a studiare il codice e vedere come lo snippet di codice viene utilizzato per eseguire l'analisi del sentiment sulla stringa "Yukihiro Matsumoto è fantastico!".
Torna in Cloud Shell ed esegui l'app:
dotnet run
Dovresti vedere l'output seguente:
Score: 0.9
Magnitude: 0.9
Riepilogo
In questo passaggio, hai potuto eseguire l'analisi del sentiment su una stringa di testo e stampare il punteggio e la grandezza. Scopri di più sull'analisi del sentiment.
6. Analisi delle entità
L'analisi delle entità controlla le informazioni fornite per le entità cercando nomi propri, come personaggi pubblici, punti di riferimento e così via, e restituisce informazioni su queste entità.
Per eseguire l'analisi delle entità, vai al file Program.cs
all'interno della cartella NaturalLanguageApiDemo
e sostituisci il codice con quanto segue:
using System;
using Google.Cloud.Language.V1;
namespace NaturalLanguageApiDemo
{
class Program
{
static void Main(string[] args)
{
var text = "Yukihiro Matsumoto is great!";
var client = LanguageServiceClient.Create();
var response = client.AnalyzeEntitySentiment(Document.FromPlainText(text));
foreach (var entity in response.Entities)
{
Console.WriteLine($"Entity: \"{entity.Name}\" ({entity.Type})");
if (entity.Metadata.ContainsKey("wikipedia_url"))
{
Console.WriteLine($"URL: {entity.Metadata["wikipedia_url"]}");
}
}
}
}
}
Prenditi un minuto o due per studiare il codice e vedere come viene utilizzato lo snippet di codice per eseguire l'analisi delle entità sulla stringa "Yukihiro Matsumoto è fantastico!".
Torna in Cloud Shell ed esegui l'app:
dotnet run
Dovresti vedere l'output seguente:
Entity: "Yukihiro Matsumoto" (Person)
URL: https://en.wikipedia.org/wiki/Yukihiro_Matsumoto
Riepilogo
In questo passaggio hai potuto eseguire l'analisi delle entità su una stringa di testo e stamparne le entità. Scopri di più sull'analisi delle entità.
7. Analisi della sintassi
L'analisi sintattica estrae informazioni linguistiche, suddividendo il testo dato in una serie di frasi e token (in genere, confini di parole), fornendo ulteriori analisi su questi token.
In questo esempio viene stampato il numero di frasi e token e verrà fornita la parte del discorso per ogni token.
Per eseguire l'analisi della sintassi, vai al file Program.cs
all'interno della cartella NaturalLanguageApiDemo
e sostituisci il codice con il codice seguente:
using System;
using Google.Cloud.Language.V1;
using static Google.Cloud.Language.V1.AnnotateTextRequest.Types;
namespace NaturalLanguageApiDemo
{
class Program
{
static void Main(string[] args)
{
var text = "Yukihiro Matsumoto is great!";
var client = LanguageServiceClient.Create();
var response = client.AnnotateText(Document.FromPlainText(text),
new Features { ExtractSyntax = true });
var sentences = response.Sentences;
var tokens = response.Tokens;
Console.WriteLine($"Sentences: {sentences.Count}");
Console.WriteLine($"Tokens: {tokens.Count}");
foreach (var token in tokens)
{
Console.WriteLine($"{token.PartOfSpeech.Tag} {token.Text.Content}");
}
}
}
}
Prenditi un minuto o due per studiare il codice e vedere come lo snippet di codice viene utilizzato per eseguire l'analisi della sintassi sulla stringa "Yukihiro Matsumoto è fantastico!".
Torna in Cloud Shell ed esegui l'app:
dotnet run
Dovresti vedere l'output seguente:
Sentences: 1
Tokens: 5
Noun Yukihiro
Noun Matsumoto
Verb is
Adj great
Punct !
Di seguito è riportata un'interpretazione visiva.
Riepilogo
In questo passaggio, hai potuto eseguire l'analisi della sintassi su una semplice stringa di testo e stampato il numero di frasi, il numero di token e le informazioni linguistiche per ogni token. Scopri di più sull'analisi della sintassi.
8. Complimenti!
Hai imparato a usare l'API Natural Language usando C# per eseguire diversi tipi di analisi sulle informazioni.
Esegui la pulizia
Per evitare che al tuo account Google Cloud Platform vengano addebitate le risorse utilizzate in questa guida rapida, procedi come segue.
- Vai alla console di Cloud Platform.
- Seleziona il progetto che vuoi chiudere e fai clic su "Elimina". in alto: in questo modo viene pianificata l'eliminazione del progetto.
Scopri di più
- API Google Cloud Natural Language: https://cloud.google.com/natural-language/docs/
- C#/.NET su Google Cloud: https://cloud.google.com/dotnet/
- Client Google Cloud .NET: https://googlecloudplatform.github.io/google-cloud-dotnet/
Licenza
Questo lavoro è concesso in licenza ai sensi di una licenza Creative Commons Attribution 2.0 Generic.