
Was ist FastAPI?
FastAPI ist das Python-Framework hinter vielen KI-Diensten und Datenauswertungen. Woher es kommt, wie es Schnittstellen baut und wann Django oder Flask die bessere Wahl sind, verständlich erklärt.
- Lesezeit
- 9 Minuten
- Autor
- Samet Akin
- Veröffentlicht
- Kategorie
- Technik erklärt
Was ist FastAPI?
FastAPI ist ein Framework zum Bauen von Schnittstellen, im Fachjargon APIs. Eine Schnittstelle ist ein vereinbarter Weg, auf dem zwei Programme Daten austauschen: Eine App fragt beim Server nach dem Lagerbestand, der Server antwortet mit Zahlen statt mit einer fertigen Seite. Solche Übergabepunkte stecken heute in fast jeder Software, vom Onlineshop bis zur Warenwirtschaft. FastAPI ist das Werkzeug, mit dem solche Übergabepunkte in Python entstehen.
Die Besonderheit liegt darin, wie wenig doppelte Arbeit dabei anfällt. In Python lässt sich am Code notieren, welche Daten eine Funktion erwartet, etwa eine Kundennummer als Text und einen Betrag als Zahl. FastAPI liest genau diese Angaben und macht daraus zwei Dinge: eine Prüfung, die jede eingehende Anfrage kontrolliert, und eine Dokumentation, die immer zum Code passt. Was sonst drei getrennte Aufgaben wären, ist hier eine.
Diese wenigen Zeilen sind bereits eine funktionierende Schnittstelle. Schickt jemand eine Rechnung ohne Kundennummer oder mit einem Betrag, der keine Zahl ist, weist FastAPI die Anfrage ab und erklärt in der Antwort, welches Feld nicht passt. Der eigene Code muss sich darum nicht kümmern, er bekommt nur Daten zu sehen, die die Prüfung bestanden haben.
from fastapi import FastAPI
from pydantic import BaseModel
app = FastAPI()
class Rechnung(BaseModel):
kundennummer: str
betrag: float
@app.post("/rechnungen")
def lege_rechnung_an(rechnung: Rechnung):
return {"status": "angelegt", "kunde": rechnung.kundennummer}Wie funktioniert FastAPI?
FastAPI erfindet wenig selbst, es verbindet zwei bewährte Bausteine. Starlette übernimmt den Webteil, also das Entgegennehmen und Beantworten von Anfragen. Pydantic übernimmt die Datenprüfung anhand der Typangaben. FastAPI legt darüber eine Schicht, die beides zusammenführt und um die automatische Dokumentation ergänzt. Unter der Adresse /docs zeigt jeder FastAPI-Dienst eine Oberfläche, in der man jede Funktion der Schnittstelle direkt im Browser ausprobieren kann.
Der zweite Baustein ist die asynchrone Arbeitsweise. Ein klassischer Python-Dienst wartet, bis eine Anfrage fertig beantwortet ist, bevor er die nächste anfasst. FastAPI kann Wartezeiten überbrücken: Während eine Anfrage auf die Datenbank oder ein KI-Modell wartet, bedient der Dienst schon die nächste. Für Schnittstellen mit vielen gleichzeitigen Zugriffen macht das einen spürbaren Unterschied.
Im Betrieb läuft ein FastAPI-Dienst hinter einem Webserver, meist verpackt in einen Container, damit er auf jedem Server gleich startet. Wie das im Detail funktioniert, erklärt unser Artikel Was ist Docker?. Für den Auftraggeber wichtig: Der Dienst ist ein eigenes, kleines Programm, das unabhängig vom Rest der Software aktualisiert und skaliert werden kann.
@app.get("/artikel/{artikelnummer}")
def hole_artikel(artikelnummer: int):
return lager.suche(artikelnummer)
# Ein Aufruf von /artikel/abc kommt gar nicht erst an:
# FastAPI meldet vorher, dass "abc" keine ganze Zahl ist.Wozu wird FastAPI verwendet?
Überall dort, wo ein Ergebnis aus Python für andere Programme erreichbar sein soll. Python ist die Sprache der Datenwelt: Auswertungen, Dokumentenerkennung und der Umgang mit Sprachmodellen finden dort statt, weil die passenden Bibliotheken dort zuhause sind. FastAPI ist der kürzeste Weg, so ein Ergebnis in einen Dienst zu verwandeln. Typische Einsatzgebiete sind:
- KI-Modelle als Dienst bereitstellen, etwa eine Texterkennung, die eine Weboberfläche befragt
- Dokumente automatisch auslesen, zum Beispiel Lieferscheine oder Rechnungen aus Fotos und PDFs
- Auswertungen und Prognosen, die eine Anwendung oder ein Dashboard abruft
- Das Backend hinter einer Oberfläche in React oder hinter einer App
- Kleine Zusatzdienste neben bestehender Software, ohne das Hauptsystem anzufassen
So setzen wir es bei Akinware auch ein: Wo ein Modell oder eine Auswertung in Python läuft, stellen wir sie mit FastAPI als Schnittstelle bereit. Die Schnittstelle prüft die Anfragen, begrenzt die Last und protokolliert, was hineingeht und herauskommt. Mehr dazu steht auf unserer Seite zu KI und Automatisierung.
Die Geschichte von FastAPI
FastAPI ist das Werk eines einzelnen Entwicklers. Sebastián Ramírez, ein Kolumbianer, der lange in Deutschland gearbeitet hat, suchte für seine Projekte ein Framework, das Typprüfung, Dokumentation und Geschwindigkeit zusammenbringt. Weil er es nicht fand, baute er es selbst und veröffentlichte es 2018 als Open Source. Der Zeitpunkt war günstig: Kurz darauf begann der große Aufschwung des maschinellen Lernens, und genau diese Teams brauchten ein Werkzeug wie dieses.
- Erschienen
- 2018
- Entwickelt von
- Sebastián Ramírez und Gemeinschaft
- Sprache
- Python
- Lizenz
- MIT, kostenfrei nutzbar
- Verbreitung
- Unter den meistgenutzten Python-Web-Frameworks
Vom Nebenprojekt zum Standardwerkzeug

