Comprendere e configurare i parametri del modello

Ogni chiamata inviata a un modello include valori parametro che controllano il modo in cui il modello genera una risposta. Il modello può generare risultati diversi per valori parametro diversi. Prova diversi valori parametro per ottenere i valori migliori per l'attività. I parametri disponibili per i diversi modelli possono variare.

La configurazione viene mantenuta per tutta la durata del servizio e dell'istanza del modello Vertex AI inizializzati. Per aggiornare la configurazione del modello, l'istanza del modello deve essere reinizializzata.

Più avanti in questa pagina, puoi scoprire come configurare i parametri del modello.

Descrizione di ogni parametro

I parametri più comuni sono i seguenti:

Scopri di più su ognuno di questi parametri nelle sezioni seguenti di questa pagina.

Numero massimo di token di output

Numero massimo di token che possono essere generati nella risposta. Un token equivale a circa quattro caratteri. 100 token corrispondono a circa 20 parole.

Specifica un valore più basso per risposte più brevi e un valore più alto per risposte più lunghe.

Temperatura

La temperatura viene utilizzata per il campionamento durante la generazione della risposta, che si verifica quando vengono applicati topP e topK. La temperatura controlla il grado di casualità nella selezione dei token. Le temperature più basse sono ideali per prompt che richiedono risposte più deterministiche e meno aperte o creative, mentre le temperature più alte possono portare a risultati più diversificati o creativi. Una temperatura pari a 0 è deterministica, il che significa che viene sempre selezionata la risposta con la probabilità più alta.

Per la maggior parte dei casi d'uso, prova a iniziare con una temperatura di 0.2. Se il modello restituisce una risposta troppo generica, troppo breve o fornisce una risposta di riserva, prova ad aumentare la temperatura.

Top-K

Top-K cambia il modo in cui il modello seleziona i token per l'output. Un top-K di 1 indica che il token successivo selezionato è il più probabile tra tutti i token nel vocabolario del modello (chiamato anche decodifica greedy). Un top-K pari a 3 indica che il token successivo viene selezionato tra i tre token più probabili utilizzando la temperatura.

Per ogni fase di selezione dei token, vengono campionati i token Top-K con le probabilità più elevate. Quindi i token vengono ulteriormente filtrati in base a Top-P e il token finale viene selezionato utilizzando il campionamento con temperatura.

Specifica un valore più basso per risposte meno casuali e un valore più alto per risposte più casuali. Il valore predefinito di top-K è 40.

Top-P

Top-P cambia il modo in cui il modello seleziona i token per l'output. I token vengono selezionati dal più probabile (vedi Top-K) al meno probabile finché la somma delle loro probabilità non corrisponde al valore di Top-P. Ad esempio, se i token A, B e C hanno una probabilità di 0,3, 0,2 e 0,1 e il valore di top-P è 0.5, il modello seleziona A o B come token successivo utilizzando la temperatura ed esclude C come candidato.

Specifica un valore più basso per risposte meno casuali e un valore più alto per risposte più casuali. Il valore predefinito di top-P è 0.95.

Configura i parametri del modello


Configura i parametri del modello in generationConfig durante l'inizializzazione del modello. Ecco un esempio di base:

Kotlin+KTX

// ...

val config = generationConfig {
    maxOutputTokens = 200
    stopSequences = listOf("red")
    temperature = 0.9f
    topK = 16
    topP = 0.1f
}

val generativeModel = Firebase.vertexAI.generativeModel(
    modelName = "MODEL_NAME",
    generationConfig = config
)

// ...

Java

// ...

GenerationConfig.Builder configBuilder = new GenerationConfig.Builder();
configBuilder.maxOutputTokens = 200;
configBuilder.stopSequences = List.of("red");
configBuilder.temperature = 0.9f;
configBuilder.topK = 16;
configBuilder.topP = 0.1f;

GenerationConfig generationConfig = configBuilder.build();

GenerativeModel gm = FirebaseVertexAI.getInstance().generativeModel(
    "MODEL_NAME",
    generationConfig
);

GenerativeModelFutures model = GenerativeModelFutures.from(gm);

// ...

Altre opzioni per controllare la generazione di contenuti

  • Scopri di più sulla progettazione dei prompt in modo da poter influenzare il modello per generare un output specifico per le tue esigenze.
  • Utilizza le impostazioni di sicurezza per modificare la probabilità di ricevere risposte che potrebbero essere considerate dannose, inclusi contenuti di incitamento all'odio e sessualmente espliciti.
  • Imposta le istruzioni di sistema per orientare il comportamento del modello. Questa funzionalità è come un "preambolo" che aggiungi prima che il modello venga esposto a ulteriori istruzioni da parte dell'utente finale.
  • Passa un schema di risposta insieme al prompt per specificare uno schema di output specifico. Questa funzionalità viene solitamente utilizzata per generare output JSON, ma può essere utilizzata anche per attività di classificazione (ad esempio quando vuoi che il modello utilizzi etichette o tag specifici).