Überwachung von RFT-Trainings - Amazon SageMaker KI

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Überwachung von RFT-Trainings

Überwachen Sie die wichtigsten Kennzahlen während der Schulung, um ein effektives Lernen sicherzustellen und potenzielle Probleme frühzeitig zu erkennen.

Wichtige Kennzahlen, die es zu verfolgen gilt

Überwachen Sie MlFlow während des Trainings die folgenden Kennzahlen:

Kennzahlen zur Belohnung:

  • Durchschnittliche Prämienbewertung: Gesamtqualität der Modellantworten (sollte im Laufe der Zeit zunehmen)

  • Verteilung der Belohnungen: Prozentsatz der Antworten, die hohe, mittlere und niedrige Prämien erhielten

  • Prämien für Schulung und Validierung: Vergleich zur Erkennung von Überanpassungen

Kennzahlen zur Schulung:

  • Aktualisierungen der Richtlinien: Anzahl der erfolgreichen Gewichtsaktualisierungen

  • Abschlussquote bei der Einführung: Prozentsatz der erfolgreich bewerteten Proben

Zu den Mustern:

  • Belohnt ein Plateau (deutet auf schlechtes Lernen hin)

  • Die Validierungsprämien sinken, während die Trainingsbelohnungen steigen (Überanpassung)

  • Die Varianz der Belohnungen nimmt im Laufe der Zeit deutlich zu (Instabilität)

  • Hoher Prozentsatz von Fehlern bei der Belohnungsfunktion (Implementierungsprobleme)

Wann sollte ich mit dem Training aufhören:

  • Die angestrebten Leistungskennzahlen wurden erreicht

  • Die Belohnungen stagnieren und verbessern sich nicht mehr

  • Die Validierungsleistung verschlechtert sich (es wurde eine Überanpassung festgestellt)

  • Das maximale Schulungsbudget ist erreicht

Anleitung zu Hyperparametern

Verwenden Sie je nach Trainingsansatz die folgenden empfohlenen Hyperparameter:

Allgemein:

  • Epochen: 1

  • Lernrate (lr): 1e-7

  • Anzahl der Generationen: 8

  • Max. Anzahl neuer Token: 8192

  • Chargengröße: 256

LoRa (Low-Rank-Anpassung):

  • LoRa-Rang: 32

Anmerkung

Passen Sie diese Werte an die Größe Ihres Datensatzes und die Validierungsleistung an. Überwachen Sie die Trainingsmetriken, um eine Überanpassung zu vermeiden.

Bewertung nach RFT

Evaluieren Sie nach Abschluss der Schulung Ihr fein abgestimmtes Modell, um Leistungsverbesserungen zu bewerten:

  • Führen Sie den RFT-Evaluierungsjob aus: Verwenden Sie den Checkpoint aus Ihrem RFT-Training als Modell

  • Mit dem Ausgangsmodell vergleichen: Evaluieren Sie sowohl das Basismodell als auch das fein abgestimmte Modell mit demselben Testsatz

  • Metriken analysieren: Überprüfen Sie aufgabenspezifische Kennzahlen (Genauigkeit, Prämienwerte usw.)

  • Führen Sie eine qualitative Überprüfung durch: Untersuchen Sie die Ergebnisse der Stichproben manuell auf Qualität

Ausführliche Bewertungsverfahren finden Sie im Abschnitt Bewertung.

Verwendung fein abgestimmter Modelle

Zugreifen auf Checkpoints:

Suchen Sie nach Abschluss des Trainings Ihren Checkpoint:

  1. Navigiere zu deinem output_path in S3

  2. Downloaden und entpacken output.tar.gz

  3. Öffnen Sie manifest.json.

  4. Kopieren Sie den checkpoint_s3_bucket Wert

Für Inferenz bereitstellen:

Verwenden Sie den Checkpoint S3-Pfad für Inferenzen oder weitere Schulungen:

run: model_type: amazon.nova-2-lite-v1:0:256k model_name_or_path: "s3://customer-escrow-<account-number>-smtj-<unique-identifier>/<job-name>"

Anweisungen zur Bereitstellung und Inferenz finden Sie im Abschnitt Inferenz.

Einschränkungen und bewährte Methoden

Aktuelle Einschränkungen:

Beta-Einschränkungen:

  • Sie müssen eine neue RIG-Gruppe für RFT erstellen. Diese Einschränkung wird von GA behoben.

  • Instanzgruppen, die nicht zu RIG gehören, sind nicht zulässig: Stellen Sie sicher, dass Ihr HyperPod Cluster nur eingeschränkte Instanzgruppen (RIGs) enthält — keine regulären Instanzgruppen. Diese Einschränkung wird von GA behoben.

  • Anforderungen an den Instance-Typ: Es werden nur P5-Instances unterstützt (mindestens 8x P5.48xLarge). Demnächst: Support für kleinere Instance-Typen (ETA: Mitte Januar 2025).

Funktionelle Einschränkungen:

  • 15-minütiges Lambda-Timeout: Belohnungsfunktionen müssen innerhalb von 15 Minuten abgeschlossen sein

  • Nur Single-Turn-Konversationen: Konversationen mit mehreren Runden werden nicht unterstützt

  • Validierungsdatensätze: Während des Trainings nicht unterstützt. Verwenden Sie separate Bewertungsaufgaben, um den Trainingsfortschritt zu bewerten.

Überlegungen zur Schulung:

  • Szenarien mit geringer Belohnung: Kann Probleme bereiten, wenn weniger als 5% der Beispiele positive Prämien erhalten — ziehen Sie zuerst SFT in Betracht

  • Datenanforderungen: Benötigt eine ausreichende Vielfalt, um effektiv lernen zu können

  • Rechenkosten: Teurer als überwachte Feinabstimmung

