Blank white background with no objects or features visible.

Werden Sie Teil unseres VAR- und VAD-Ökosystems – und ermöglichen Sie die Governance von Unternehmens-KI über LLMs, MCPs und Agents hinweg. Read →

Training und Einsatz eines Irisblumen-Klassifikationsmodells mit TrueFoundry

von TrueFoundry

Aktualisiert: July 11, 2022

Fassen Sie zusammen mit
Metallic silver knot design with interlocking loops and circular shape forming a decorative pattern.
Blurry black butterfly or moth icon with outstretched wings on white background.
Blurry red snowflake on white background, symmetrical frosty design with soft edges and abstract shape.
TrueFoundry Webseite

In diesem Beispiel trainieren wir ein Modell, das eine Blume der Gattung Iris anhand der Größenmaße ihrer Blütenblätter und Kelchblätter in eine von drei Arten einteilen kann.

Sie können diesem Beispiel auch auf einem folgen Google Collaboratory Notizbuch.

Das Iris-Datensatz enthält drei verschiedene Arten:

  • Iris Setosa
  • Schwertlilie versicolor
  • Iris Virginica

Wir müssen einen Klassifikator erstellen, der die Art der Blume anhand der folgenden Parameter identifizieren kann:

  • Länge des Kelchblattes
  • Kelchblattbreite
  • Länge des Blütenblattes
  • Breite des Blütenblattes

Über TrueFoundry

Wahre Gießerei bietet zwei Bibliotheken zur Vereinfachung Ihrer ML-Workflows:

ML Gießerei

MLFoundry Die Bibliothek wird verwendet, um ML-Trainingsexperimente zu verfolgen.

Warum brauchst du Experiment-Tracking? Wenn Sie mehrere ML-Modelle trainieren, um ein Problem zu lösen, werden Sie wahrscheinlich mehrere Modelle mit mehreren Frameworks, Hyperparametern und mehreren Datensätzen trainieren. Verfolgen Sie Ihr Experiment mit einer Bibliothek wie MLFoundry kann Ihnen bei der Organisation Ihrer ML-Experimente helfen.

Sie können MLFoundry verwenden, um Hyperparameter, Metriken, Datensätze und Modelle zu protokollieren. Anschließend können Sie verschiedene Experimente auf dem vergleichen TrueFoundry-Dashboard und wählen Sie ein Modell aus, das in der Produktion eingesetzt werden soll, oder entscheiden Sie, das Modell erneut zu trainieren.

In diesem Beispiel werden wir 5 verschiedene APIs von MLFoundry verwenden. Sie sind:

  1. log_parameter - benutze es, um Hyperparameter des aktuellen Experiments zu protokollieren
  2. log_datensatz - wird verwendet, um den gesamten Datensatz zu protokollieren
  3. log_metrics - Log-Metriken wie Genauigkeitswerte, F1-Ergebnisse
  4. set_tags - Fügen Sie Ihrem Experiment Tags hinzu, um es später einfach zu filtern
  5. log_modell - um ein Modell inklusive der trainierten Gewichte zu speichern

Service Gießerei

Mit dem Servicegießerei Bibliothek, Sie können ein Modell einfach paketieren, containerisieren und in einem Kubernetes-Cluster bereitstellen.

Lassen Sie uns ein Modell trainieren und es mit MLFoundry protokollieren

Öffnen Sie ein IPython-Notizbuch — Sie können entweder Jupyter verwenden, das lokal auf Ihrem Computer läuft, oder ein Google Colab-Notebook, das in der Cloud läuft.

Installieren Sie die erforderlichen Bibliotheken.

 
!pip install mlfoundry
!pip install pandas
!pip install sklearn

Melden Sie sich bei TrueFoundry an. Erstellen und kopieren Sie einen API-Schlüssel von der Einstellungsseite. Verwenden Sie diesen API-Schlüssel, um den MLFoundry-Client zu initialisieren und einen Lauf zu erstellen. Ein Lauf ist eine Entität, die ein einzelnes Experiment darstellt.

 
import mlfoundry as mlf
client = mlf.get_client(api_key='<TFY_API_KEY>')
run = client.create_run('iris-classifier'))

Rufen Sie den Iris-Datensatz mit dem sklearn.datasets Modul. Wir unterteilen es dann in Test- und Trainingsdatensätze.

 
from sklearn import datasets
from sklearn.model_selection import train_test_split

data = datasets.load_iris()

X = pd.DataFrame(data.data, columns=data.feature_names)
y = data.target

X_train, X_test, y_train, y_test = train_test_split(X, y, train_size=0.8, stratify=y, random_state=42)

