Skip to main content

Devin trainiert ein FLUX-LoRA auf einer Modal-GPU nach, stellt den besten Checkpoint bereit und fügt ihn einer Chat-App hinzu

Devin läuft überall dort, wo der Job ausgeführt werden muss. Mit Devin Outposts kann eine Sitzung auf Ihrer eigenen Infrastruktur oder auf einer Partnerplattform laufen; hier wird sie in einer GPU-Sandbox von Modal ausgeführt. So kann derselbe Devin, der Ihren Code schreibt, ein Modell durchgängig trainieren, evaluieren und bereitstellen. In diesem Tutorial führt Devin ein Fine-Tuning eines FLUX-LoRA mit 18 Otterbildern durch, sodass „Devin the software engineer“ als Otter dargestellt wird, stellt das Modell als Modal-Endpunkt bereit und fügt es der Modellauswahl der Beispiel-App otterchat hinzu.

Bevor Sie beginnen

  • Modal-outpost erstellen: Führen Sie uvx modal-devin init aus und wählen Sie eine GPU für die generierte Modal-App. Siehe Devin auf Modal ausführen und den Outposts-Schnellstart.
  • Repository verbinden: Das Beispiel-Repo otterchat ist eine Chat-App mit einer Modellauswahl für Bildmodelle. Der outpost checkt es auf ein persistentes Modal Volume aus.
  • Trainingsdaten vorbereiten: Fügen Sie dem Repository oder einem vom outpost eingebundenen Modal Volume Bilder mit Bildunterschriften hinzu. Das Beispiel verwendet 18 Cartoon-Otter-Bilder mit Bildunterschriften wie „Devin the software engineer in a data center“.
  • Secrets hinzufügen: Speichern Sie Ihren Weights-&-Biases-Schlüssel unter Einstellungen > Secrets. Die Modal-sandbox enthält bereits Modal-Anmeldedaten, sodass Devin Endpunkte ohne zusätzliche Einrichtung bereitstellen kann.
  • Regeln für lange Durchläufe festlegen: Fügen Sie Organisationsregeln hinzu (oder nehmen Sie sie in den Prompt auf), zum Beispiel: alle 15 Minuten ein Fortschritts-Update posten, an jedem Checkpoint Validierungsbilder rendern und den Vorschau-Link in jeden PR aufnehmen.
  • Slack verbinden (optional): Trainingsdurchläufe dauern Stunden. Synchronisieren Sie die Sitzung daher mit einem Slack-Thread, um den Fortschritt mitzuverfolgen.

Schritt 1: Eine Sitzung auf dem outpost starten

Öffnen Sie Devin, wählen Sie im Menü Virtual environment unterhalb des Prompt-Felds Ihren Modal-outpost aus und aktivieren Sie im Composer den Slack-Schalter. Prüfen Sie die Hardware:
Devin meldet eine NVIDIA B200 mit installiertem PyTorch und diffusers sowie das Projekt auf einem persistenten Modal Volume.

Schritt 2: Trainingsdaten prüfen

Devin findet den Datensatz im Projekt und postet die 18 Bilder samt Beschriftungen in der Sitzung und im Slack-Thread.

Schritt 3: Trainingsdurchlauf starten

Devin erledigt den Job eigenständig und befolgt dabei die oben genannten Regeln:
  1. Trainiert das LoRA: etwa 1.000 Schritte, protokolliert in Weights & Biases, mit Validierungs-Renderings alle 100 Schritte.
  2. Berichtet in Slack: alle 15 Minuten den Fortschritt mit den neuesten Renderings. Die frühen Renderings zeigen Menschen; im weiteren Trainingsverlauf erscheint der Otter.
  3. Wählt den besten Checkpoint: Schritt 700, da die Schritte 900 und 1.000 Anzeichen von Overfitting zeigten.
  4. Stellt bereit und liefert aus: stellt Schritt 700 als serverlosen Modal-Endpunkt bereit, fügt otterimage 1.0 zur Modellauswahl der Chat-App hinzu, zeichnet einen End-to-End-Test auf und öffnet einen PR mit einem Vorschau-Link.
Raster der Validierungsbilder an jedem Checkpoint

Validierungs-Renderings von Schritt 500 bis Schritt 1.000

Schritt 4: Das Modell testen

Öffne den Vorschau-Link aus dem PR und lass dir ein Bild generieren:
Die Chat-App liefert einen Cartoon-Otter, der Spaghetti isst
Derselbe Prompt erzeugt bei einem universellen Bildmodell einen Menschen.

Schritt 5: Mit untergeordneten Sitzungen iterieren

Nachtrainieren ist selten mit einem einzigen Durchlauf erledigt. Geben Sie Devin ein Paper und lassen Sie Devin die Alternativen parallel ausprobieren:
Devin fügt die neuen Methoden in einem PR zum Trainingsskript hinzu und startet auf dem outpost drei untergeordnete Sitzungen – jeweils eine für LoHa, LoKr und natives Fine-Tuning.
Devins Sitzung mit drei untergeordneten Sitzungen für LoHa, LoKr und natives Fine-Tuning

Nächste Schritte

Devin auf Modal ausführen

Erstellen Sie einen Modal-basierten Outpost mit GPUs, Volumes und Secrets

Devin Outposts

Führen Sie Sitzungen auf Ihrer eigenen Infrastruktur oder einer Partnerplattform aus

Slack-Integration

Verfolgen Sie lang laufende Sitzungen in einem Slack-Thread

Verwaltete Devins

Starten und überwachen Sie untergeordnete Sitzungen für parallele Experimente