L'AI dentro il browser: la Prompt API con Gemini Nano - init.d
EN

# L'AI dentro il browser: la Prompt API con Gemini Nano

Alessandro Corbelli~7 min read min
Table of Contents

Quasi ogni funzione “intelligente” che usiamo online - un riassunto automatico, un suggerimento di scrittura, la risposta a una domanda - funziona nello stesso modo. Il testo parte dal dispositivo, viaggia fino a un server, viene elaborato da un modello di intelligenza artificiale e torna indietro. È comodo, ma ha tre prezzi: i dati escono dal dispositivo, c’è un’attesa per il viaggio di andata e ritorno, e ogni richiesta ha un costo per chi offre il servizio. La Prompt API di Chrome prova a cambiare questo schema. Porta il modello dentro il browser, sul computer di chi naviga, così l’elaborazione avviene in locale, senza chiamare il cloud.

Cos’è la Prompt API

Un’API (in inglese application programming interface) è un insieme di istruzioni concordate con cui un programma chiede un servizio a un altro. La Prompt API è quindi il modo con cui il codice di una pagina web o di un’estensione può inviare una richiesta a un modello AI già presente in Chrome.

In parole semplici: si scrive la richiesta come la si scriverebbe a un assistente (“riassumi questo testo”, “estrai nome ed email da questo messaggio”, “questa recensione è positiva o negativa?”) e il modello risponde. La parola prompt indica proprio quella richiesta in linguaggio naturale.

Il modello che risponde si chiama Gemini Nano. È una versione compatta dei modelli Gemini di Google, pensata per girare su un dispositivo normale invece che in un centro dati. Un dettaglio importante: il modello non è incluso dentro il browser. Viene scaricato a parte la prima volta che un sito o un’estensione lo usa, poi resta sul dispositivo e le richieste successive non ripetono il download.

Cosa permette di fare

La Prompt API è generica: non è legata a un solo compito. Secondo la documentazione di Chrome, il modello può gestire ragionamento e generazione di testo, classificazione, estrazione e analisi di contenuti. In pratica coincide con i lavori che ricorrono di più su una pagina:

  • Riassumere un articolo lungo o un thread di messaggi in poche righe.
  • Classificare un testo, per esempio dividere le richieste in “urgente” e “non urgente” o capire il tono di un commento.
  • Estrarre informazioni strutturate da testo libero: una data e un luogo da un invito, un contatto da una firma email.
  • Riscrivere o generare brevi testi a partire da istruzioni.

Un aspetto meno ovvio: la Prompt API non accetta solo testo. La documentazione indica che può ricevere anche immagini e audio come input. Questo apre casi come descrivere il contenuto di un’immagine o trascrivere una nota vocale, sempre in locale.

Per i compiti più comuni esistono inoltre API dedicate, più semplici da usare perché già specializzate: tra queste ci sono il Summarizer (riassunti), il Translator (traduzione), il Language Detector (riconoscimento della lingua), oltre a Writer, Rewriter e Proofreader per scrivere, riscrivere e correggere. Fanno parte della stessa famiglia di funzioni AI integrate nel browser, un approccio simile, in fondo, al modo in cui le Agent Skills incapsulano procedure specifiche per gli assistenti AI.

Perché conta: privacy, latenza, costi

Il motivo per cui questa novità merita attenzione non è “c’è l’AI nel browser”, ma dove avviene il calcolo.

Privacy. Se il modello gira sul dispositivo, il testo (o l’immagine) da elaborare non deve essere spedito a un server esterno. Per contenuti delicati - appunti personali, bozze non ancora pubbliche, messaggi privati - è una differenza sostanziale: il dato non lascia il computer, un aspetto che pesa anche sul fronte della conformità GDPR.

Latenza. Senza il viaggio verso il cloud e ritorno, la risposta può arrivare prima. E, una volta scaricato il modello, molte richieste possono funzionare anche offline, cosa impossibile quando ogni operazione dipende da un server remoto.

Costi. Ogni chiamata a un modello nel cloud ha un prezzo per chi sviluppa il servizio. Con l’elaborazione in locale quel costo per singola richiesta non c’è: il lavoro sfrutta il dispositivo di chi naviga. Per funzioni usate spesso, la differenza sul conto finale è concreta.

