REST Resource: projects.locations.collections.engines.sessions.alphaEvolveExperiments

Risorsa: AlphaEvolveExperiment

Un esperimento è una singola esecuzione dell'agente AlphaEvolve, un agente di codifica evolutivo basato su LLM per la scoperta e l'ottimizzazione degli algoritmi.

Rappresentazione JSON
{
  "name": string,
  "createTime": string,
  "config": {
    object (AlphaEvolveExperimentConfig)
  },
  "stats": {
    object (AlphaEvolveExperimentStats)
  },
  "state": enum (State),
  "initialAlphaEvolveProgram": string
}
Campi
name

string

Identificatore. Il nome completo della risorsa dell'esperimento. Formato: projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/sessions/{session}/alphaEvolveExperiments/{alphaEvolveExperiment}

createTime

string (Timestamp format)

Solo output. Ora in cui è stato creato l'esperimento.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

config

object (AlphaEvolveExperimentConfig)

Obbligatorio. Configurazione dell'esperimento.

stats

object (AlphaEvolveExperimentStats)

Solo output. Statistiche dell'esperimento.

state

enum (State)

Solo output. Lo stato dell'esperimento.

initialAlphaEvolveProgram

string

Solo output. Specifica il nome del programma iniziale utilizzato per avviare l'esperimento.

AlphaEvolveExperimentConfig

Configurazione di un esperimento.

Rappresentazione JSON
{
  "title": string,
  "problemDescription": string,
  "programLanguage": string,
  "runSettings": {
    object (RunSettings)
  },
  "generationSettings": {
    object (GenerationSettings)
  },
  "evolutionSettings": {
    object (EvolutionSettings)
  }
}
Campi
title

string

Titolo dell'esperimento (obbligatorio).

problemDescription

string

Obbligatorio. Descrizione del problema da risolvere con l'esperimento.

programLanguage

string

Obbligatorio. Linguaggio di programmazione principale del codice da ottimizzare.

runSettings

object (RunSettings)

Obbligatorio. Impostazioni di esecuzione dell'esperimento, che controllano il comportamento generale dell'esecuzione dell'esperimento.

generationSettings

object (GenerationSettings)

Facoltativo. Impostazioni di generazione per l'esperimento, che controllano la modalità di generazione dei nuovi candidati al programma, inclusi i parametri LLM e i prompt e il contesto forniti dagli utenti.

evolutionSettings

object (EvolutionSettings)

Facoltativo. Impostazioni di evoluzione per l'esperimento.

RunSettings

Impostazioni di esecuzione dell'esperimento.

Rappresentazione JSON
{
  "maxPrograms": integer,
  "concurrency": integer,
  "maxDuration": string
}
Campi
maxPrograms

integer

Obbligatorio. Il numero massimo di programmi da generare durante l'esecuzione dell'esperimento. Il programma iniziale viene conteggiato ai fini di questo limite. Deve essere superiore a 1.

concurrency

integer

Obbligatorio. Il numero massimo di programmi che possono essere generati in parallelo. Deve essere positivo.

maxDuration

string (Duration format)

Facoltativo. Durata massima dell'esperimento. Se non viene impostato, il valore predefinito è 24 ore.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

GenerationSettings

Impostazioni di generazione per l'esperimento.

Rappresentazione JSON
{
  "context": string,
  "includeFullProgramInPrompt": boolean,
  "models": [
    {
      object (ModelConfig)
    }
  ]
}
Campi
context

string

Facoltativo. Contesto aggiuntivo fornito dall'utente da utilizzare durante la generazione.

includeFullProgramInPrompt

boolean

Facoltativo. Quando è vero, il prompt LLM include il testo completo del programma (sia le regioni EVOLVE-BLOCK modificabili che il codice standard immutabile). Se il valore è false (impostazione predefinita), vengono mostrate solo le regioni EVOLVE-BLOCK modificabili, risparmiando spazio nella finestra contestuale.

models[]

object (ModelConfig)

Facoltativo. Configurazione per modello. Per i dettagli, consulta la pagina ModelConfig. Se non specificato, il server seleziona un modello predefinito.

ModelConfig

Configurazione per modello. Mutuamente esclusivi con modelMixture e model: quando models è impostato, sia modelMixture che model devono essere lasciati non impostati.

Si applicano lo stesso elenco di modelli consentiti e la stessa regola di massimo due modelli di modelMixture. Inoltre, ogni voce può specificare un temperature per modello per il campionamento LLM. A differenza di modelMixture, i pesi qui sono relativi: contano solo i loro rapporti (il server li normalizza), quindi i chiamanti possono utilizzare qualsiasi numero positivo senza dover assicurarsi che la somma sia pari a 1.0.