Schauen wir uns die Zielnamen an. Wir werden dies verwenden, um die Integer-Ausgabe des Modells den tatsächlichen Namen der Arten zuzuordnen

 
print(data.target_names)

# Output
# ['setosa' 'versicolor' 'virginica']

Initialisieren Sie ein Modell. Verwenden Sie dann MLFoundry, um die Parameter des Modells zu protokollieren und einige Tags für diesen aktuellen Experimentlauf zu erstellen.

 
from sklearn.svm import SVC

clf = SVC(gamma='scale', kernel='rbf', probability=True, C=1.2)

run.set_tags({
	'framework': 'sklearn',
  'task': 'classification'
})

run.log_params(clf.get_params())

Als Nächstes trainieren wir das Modell anhand unseres Zugdatensatzes. Sobald das Training abgeschlossen ist, berechnen wir die verschiedenen Metriken und protokollieren sie in MLFoundry mit log_metrics.

 
from sklearn.svm import SVC

clf = SVC(gamma='scale', kernel='rbf', probability=True, C=1.2)

run.set_tags({
	'framework': 'sklearn',
  'task': 'classification'
})

run.log_params(clf.get_params())

 
clf.fit(X_train, y_train)

y_pred_train = clf.predict(X_train)
y_pred_test = clf.predict(X_test)

metrics = {
  'train/accuracy_score': accuracy_score(y_train, y_pred_train),
  'train/f1_weighted': f1_score(y_train, y_pred_train, average='weighted'),
  'train/f1_micro': f1_score(y_train, y_pred_train, average='micro'),
  'train/f1_macro': f1_score(y_train, y_pred_train, average='macro'),
  'test/accuracy_score': accuracy_score(y_test, y_pred_test),
  'test/f1_weighted': f1_score(y_test, y_pred_test, average='weighted'),
  'test/f1_micro': f1_score(y_test, y_pred_test, average='micro'),
  'test/f1_macro': f1_score(y_test, y_pred_test, average='macro'),
}

run.log_metrics(metrics)

Wenn wir mit den Genauigkeitswerten und anderen Metriken zufrieden sind, können wir uns dafür entscheiden, das aktuelle Modell einzusetzen. Dafür müssen wir das Modell speichern und kopiere die aktuelle Lauf-ID.

 
run.log_model(clf, framework=mlf.ModelFramework.SKLEARN)
print(run.run_id)
run.end()

Du kannst alle deine Läufe sehen und Metriken vergleichen über TrueFoundry-Dashboard zur Versuchsverfolgung.

Dashboard zur Versuchsverfolgung

Bereitstellung unseres Modells als API-Service

Um das Modell mit ServiceFoundry bereitzustellen, müssen wir eine Python-Datei erstellen, die die Funktion enthält, die wir als Endpunkt bereitstellen möchten.

In dieser Python-Datei rufen wir das Modell ab, das wir gerade trainiert und gespeichert haben, unter Verwendung der Run-ID MLFoundry. Beachten Sie, dass der API-Schlüssel erforderlich ist von MLFoundry wird als Umgebungsvariable verfügbar sein TFY_API_KEY.

Erstellen Sie in Ihrem IPython-Notizbuch einen Block mit dem folgenden Inhalt und führen Sie ihn aus, um eine Python-Datei mit dem Namen zu erstellen predict.py. Wir verwenden den Jupyter-Zauberbefehl % Datei schreiben um die Datei in der Notebook-Umgebung zu erstellen.

 
%%writefile predict.py
import os
import json
import pandas as pd
import mlfoundry as mlf

client = mlf.get_client(api_key=os.environ.get('TFY_API_KEY'))
run = client.get_run('79e71482643f46dfa5bfef256dba5dc5') # replace with your run id
model = run.get_model()

def species(features):
 features = json.loads(features)
 df = pd.DataFrame.from_dict([features])
 prediction = model.predict(df)[0]
 return ['setosa', 'versicolor', 'virginica'][prediction]

Innerhalb der Artenfunktion laden wir die Merkmale in eine Pandas DataFrame und treffen Sie die Vorhersage mithilfe des Modells. Wir übersetzen von der Integer-Klasse in Artennamen mit Hilfe der Zielnamen wir haben während des Trainings gedruckt.

Das ist so ziemlich die ganze Arbeit, die Sie erledigen müssen. Lassen Sie uns dieses Modell nun als API-Dienst bereitstellen. Installieren und importieren Sie zunächst Servicegießerei in deinem Notizbuch. Loggen Sie sich ein Servicegießerei.

 
!pip install servicefoundry
import servicefoundry.core as sfy
sfy.login()

