Resum i classificació de notícies en temps real amb NLP i Google Colab

Explora com utilitzar NLP per resumir i classificar notícies en temps real. Un projecte amb Hugging Face i Google Colab que combina RSS de la BBC amb models de Processament del Llenguatge Natural.

Com utilitzar NLP per resumir i classificar notícies

🧭 Rol: Exercici
🗂️ Àrea: Data Science
📅 Any: 2025
🧩 Stack: Python
📝 Crèdits: deGalaLab

Resultats / Insights

* News monitoring

* Trend detection

* Automatic summaries for newsletters

Resum i classificació de notícies en temps real amb NLP i Google Colab

En aquest projecte explorem com aplicar NLP (Processament del Llenguatge Natural) per treballar amb notícies en temps real. L’objectiu és aconseguir resums automàtics i classificació temàtica utilitzant dades del feed RSS de la BBC i models pre-entrenats de Hugging Face.

Mètode

  1. Lectura de notícies en temps real via RSS.
  2. Resum automàtic amb el model BART CNN.
  3. Classificació zero-shot en categories com política, esports, negocis, tecnologia i entreteniment.
  4. Presentació de resultats en una taula clara amb resum i categoria.

Resultats

Els resultats mostren com és possible aconseguir resums útils i categories raonablement correctes en pocs segons, amb molt poc codi.

TítolResumCategoria
Prince Harry meets King Charles…Prince Harry meets King Charles for the first time since Feb 2024.World
Gary Lineker ends Ant and Dec’s…Gary Lineker breaks their 23-year winning streak.Sport

Notebook en temps real

Vols provar-ho tu mateix?
· Obrir a Google Colab

Codi font complet també disponible a GitHub:
· Gist de deGalaLab

Conclusions

Aquest experiment demostra com el Processament del Llenguatge Natural pot ser aplicat a fonts en temps real, obrint la porta a aplicacions com:

  • Monitoratge de notícies
  • Detecció de tendències
  • Resums automàtics per newsletters

El següent pas és extreure el cos complet dels articles i refinar els resums per aconseguir informació encara més valuosa.


MÉS INFORMACIÓ:

Què és Hugging Face?

És una empresa i una comunitat oberta que ofereix:


Per què l’hem fet servir en aquest exercici?

Perquè dona accés fàcil i ràpid a:


Mini Guia de Hugging Face

Hugging Face Hub

  • Web: https://huggingface.co/models
  • Allà es troben milers de models publicats per empreses, investigadors i la comunitat.
  • Es poden filtrar per tasques: summarization, translation, sentiment analysis, text-generation, speech-to-text, image-classification…

Exemple: facebook/bart-large-cnn (model de resum que hem usat).


Provar models al navegador (sense codi)

  • Quan s’entra a la pàgina d’un model, gairebé sempre hi ha una caixa de prova interactiva: enganxes un text → el model et retorna el resum / classificació / traducció.
  • Ideal per fer proves ràpides abans d’anar a Colab o Python.

Com fer servir models amb Python

Primer instal·lem la llibreria:

!pip install transformers torch

Exemple 1: Resum automàtic

from transformers import pipeline

summarizer = pipeline("summarization", model="facebook/bart-large-cnn")

text = """The government announced a new economic reform to boost renewable energy investment across Europe..."""

summary = summarizer(text, max_length=50, min_length=20, do_sample=False)
print(summary[0]['summary_text'])

Exemple 2: Classificació zero-shot

from transformers import pipeline

classifier = pipeline("zero-shot-classification", model="facebook/bart-large-mnli")

labels = ["politics", "sport", "economy", "technology", "entertainment"]

result = classifier("The government passed a new law on renewable energy.", candidate_labels=labels)
print(result["labels"][0], result["scores"][0])

Datasets a Hugging Face

from datasets import load_dataset

dataset = load_dataset("ag_news")
print(dataset["train"][0])

Hugging Face Spaces

  • https://huggingface.co/spaces
  • Petites apps creades amb Gradio o Streamlit.
  • Es poden provar models amb interfície gràfica (per exemple, reconeixement de veu, traducció en directe, etc.).

Inference API (Opcional)

  • Hugging Face ofereix API al núvol (es necessita token personal).
  • Exemple:
from huggingface_hub import InferenceApi

inference = InferenceApi(repo_id="facebook/bart-large-cnn")
result = inference("Your long text here...")
print(result)

Amb això tenim tot el cicle:

  1. Buscar model → 2. Provar al web → 3. Executar amb Python/Colab → 4. Compartir resultats.