Checkpoints bei der überwachten Feinabstimmung für Gemini-Modelle verwenden

Ein checkpoint ist ein Snapshot des Modellzustands zu einem bestimmten Zeitpunkt im Feinabstimmungsprozess. Sie können Zwischen-Checkpunkte bei der Feinabstimmung von Gemini-Modellen für Folgendes verwenden:

  • Speichern Sie den Fortschritt der Feinabstimmung.
  • Leistung verschiedener Zwischenprüfungspunkte vergleichen
  • Wählen Sie den leistungsstärksten Checkpoint vor dem Überanpassen als Standard-Checkpoint aus.

Bei Tuning-Jobs mit weniger als 10 Epochen wird ungefähr nach jeder Epoche ein Prüfpunkt gespeichert. Bei Tuning-Jobs mit mehr als 10 Epochen werden etwa 10 Checkpoints gleichmäßig verteilt gespeichert, mit Ausnahme des letzten Checkpoints, der sofort nach dem Training aller Epochen gespeichert wird.

Zwischenprüfpunkte werden nach und nach auf neuen Endpunkten bereitgestellt, während die Optimierung fortschreitet. Der Endpunkt des optimierten Modells entspricht dem Endpunkt des Standard-Prüfpunkts. Die Prüfpunkte des optimierten Modells umfassen alle Prüfpunkte und die zugehörigen Endpunkte.

Unterstützte Modelle

Die folgenden Gemini-Modelle unterstützen Checkpoints:

  • gemini-2.0-flash-001
  • gemini-2.0-flash-lite-001

Ausführliche Informationen zu Gemini-Modellversionen finden Sie unter Google-Modelle und Modellversionen und Lebenszyklus.

Abstimmungsjob erstellen, der Checkpoints exportiert

Sie können einen überwachten Feinabstimmungsjob erstellen, der mit dem Google Gen AI SDK oder der Google Cloud -Konsole Checkpoints exportiert.

Console

Wenn Sie einen Abstimmungsjob erstellen möchten, der Checkpoints exportiert, rufen Sie die Seite Vertex AI Studio auf und wählen Sie den Tab Abstimmung aus. Weitere Informationen finden Sie unter Modell optimieren.

Google Gen AI SDK

import time

from google import genai
from google.genai.types import HttpOptions, CreateTuningJobConfig

client = genai.Client(http_options=HttpOptions(api_version="v1"))

tuning_job = client.tunings.tune(
    base_model="gemini-2.5-flash",
    training_dataset="gs://cloud-samples-data/ai-platform/generative_ai/gemini/text/sft_train_data.jsonl",
    config=CreateTuningJobConfig(
        tuned_model_display_name="Example tuning job",
        # Set to True to disable tuning intermediate checkpoints. Default is False.
        export_last_checkpoint_only=False,
    ),
)

running_states = set([
    "JOB_STATE_PENDING",
    "JOB_STATE_RUNNING",
])

while tuning_job.state in running_states:
    print(tuning_job.state)
    tuning_job = client.tunings.get(name=tuning_job.name)
    time.sleep(60)

print(tuning_job.tuned_model.model)
print(tuning_job.tuned_model.endpoint)
print(tuning_job.experiment)
# Example response:
# projects/123456789012/locations/us-central1/models/1234567890@1
# projects/123456789012/locations/us-central1/endpoints/123456789012345
# projects/123456789012/locations/us-central1/metadataStores/default/contexts/tuning-experiment-2025010112345678

if tuning_job.tuned_model.checkpoints:
    for i, checkpoint in enumerate(tuning_job.tuned_model.checkpoints):
        print(f"Checkpoint {i + 1}: ", checkpoint)
    # Example response:
    # Checkpoint 1:  checkpoint_id='1' epoch=1 step=10 endpoint='projects/123456789012/locations/us-central1/endpoints/123456789000000'
    # Checkpoint 2:  checkpoint_id='2' epoch=2 step=20 endpoint='projects/123456789012/locations/us-central1/endpoints/123456789012345'

Prüfpunkte für einen Abstimmungsjob auflisten

Sie können die Checkpoints für den abgeschlossenen Abstimmungsjob in derGoogle Cloud -Konsole aufrufen oder sie mit dem Google Gen AI SDK auflisten.

Wenn Zwischenprüfpunkte deaktiviert sind, wird nur der letzte Prüfpunkt angezeigt oder zurückgegeben.