Gehe zum TrueFoundry-Dashboard und erstellen Sie einen Arbeitsbereich, um den Dienst bereitzustellen. Workspaces sind eine Möglichkeit, verwandte Projekte in TrueFoundry zu gruppieren. Sobald der Workspace erstellt ist, kopiere den FQN, damit wir das erkennen können Servicegießerei wo das Modell eingesetzt werden soll.

Einen Arbeitsbereich vom Dashboard aus erstellen

Servicegießerei Mit der Bibliothek können Sie alle Abhängigkeiten der Datei sammeln, die Sie gerade mit Anforderungen sammeln Funktion.

 
requirements = sfy.gather_requirements("predict.py")

Erstellen Sie jetzt eine SFY-Service Objekt, stellen Sie den Workspace-FQN bereit und stellen Sie ihn bereit, indem Sie .bereitstellen ()

 
auto_service = sfy.Service("predict.py", requirements, sfy.Parameters( name="iris-service", workspace="" )) auto_service.deploy()

Sie können den Fortschritt dieser Bereitstellung auf der Dashboard. Sobald die Bereitstellung abgeschlossen ist, können Sie von dort aus auf den bereitgestellten Dienst zugreifen und ihn ausprobieren.

Ein Screenshot des Service, der die Vorhersage bereitstellt

Das TrueFoundry-Dashboard enthält auch Links zu Metriken und Protokollen, die in TrueFoundry-Bereitstellungen in Form von Grafana-Dashboards standardmäßig enthalten sind. Sie können mehr über sie lesen hier.

Dashboard zur Überwachung von Systemkennzahlen

Mehr Funktionen

Sie können interaktive UI-Anwendungen und Gradio-Anwendungen auch einfach von einem IPython-Notebook aus bereitstellen, indem Sie Servicegießerei. Lesen Sie das Leitfaden um zu sehen wie.

Wir arbeiten daran, die Integration zwischen Versuchsverfolgung und Bereitstellung noch enger zu gestalten und das Erlebnis noch angenehmer zu gestalten. Weitere Dinge, die Sie mit TrueFoundry tun können, finden Sie unter unsere Dokumente.Wenn Sie Modelle für maschinelles Lernen trainieren, um ein Problem zu lösen, hilft Ihnen TrueFoundry dabei, verschiedene Experimente nachzuverfolgen und macht es einfach und intuitiv, Modelle mit Best Practices bereitzustellen und sie innerhalb weniger Minuten der Öffentlichkeit zugänglich zu machen.

Der schnellste Weg, deine KI zu entwickeln, zu steuern und zu skalieren

Melde dich an
Inhaltsverzeichniss

Steuern, implementieren und verfolgen Sie KI in Ihrer eigenen Infrastruktur

Buchen Sie eine 30-minütige Fahrt mit unserem KI-Experte

Eine Demo buchen

Der schnellste Weg, deine KI zu entwickeln, zu steuern und zu skalieren

Demo buchen

Entdecke mehr

October 5, 2023
|
Lesedauer: 5 Minuten

<Webinar>GenAi Showcase for Companies

Best Fine Tuning Tools for Model Training
May 3, 2024
|
Lesedauer: 5 Minuten

Die 6 besten Tools zur Feinabstimmung für das Modelltraining im Jahr 2026

May 25, 2023
|
Lesedauer: 5 Minuten

Open-Source-LLMs: Umarmen oder untergehen

August 27, 2025
|
Lesedauer: 5 Minuten

Kartierung des KI-Marktes vor Ort: Von Chips bis zu Steuerflugzeugen

May 16, 2026
|
Lesedauer: 5 Minuten

The Agent Sprawl Problem: Why Enterprises Need Control Before Autonomy

Keine Artikel gefunden.
May 15, 2026
|
Lesedauer: 5 Minuten

Introducing Skills Registry: Reusable Agent Skills for Production AI Systems

Keine Artikel gefunden.
Types of AI agents governed by TrueFoundry enterprise control plane
May 15, 2026
|
Lesedauer: 5 Minuten

Types of AI Agents: Definitions, Roles, and What They Mean for Enterprise Deployment

Keine Artikel gefunden.
May 15, 2026
|
Lesedauer: 5 Minuten

OAuth at the MCP Layer: How We Solved Enterprise Token Management for AI Agents

Keine Artikel gefunden.
Keine Artikel gefunden.

Aktuelle Blogs

Black left pointing arrow symbol on white background, directional indicator.
Black left pointing arrow symbol on white background, directional indicator.
Machen Sie eine kurze Produkttour
Produkttour starten
Produkttour