Rappresentazione JSON
{
  "name": string,
  "thinkingLevel": enum (ThinkingLevel),
  "weight": number
}
Campi
name

string

Obbligatorio. Nome del modello (ad es. gemini-2.5-flash, gemini-3.1-pro-preview). Consulta modelMixture per l'elenco dei modelli consentiti.

thinkingLevel

enum (ThinkingLevel)

Facoltativo. Inviato come vertice ThinkingConfig.thinking_level.

weight

number

Facoltativo. Peso relativo di questo modello nel mix. Deve essere un valore finito e strettamente positivo. I pesi di tutte le voci vengono normalizzati lato server, quindi non devono sommare a 1,0. Se non impostato, il valore predefinito è 1.0, il che è utile quando si configura un singolo modello o una miscela uniforme.

Alcuni modelli di livello Pro hanno un limite massimo del 50% del peso totale; le richieste che violano tale limite vengono rifiutate con INVALID_ARGUMENT.

ThinkingLevel

Quanto dovrebbe essere rigoroso il modello pensare, come un livello portatile piuttosto che un budget simbolico. I livelli necessitano di un modello Gemini 3: Gemini 2.5 e precedenti ragionano sul budget in token e rifiutano un livello direttamente.

I livelli accettati da un determinato modello e quelli utilizzati quando non sono impostati sono specifici per modello e documentati con il modello stesso, non qui.

Enum
THINKING_LEVEL_UNSPECIFIED Non impostata. Il modello applica il proprio valore predefinito, che non è lo stesso per tutti i modelli.
MINIMAL Il meno pensante. Non offerto da tutti i modelli.
LOW Vertex LOW.
MEDIUM Vertex MEDIUM.
HIGH Vertex HIGH.

EvolutionSettings

Impostazioni di evoluzione per l'esperimento.

Rappresentazione JSON
{
  "parentSamplingConfig": {
    object (ParentSamplingConfig)
  }
}
Campi
parentSamplingConfig

object (ParentSamplingConfig)

Facoltativo. Configurazione del campionamento principale.

ParentSamplingConfig

Configurazione per il campionamento principale.

Rappresentazione JSON
{
  "paretoSamplingConfig": {
    object (ParetoSamplingConfig)
  }
}
Campi
paretoSamplingConfig

object (ParetoSamplingConfig)

Facoltativo. Configurazione del campionamento di Pareto.

ParetoSamplingConfig

Configurazione per il campionamento di Pareto.

Rappresentazione JSON
{
  "paretoSamplingProbability": number
}
Campi
paretoSamplingProbability

number

(Facoltativo) Probabilità [0.0, 1.0] di campionamento dei programmi principali dalla frontiera di Pareto anziché dal normale campionamento basato sull'idoneità durante la generazione dei candidati. Utile quando si ottimizzano più metriche contemporaneamente. Il valore predefinito è 0,0 (disabilitato). Efficace solo quando la valutazione restituisce più metriche in scores_to_optimize.

AlphaEvolveExperimentStats

Statistiche sull'esperimento.

Rappresentazione JSON
{
  "candidatesCount": integer,
  "evaluatedCandidatesCount": integer,
  "inputTokenCount": string,
  "outputTokenCount": string
}
Campi
candidatesCount

integer

Solo output. Numero di candidati generati.

evaluatedCandidatesCount

integer

Solo output. Numero di candidati valutati.

inputTokenCount

string (int64 format)

Solo output. Numero di token di input fatturati consumati dall'esperimento.

outputTokenCount

string (int64 format)

Solo output. Numero di token di output fatturabili consumati dall'esperimento.

Stato

valori dello stato dell'esperimento.

Enum
STATE_UNSPECIFIED Valore predefinito. Questo valore non viene utilizzato.
CREATED L'esperimento viene creato.
RUNNING L'esperimento è in corso.
PAUSED L'esperimento è in pausa.
COMPLETED L'esperimento è stato completato.
FAILED L'esperimento non è riuscito.

Metodi

acquirePrograms

Acquisisce uno o più AlphaEvolveProgram dalla coda di programmi generata per la valutazione.

create

Crea un nuovo AlphaEvolveExperiment.

delete

Elimina un esperimento a condizione che si trovi in uno stato finale (ad es.

get

Ottieni un AlphaEvolveExperiment esistente.

list

Elenca tutti i AlphaEvolveExperiment in una determinata sessione.

resume

Riprende un workflow per elaborare AlphaEvolveExperiment.

start

Avvia un workflow per elaborare AlphaEvolveExperiment.

submitProgramsEvaluations

Aggiunge un AlphaEvolveProgramEvaluation all'esperimento.