Console

  1. Rufen Sie die Seite Vertex AI Studio auf, um Ihr optimiertes Modell in der Google Cloud Console aufzurufen.

    Zu Vertex AI Studio

  2. Suchen Sie auf dem Tab Optimierung nach Ihrem Modell und klicken Sie auf Überwachen.

    Die Abstimmungsmesswerte und ‑prüfpunkte Ihres Modells werden angezeigt. In jedem Messwertdiagramm werden die Checkpoint-Nummern so als Anmerkungen angezeigt:

    • Für jede Epoche werden eine Schrittnummer und eine Epochennummer angezeigt.
    • Die Schrittnummer entspricht dem genauen Schritt, bei dem ein Checkpoint gespeichert wird.
    • Die Epochennummer ist eine geschätzte Epochennummer, zu der der Checkpoint gehört. Eine Ausnahme ist der letzte Checkpoint für einen abgeschlossenen Tuning-Job, der die genaue Epochennummer enthält.

Google Gen AI SDK

from google import genai
from google.genai.types import HttpOptions

client = genai.Client(http_options=HttpOptions(api_version="v1"))

# Get the tuning job and the tuned model.
# Eg. tuning_job_name = "projects/123456789012/locations/us-central1/tuningJobs/123456789012345"
tuning_job = client.tunings.get(name=tuning_job_name)

if tuning_job.tuned_model.checkpoints:
    for i, checkpoint in enumerate(tuning_job.tuned_model.checkpoints):
        print(f"Checkpoint {i + 1}: ", checkpoint)
# Example response:
# Checkpoint 1:  checkpoint_id='1' epoch=1 step=10 endpoint='projects/123456789012/locations/us-central1/endpoints/123456789000000'
# Checkpoint 2:  checkpoint_id='2' epoch=2 step=20 endpoint='projects/123456789012/locations/us-central1/endpoints/123456789012345'

Modelldetails und ‑prüfpunkte ansehen

Sie können sich das optimierte Modell in der Google Cloud -Konsole ansehen oder das Google Gen AI SDK verwenden, um Modelldetails wie Endpunkte und Checkpoints abzurufen.

Das Feld Endpoint des Modells wird so aktualisiert:

  • Er wird basierend auf dem Standardprüfpunkt aktualisiert und entspricht dem Endpunkt, den der Abstimmungsjob während der Abstimmung für den aktualisierten Standardprüfpunkt erstellt hat.
  • Wenn kein Modell vorhanden ist oder im Tuning-Job kein Modell abgerufen werden kann, ist der Wert für Endpoint leer.
  • Wenn der Standard-Checkpoint nicht bereitgestellt wird, weil die Optimierung noch nicht abgeschlossen ist oder die Bereitstellung fehlgeschlagen ist, ist der Wert für Endpoint leer.

Console

Sie können sich Ihr optimiertes Modell in der Vertex AI Model Registry auf der Seite Endpunkte für Onlinevorhersagen ansehen.

  1. Rufen Sie in der Google Cloud Console im Bereich „Vertex AI“ die Seite Model Registry auf.

    Zur Seite Model Registry

  2. Klicken Sie auf den Namen Ihres Modells.

    Die Standardversion Ihres Modells wird angezeigt.

  3. Klicken Sie auf den Tab Versionendetails, um Informationen zu Ihrer Modellversion aufzurufen.

    Das Ziel ist Large model, der Modelltyp ist Foundation und die Quelle ist Vertex AI Studio tuning.

  4. Klicken Sie auf den Tab Bereitstellen und testen, um den Endpunkt aufzurufen, auf dem das Modell bereitgestellt wird.

  5. Klicken Sie auf den Namen des Endpunkts, um die Seite Endpunkt aufzurufen und eine Liste der Checkpoints zu sehen, die auf dem Endpunkt bereitgestellt werden. Für jeden Prüfpunkt werden die Modellversions-ID und die Prüfpunkt-ID angezeigt.

Alternativ können Sie die Checkpoints auch auf der Seite Details zum Optimierungsjob aufrufen. Rufen Sie dazu die Seite Optimierung auf und klicken Sie auf einen der Optimierungsjobs.

Zur Seite „Optimierung“

Google Gen AI SDK

from google import genai
from google.genai.types import HttpOptions

client = genai.Client(http_options=HttpOptions(api_version="v1"))

# Get the tuning job and the tuned model.
# Eg. tuning_job_name = "projects/123456789012/locations/us-central1/tuningJobs/123456789012345"
tuning_job = client.tunings.get(name=tuning_job_name)
tuned_model = client.models.get(model=tuning_job.tuned_model.model)
print(tuned_model)
# Example response:
# Model(name='projects/123456789012/locations/us-central1/models/1234567890@1', ...)

print(f"Default checkpoint: {tuned_model.default_checkpoint_id}")
# Example response:
# Default checkpoint: 2

if tuned_model.checkpoints:
    for _, checkpoint in enumerate(tuned_model.checkpoints):
        print(f"Checkpoint {checkpoint.checkpoint_id}: ", checkpoint)
# Example response:
# Checkpoint 1:  checkpoint_id='1' epoch=1 step=10
# Checkpoint 2:  checkpoint_id='2' epoch=2 step=20

Prüfpunkte testen

