Trainingsmodelle für InstructLab

Trainieren Sie Ihr Modell anhand der generierten Daten und testen Sie es anschließend, um die Ergebnisse zu überprüfen. Erfahren Sie mehr darüber, was Ausbildung ist.

Konfigurationsinformationen oder -dateien können nicht zur Feinabstimmung an das Modell weitergegeben werden.

Voraussetzungen

  1. Bereiten Sie Ihre Taxonomie vor
  2. Fügen Sie die Taxonomie tar.gz zu Ihrem Object Storage Bucket hinzu. Sie können die CLI oder die Benutzeroberfläche verwenden.
  3. Erstellen Sie Daten aus Ihrer Taxonomie.

Ausrichten von Modellen mit Hilfe der Konsole

  1. Klicken Sie auf der Seite InstructLab Projekte auf Ihr Projekt > Ausgerichtete Modelle > Ausrichten.

  2. Geben Sie einen alphanumerischen Namen für das Modell ein und wählen Sie die zu verwendenden Trainingsdaten aus.

  3. Optional: Prüfen Sie den Kostenvoranschlag, bevor Sie mit der Anpassung beginnen.

  4. Klicken Sie auf Ausrichten. Der Zustand ist " queued, dann " running. Warten Sie, bis der Status " completed ist. Dieser Vorgang kann Minuten oder Stunden dauern. Nach Abschluss des Abgleichs wird im Bucket Object Storage ein Verzeichnis trained_models mit Protokollen zur Fehlerbehebung erstellt.

Training von Modellen mit Hilfe der CLI

  1. Abrufen der ID für die zu verwendenden Daten.

    ibmcloud ilab data list
    
  2. Führen Sie den Befehl aus, um mit dem Training des Modells mit den generierten Daten zu beginnen. Beachten Sie die ID.

    ibmcloud ilab model train --name testmodel --data-id <data_id>
    
  3. Überprüfen Sie die Details Ihrer Datengenerierung. Geben Sie die ID des Modells an. Der Zustand ist " queued, dann " running. Warten Sie, bis der Status " completed ist. Dieser Vorgang kann Minuten oder Stunden dauern. Wenn der Status completed ist, wird im Bucket Object Storage ein Verzeichnis trained_models mit Protokollen zur Fehlerbehebung erstellt.

    ibmcloud ilab model get --id <model_id>
    
  4. Optional: Wenn der Status completed können Sie Kennzahlen wie Token-Schätzungen überprüfen, um die geschätzten Kosten zu berechnen.

    Beispiel für den Befehl " model get mit der Option " --output json.

    ibmcloud ilab model get --id daef9836-631f-4686-ad18-e0e6a0910f5d --output json
    

    Beispiel JSON-Ausgabe

    {
      "base_model": "granite-3.1-8b-starter-v2.1",
      "created_at": "2026-02-18T16:06:05.000Z",
      "data_id": "8b1433c0-e375-4b00-b36d-2ad00697014e",
      "id": "daef9836-631f-4686-ad18-e0e6a0910f5d",
      "last_signal_at": "2026-02-18T17:20:32.000Z",
      "model_metrics": {
        "mmlu": {
          "overall_average": 0.51,
          "scores": {
            "mmlu_abstract_algebra": 0.3,
            "mmlu_anatomy": 0.43,
            "mmlu_astronomy": 0.49
          }
        },
        "mt_bench": {
          "error_rate": 0.01,
          "overall_average": 6.86,
          "scores": {
            "turn_one": 7.25,
            "turn_two": 6.47
          }
        },
        "mt_bench_branch": {
          "error_rate": 0.01,
          "improvements": {
            "compositional_skills/STEM/math/time_series/qna.yaml": 8.67,
            "compositional_skills/extraction/invoice/csv/qna.yaml": 8.4
          },
          "no_change": {
            "compositional_skills/roleplay/explain_like_i_am/primary_schooler/qna.yaml": 0,
            "compositional_skills/writing/freeform/technical/proposal/qna.yaml": 0
          },
          "regressions": {
            "compositional_skills/extraction/inference/qualitative/sentiment/qna.yaml": -9,
            "compositional_skills/extraction/information/named_entities/places/qna.yaml": -9
          }
        },
        "tokens": {
          "training_phases": {}
        }
      },
      "name": "test",
      "state": "completed",
      "status": "completed",
      "taxonomy_id": "e62ccea5-97e6-4568-86bf-2f359987b115"
    }
    

