Introducció
L'API de llenguatge natural de Google Cloud (Natural Language API) proporciona eines potents per analitzar i comprendre el text escrit. Aquesta API permet als desenvolupadors integrar fàcilment funcions de processament de llenguatge natural (NLP) en les seves aplicacions, com ara l'anàlisi de sentiments, l'extracció d'entitats, la classificació de continguts i molt més.
Objectius d'aprenentatge
En aquest tema, aprendràs a:
- Comprendre les capacitats de l'API de llenguatge natural.
- Configurar l'API de llenguatge natural al teu projecte de GCP.
- Utilitzar l'API per analitzar text.
- Interpretar els resultats retornats per l'API.
Capacitats de l'API de llenguatge natural
L'API de llenguatge natural ofereix diverses funcionalitats clau:
- Anàlisi de sentiments: Determina l'actitud general (positiva, negativa o neutra) d'un text.
- Extracció d'entitats: Identifica i classifica entitats (persones, llocs, organitzacions, etc.) en un text.
- Classificació de continguts: Classifica el text en categories predefinides.
- Anàlisi sintàctica: Analitza l'estructura gramatical del text.
Configuració de l'API de llenguatge natural
Pas 1: Crear un projecte a GCP
- Accedeix a la Consola de Google Cloud.
- Crea un nou projecte o selecciona un projecte existent.
Pas 2: Activar l'API de llenguatge natural
- A la consola de GCP, ves a API & Services > Library.
- Cerca "Natural Language API" i fes clic a Enable.
Pas 3: Configurar les credencials
- Ves a API & Services > Credentials.
- Crea una nova clau d'API o utilitza una clau existent.
- Desa la clau d'API en un lloc segur, ja que la necessitaràs per fer sol·licituds a l'API.
Utilitzar l'API de llenguatge natural
Exemple de codi: Anàlisi de sentiments
A continuació, es mostra un exemple de com utilitzar l'API de llenguatge natural per analitzar el sentiment d'un text utilitzant Python.
import os from google.cloud import language_v1 # Configura la clau d'API os.environ["GOOGLE_APPLICATION_CREDENTIALS"] = "ruta/a/la/teva/clau.json" def analitzar_sentiment(text): client = language_v1.LanguageServiceClient() document = language_v1.Document( content=text, type_=language_v1.Document.Type.PLAIN_TEXT ) response = client.analyze_sentiment(request={'document': document}) sentiment = response.document_sentiment print(f"Text: {text}") print(f"Score: {sentiment.score}, Magnitude: {sentiment.magnitude}") # Exemple de text text = "M'encanta programar amb Google Cloud Platform!" analitzar_sentiment(text)
Explicació del codi
- Importar biblioteques: Importem les biblioteques necessàries per treballar amb l'API de llenguatge natural.
- Configurar la clau d'API: Establim la variable d'entorn
GOOGLE_APPLICATION_CREDENTIALS
amb la ruta a la nostra clau d'API. - Crear un client de LanguageService: Inicialitzem un client per interactuar amb l'API.
- Crear un document: Definim el text que volem analitzar com un document de tipus
PLAIN_TEXT
. - Analitzar el sentiment: Fem una sol·licitud a l'API per analitzar el sentiment del text.
- Mostrar els resultats: Imprimim el text original i els resultats de l'anàlisi de sentiment (score i magnitude).
Interpretar els resultats
- Score: Un valor entre -1.0 (molt negatiu) i 1.0 (molt positiu) que indica el sentiment general del text.
- Magnitude: Un valor que indica la força del sentiment expressat en el text, independentment de si és positiu o negatiu.
Exercicis pràctics
Exercici 1: Anàlisi de sentiments
Escriu un programa que llegeixi un text des d'un fitxer i utilitzi l'API de llenguatge natural per analitzar el sentiment del text.
Solució
import os from google.cloud import language_v1 # Configura la clau d'API os.environ["GOOGLE_APPLICATION_CREDENTIALS"] = "ruta/a/la/teva/clau.json" def analitzar_sentiment(text): client = language_v1.LanguageServiceClient() document = language_v1.Document( content=text, type_=language_v1.Document.Type.PLAIN_TEXT ) response = client.analyze_sentiment(request={'document': document}) sentiment = response.document_sentiment print(f"Text: {text}") print(f"Score: {sentiment.score}, Magnitude: {sentiment.magnitude}") # Llegir text des d'un fitxer with open("text.txt", "r") as file: text = file.read() analitzar_sentiment(text)
Exercici 2: Extracció d'entitats
Escriu un programa que utilitzi l'API de llenguatge natural per extreure entitats d'un text i mostrar-les amb les seves categories.
Solució
import os from google.cloud import language_v1 # Configura la clau d'API os.environ["GOOGLE_APPLICATION_CREDENTIALS"] = "ruta/a/la/teva/clau.json" def extreure_entitats(text): client = language_v1.LanguageServiceClient() document = language_v1.Document( content=text, type_=language_v1.Document.Type.PLAIN_TEXT ) response = client.analyze_entities(request={'document': document}) for entity in response.entities: print(f"Entitat: {entity.name}, Tipus: {entity.type_}, Salience: {entity.salience}") # Exemple de text text = "Google Cloud Platform és un servei de Google que ofereix computació en el núvol." extreure_entitats(text)
Resum
En aquest tema, hem après a:
- Comprendre les capacitats de l'API de llenguatge natural de Google Cloud.
- Configurar l'API al nostre projecte de GCP.
- Utilitzar l'API per analitzar sentiments i extreure entitats d'un text.
- Interpretar els resultats retornats per l'API.
Amb aquestes habilitats, pots començar a integrar funcions avançades de processament de llenguatge natural en les teves aplicacions, millorant la seva capacitat per comprendre i analitzar el text escrit.
Curs de Google Cloud Platform (GCP)
Mòdul 1: Introducció a Google Cloud Platform
- Què és Google Cloud Platform?
- Configurar el teu compte de GCP
- Visió general de la consola de GCP
- Comprendre projectes i facturació
Mòdul 2: Serveis bàsics de GCP
Mòdul 3: Xarxes i seguretat
Mòdul 4: Dades i analítica
Mòdul 5: Aprenentatge automàtic i IA
Mòdul 6: DevOps i monitoratge
- Cloud Build
- Repositoris de codi font al núvol
- Funcions al núvol
- Monitoratge de Stackdriver
- Gestor de desplegament al núvol
Mòdul 7: Temes avançats de GCP
- Híbrid i multi-núvol amb Anthos
- Computació sense servidor amb Cloud Run
- Xarxes avançades
- Millors pràctiques de seguretat
- Gestió i optimització de costos