In der Vertex AI Model Registry können Sie sich eine Liste der Checkpoints ansehen und jeden davon testen. Alternativ können Sie das Gen AI SDK von Google verwenden, um Ihre Checkpoints aufzulisten und zu testen.

Console

  1. Rufen Sie die Seite Vertex AI Studio auf, um Ihr optimiertes Modell in der Google Cloud Console aufzurufen.

    Zu Vertex AI Studio

  2. Suchen Sie auf dem Tab Optimierung nach Ihrem Modell und klicken Sie auf Überwachen.

  3. Klicken Sie im Bereich Überwachen in der Tabelle mit den Checkpoints neben dem gewünschten Checkpoint auf den Link Testen.

Google Gen AI SDK

from google import genai
from google.genai.types import HttpOptions

client = genai.Client(http_options=HttpOptions(api_version="v1"))

# Get the tuning job and the tuned model.
# Eg. tuning_job_name = "projects/123456789012/locations/us-central1/tuningJobs/123456789012345"
tuning_job = client.tunings.get(name=tuning_job_name)

contents = "Why is the sky blue?"

# Predicts with the default checkpoint.
response = client.models.generate_content(
    model=tuning_job.tuned_model.endpoint,
    contents=contents,
)
print(response.text)
# Example response:
# The sky is blue because ...

# Predicts with Checkpoint 1.
checkpoint1_response = client.models.generate_content(
    model=tuning_job.tuned_model.checkpoints[0].endpoint,
    contents=contents,
)
print(checkpoint1_response.text)
# Example response:
# The sky is blue because ...

# Predicts with Checkpoint 2.
checkpoint2_response = client.models.generate_content(
    model=tuning_job.tuned_model.checkpoints[1].endpoint,
    contents=contents,
)
print(checkpoint2_response.text)
# Example response:
# The sky is blue because ...

Neuen Standardprüfpunkt auswählen

Sie können den Standard-Checkpunkt für den leistungsstärksten Prüfpunkt verwenden. Standardmäßig ist der Standard-Prüfpunkt der letzte Prüfpunkt eines Tuning-Jobs.

Wenn Sie ein Modell mit Prüfpunkten bereitstellen, wird der Standardprüfpunkt bereitgestellt.

Wenn Sie ein Modell mit Prüfpunkten kopieren, hat das Zielmodell dieselbe Standard-Prüfpunkt-ID wie das Quellmodell. Alle Prüfpunkte werden kopiert, sodass Sie einen neuen Standardprüfpunkt für das Zielmodell auswählen können.

Der Endpunkt des Optimierungsjobs wird aktualisiert, wenn Sie einen Standardprüfpunkt aktualisieren. Sie können den neuen Endpunkt dann für die Vorhersage verwenden.

Console

  1. Rufen Sie die Seite Vertex AI Studio auf, um Ihr optimiertes Modell in der Google Cloud Console aufzurufen.

    Zu Vertex AI Studio

  2. Suchen Sie auf dem Tab Optimierung nach Ihrem Modell und klicken Sie auf Überwachen.

  3. Klicken Sie im Bereich Überwachen in der Tabelle mit den Checkpoints neben dem gewünschten Checkpoint auf  Aktionen und wählen Sie Als Standard festlegen aus.

  4. Klicken Sie auf Bestätigen.

    Die Messwertdiagramme und die Prüfpunkttabelle werden aktualisiert, um den neuen Standardprüfpunkt anzuzeigen. Der Endpunkt auf der Seite mit den Details zum TuningJob wird aktualisiert und zeigt den Endpunkt des neuen Standardprüfpunkts an.

Google Gen AI SDK

from google import genai
from google.genai.types import HttpOptions, UpdateModelConfig

client = genai.Client(http_options=HttpOptions(api_version="v1"))

# Get the tuning job and the tuned model.
# Eg. tuning_job_name = "projects/123456789012/locations/us-central1/tuningJobs/123456789012345"
tuning_job = client.tunings.get(name=tuning_job_name)
tuned_model = client.models.get(model=tuning_job.tuned_model.model)

print(f"Default checkpoint: {tuned_model.default_checkpoint_id}")
print(f"Tuned model endpoint: {tuning_job.tuned_model.endpoint}")
# Example response:
# Default checkpoint: 2
# projects/123456789012/locations/us-central1/endpoints/123456789012345

# Set a new default checkpoint.
# Eg. checkpoint_id = "1"
tuned_model = client.models.update(
    model=tuned_model.name,
    config=UpdateModelConfig(default_checkpoint_id=checkpoint_id),
)

print(f"Default checkpoint: {tuned_model.default_checkpoint_id}")
print(f"Tuned model endpoint: {tuning_job.tuned_model.endpoint}")
# Example response:
# Default checkpoint: 1
# projects/123456789012/locations/us-central1/endpoints/123456789000000

Nächste Schritte