Nessuno di questi vantaggi cancella il cloud. I modelli grandi che girano nei data center restano più capaci. Il punto è avere una scelta: per i compiti semplici e frequenti, l’opzione locale spesso basta.

Lo stato: cosa è pronto e cosa no

Qui serve onestà, perché lo stato non è uniforme.

Per le estensioni di Chrome la Prompt API è arrivata alla versione stabile: gli sviluppatori di estensioni possono usarla in produzione. Il percorso è iniziato con un origin trial (una fase di prova pubblica riservata a chi si iscrive) partito con Chrome 131 ed è poi diventato disponibile in modo stabile.

Sulle pagine web normali, invece, la situazione è più acerba: l’accesso passa da origin trial o da un flag da attivare a mano. In sostanza, sul web aperto è ancora una tecnologia in evoluzione, non qualcosa su cui costruire senza un piano B.

Ci sono poi requisiti concreti che limitano la disponibilità. La documentazione parla di dispositivi desktop (Windows 10 o 11, macOS 13 e successivi, Linux; su ChromeOS solo i Chromebook Plus) e non di Chrome per Android o iOS. Servono spazio libero su disco (la documentazione indica circa 22 GB) e una scheda grafica con più di 4 GB di memoria dedicata, oppure abbastanza RAM e core della CPU. Tradotto: non ogni visitatore ha un dispositivo idoneo, e questo va messo in conto.

Un esempio minimo

Il codice qui sotto mostra lo schema di base: prima si verifica se il modello è disponibile, poi si crea una sessione e si invia la richiesta.

// 1. Verifica se il modello è utilizzabile su questo dispositivo
const stato = await LanguageModel.availability();
if (stato !== "unavailable") {
// 2. Crea una sessione (può scaricare il modello al primo uso)
const sessione = await LanguageModel.create();
// 3. Invia una richiesta e attende la risposta completa
const risposta = await sessione.prompt(
"Riassumi in una frase: " + testo
);
// 4. Libera le risorse quando hai finito
sessione.destroy();
}

Esiste anche promptStreaming(), che restituisce la risposta poco alla volta man mano che viene generata, utile per mostrare subito qualcosa all’utente su testi lunghi.

I limiti da tenere presenti

  • È un modello piccolo. Gemini Nano è meno capace dei grandi modelli nel cloud. Rende bene su compiti ben definiti (riassunto, classificazione, estrazione), meno su ragionamenti complessi o conoscenza molto specifica.
  • Può sbagliare. Come ogni modello di questo tipo, a volte produce risposte errate o inventate. L’output va trattato come una bozza, non come una verità da usare tale e quale per decisioni importanti.
  • La disponibilità varia. Serve sempre controllare con availability() prima di usare l’API e prevedere un’alternativa (per esempio un servizio nel cloud, o un flusso manuale) per chi non ha un dispositivo idoneo.
  • Sul web è ancora in movimento. L’interfaccia può cambiare durante la fase di prova. Sulle pagine web aperte conviene sperimentare, non ancora dipenderne per funzioni critiche.

In sintesi

La Prompt API permette al codice di una pagina o di un’estensione di parlare con Gemini Nano, un modello AI che gira dentro Chrome, sul dispositivo. Serve per riassumere, classificare, estrarre e generare testo - e anche per immagini e audio - senza mandare i dati al cloud. I vantaggi sono chiari: più privacy, meno attesa, nessun costo per singola richiesta. Lo stato, però, va letto con precisione: stabile per le estensioni, ancora sperimentale sulle pagine web, con requisiti di dispositivo che escludono una parte degli utenti. Non è la fine del cloud, ma un’opzione in più: portare l’AI dove sta il dato, invece di spedire il dato dove sta l’AI.

Fonti

Tux versione Gandalf, mascotte del blog init.d

init.d è il team di Alessandro Corbelli, sistemista Linux e sviluppatore backend con oltre vent’anni di esperienza. Progetta e gestisce infrastrutture cloud (Google Cloud, AWS, Azure), server farm e architetture ad alta disponibilità, e sviluppa software su misura in Laravel/PHP e Vue - dalla piattaforma di food delivery Take2Me ai gestionali dei nostri clienti. Su questo blog condividiamo note tecniche su Linux, sistemistica, sviluppo, DevOps ed e-commerce.


Altri articoli