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

Ressource: AlphaEvolveExperiment

Ein Experiment ist ein einzelner Lauf des AlphaEvolve-Agents, eines evolutionären Codierungs-Agents, der auf LLM basiert und für die algorithmische Ermittlung und Optimierung verwendet wird.

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

string

ID. Der vollständige Ressourcenname des Tests. Format: projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/sessions/{session}/alphaEvolveExperiments/{alphaEvolveExperiment}

createTime

string (Timestamp format)

Nur Ausgabe. Der Zeitpunkt, zu dem der Test erstellt wurde.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

config

object (AlphaEvolveExperimentConfig)

Erforderlich. Konfiguration des Tests.

stats

object (AlphaEvolveExperimentStats)

Nur Ausgabe. Teststatistiken.

state

enum (State)

Nur Ausgabe. Der Status des Tests.

initialAlphaEvolveProgram

string

Nur Ausgabe. Gibt den Namen des Startprogramms an, das zum Starten des Tests verwendet wird.

AlphaEvolveExperimentConfig

Konfiguration eines Tests.

JSON-Darstellung
{
  "title": string,
  "problemDescription": string,
  "programLanguage": string,
  "runSettings": {
    object (RunSettings)
  },
  "generationSettings": {
    object (GenerationSettings)
  },
  "evolutionSettings": {
    object (EvolutionSettings)
  }
}
Felder
title

string

Erforderlich. Titel des Tests.

problemDescription

string

Erforderlich. Beschreibung des Problems, das durch den Test gelöst werden soll.

programLanguage

string

Erforderlich. Primäre Programmiersprache des zu optimierenden Codes.

runSettings

object (RunSettings)

Erforderlich. Ausführungseinstellungen für den Test, mit denen das Gesamtverhalten des Testlaufs gesteuert wird.

generationSettings

object (GenerationSettings)

Optional. Einstellungen für die Generierung des Tests, mit denen gesteuert wird, wie neue Programmkandidaten generiert werden. Dazu gehören LLM-Parameter sowie von Nutzern bereitgestellte Kontextinformationen und Prompts.

evolutionSettings

object (EvolutionSettings)

Optional. Einstellungen für die Entwicklung des Tests.

RunSettings

Einstellungen für den Test

JSON-Darstellung
{
  "maxPrograms": integer,
  "concurrency": integer,
  "maxDuration": string
}
Felder
maxPrograms

integer

Erforderlich. Maximale Anzahl der Programme, die während des Testlaufs generiert werden sollen. Das ursprüngliche Programm wird auf dieses Limit angerechnet. Muss größer als 1 sein.

concurrency

integer

Erforderlich. Maximale Anzahl von Programmen, die parallel generiert werden können. Muss positiv sein.

maxDuration

string (Duration format)

Optional. Maximale Dauer des Tests. Wenn nicht festgelegt, beträgt die Standardeinstellung 24 Stunden.

Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit „s“. Beispiel: "3.5s".

GenerationSettings

Einstellungen für die Generierung für den Test.

JSON-Darstellung
{
  "context": string,
  "includeFullProgramInPrompt": boolean,
  "models": [
    {
      object (ModelConfig)
    }
  ]
}
Felder
context

string

Optional. Zusätzlicher von Nutzern bereitgestellter Kontext, der bei der Generierung verwendet werden soll.

includeFullProgramInPrompt

boolean

Optional. Wenn „true“, enthält der LLM-Prompt den vollständigen Programmtext (sowohl veränderbare EVOLVE-BLOCK-Regionen als auch unveränderlichen Standardtext). Wenn „false“ (Standard) festgelegt ist, werden nur die veränderlichen EVOLVE-BLOCK-Regionen angezeigt, wodurch das Kontextfenster geschont wird.

models[]

object (ModelConfig)

Optional. Konfiguration pro Modell. Weitere Informationen finden Sie unter ModelConfig. Wenn kein Wert angegeben ist, wählt der Server ein Standardmodell aus.

ModelConfig

Konfiguration pro Modell. Schließt sich gegenseitig mit modelMixture und model aus: Wenn models festgelegt ist, müssen sowohl modelMixture als auch model nicht festgelegt werden.

Es gilt dieselbe Liste zulässiger Modelle und dieselbe Regel, dass höchstens zwei Modelle verwendet werden dürfen, wie für modelMixture. Außerdem kann für jeden Eintrag ein temperature für das LLM-Sampling angegeben werden. Im Gegensatz zu modelMixture sind die Gewichte hier relativ: Nur ihre Verhältnisse zählen (der Server normalisiert sie), sodass Aufrufer beliebige positive Zahlen verwenden können, ohne sicherstellen zu müssen, dass sie sich zu 1,0 addieren.

JSON-Darstellung
{
  "name": string,
  "thinkingLevel": enum (ThinkingLevel),
  "weight": number
}
Felder
name

string

Erforderlich. Modellname (z.B. gemini-2.5-flash, gemini-3.1-pro-preview). Eine Liste der zulässigen Modelle finden Sie unter modelMixture.