Trainingsmodelle unter Verwendung der API

  1. Abrufen der ID für die zu verwendenden Daten.

    Beispielbefehl.

    curl -X 'GET' \
      'https://us-east.instructlab.ibm.com/v1/data' \
      -H 'accept: application/json'
    

    Beispielausgabe.

    {
      "data": [
        {
          "id": "add785e6-a8c3-4f5f-ab89-c506a3f115da",
          "name": "example-data-1",
          "state": "",
          "status": "queued",
          "created_at": "2024-10-23T02:58:50.000Z",
          "taxonomy_id": "202a03c4-dcf1-432a-82b7-abecb2e019f7",
          "last_signal_at": "2026-02-18T17:20:32.000Z"
        }
      ]
    }
    
  2. Führen Sie den Befehl aus, um mit dem Training des Modells mit den generierten Daten zu beginnen. Beachten Sie die ID.

    Beispielbefehl.

    curl -X 'POST' \
      'https://us-east.instructlab.ibm.com/v1/models' \
      -H 'accept: application/json' \
      -H 'Content-Type: application/json' \
      -d '{
      "name": "example-model-1",
      "data_id": "add785e6-a8c3-4f5f-ab89-c506a3f115da"
    }'
    

    Beispielausgabe.

    {
      "id": "baa8cfb5-e306-4e15-869d-735b74b1919d",
      "name": "example-model-1",
      "state": "",
      "status": "queued",
      "created_at": "2024-10-23T02:58:50.000Z",
      "last_signal_at": "2026-02-18T17:20:32.000Z",
      "data_id": "add785e6-a8c3-4f5f-ab89-c506a3f115da",
      "base_model": "granite-7b",
      "taxonomy_id": "202a03c4-dcf1-432a-82b7-abecb2e019f7",
      "model_metrics": {
        "mmlu": {
          "overall_average": 0.3,
          "scores": {
            "additionalProp1": 1,
            "additionalProp2": 2,
            "additionalProp3": 3
          }
        },
        "mmlu_branch": {
          "error_rate": 0.4,
          "improvements": {
            "additionalProp1": 1,
            "additionalProp2": 2,
            "additionalProp3": 3
          },
          "regressions": {
            "additionalProp1": 1,
            "additionalProp2": 2,
            "additionalProp3": 3
          },
          "no_change": {
            "additionalProp1": 1,
            "additionalProp2": 2,
            "additionalProp3": 3
          }
        },
        "mt_bench": {
          "overall_average": 0.8,
          "error_rate": 0.6,
          "scores": {
            "additionalProp1": 1,
            "additionalProp2": 2,
            "additionalProp3": 3
          }
        },
        "mt_bench_branch": {
          "error_rate": 0.4,
          "improvements": {
            "additionalProp1": 1,
            "additionalProp2": 2,
            "additionalProp3": 3
          },
          "regressions": {
            "additionalProp1": 1,
            "additionalProp2": 2,
            "additionalProp3": 3
          },
          "no_change": {
            "additionalProp1": 1,
            "additionalProp2": 2,
            "additionalProp3": 3
          }
        }
      }
    }
    
  3. Überprüfen Sie die Details Ihrer Datengenerierung. Geben Sie die ID des Modells an. Der Zustand ist " queued, dann " running. Warten Sie, bis der Status " completed ist. Dieser Vorgang kann Minuten oder Stunden dauern.

    Beispielbefehl.

    curl -X 'GET' \
      'https://us-east.instructlab.ibm.com/v1/models/baa8cfb5-e306-4e15-869d-735b74b1919d' \
      -H 'accept: application/json'
    

    Beispielausgabe.

    {
      "id": "baa8cfb5-e306-4e15-869d-735b74b1919d",
      "name": "example-model-1",
      "state": "",
      "status": "queued",
      "created_at": "2024-10-23T02:58:50.000Z",
      "last_signal_at": "2026-02-18T17:20:32.000Z",
      "data_id": "add785e6-a8c3-4f5f-ab89-c506a3f115da",
      "base_model": "granite-7b",
      "taxonomy_id": "202a03c4-dcf1-432a-82b7-abecb2e019f7",
      "model_metrics": {
        "mmlu": {
          "overall_average": 0.3,
          "scores": {
            "additionalProp1": 1,
            "additionalProp2": 2,
            "additionalProp3": 3
          }
        },
        "mmlu_branch": {
          "error_rate": 0.4,
          "improvements": {
            "additionalProp1": 1,
            "additionalProp2": 2,
            "additionalProp3": 3
          },
          "regressions": {
            "additionalProp1": 1,
            "additionalProp2": 2,
            "additionalProp3": 3
          },
          "no_change": {
            "additionalProp1": 1,
            "additionalProp3": 3,
            "additionalProp2": 2
          }
        },
        "mt_bench": {
          "overall_average": 0.8,
          "error_rate": 0.6,
          "scores": {
            "additionalProp1": 1,
            "additionalProp2": 2,
            "additionalProp3": 3
          }
        },
        "mt_bench_branch": {
          "error_rate": 0.4,
          "improvements": {
            "additionalProp1": 1,
            "additionalProp2": 2,
            "additionalProp3": 3
          },
          "regressions": {
            "additionalProp1": 1,
            "additionalProp2": 2,
            "additionalProp3": 3
          },
          "no_change": {
            "additionalProp1": 1,
            "additionalProp2": 2,
            "additionalProp3": 3
          }
        }
      }
    }
    

Wenn der Status completed ist, wird im Bucket Object Storage ein Verzeichnis trained_models mit Protokollen zur Fehlerbehebung erstellt.

Was ist in meinem Object Storage Eimer nach dem Training?

Nach dem Training des Modells enthält Ihr Object Storage Bucket ein Verzeichnis trained models mit den folgenden Dateien.

Artifacts
Diese Dateien enthalten die Phase-1- und Phase-2-Kontrollpunktdaten und das Modell für jede Epoche.
Eval
Diese Dateien enthalten die Bewertungsmetriken für die Benchmarks ' mmlu, ' mmlu_branch, ' mt_bench und ' mt_bench_branch.
Logs
Diese Dateien enthalten die Red Hat AI InstructLab Ausführungsprotokolle und Systemdetails.
Model
Diese Dateien enthalten das endgültige Modell im ' safetensors ormat. Der Inhalt dieses Verzeichnisses wird von dem Modell verwendet.

Weitere Schritte

Optional: Sie können das Modell bereitstellen.