API Proofreader

Data di pubblicazione: 12 settembre 2025

Divulgatore Web Estensioni Stato di Chrome Intenzione
GitHub Prova dell'origine Prova dell'origine Prova dell'origine Prova dell'origine Visualizza Intenzione di sperimentare

La correzione bozze è il processo di ricerca e correzione degli errori di grammatica, ortografia e punteggiatura. I browser e i sistemi operativi offrono sempre più spesso la correzione bozze ai loro strumenti di composizione, ad esempio in Documenti Google.

Con l'API Proofreader, puoi fornire la correzione bozze interattiva alla tua applicazione web o estensione, con l'AI integrata. Questa API offre le seguenti funzioni:

  • Correzione: correggi gli input dell'utente per la grammatica, l'ortografia e la punteggiatura.
  • Etichette: etichetta ogni correzione in base al tipo di errore.
  • Spiegazione: definisci in linguaggio semplice cos'è l'errore o perché la correzione era necessaria.

Casi d'uso

Esistono molti motivi per cui potresti voler utilizzare l'API Proofreader, ad esempio:

  • Suggerisci correzioni a messaggi di forum, commenti su articoli ed email prima dell'invio del post.
  • Fornisci correzioni durante la presa di appunti attiva.

Il tuo caso d'uso non è presente? Partecipa al programma di anteprima per condividere il tuo feedback.

Inizia

Partecipa alla prova dell'origine dell'API Proofreader, in esecuzione in Chrome 141-145.

Esamina i requisiti hardware

Esistono i seguenti requisiti per gli sviluppatori e gli utenti che utilizzano le funzionalità che utilizzano queste API in Chrome. Altri browser potrebbero avere requisiti operativi diversi.

Le API Language Detector e Translator funzionano in Chrome su computer. Queste API non funzionano sui dispositivi mobili.

Le API Prompt, Summarizer, Writer, Rewriter e Proofreader funzionano in Chrome quando sono soddisfatte le seguenti condizioni:

  • Sistema operativo: Windows 10 o 11; macOS 13+ (Ventura e versioni successive); Linux; o ChromeOS (dalla piattaforma 16389.0.0 e versioni successive) sui dispositivi Chromebook Plus. Chrome per Android, iOS e ChromeOS sui dispositivi non Chromebook Plus non è ancora supportato dalle API che utilizzano Gemini Nano.
  • Spazio di archiviazione: almeno 22 GB di spazio libero sul volume che contiene il tuo profilo Chrome.
  • GPU o CPU: i modelli integrati possono essere eseguiti con GPU o CPU.
    • GPU: rigorosamente più di 4 GB di VRAM.
    • CPU: almeno 16 GB di RAM e almeno 4 core CPU.
    • Nota: l'API Prompt con input audio richiede una GPU.
  • Rete: dati illimitati o una connessione non a consumo.

Le dimensioni esatte di Gemini Nano possono variare man mano che il browser aggiorna il modello. Per determinare le dimensioni attuali, visita chrome://on-device-internals.

Aggiungi il supporto a localhost

Tutte le API AI integrate sono disponibili su localhost in Chrome. Imposta i seguenti flag su Attivato:

  • chrome://flags/#optimization-guide-on-device-model
  • chrome://flags/#prompt-api-for-gemini-nano-multimodal-input
  • chrome://flags/#proofreader-api-for-gemini-nano

Quindi, fai clic su Riavvia o riavvia Chrome. Se riscontri errori, risolvi i problemi relativi a localhost.

Registrati alla prova dell'origine

Per iniziare a utilizzare l'API Proofreader:

  1. Accetta le Norme relative all'uso vietato dell'AI generativa di Google.
  2. Vai alla prova dell'origine dell'API Proofreader.
  3. Fai clic su Registrati e compila il modulo. Nel campo Origine web, fornisci la tua origine o l'ID dell'estensione, chrome-extension://YOUR_EXTENSION_ID.
  4. Per inviare, fai clic su Registrati.
  5. Copia il token fornito e aggiungilo a ogni pagina web partecipante nella tua origine o includilo nel manifest dell'estensione.
  6. Inizia a utilizzare l'API Proofreader.

