Ein schlanker, lokaler KI-Inferenzserver, nur 5 MB einzelne Binärdatei, bietet eine OpenAI API-kompatible Schnittstelle, unterstützt GGUF-Modelle und LoRA-Adapter
Shimmy - Leichtgewichtiger lokaler KI-Inferenzserver
Projektübersicht
Shimmy ist ein 5,1 MB großer, einzelner Binär-Inferenzserver, der OpenAI API-kompatible Endpunkte für GGUF-Modelle bereitstellt. Er wurde als "unsichtbare Infrastruktur" konzipiert, um die lokale KI-Entwicklung reibungslos zu gestalten.
Kernfunktionen
🚀 Extrem leichtgewichtig
- Binärgröße: Nur 5,1 MB (im Vergleich zu Ollama mit 680 MB)
- Startzeit: <100 ms (im Vergleich zu Ollama mit 5-10 Sekunden)
- Speicherverbrauch: <50 MB (im Vergleich zu Ollama mit 200 MB+)
🔧 Null-Konfigurations-Betrieb
- Automatische Portzuweisung: Vermeidet Portkonflikte
- Automatische Modellerkennung: Unterstützt mehrere Modellquellen
- Hugging Face Cache:
~/.cache/huggingface/hub/
- Ollama-Modelle:
~/.ollama/models/
- Lokales Verzeichnis:
./models/
- Umgebungsvariable:
SHIMMY_BASE_GGUF=path/to/model.gguf
- Hugging Face Cache:
🎯 Perfekte Kompatibilität
- 100% OpenAI API-kompatibel: Direkter Ersatz für bestehende Tools
- Sofort einsatzbereit: Tools wie VSCode, Cursor, Continue.dev erfordern keine Änderungen
- Plattformübergreifende Unterstützung: Linux, macOS, Windows
Technische Architektur
Kern-Technologie-Stack
- Sprache: Rust + Tokio (Speichersicherheit, asynchrone Leistung)
- Inferenz-Engine: llama.cpp-Backend (Industriestandard für GGUF-Inferenz)
- API-Design: OpenAI-kompatibel (Plug-and-Play-Ersatz)
Unterstützte Modellformate
- GGUF-Modelle: Hauptunterstütztes Format
- SafeTensors: Native Unterstützung, 2x schnellere Ladezeiten
- LoRA-Adapter: Erstklassige Unterstützung, vom Training zur Produktions-API in nur 30 Sekunden
Installation und Nutzung
Schnellinstallation
Methode 1: Installation über Cargo
cargo install shimmy
Methode 2: Herunterladen der vorgefertigten Binärdatei (Windows)
curl -L https://github.com/Michael-A-Kuykendall/shimmy/releases/latest/download/shimmy.exe
Methode 3: macOS-Installation
# Abhängigkeiten installieren
brew install cmake rust
# shimmy installieren
cargo install shimmy
Grundlegende Nutzung
1. Modell herunterladen
# Kompatible Modelle herunterladen
huggingface-cli download microsoft/Phi-3-mini-4k-instruct-gguf --local-dir ./models/
huggingface-cli download bartowski/Llama-3.2-1B-Instruct-GGUF --local-dir ./models/
2. Server starten
# Automatische Portzuweisung
shimmy serve
# Manuellen Port angeben
shimmy serve --bind 127.0.0.1:11435
3. KI-Tools konfigurieren
VSCode-Konfiguration:
{
"github.copilot.advanced": {
"serverUrl": "http://localhost:11435"
}
}
Continue.dev-Konfiguration:
{
"models": [{
"title": "Local Shimmy",
"provider": "openai",
"model": "your-model-name",
"apiBase": "http://localhost:11435/v1"
}]
}
Befehlszeilentools
Grundlegende Befehle
shimmy serve # Server starten (automatische Portzuweisung)
shimmy serve --bind 127.0.0.1:8080 # Manuellen Port binden
shimmy list # Verfügbare Modelle anzeigen
shimmy discover # Modellerkennung aktualisieren
shimmy generate --name X --prompt "Hi" # Generierung testen
shimmy probe model-name # Modellladung überprüfen
API-Endpunkte
Kern-Endpunkte
GET /health
- GesundheitsprüfungPOST /v1/chat/completions
- OpenAI-kompatibler ChatGET /v1/models
- Verfügbare Modelle auflistenPOST /api/generate
- Native Shimmy-APIGET /ws/generate
- WebSocket-Streaming
Anwendungsbeispiel
# API testen
curl -X POST http://localhost:11435/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "your-model",
"messages": [{"role": "user", "content": "Hello!"}]
}'
Leistungsvergleich
Metrik | Shimmy | Ollama | llama.cpp |
---|---|---|---|
Binärgröße | 5,1 MB 🏆 | 680 MB | 89 MB |
Startzeit | <100 ms 🏆 | 5-10 s | 1-2 s |
Speicherverbrauch | 50 MB 🏆 | 200 MB+ | 100 MB |
OpenAI API | 100% 🏆 | Teilweise Unterstützung | Keine |
Vorteile
🔒 Datenschutz zuerst
- Code bleibt auf dem lokalen Rechner
- Kein Risiko von Datenlecks
- Vollständig offline betreibbar
💰 Kosteneffizienz
- Keine Abrechnung pro Token
- Unbegrenzte Abfragen
- Einmal installieren, dauerhaft nutzen
⚡ Hervorragende Leistung
- Lokale Inferenz, Sub-Sekunden-Antwortzeiten
- Geringer Speicherbedarf
- Schneller Start
🔄 Flexible Bereitstellung
- Einzelne Binärdatei
- Keine externen Abhängigkeiten
- Plattformübergreifende Kompatibilität
Erweiterte Funktionen
LoRA-Adapter-Unterstützung
Shimmy bietet erstklassige LoRA-Adapter-Unterstützung, die eine schnelle Bereitstellung von trainierten Modellen in einer Produktions-API ermöglicht:
# LoRA-Adapter laden
shimmy serve --lora-adapter path/to/adapter
Hot Model Switching
Unterstützt das dynamische Wechseln von Modellen während des Betriebs, ohne den Server neu starten zu müssen.
GPU-Beschleunigung
- macOS: Automatische Metal GPU-Beschleunigung
- Plattformübergreifend: Unterstützt verschiedene GPU-Backends
Community und Support
Community-Ressourcen
- Fehlerberichte: GitHub Issues
- Diskussionen: GitHub Discussions
- Dokumentation: docs/
- Sponsoring: GitHub Sponsors
Zusammenfassung
Shimmy ist eine revolutionäre lokale KI-Inferenzlösung, die beweist, dass "weniger manchmal mehr ist". Durch sein extrem leichtgewichtiges Design und das Null-Konfigurations-Konzept bietet Shimmy Entwicklern eine wirklich "Out-of-the-Box"-lokale KI-Infrastruktur, die gleichzeitig Leistung und Kompatibilität auf Unternehmensniveau beibehält. Egal, ob Sie ein KI-Anwendungsentwickler, Forscher oder ein datenschutzbewusster Benutzer sind, Shimmy ist eine ausgezeichnete Wahl, die es wert ist, in Betracht gezogen zu werden.