0Pricing
MLOps Academy · Lektion

Einen Dienst und seine API definieren

Stellen Sie Runner über einen typisierten Dienstendpunkt bereit.

Einen Dienst und seine API definieren ist eine kostenlose MLOps Academy-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des MLOps Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der MLOps Academy-Kurs umfasst insgesamt 4 Lektionen.

Was ein Service ist

In BentoML ist ein Service die Einheit, die Sie bereitstellen. Er kapselt Ihr Modell und stellt einen oder mehrere API-Endpunkte bereit, die Clients aufrufen können. 🛎️

Runner führen das Modell aus

Ein Runner ist Bent​​oMLs optimierte Kapselung eines gespeicherten Modells. Er führt die Inferenz in einem eigenen Worker aus, damit die API reaktionsschnell bleibt.

runner = bentoml.sklearn.get("iris_clf:latest").to_runner()

Den Service erstellen

Sie erstellen einen Service, indem Sie ihm einen Namen geben und seine Runner übergeben. Das Service-Objekt ist das, was BentoML bereitstellt und skaliert.

svc = bentoml.Service("iris_classifier", runners=[runner])

Einen Endpunkt hinzufügen

Mit dem Decorator @svc.api stellen Sie eine Funktion als API bereit. Diese Funktion wird zu einer über HTTP aufrufbaren Route.

@svc.api(input=..., output=...)
def classify(data):
    ...

Eingabe und Ausgabe deklarieren

Sie legen typisierte IO-Deskriptoren fest, damit BentoML Daten validieren und serialisieren kann. NumpyNdarray gibt an, dass Arrays erwartet und zurückgegeben werden.

from bentoml.io import NumpyNdarray

Den Runner intern aufrufen

In der API-Funktion rufen Sie das Modell über den Runner auf. Mit run senden Sie die Eingabe an den Modell-Worker und erhalten das Ergebnis zurück.

result = runner.predict.run(data)
return result

In service.py ablegen

BentoML sucht Ihre Implementierung standardmäßig in einer bestimmten Datei. Legen Sie den Service im Projektstammverzeichnis in service.py ab.

Lokal bereitstellen

Ein Befehl startet einen Entwicklungsserver. bentoml serve verweist auf die Datei und das svc-Objekt und überwacht anschließend Änderungen.

bentoml serve service:svc --reload

Für Dictionaries JSON verwenden

Nicht jede API arbeitet mit Arrays. Wechseln Sie zu JSON, wenn Ihre Clients stattdessen Dictionaries senden und erwarten.

from bentoml.io import JSON

Integrierte Swagger-Dokumentation

Sobald der Dienst läuft, stellt BentoML interaktive Swagger-Dokumentation unter der Stamm-URL bereit, sodass Sie jeden Endpunkt im Browser testen können. 🎉

Mit einem curl-Aufruf testen

Sie können den aktiven Endpunkt über Ihr Terminal aufrufen. Ein kurzer curl-POST sendet eine Beispieleingabe und zeigt die zurückgegebene Vorhersage an.

curl -X POST localhost:3000/classify -d "[[5.1,3.5,1.4,0.2]]"

Kurze Überprüfung

Sie möchten Ihr Modell aus einer API-Funktion heraus aufrufen. Welchen Wrapper sollten Sie verwenden?

Zusammenfassung

Sie haben einen Runner in einen Service umgewandelt, einen @svc.api-Endpunkt mit typisierten Ein- und Ausgaben bereitgestellt, ihn in service.py abgelegt und ihn mit integrierter Dokumentation bereitgestellt. Die Live-API ist fertig! 🙌

Häufig gestellte Fragen

Ist die Lektion „Einen Dienst und seine API definieren“ kostenlos?

Ja — der vollständige Text von „Einen Dienst und seine API definieren“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des MLOps Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der MLOps Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Einen Dienst und seine API definieren“?

Stellen Sie Runner über einen typisierten Dienstendpunkt bereit. Du übst MLOps Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um MLOps Academy zu starten?

Keine Vorkenntnisse erforderlich. MLOps Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.

Wie lange dauert die Lektion „Einen Dienst und seine API definieren“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser MLOps Academy-Lektion Code schreiben und ausführen?

Ja. Jede MLOps Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Ein Modell im Bento Store speichern
  2. Einen Dienst und seine API definieren
  3. Adaptives Micro-Batching aktivieren
  4. Ein Bento bauen und containerisieren
← Zurück zu MLOps Academy