Befehle und Code bleiben in allen Sprachen auf Englisch. Ersetzen Sie GROSSGESCHRIEBENE Platzhalter durch Werte Ihres eigenen Kontos und bezahlten Auftrags. Fügen Sie echte Schlüssel nicht in gemeinsam genutzte Notebooks oder Protokolle ein.
Der Befehlszeilenablauf
-
init/doctorProjekt erstellen und prüfen -
planOhne Training prüfen -
runInnerhalb der Budgets trainieren -
evaluateZurückgehaltene Kriterien prüfen -
exportValidieren und verpacken
init / doctor: Projekt erstellen und prüfen. plan: Ohne Training prüfen. run: Innerhalb der Budgets trainieren. evaluate: Zurückgehaltene Kriterien prüfen. export: Validieren und verpacken
Befehle in der vorgesehenen Reihenfolge ausführen
Das Programm fpai-training verwendet denselben Projektvertrag wie die Python-Schnittstelle: initialisieren, Kompatibilität prüfen, den Probelaufplan prüfen, ausführen, evaluieren und exportieren. Ein Status oder Plan allein belegt kein erfolgreiches Training.
- Die Authentifizierung wird aus
FUSIONPOINTAI_API_KEYgelesen. Es gibt keine CLI-Option für den API-Schlüssel. - Mit
--helpwird die Hilfe zum Programm oder Befehl angezeigt.--versiongibt die installierte Paketversion aus. - Der geprüfte Plan legt die aufgelösten Einstellungen fest. Nicht dokumentierte CLI-Überschreibungen von Hyperparametern werden nicht unterstützt.
| Feld oder Schnittstelle | Typ oder Ergebnis | Standardwert oder Exitcode | Verhalten und Validierung |
|---|---|---|---|
init --directory PATH |
command |
Erforderlich / kein Standardwert | Neues Projektgerüst samt Beispielkonfiguration erstellen; ein vorhandenes, nichtleeres Verzeichnis ablehnen. Kein Training und keine kostenpflichtigen Aufrufe. |
doctor --config PATH |
command |
Erforderlich / kein Standardwert | Schema, lokale Modelldateien, Abhängigkeiten, Speicher, Geräte und Adapterkompatibilität prüfen. Keine Gewichtsaktualisierungen oder Generierung durch das Lehrmodell. |
plan --config PATH --dry-run |
command |
Erforderlich / kein Standardwert | Standardwerte auflösen, Fingerprints festlegen und Themen, Freigaben, Budgets und Ausgaben anzeigen. Keine Optimierung oder kostenpflichtige Arbeit des Lehrmodells. |
run --config PATH |
command |
Erforderlich / kein Standardwert | Einen gültigen, geprüften Plan und aktive Berechtigung verlangen, einen Lauf sperren und echtes Training innerhalb der Budgets ausführen. |
status --run PATH |
command |
Erforderlich / kein Standardwert | Bereinigte lokale Momentaufnahme des Laufs lesen. Startet keine Worker erneut und erzeugt keine Anfragen an das Lehrmodell. |
pause --run PATH |
command |
Erforderlich / kein Standardwert | Sichere Pause anfordern und vollständigen atomaren Checkpoint abwarten. Nur für einen aktiven eigenen Lauf gültig. |
resume --run PATH |
command |
Erforderlich / kein Standardwert | Pausierten/unterbrochenen, wiederherstellbaren Lauf nur nach strenger Validierung von Checkpoint und Plan fortsetzen. |
cancel --run PATH |
command |
Erforderlich / kein Standardwert | Eigene Worker stoppen, eigene Ressourcen freigeben und Abbruch vermerken; gültige Ausgaben und Diagnosen erhalten. |
evaluate --run PATH --split test |
command |
Erforderlich / kein Standardwert | Das festgelegte Modell mit Validierungs- oder Testdaten evaluieren. Keine Optimierung und keine Freigabe verborgener Daten. |
export --run PATH --format safetensors |
command |
Erforderlich / kein Standardwert | Eine abgenommene, unterstützte Ausgabe validieren und verpacken; kein externer Upload und keine Live-Bereitstellung. |
fpai-training --version
fpai-training --help
fpai-training init --directory ./german-project
# Replace training.json and rubric/data files with your reviewed configuration.
fpai-training doctor --config ./german-project/training.json
fpai-training plan --config ./german-project/training.json --dry-run
# Inspect resolved values, data sharing and budgets BEFORE the next command.
fpai-training run --config ./german-project/training.json
fpai-training status --run ./german-project/runs/german-001
fpai-training evaluate --run ./german-project/runs/german-001 --split test
fpai-training export --run ./german-project/runs/german-001 --format safetensors
# Supply the key through FUSIONPOINTAI_API_KEY, never a command-line argument.
Sicher pausieren, fortsetzen oder abbrechen
Steuerbefehle beziehen sich auf genau ein eigenes Laufverzeichnis. Beim Pausieren wird ein atomarer Checkpoint abgewartet, ebenso die Bestätigung des Workers. Vor einer Fortsetzung werden Modell, Daten, Konfiguration, Evaluator und verteilte Topologie abgeglichen. Abbrechen beendet nur die Worker dieses Laufs und vermerkt den endgültigen Abbruch. Wiederholte Steueranfragen dürfen keinen zusätzlichen Trainingsprozess starten.
- Ein pausierter Lauf kann wiederaufgenommen werden, ist aber nicht abgeschlossen. Ein abgebrochener Lauf ist kein abnahmefähiges Ergebnis.
- Steuerbefehle in einem zweiten Terminal ausführen, solange ein Lauf im Vordergrund aktiv ist.
- Nach einer Zeitüberschreitung zuerst den Status prüfen. Keine Sperrdateien löschen und keine fremden GPU-Prozesse beenden.
| Feld oder Schnittstelle | Typ oder Ergebnis | Standardwert oder Exitcode | Verhalten und Validierung |
|---|---|---|---|
--directory |
path |
Erforderlich / kein Standardwert | Für init erforderlich. Beschreibbares neues Projektverzeichnis.
|
--config |
path |
Erforderlich / kein Standardwert | Für doctor, plan und run erforderlich. Pfad zu einer vollständigen Datei nach Schema 1.0.
|
--run |
path |
Erforderlich / kein Standardwert | Für status, pause, resume, cancel, evaluate und export erforderlich. Eigenes Laufverzeichnis, keine Konto-/Sitzungs-ID.
|
--dry-run |
flag |
true |
Explizite Planungsoption; plan verändert Gewichte und kostenpflichtige Vorgänge ohnehin nie. Kein Modus zum Deaktivieren der Ausführung.
|
--split |
enum |
"test" |
Nur für evaluate: validation oder test. Testdaten werden nie zur Verbesserung verwendet.
|
--format |
enum |
"safetensors" |
Nur für export: safetensors oder adapters, abhängig von der Adapterfähigkeit.
|
--help |
flag |
false |
Hilfe zum Programm oder Befehl anzeigen, ohne auf den Provider zuzugreifen. |
--version |
flag |
false |
Tatsächliche Metadaten der installierten Version anzeigen, nicht die Schemaversion der Konfiguration. |
# Run controls from a separate terminal if training is active.
fpai-training pause --run ./german-project/runs/german-001
# Wait for status=paused and a completed atomic checkpoint before stopping a host.
fpai-training status --run ./german-project/runs/german-001
fpai-training resume --run ./german-project/runs/german-001
# Cancellation is terminal; preserve existing artifacts, do not pretend it passed.
fpai-training cancel --run ./german-project/runs/german-001
# Repeat status, not run(), after a timeout. Never kill an unrelated process.
Status und Exitcodes gemeinsam auswerten
Exitcode null bedeutet, dass der angeforderte Vorgang erfolgreich war. Eine erfolgreiche Statusabfrage, Pause oder Probelaufprüfung bedeutet nicht, dass das Training abgenommen ist. Dafür müssen auch der Trainingsstatus abgeschlossen, der Abbruchgrund akzeptiert und alle erforderlichen Evaluationskriterien erfüllt sein. Verfehlte Ziele bleiben in Berichten sichtbar und werden nicht nachträglich als Erfolg bezeichnet.
- Befehle schreiben maschinenlesbares JSON nach stdout und bereinigte Diagnosen nach stderr. Geheimnisse erscheinen in keinem der beiden Ausgabeströme.
runundresumewarten auf einen endgültigen oder pausierten Status;statusgibt eine aktuelle Momentaufnahme zurück.- Bei
SIGINTwird nach bestmöglichem Aufräumen der eigenen Worker Exitcode 130 zurückgegeben. Ein unterbrochener Prozess kann keinen abgeschlossenen Checkpoint vortäuschen.
SDK 0.2.0 EXIT AND STATE CONTRACT
0 accepted, successful read/control, or successful dry-run; inspect operation.
2 invalid configuration; no training started.
3 incompatible model/runtime/method/export combination.
4 authentication, entitlement or authorized-sharing failure.
5 resource budget exhausted; preserve latest valid checkpoint and report.
6 evaluation requirements not met; not an accepted model.
7 execution, checkpoint, cancellation-control or export failure.
130 interrupted by the caller.
Lifecycle:
planned -> preparing -> training -> evaluating -> completed
training -> pausing -> paused -> training (validated resume)
active -> cancelling -> cancelled
active -> failed
stop_reason: accepted | budget_exhausted | no_progress | regression |
cancelled | failed
paused is a recoverable state, not an accepted training result.
completed requires stop_reason=accepted and all required criteria passing.
Repeated control requests must read/reuse the owned transition, not spawn workers.
One run lock prevents duplicate execution of the same run directory.