Modelle und Jobs verwalten

Wenn Sie Modelle bereitstellen und trainieren sowie Vorhersagen abrufen, müssen Sie Ressourcen auf der Google Cloud Platform verwalten. Auf dieser Seite wird beschrieben, wie Sie mit Modellen, Versionen und Jobs arbeiten.

Ressourcen für AI Platform Training benennen

Sie müssen für jeden von Ihnen erstellten Job einen Namen angeben. Die Regeln für die Benennung sind für alle drei Ressourcentypen einheitlich. Für jeden Namen gilt:

  • Es dürfen nur Buchstaben, Zahlen und Unterstriche verwendet werden.
  • Groß-/Kleinschreibung ist zu beachten.
  • Muss mit einem Buchstaben beginnen.
  • Er darf höchstens 128 Zeichen lang sein.
  • Er darf nicht mehrfach innerhalb seines Namespace vergeben sein (innerhalb des Projekts bei Modellen und Jobs und innerhalb des übergeordneten Modells bei Versionen).

Erstellen Sie Namen, die in Ressourcenlisten wie Joblogs leicht zu unterscheiden sind. Hier einige Vorschläge:

  • Verwenden Sie bei allen Jobs für dasselbe Modell den Modellnamen in Kombination mit einem Jobindex. Der Zeitstempel der Joberstellung ist hierfür gut geeignet.
  • Benennen Sie Ihre Modelle so, dass sie vom verwendeten Dataset leicht identifiziert werden können. Beispielsweise ist census_wide_deep in der Regel besser als my_new_model.
  • Versionen sollten möglichst leicht lesbar sein. Verwenden Sie also statt eines Zeitstempels oder eines ähnlichen Einzelwerts einfache Versionsbezeichnungen wie v1.

Jobs verwalten

AI Platform Training unterstützt zwei Arten von Jobs: Trainings- und Batchvorhersagejobs. Die Details der einzelnen Jobs unterscheiden sich, der grundlegende Vorgang ist jedoch derselbe.

In der folgenden Tabelle werden die Jobvorgänge zusammengefasst und die Schnittstellen aufgeführt, mit denen Sie die Vorgänge ausführen können:

Aktion Schnittstellen Hinweise
create projects.jobs.create

Ausführliche Informationen zum Erstellen von Jobs finden Sie unter Training und Batchvorhersage.

gcloud ai-platform jobs submit training

gcloud ai-platform jobs submit prediction

Keine Konsolenimplementierung
cancel projects.jobs.cancel

Bricht einen laufenden Job ab

gcloud ai-platform jobs cancel

Abbrechen auf der Seite Jobdetails
get projects.jobs.get Die abgerufenen Informationen sind in der Referenz zur Ressource Jobs beschrieben.

gcloud ai-platform jobs describe

Seite Jobdetails (Zugang über einen Link in der Liste Jobs)
list projects.jobs.list Es werden nur Jobs angezeigt, die in den letzten 90 Tagen erstellt wurden.

gcloud ai-platform jobs list

Liste Jobs

Umgang mit asynchronen Vorgängen

Die meisten AI Platform Training-Vorgänge zur Ressourcenverwaltung geben so schnell wie möglich eine vollständige Antwort zurück. Allerdings gibt es zwei Arten von asynchronen Vorgängen, über die Sie Bescheid wissen sollten: Jobs und Vorgänge mit langer Laufzeit.

Wenn Sie einen asynchronen Vorgang starten, möchten Sie in der Regel wissen, wann dieser abgeschlossen ist. Das Abrufen des Status gestaltet sich bei Jobs und Vorgängen mit langer Ausführungszeit anders als gewohnt.

Status eines Jobs abrufen

Sie können projects.jobs.get verwenden, um den Status eines Jobs abzurufen. Diese Methode wird auch als gcloud ai-platform jobs describe und in der Google Cloud Console auf der Seite Jobs bereitgestellt. Unabhängig davon, wie Sie den Status abrufen, basieren die Informationen auf den Mitgliedern der Jobressource. Sie wissen, dass der Job abgeschlossen ist, wenn Job.state in der Antwort einem dieser Werte entspricht:

  • SUCCEEDED
  • FAILED
  • CANCELLED

Status eines Vorgangs mit langer Laufzeit abrufen

In AI Platform Training gibt es drei Vorgänge mit langer Laufzeit:

  • Erstellen einer Version
  • Löschen eines Modells
  • Löschen einer Version

Von den Vorgängen mit langer Laufzeit dürften nur Versionserstellungen viel Zeit in Anspruch nehmen. Modelle und Versionen werden normalerweise nahezu in Echtzeit gelöscht.

Wenn Sie eine Version über die Google Cloud CLI oder die Google Cloud Console erstellen, werden Sie automatisch über die Benutzeroberfläche informiert, wenn der Vorgang abgeschlossen ist. Erfolgt die Versionserstellung mit der API, können Sie selbst den Status des Vorgangs verfolgen:

  1. Rufen Sie den vom Dienst zugewiesenen Vorgangsnamen aus dem Objekt Operation in der Antwort auf Ihren Aufruf von projects.models.versions.create ab. Der Schlüssel für den Namenwert ist "name".

  2. Verwenden Sie projects.operations.get, um den Status des Vorgangs periodisch abzufragen.

    1. Verwenden Sie den Vorgangsnamen aus dem ersten Schritt, um einen Namensstring nach folgendem Muster zu bilden:

      'projects/my_project/operations/operation_name'
      

      Die Antwortnachricht enthält das Objekt "Operation".

    2. Ruft den Wert für den Schlüssel "done" ab. Dies ist ein boolescher Indikator für den Vorgangsabschluss. Wenn er als "true" ausgewertet wird, ist der Vorgang abgeschlossen.

  3. Das Objekt "Operation" enthält einen von zwei Schlüsseln für den Abschluss:

    • Der Schlüssel "response" ist vorhanden, wenn der Vorgang erfolgreich war. Der Wert sollte "google.protobuf.Empty" lauten, da keiner der Vorgänge mit langer Ausführungszeit von AI Platform Training Antwortobjekte hat.

    • Der Schlüssel "error" ist vorhanden, wenn ein Fehler aufgetreten ist. Sein Wert ist ein Objekt vom Typ "Status".

Weitere Informationen