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:

  1. Comprendre les capacitats de l'API de llenguatge natural.
  2. Configurar l'API de llenguatge natural al teu projecte de GCP.
  3. Utilitzar l'API per analitzar text.
  4. 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

  1. Accedeix a la Consola de Google Cloud.
  2. Crea un nou projecte o selecciona un projecte existent.

Pas 2: Activar l'API de llenguatge natural

  1. A la consola de GCP, ves a API & Services > Library.
  2. Cerca "Natural Language API" i fes clic a Enable.

Pas 3: Configurar les credencials

  1. Ves a API & Services > Credentials.
  2. Crea una nova clau d'API o utilitza una clau existent.
  3. 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

  1. Importar biblioteques: Importem les biblioteques necessàries per treballar amb l'API de llenguatge natural.
  2. Configurar la clau d'API: Establim la variable d'entorn GOOGLE_APPLICATION_CREDENTIALS amb la ruta a la nostra clau d'API.
  3. Crear un client de LanguageService: Inicialitzem un client per interactuar amb l'API.
  4. Crear un document: Definim el text que volem analitzar com un document de tipus PLAIN_TEXT.
  5. Analitzar el sentiment: Fem una sol·licitud a l'API per analitzar el sentiment del text.
  6. 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.

© Copyright 2024. Tots els drets reservats