thinkingLevel

enum (ThinkingLevel)

Optional. Gesendet als Vertex ThinkingConfig.thinking_level.

weight

number

Optional. Das relative Gewicht dieses Modells in der Mischung. Muss ein endlicher, streng positiver Wert sein. Die Gewichte für alle Einträge werden serverseitig normalisiert.Sie müssen also nicht 1, 0 ergeben. Standardmäßig wird der Wert 1,0 verwendet, wenn er nicht festgelegt ist.Dies ist praktisch, wenn ein einzelnes Modell oder eine gleichmäßige Mischung konfiguriert wird.

Einige Modelle der Pro-Stufe sind auf maximal 50% des Gesamtgewichts begrenzt. Anfragen, die diese Grenze überschreiten, werden mit INVALID_ARGUMENT abgelehnt.

ThinkingLevel

Wie intensiv das Modell denken soll. Dies wird als portables Niveau und nicht als Token-Budget angegeben. Für Levels ist ein Gemini 3-Modell erforderlich: Gemini 2.5 und frühere Modelle berücksichtigen das Budget in Tokens und lehnen ein Level sofort ab.

Welche Ebenen ein bestimmtes Modell akzeptiert und welche es verwendet, wenn diese nicht festgelegt sind, ist modellabhängig und wird mit dem Modell dokumentiert.

Enums
THINKING_LEVEL_UNSPECIFIED Nicht festgelegt. Das Modell wendet seinen eigenen Standard an, der nicht für jedes Modell gleich ist.
MINIMAL Geringster Aufwand. Nicht bei jedem Modell verfügbar.
LOW Vertex LOW.
MEDIUM Vertex MEDIUM.
HIGH Vertex HIGH.

EvolutionSettings

Einstellungen für die Entwicklung des Tests.

JSON-Darstellung
{
  "parentSamplingConfig": {
    object (ParentSamplingConfig)
  }
}
Felder
parentSamplingConfig

object (ParentSamplingConfig)

Optional. Konfiguration der übergeordneten Stichprobenerhebung.

ParentSamplingConfig

Konfiguration für die übergeordnete Stichprobenerhebung.

JSON-Darstellung
{
  "paretoSamplingConfig": {
    object (ParetoSamplingConfig)
  }
}
Felder
paretoSamplingConfig

object (ParetoSamplingConfig)

Optional. Konfiguration für die Pareto-Stichprobenerhebung.

ParetoSamplingConfig

Konfiguration für die Pareto-Stichprobenerhebung.

JSON-Darstellung
{
  "paretoSamplingProbability": number
}
Felder
paretoSamplingProbability

number

Optional: Wahrscheinlichkeit [0,0, 1,0], dass übergeordnete Programme während der Kandidatengenerierung aus der Pareto-Grenze anstelle des normalen fitnessbasierten Samplings ausgewählt werden. Nützlich, wenn mehrere Messwerte gleichzeitig optimiert werden sollen. Der Standardwert ist 0,0 (deaktiviert). Nur wirksam, wenn bei der Auswertung mehrere Messwerte in „scores_to_optimize“ zurückgegeben werden.

AlphaEvolveExperimentStats

Statistiken zum Test.

JSON-Darstellung
{
  "candidatesCount": integer,
  "evaluatedCandidatesCount": integer,
  "inputTokenCount": string,
  "outputTokenCount": string
}
Felder
candidatesCount

integer

Nur Ausgabe. Anzahl der generierten Kandidaten.

evaluatedCandidatesCount

integer

Nur Ausgabe. Anzahl der bewerteten Kandidaten.

inputTokenCount

string (int64 format)

Nur Ausgabe. Anzahl der im Rahmen des Experiments verbrauchten abgerechneten Input-Token.

outputTokenCount

string (int64 format)

Nur Ausgabe. Anzahl der abgerechneten Ausgabetokens, die vom Test verbraucht wurden.

Bundesland

Zustandswerte für den Test.

Enums
STATE_UNSPECIFIED Standardwert. Dieser Wert wird nicht verwendet.
CREATED Der Test wird erstellt.
RUNNING Der Test wird ausgeführt.
PAUSED Der Test ist pausiert.
COMPLETED Der Test ist abgeschlossen.
FAILED Der Test ist fehlgeschlagen.

Methoden

acquirePrograms

Ruft einen oder mehrere AlphaEvolveProgram aus der generierten Warteschlange von Programmen zur Bewertung ab.

create

Erstellt einen neuen AlphaEvolveExperiment

delete

Löscht einen Test, sofern er sich in einem Endstatus befindet (z.B.

get

Ein vorhandenes AlphaEvolveExperiment abrufen.

list

Alle AlphaEvolveExperiments in einer bestimmten Sitzung auflisten

resume

Setzt einen Workflow fort, um die AlphaEvolveExperiment zu verarbeiten.

start

Startet einen Workflow zur Verarbeitung von AlphaEvolveExperiment.

submitProgramsEvaluations

Fügt dem Test ein AlphaEvolveProgramEvaluation hinzu.