Nova Forge beseitigt einige dieser Einschränkungen:

  • Unterstützt Multi-Turn-Konversationen

  • Ermöglicht Belohnungsfunktionen mit einer Zeitüberschreitung von mehr als 15 Minuten

  • Bietet erweiterte Algorithmen und Optimierungsoptionen

  • Konzipiert für komplexe Anwendungsfälle in Unternehmen, speziell auf die Entwicklung von Grenzmodellen abgestimmt

Bewährte Verfahren:

Fangen Sie klein an und skalieren Sie:

  • Beginnen Sie mit minimalen Datensätzen (100-200 Beispiele) und wenigen Trainingsepochen

  • Überprüfen Sie Ihren Ansatz, bevor Sie ihn skalieren

  • Erhöhen Sie schrittweise die Datensatzgröße und die Trainingsschritte auf der Grundlage der Ergebnisse

Ausgangsbasis mit SFT zuerst:

  • Wenn die Prämienwerte konstant niedrig sind (z. B. immer 0), führen Sie SFT vor RFT durch

  • RFT erfordert eine angemessene Ausgangsleistung, um sich effektiv zu verbessern

Entwerfen Sie effiziente Belohnungsfunktionen:

  • Ausführung in Sekunden, nicht in Minuten

  • Minimiere externe API-Aufrufe

  • Verwenden Sie effiziente Algorithmen und Datenstrukturen

  • Implementieren Sie die richtige Fehlerbehandlung

  • Vor dem Training gründlich testen

  • Nutzen Sie die Funktionen parallel Skalierung von Lambda

Überwachen Sie das Training aktiv:

  • Verfolge die durchschnittlichen Prämienwerte im Laufe der Zeit

  • Beobachten Sie die Verteilung der Belohnungen auf die Stichproben

  • Vergleichen Sie die Prämien für Schulungen und Validierungen

  • Achten Sie auf problematische Muster (Plateaus, Überanpassung, Instabilität)

Iterieren Sie auf der Grundlage der Ergebnisse:

  • Wenn sich die Belohnungen nach mehreren Iterationen nicht verbessern, passen Sie das Design der Belohnungsfunktion an

  • Erhöhen Sie die Vielfalt der Datensätze, um klarere Lernsignale bereitzustellen

  • Erwägen Sie, zu SFT zu wechseln, wenn die Prämien nahe Null bleiben

  • Experimentieren Sie mit verschiedenen Hyperparametern (Lernrate, Chargengröße)

Optimieren Sie die Datenqualität:

  • Sorgen Sie für vielfältige, repräsentative Beispiele

  • Schließen Sie Sonderfälle und schwierige Proben mit ein

  • Stellen Sie sicher, dass die Belohnungsfunktion alle Beispieltypen korrekt bewertet

  • Entferne oder repariere Beispiele, die die Belohnungsfunktion verwirren

Fehlerbehebung

Fehler bei der Belohnungsfunktion:

Symptome: Hohe Fehlerquote bei Aufrufen von Belohnungsfunktionen während des Trainings

Problem

Symptome

Auflösung

Lambda-Zeitüberschreitung

Häufige Timeouts nach 15 Minuten

Optimieren Sie die Funktionsleistung; ziehen Sie Nova Forge für komplexe Evaluierungen in Betracht

Unzureichende Parallelität

Fehler bei der Lambda-Drosselung

Erhöhen Sie das Lambda_Concurrency_Limit oder beantragen Sie eine Erhöhung des Kontingents

Ungültiges Rückgabeformat

Das Training schlägt aufgrund von Formatfehlern fehl

Stellen Sie sicher, dass die Rückgabestruktur dem erforderlichen Schnittstellenformat entspricht

Unbehandelte Ausnahmen

Zeitweise auftretende Fehler

Fügen Sie umfassende Fehlerbehandlung und Protokollierung hinzu

Externe API-Fehler

Inkonsistente Bewertung

Implementieren Sie Wiederholungslogik und Fallback-Strategien

Schlechte Trainingsleistung:

Symptome: Die Belohnungen verbessern sich nicht oder stagnieren bei niedrigen Werten

Resolutionen:

  • Überprüfen Sie die Richtigkeit der Belohnungsfunktion: Testen Sie anhand bekannter good/bad Beispiele

  • Überprüfen Sie die Ausgangsleistung: Evaluieren Sie das Basismodell. Wenn die Genauigkeit nahezu Null ist, führen Sie zuerst eine SFT-Analyse durch

  • Erhöhen Sie die Datenvielfalt: Fügen Sie vielfältigere Beispiele für verschiedene Szenarien hinzu

  • Passen Sie die Hyperparameter an: Probieren Sie verschiedene Lernraten oder Batchgrößen aus

  • Überprüfen Sie die Qualität der Belohnungssignale: Stellen Sie sicher, dass bei den Belohnungen zwischen guten und schlechten Antworten unterschieden wird

Überdimensioniert:

Symptome: Die Prämien für Schulungen steigen, während die Validierungsprämien sinken

Vorsätze:

  • Trainingsschritte reduzieren: Beenden Sie das Training früher

  • Datensatzgröße erhöhen: Fügen Sie weitere Trainingsbeispiele hinzu

  • Regularisierung hinzufügen: Anpassen oder weight_decay entropy_coeff

  • Erhöhen Sie die Datenvielfalt: Stellen Sie sicher, dass das Trainingsset die vollständige Verteilung gewährleistet