Veröffentlichung
Sebastián Ramírez stellt FastAPI auf GitHub. Das Framework kombiniert vorhandene Bausteine zu etwas Neuem: Typprüfung und Dokumentation entstehen aus demselben Code.
2018
Was FastAPI nicht kann
FastAPI ist bewusst schmal gehalten. Es liefert Schnittstellen und sonst nichts. Wer eine komplette Anwendung erwartet, wie sie andere Frameworks mitbringen, muss vieles selbst ergänzen oder ein anderes Werkzeug wählen. Die wichtigsten Grenzen:
- Es erzeugt keine Seiten und keine Oberflächen, davor gehört immer eine eigene Weboberfläche oder App
- Es bringt keinen Verwaltungsbereich und keine Benutzerverwaltung mit, anders als etwa Django
- Es bindet euch an Python: Ohne jemanden, der die Sprache betreut, wird der Dienst zur Insel
- Für eine klassische Firmenwebseite mit Texten und Bildern ist es schlicht das falsche Werkzeug
Keiner dieser Punkte ist ein Mangel, sie beschreiben nur den Zuschnitt. FastAPI will ein gutes Teil in einem größeren System sein, kein System für alles.
FastAPI, Django oder Flask?
Wer nach Python im Web sucht, stößt auf drei Namen. Django ist das Komplettpaket: Datenmodell, Benutzerverwaltung und ein fertiger Verwaltungsbereich, gedacht für ganze Anwendungen aus einer Hand. Flask ist das Gegenteil, ein sehr kleiner Kern, um den man alles selbst herum baut. FastAPI liegt dazwischen und hat einen klaren Schwerpunkt: Schnittstellen. Als Faustregel:
- Django, wenn Python die komplette Anwendung tragen soll, inklusive Seiten und Verwaltung
- Flask, wenn ein sehr kleiner Dienst reicht und das Team Flask schon kennt
- FastAPI, wenn eine Schnittstelle gebraucht wird, besonders vor einem KI-Modell oder einer Auswertung
- Bei neuen Schnittstellen-Projekten spricht wenig für Flask, weil FastAPI Prüfung und Dokumentation kostenlos dazuliefert
In der Praxis schließen sich die drei nicht aus. Ein gewachsenes Django-System bekommt oft einen FastAPI-Dienst zur Seite gestellt, der genau eine Aufgabe übernimmt, etwa die Dokumentenerkennung. Das Hauptsystem bleibt unangetastet, der neue Dienst lässt sich getrennt betreiben und bei Bedarf wieder abschalten.
FastAPI aus Kundensicht
Für Auftraggeber zählt an FastAPI vor allem die Dokumentation, die sich nicht abhängen lässt. Bei vielen Projekten veraltet die Beschreibung der Schnittstelle nach dem ersten Jahr, und beim Wechsel des Dienstleisters beginnt die Archäologie. Bei FastAPI entsteht die Beschreibung aus dem Code selbst, sie ist also zwangsläufig aktuell. Ein neues Team öffnet die Oberfläche unter /docs und sieht, was der Dienst kann. Das senkt die Kosten genau an der Stelle, an der Projekte sonst teuer werden.
Dagegen steht ein ehrlicher Punkt: Ein FastAPI-Dienst ist ein zusätzliches Stück Software, das betrieben, überwacht und aktualisiert werden will. Lizenzkosten fallen keine an, die Lizenz ist MIT und damit auch im Geschäftsbetrieb frei. Aber Serverkosten und Wartung bleiben, und wenn im Haus niemand Python kann, entsteht eine Abhängigkeit vom Dienstleister. Wir sprechen das vor dem Projekt an, nicht danach, und planen den Betrieb bei Bedarf über unsere Webanwendungs-Betreuung mit ein.
Ist FastAPI die Zukunft?
Für Schnittstellen in Python ist FastAPI heute die naheliegende Wahl, und daran wird sich so schnell wenig ändern. Das Framework ist eng mit dem Aufstieg der KI verbunden: Solange Modelle und Auswertungen in Python entstehen, braucht es einen Weg, sie erreichbar zu machen, und dieser Weg heißt derzeit meistens FastAPI.
Ehrlich bleibt aber auch: FastAPI ist ein Spezialist. Es wird keine kompletten Anwendungen übernehmen und keine Frameworks wie Django verdrängen, das ist gar nicht sein Anspruch. Wer heute darauf setzt, wählt kein Experiment, sondern ein etabliertes Werkzeug mit großer Gemeinschaft, sollte aber wissen, wofür es gedacht ist und wofür nicht. Die Details zu unserem Einsatz stehen auf der Seite zur FastAPI-Entwicklung.
Was FastAPI stark macht

