Eseguire il debug di Gemini Nano

Data di pubblicazione: 28 febbraio 2025

In Chrome, l'AI integrata si basa su Gemini Nano per eseguire l'inferenza per tutte le API. A volte, Gemini Nano potrebbe restituire un messaggio di errore o non restituire il risultato che ti aspetti. Puoi esaminare le informazioni di debug per tutte le API AI integrate che utilizzano Gemini Nano. Sono incluse l'API Prompt, l'API Summarizer, l'API Writer e l'API Rewriter.

  1. Apri Chrome e vai su chrome://on-device-internals.
  2. Seleziona Log eventi.
  3. (Facoltativo) Fai clic su Dump per scaricare un file JSON con tutte le informazioni sull'evento.

Puoi segnalare un bug per consentirci di risolvere questo errore nella nostra implementazione.

Eseguire il debug dell'API Prompt

Ad esempio, nella seguente sessione l'utente ha richiesto parole in rima dall'API Prompt.

const session = await LanguageModel.create({
  systemPrompt: "You are an API endpoint that returns rhymes as JSON for an input word."
});

await session.prompt([
  { role: "user", content: "house" },  
  { role: "assistant", content: "{\"input\": \"house\", \"output\": \"mouse\"}" },
  { role: "user", content: "file"},  
]);

La risposta del modello è stata la seguente, formattata per una maggiore leggibilità:

```json
[]
```

**Reasoning:**

The input you provided (empty arrays) is an empty list or array in JSON format.
When you try to find rhymes for an empty list, you're essentially looking for
words that rhyme with nothing.


Therefore, there are no rhymes to return. The JSON response will be an empty
array `[]`."

Perché il modello non ha restituito un messaggio JSON con una parola in rima, idealmente {"input": "file", "output": "pile"}? Sebbene l'output strutturato non sia ancora implementato al momento della stesura di questo articolo, la risposta dovrebbe almeno in qualche modo eseguire il compito di rima.

Per eseguire il debug di questo errore, visita chrome://on-device-internals/ e vai alla scheda Log eventi. Il log rivela che il problema risiedeva nell'interpretazione del prompt da parte del modello. Anziché JSON, il modello ha interpretato l'input come una stringa: [object Object],[object Object],[object Object].

Ecco il messaggio di debug completo, formattato per una maggiore leggibilità:

Executing model with input context of 0 tokens:
<system>You are an API endpoint that returns rhymes as JSON for an input word.<end>
with string: <user>[object Object],[object Object],[object Object]<end> <model>

La scheda Event Logs (Log eventi) della pagina speciale chrome://on-device-internals con informazioni di debug.

Abbiamo aggiunto queste informazioni a un bug relativo al problema del modello, L'API Prompt sembra eseguire toString() sull'input JSON, il che ha aiutato il team tecnico a identificare il problema.

Condividi feedback

Condividi il tuo feedback sul debug inviando una segnalazione di bug.