Scopri di più su come iniziare a utilizzare le prove dell'origine.

Utilizza l'API Proofreader

Per determinare se il modello è pronto per l'uso, chiama Proofreader.availability(). Se la risposta a availability() è "downloadable", ascolta l'avanzamento del download e informa l'utente, poiché il download potrebbe richiedere del tempo.

const options = {
  expectedInputLanguages: ['en'],
};
const available = if (Proofreader.availability("downloadable") === true);

Per attivare il download e creare un'istanza del correttore bozze, verifica l'attivazione dell'utente . Quindi, chiama la funzione asincrona Proofreader.create().

const session = await Proofreader.create({
  monitor(m) {
    m.addEventListener('downloadprogress', (e) => {
      console.log(`Downloaded ${e.loaded * 100}%`);
    });
  },
  ...options,
});

Crea un oggetto Proofreader

Per creare un correttore bozze, utilizza la funzione Proofreader.create().

const proofreader = await Proofreader.create({
  expectedInputLanguages: ["en"],
  monitor(m) {
    m.addEventListener("downloadprogress", e => {
      console.log(Downloaded ${e.loaded * 100}%);
    });
  }
};

Il metodo create() include le seguenti opzioni:

  • expectedInputLanguages: un array di lingue di input previste.

Le opzioni includeCorrectionTypes e includeCorrectionExplanation del divulgatore non sono supportate.

Inizia la correzione bozze del testo dell'utente

Chiama proofread() per ottenere le correzioni per un testo di input:

const proofreadResult = await proofreader.proofread(
  'I seen him yesterday at the store, and he bought two loafs of bread.',
);

Le correzioni sono un tipo di ProofreadResult. Trova l'input completamente corretto nell'attributo correctedInput e l'elenco delle correzioni nell'array corrections:

let inputRenderIndex = 0;

console.log(proofreadResult.correction);

for (const correction of proofreadResult.corrections) {
  // Render part of input that has no error.
  if (correction.startIndex > inputRenderIndex) {
    const unchangedInput = document.createElement('span');
    unchangedInput.textContent = input.substring(inputRenderIndex, correction.startIndex);
    editBox.append(unchangedInput);
  }
  // Render part of input that has an error and highlight as such.
  const errorInput = document.createElement('span');
  errorInput.textContent = input.substring(correction.startIndex, correction.endIndex);
  errorInput.classList.add('error');
  editBox.append(errorInput);
  inputRenderIndex = correction.endIndex;
}

// Render the rest of the input that has no error.
if (inputRenderIndex !== input.length){
  const unchangedInput = document.createElement('span');
  unchangedInput.textContent = input.substring(inputRenderIndex, input.length);
  editBox.append(unchangedInput);
}

Criterio di autorizzazione, iframe e web worker

Per impostazione predefinita, l'API Proofreader è disponibile solo per le finestre di primo livello e per i relativi iframe della stessa origine. L'accesso all'API può essere delegato a iframe di origine diversa utilizzando l'attributo allow="" del criterio di autorizzazione:

<!--
  The hosting site at https://main.example.com can grant a cross-origin iframe
  at https://cross-origin.example.com/ access to the Proofreader API by
  setting the `allow="proofreader"` attribute.
-->
<iframe src="https://cross-origin.example.com/" allow="proofreader"></iframe>

L'API Proofreader non è disponibile nei web worker. Ciò è dovuto alla complessità di stabilire un documento responsabile per ogni worker, al fine di controllare lo stato secondo le norme del criterio di autorizzazione.

Demo

Prova l'ambiente di test dell'API Proofreader e dai un'occhiata al codice sorgente.

Partecipa e condividi feedback

L'API Proofreader è in fase di discussione e soggetta a modifiche in futuro. Se provi questa API e hai feedback, non esitare a comunicarcelo.

Scopri tutte le API AI integrate che utilizzano modelli, inclusi i modelli linguistici di grandi dimensioni, nel browser.