Geprüfte Daten
Jede Anfrage wird gegen die Typangaben im Code geprüft, bevor sie verarbeitet wird. Fehlerhafte Daten kommen gar nicht erst durch.

Doku ohne Pflege
Die Beschreibung der Schnittstelle entsteht aus dem Code und ist deshalb immer aktuell. Unter /docs lässt sich jede Funktion direkt ausprobieren.

Verbindet Systeme
FastAPI stellt Python-Ergebnisse jedem anderen Programm zur Verfügung, von der Weboberfläche bis zur Warenwirtschaft. Ein Dienst, viele Abnehmer.

Zuhause der KI-Welt
Modelle und Auswertungen entstehen in Python, und FastAPI ist dort der kürzeste Weg zur Schnittstelle. Deshalb steckt es hinter vielen KI-Diensten.
Was wir mit FastAPI bauen
FastAPI ist bei uns das Bindeglied zwischen Python und dem Rest eures Systems. Diese Leistungen hängen direkt damit zusammen.

KI und Automatisierung
Dokumente auslesen, Texte auswerten, Abläufe automatisieren: Wo ein Modell in Python arbeitet, stellt FastAPI es eurer Software zur Verfügung.
Webanwendungen
Portale und Dashboards, die ihre Daten aus geprüften Schnittstellen beziehen. Die Oberfläche bleibt schnell, die Logik liegt im Dienst dahinter.
Cloud
FastAPI-Dienste laufen im Container und lassen sich bei Bedarf vervielfachen. Wir richten Betrieb und Überwachung passend zur Last ein.





