Blog ¡ 14.10.2025 ¡ Matthias

hf-inference: aus einem Frust wurde eine Library 🛠️

Wie wir bei megazord.studio GmbH Ordnung in das Hugging-Face-Chaos gebracht haben – und dabei ein Tool gebaut haben, das geblieben ist.

„Warum ist das hier schon wieder anders?"

Es war spät, die Bildschirme glßhten, und einer von uns tippte leise:

„Ich schreibe jetzt eine einheitliche Inference-API. Reicht's." 💡

Wir arbeiten viel mit generativen Modellen – Text, Vision, Audio, manchmal alles gleichzeitig. 🎭

Das ist spannend, aber auch: unordentlich.

Wer schon einmal mehrere Hugging-Face-Modelle ausprobiert hat, kennt das GefĂźhl:

Jedes Modell ist irgendwie besonders. Andere Payloads, andere Outputs, eigene Erwartungshaltungen.

Und plötzlich hat man zehn Notebooks, drei REST-Snippets, fünf JSON-Schemas und null Übersicht.

Eines liefert Strings, das nächste Dictionaries, das dritte Listen aus Tokens,

das Vierte erwartet ein Byte-Array, das fünfte Base64-encoded Bilder –

und bei Nummer sechs funktioniert die Hälfte nur, wenn man vorher trust_remote_code=True setzt. 🤯

Wir wollten einfach nur eine einfache Art, mit Modellen zu sprechen. 🗣️

Egal welches Format. Egal welcher Task.

An einem dieser „lass uns das kurz ausprobieren“-Abende (die nie kurz sind 🕰️) kam die Idee:

Was, wenn wir einfach einen einzigen Endpoint hätten – /inference – der alles kann?

Ein universeller Adapter. 🔌

Ein kleiner, ehrlicher Server, der nur das tut, was man ihm sagt.

Ohne Boilerplate, ohne 17 JSON-Varianten.

Also bauten wir ihn.

hf-inference war geboren. 🚀

Der erste Prototyp war fast unscheinbar: 🧪

Ein FastAPI-Server, eine Handvoll Routen, ein paar Zeilen Glue-Code.

curl -X POST http://localhost:8000/inference \
  -F 'spec={"model_id":"gpt2","task":"text-generation","payload":{"prompt":"Hello world"}}'

Dann dasselbe mit einem Bild:

curl -X POST http://localhost:8000/inference \
  -F 'spec={"model_id":"google/vit-base-patch16-224","task":"image-classification"}' \
  -F 'image=@/path/to/image.jpg'

Und plĂśtzlich merkten wir:

Alles fühlte sich ruhig an. 🧘

Keine Copy-Paste-Flut aus Hugging-Face-Beispielen mehr.

Kein GrĂźbeln Ăźber Input-Keys wie inputs, pixel_values, waveform oder prompt.

Nur ein System, das sagt:

„Erzähl mir, welches Modell du willst – ich kümmere mich um den Rest.“

Ein leises Aha, das hängen blieb.

Heute ist hf-inference ein kleines, wachsendes Werkzeug – noch wacklig, noch voller Ecken und Kanten,

aber es hält schon erstaunlich gut zusammen, was vorher auseinanderfiel.

Es ist nicht stabil im Sinne von „nie kaputt“,

aber stabil im Sinne von „du weisst wenigstens, wo es kracht“.

Viele Sonderfälle werden noch kommen –

Modelle, die wieder andere Formate verlangen, Tasks, die unerwartet Input-Felder fordern,

und sicher auch API-BrĂźche, wenn wir das Ganze weiter abstrahieren.

Aber es ist trotzdem besser als zuvor:

Ein Ort, an dem wir mit jedem Fix und jedem neuen Task ein bisschen mehr Ruhe ins Chaos bringen.

Ein paar Eckpunkte:

  • Eine FastAPI-App mit /inference, /models, /healthz
  • Eine Registry, die automatisch weiss, welches Modell welchen Task kann
  • 31+ Tasks von Text- zu Audio- und Vision-Modellen
  • Läuft auf CPU, GPU, Docker oder lokal
  • Bereit fĂźr Dev, Research und kleine Deployments

Es nutzt transformers, diffusers, fastapi – nichts Magisches.

Nur gut orchestriert.

Und alles Open Source.

https://github.com/megazord-studio/hf_inference

Wir bauen Tools, die wir selbst benutzen.

hf-inference ist kein Side-Project, es ist ein StĂźck Arbeitsalltag.

Wenn wir neue Modelle testen, Benchmarks bauen oder einfach wissen wollen,

ob ein Konzept trägt – dann läuft im Hintergrund dieser kleine Server.

Es ist einer dieser Dienste, die man irgendwann vergisst,

weil sie einfach funktionieren.

Und genau so soll es sein.

NatĂźrlich hat alles Grenzen.

Wir haben trust_remote_code=True aktiviert –

aber mit Bedacht.

Das Tool ist fĂźr kontrollierte Umgebungen gedacht.

Wir sagen immer: Lade nur, was du verstehst.

Und nutze Container, wenn du unsicher bist.

Kein Blackbox-Zauber. Keine heimlichen Tricks.

Einfach ein ehrlicher Server, der dich ernst nimmt.

FĂźr wen ist das spannend?

FĂźr Teams, die schnell Modelle vergleichen wollen.

FĂźr Developer, die keine Lust mehr auf API-Hickhack haben.

FĂźr Researchers, die eine saubere CLI mĂśgen.

Und fĂźr alle, die finden, dass gute Tools leise sein dĂźrfen.

hf-inference entstand aus Frust.

Aber geblieben ist etwas anderes:

Das gute GefĂźhl, wenn Dinge klar werden.

Weil wir irgendwann gesagt haben:

„Wir bauen das jetzt einfach richtig.“

Und es hat funktioniert.


Projektlinks


megazord.studio GmbH – wo Tech ruhig, schön und ehrlich sein darf.