Mentre la maggior parte dei metodi Linguaggio naturale analizza le about su un dato testo, il metodo analyzeSyntax
esamina la struttura del linguaggio stesso.
Analisi sintattica suddivide il testo specificato in una serie di frasi e token (in genere parole) e fornisce informazioni linguistiche su questi token.
Consulta la pagina Morfologia e alberi delle dipendenze per i dettagli sull'analisi linguistica e il Supporto delle lingue per un elenco dei linguaggi di cui l'API Natural Language può analizzare la sintassi.
Questa sezione illustra alcuni modi per rilevare la sintassi in un documento. Devi inviare una richiesta separata per ciascun documento.
Analisi della sintassi in una stringa
Ecco un esempio di analisi sintattica su una stringa di testo inviata direttamente all'API Natural Language:
Protocollo
Per analizzare la sintassi in un documento, effettua una richiesta POST
al metodo REST documents:analyzeSyntax
e fornisci il corpo della richiesta appropriato, come mostrato nell'esempio seguente.
L'esempio utilizza il comando gcloud auth application-default print-access-token
per ottenere un token di accesso per un account di servizio configurato per il progetto utilizzando gcloud CLI di Google Cloud Platform.
Per istruzioni sull'installazione di gcloud CLI, sulla configurazione di un progetto con un account di servizio, consulta la Guida rapida.
curl -X POST \ -H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'encodingType': 'UTF8', '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.' } }" "https://language.googleapis.com/v1/documents:analyzeSyntax"
Se non specifichi document.language
, la lingua verrà rilevata automaticamente. Per informazioni sulle lingue supportate dall'API Natural Language, consulta la pagina Supporto delle lingue. Consulta la documentazione di riferimento Document
per ulteriori informazioni sulla configurazione del corpo della richiesta.
Se la richiesta ha esito positivo, il server restituisce un codice di stato HTTP 200 OK
e la risposta in formato JSON:
{ "sentences": [ { "text": { "content": "Google, headquartered in Mountain View, unveiled the new Android phone at the Consumer Electronic Show.", "beginOffset": 0 } }, { "text": { "content": "Sundar Pichai said in his keynote that users love their new Android phones.", "beginOffset": 105 } } ], "tokens": [ { "text": { "content": "Google", "beginOffset": 0 }, "partOfSpeech": { "tag": "NOUN", "aspect": "ASPECT_UNKNOWN", "case": "CASE_UNKNOWN", "form": "FORM_UNKNOWN", "gender": "GENDER_UNKNOWN", "mood": "MOOD_UNKNOWN", "number": "SINGULAR", "person": "PERSON_UNKNOWN", "proper": "PROPER", "reciprocity": "RECIPROCITY_UNKNOWN", "tense": "TENSE_UNKNOWN", "voice": "VOICE_UNKNOWN" }, "dependencyEdge": { "headTokenIndex": 7, "label": "NSUBJ" }, "lemma": "Google" }, ... { "text": { "content": ".", "beginOffset": 179 }, "partOfSpeech": { "tag": "PUNCT", "aspect": "ASPECT_UNKNOWN", "case": "CASE_UNKNOWN", "form": "FORM_UNKNOWN", "gender": "GENDER_UNKNOWN", "mood": "MOOD_UNKNOWN", "number": "NUMBER_UNKNOWN", "person": "PERSON_UNKNOWN", "proper": "PROPER_UNKNOWN", "reciprocity": "RECIPROCITY_UNKNOWN", "tense": "TENSE_UNKNOWN", "voice": "VOICE_UNKNOWN" }, "dependencyEdge": { "headTokenIndex": 20, "label": "P" }, "lemma": "." } ], "language": "en" }
L'array tokens
contiene oggetti Token
che rappresentano i token della frase rilevati, che includono informazioni come la parte del discorso di un token e la sua posizione nella frase.
gcloud
Per informazioni dettagliate, consulta il comando analyze-syntax
.
Per eseguire l'analisi della sintassi, utilizza gcloud CLI e il flag --content
per identificare i contenuti da analizzare:
gcloud ml language analyze-syntax --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."
Se la richiesta ha esito positivo, il server restituisce una risposta in formato JSON:
{ "sentences": [ { "text": { "content": "Google, headquartered in Mountain View, unveiled the new Android phone at the Consumer Electronic Show.", "beginOffset": 0 } }, { "text": { "content": "Sundar Pichai said in his keynote that users love their new Android phones.", "beginOffset": 105 } } ], "tokens": [ { "text": { "content": "Google", "beginOffset": 0 }, "partOfSpeech": { "tag": "NOUN", "aspect": "ASPECT_UNKNOWN", "case": "CASE_UNKNOWN", "form": "FORM_UNKNOWN", "gender": "GENDER_UNKNOWN", "mood": "MOOD_UNKNOWN", "number": "SINGULAR", "person": "PERSON_UNKNOWN", "proper": "PROPER", "reciprocity": "RECIPROCITY_UNKNOWN", "tense": "TENSE_UNKNOWN", "voice": "VOICE_UNKNOWN" }, "dependencyEdge": { "headTokenIndex": 7, "label": "NSUBJ" }, "lemma": "Google" }, ... { "text": { "content": ".", "beginOffset": 179 }, "partOfSpeech": { "tag": "PUNCT", "aspect": "ASPECT_UNKNOWN", "case": "CASE_UNKNOWN", "form": "FORM_UNKNOWN", "gender": "GENDER_UNKNOWN", "mood": "MOOD_UNKNOWN", "number": "NUMBER_UNKNOWN", "person": "PERSON_UNKNOWN", "proper": "PROPER_UNKNOWN", "reciprocity": "RECIPROCITY_UNKNOWN", "tense": "TENSE_UNKNOWN", "voice": "VOICE_UNKNOWN" }, "dependencyEdge": { "headTokenIndex": 20, "label": "P" }, "lemma": "." } ], "language": "en" }
L'array tokens
contiene oggetti Token
che rappresentano i token della frase rilevati, che includono informazioni come la parte del discorso di un token e la sua posizione nella frase.
Go
Per scoprire come installare e utilizzare la libreria client per Natural Language, consulta Librerie client di Natural Language. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Natural Language Go.
Per eseguire l'autenticazione in Natural Language, imposta Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Per scoprire come installare e utilizzare la libreria client per Natural Language, consulta Librerie client di Natural Language. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Natural Language Java.
Per eseguire l'autenticazione in Natural Language, imposta Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per scoprire come installare e utilizzare la libreria client per Natural Language, consulta Librerie client di Natural Language. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Natural Language Node.js.
Per eseguire l'autenticazione in Natural Language, imposta Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Per scoprire come installare e utilizzare la libreria client per Natural Language, consulta Librerie client di Natural Language. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Natural Language Python.
Per eseguire l'autenticazione in Natural Language, imposta Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Linguaggi aggiuntivi
C#: segui le istruzioni di configurazione di C# nella pagina delle librerie client e poi consulta la documentazione di riferimento sul linguaggio naturale per .NET.
PHP: segui le istruzioni per la configurazione dei file PHP nella pagina delle librerie client e consulta la documentazione di riferimento di Natural Language per PHP.
Ruby: segui le istruzioni per la configurazione di Ruby nella pagina delle librerie client e poi visita la documentazione di riferimento di Natural Language per Ruby.
analisi della sintassi da Cloud Storage
Per comodità, l'API Natural Language può eseguire l'analisi sintattica direttamente su un file situato in Cloud Storage, senza dover inviare i contenuti del file nel corpo della richiesta.
Ecco un esempio di analisi sintattica su un file situato in Cloud Storage.
Protocollo
Per analizzare la sintassi di un documento archiviato in Cloud Storage, effettua una richiesta POST
al metodo REST documents:analyzeSyntax
e fornisci il corpo della richiesta appropriato con il percorso del documento, come mostrato nell'esempio seguente.
curl -X POST \ -H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'encodingType': 'UTF8', 'document': { 'type': 'PLAIN_TEXT', 'gcsContentUri': 'gs://<bucket-name>/<object-name>' } }" "https://language.googleapis.com/v1/documents:analyzeSyntax"
Se non specifichi document.language
, la lingua verrà rilevata automaticamente. Per informazioni sulle lingue supportate dall'API Natural Language, consulta la pagina Supporto delle lingue. Consulta la documentazione di riferimento Document
per ulteriori informazioni sulla configurazione del corpo della richiesta.
Se la richiesta ha esito positivo, il server restituisce un codice di stato HTTP 200 OK
e la risposta in formato JSON:
{ "sentences": [ { "text": { "content": "Hello, world!", "beginOffset": 0 } } ], "tokens": [ { "text": { "content": "Hello", "beginOffset": 0 }, "partOfSpeech": { "tag": "X", // ... }, "dependencyEdge": { "headTokenIndex": 2, "label": "DISCOURSE" }, "lemma": "Hello" }, { "text": { "content": ",", "beginOffset": 5 }, "partOfSpeech": { "tag": "PUNCT", // ... }, "dependencyEdge": { "headTokenIndex": 2, "label": "P" }, "lemma": "," }, // ... ], "language": "en" }
L'array tokens
contiene oggetti Token
che rappresentano i token della frase rilevati, che includono informazioni come la parte del discorso di un token e la sua posizione nella frase.
gcloud
Per informazioni dettagliate, consulta il comandoanalyze-syntax
.
Per eseguire l'analisi della sintassi su un file in Cloud Storage, utilizza lo strumento a riga di comando gcloud
e il flag --content-file
per identificare il percorso del file che include i contenuti da analizzare:
gcloud ml language analyze-syntax --content-file=gs://YOUR_BUCKET_NAME/YOUR_FILE_NAME
Se la richiesta ha esito positivo, il server restituisce una risposta in formato JSON:
{ "sentences": [ { "text": { "content": "Hello, world!", "beginOffset": 0 } } ], "tokens": [ { "text": { "content": "Hello", "beginOffset": 0 }, "partOfSpeech": { "tag": "X", // ... }, "dependencyEdge": { "headTokenIndex": 2, "label": "DISCOURSE" }, "lemma": "Hello" }, { "text": { "content": ",", "beginOffset": 5 }, "partOfSpeech": { "tag": "PUNCT", // ... }, "dependencyEdge": { "headTokenIndex": 2, "label": "P" }, "lemma": "," }, // ... ], "language": "en" }
L'array tokens
contiene oggetti Token
che rappresentano i token della frase rilevati, che includono informazioni come la parte del discorso di un token e la sua posizione nella frase.
Go
Per scoprire come installare e utilizzare la libreria client per Natural Language, consulta Librerie client di Natural Language. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Natural Language Go.
Per eseguire l'autenticazione in Natural Language, imposta Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Per scoprire come installare e utilizzare la libreria client per Natural Language, consulta Librerie client di Natural Language. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Natural Language Java.
Per eseguire l'autenticazione in Natural Language, imposta Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per scoprire come installare e utilizzare la libreria client per Natural Language, consulta Librerie client di Natural Language. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Natural Language Node.js.
Per eseguire l'autenticazione in Natural Language, imposta Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Per scoprire come installare e utilizzare la libreria client per Natural Language, consulta Librerie client di Natural Language. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Natural Language Python.
Per eseguire l'autenticazione in Natural Language, imposta Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Linguaggi aggiuntivi
C#: segui le istruzioni di configurazione di C# nella pagina delle librerie client e poi consulta la documentazione di riferimento sul linguaggio naturale per .NET.
PHP: segui le istruzioni per la configurazione dei file PHP nella pagina delle librerie client e consulta la documentazione di riferimento di Natural Language per PHP.
Ruby: segui le istruzioni per la configurazione di Ruby nella pagina delle librerie client e poi visita la documentazione di riferimento di Natural Language per Ruby.