Gesichtserkennung selbst hosten im eigenen Netzwerk.
Machen Sie einen Linux-Container zum vollständigen Gesichtserkennungs-Backend: erkennen, vergleichen, registrieren, exakt in 1:N suchen und RTSP/RTSPS-Kameras über Web UI, REST API und Python SDK überwachen.

Modellpfad wählen
Von der Evaluierung zur Produktion, ohne die Integration neu zu entwickeln.
Nutzen Sie denselben selbst gehosteten Server, auch wenn sich Modellrechte und Erkennungsanforderungen weiterentwickeln.
Hier starten
Evaluierung für Forschungszwecke
Validieren Sie den Server-Ablauf lokal mit einem öffentlichen Modellpaket im Rahmen der jeweils geltenden Bedingungen für nichtkommerzielle Forschung.
Lokale Evaluierung startenProduktionsrechte
Kommerzielle Lizenz für ein öffentliches Modell
Behalten Sie ein vertrautes öffentliches vortrainiertes Modell bei und erhalten Sie eine separate Autorisierung für ein genehmigtes kommerzielles Deployment.
Autorisierung anfragenHöhere Genauigkeit
Privates Erkennungsmodell
Evaluieren Sie ein genaueres privates Modell mit repräsentativen Daten für anspruchsvolle 1:N-Galerien im Millionen- und Zehnmillionenbereich.
Mit eigenen Daten evaluierenEin autorisiertes Modell produktiv einsetzen
Der Code von Server und Python SDK ist MIT-lizenziert. Für die Produktion können Sie ein öffentliches Modell lizenzieren oder ein genaueres privates Modell für 1:N-Galerien im Millionen- und Zehnmillionenbereich evaluieren — ohne Ihre Server-Integration zu ändern.
Autorisierung anfragenEin selbst gehosteter Dienst
Durch Architektur privat, durch Design praxisnah.
Bilder, Embeddings, Modelle und Indizes können vollständig in der von Ihnen kontrollierten Infrastruktur bleiben. Die mehrsprachige Konsole nutzt dieselbe öffentliche API wie Ihre Anwendungen und kommt ohne CDN, Analytics, externe Schriften oder JavaScript von Drittanbietern aus.
Erkennen
Gibt Bounding-Boxen, fünf Landmarken, die Detektor-Konfidenz und lokale Qualitätssignale für JPEG-, PNG- und WebP-Bilder zurück.
Vergleichen
Vergleicht je ein ausgewähltes Gesicht aus zwei Bildern mit explizitem Schwellenwert und roher Cosinusähnlichkeit — nicht mit einer Wahrscheinlichkeit.
Registrieren
Organisiert Identitäten als Collections, People und FaceSamples — mit Mehrbildregistrierung, Prüfmodi und expliziten Ablehnungsgründen.
Suchen
Führt eine vollständige 1:N-Personensuche aus. Jede Person wird anhand des stärksten passenden FaceSample oberhalb des Collection-Schwellenwerts eingestuft.
Überwachen
Führt persistente RTSP-Erkennungsaufgaben mit aktuellen Eintritts-, Austritts-, Fehler- und Wiederherstellungsereignissen sowie optionaler Bedienervorschau aus.
Integrieren
Nutzen Sie die Web UI, 29 REST-Operationen, die interaktive OpenAPI-Referenz oder den schlanken typisierten Python-Client.
Schnellstart
Vom Repository zur ersten exakten Suche.
Wählen Sie CPU oder CUDA, installieren Sie ein Modellpaket, prüfen Sie die Bereitschaft und erstellen Sie anschließend mit dem Python SDK eine Collection, registrieren Sie eine Person und führen Sie eine Suche aus.
git clone https://github.com/deepinsight/insightface.git
cd insightface
mkdir -p server/.models
export INSIGHTFACE_MODELS_UID="$(id -u)"
export INSIGHTFACE_MODELS_GID="$(id -g)"
docker compose -f server/deploy/compose.cpu.yml pull
docker compose -f server/deploy/compose.cpu.yml \
run --rm models install buffalo_l --accept-license
docker compose -f server/deploy/compose.cpu.yml \
run --rm models verify buffalo_l
docker compose -f server/deploy/compose.cpu.yml \
up -d --wait --wait-timeout 180
curl -fsS http://127.0.0.1:18097/v1/healthKlonen und installieren
Checken Sie InsightFace aus und installieren Sie ein Modellpaket getrennt vom Server-Image.
Eine Runtime starten
Verwenden Sie den CPU-Stack zur Evaluierung oder CUDA 12 für GPU-Suche und -Inferenz.
Bereitschaft bestätigen
Prüfen Sie /v1/health und bestätigen Sie anschließend, dass Datenbank, Modell und Execution Provider bereit sind.
Erste Suche ausführen
Erstellen Sie eine Collection, registrieren Sie eine Person und suchen Sie per Python mit einem anderen Bild.
CPU
Linux x86_64 mit Docker Engine und Docker Compose. Ein praxisnaher Weg für Evaluierungen und moderate Workloads.
NVIDIA CUDA 12
Ergänzen Sie eine unterstützte NVIDIA GPU, einen Treiber und das NVIDIA Container Toolkit. Der Start schlägt fehl, statt unbemerkt auf die CPU auszuweichen.
Deployment-Grenze
Erkennungspipeline
Vom Bild zum bewerteten Treffer.
Derselbe explizite Verarbeitungsvertrag gilt für Konsole, REST API, Python SDK und RTSP-Monitore.
Bild oder RTSP-Frame
JPEG, PNG, WebP oder der neueste Live-Kameraframe.
SCRFD mit mehreren Auflösungen
Gesichter erkennen, Kandidaten zusammenführen und ein globales NMS anwenden.
Ausrichten und einbetten
Fünf-Punkt-Ausrichtung, ArcFace-Embedding und L2-Normalisierung.
Modellgebundene Collection
Modell, Vorverarbeitung, Detektor, Schwellenwert und Kapazität festschreiben.
Exakte CPU-/GPU-Suche
Jedes aktive FaceSample im gewählten Profil vollständig bewerten.
Personentreffer
Bewertete Personen mit rohen Cosinuswerten und Request-IDs zurückgeben.
SQLite bleibt maßgeblich
Die dauerhafte Datenbank ist die Quelle der Wahrheit; exakte In-Memory-Indizes sind rekonstruierbare Projektionen. Akzeptierte Registrierungen werden vor der erfolgreichen Antwort in den Index aufgenommen, Löschungen werden aus beiden Speichern entfernt.

Explizite Identitätsverträge
Collections trennen Modelle, Richtlinien und Datengrenzen klar.
Jede Collection bindet Modellidentität, Vorverarbeitungsversion, Embedding-Dimension, Detektorrichtlinie, Suchprofil, Kapazität und Treffer-Schwellenwert. Dieser Vertrag verhindert unbemerktes Vermischen, wenn sich Modell oder Runtime ändern.
- Fügen Sie jeder Person mehrere FaceSamples hinzu und prüfen Sie partielle Registrierungsergebnisse, statt einen ganzen Batch zu verlieren.
- Wählen Sie off, standard oder strict, um Gesichtszahl, Größe, Schärfe, Helligkeit, Pose und Prüfungen innerhalb einer Person anzuwenden.
- Binden Sie eine vertrauenswürdige vorgelagerte Embedding-Pipeline über den Embedding-Vertrag der Collection an; Bilder durchlaufen weiterhin Erkennung und Prüfung.
- Speichern Sie optional pro akzeptiertem Gesicht einen 112×112-Bounding-Box-Crop. Originaluploads und ausgerichtete Erkennungseingaben werden nicht gespeichert.
Gemessener Suchnachweis
Exakte Suche im Maßstab einer einzelnen GPU.
Native Profile für vollständige Suche erlauben es, Vektorpräzision gegen Kapazität und Durchsatz abzuwägen, ohne auf einen approximativen Nearest-Neighbor-Index umzusteigen.
Gemessenes Maximum für 512-dimensionale Vektoren auf einer RTX 5090.
Gemessen bei exakt 10M Vektoren mit einer laufenden Anfrage.
Gemessener Durchsatz der vollständigen Top-5-Suche bei 10M Vektoren.
Gemessener Multiplikator des INT8-Top-5-Durchsatzes auf derselben GPU.
| GPU-Datentyp | Maximale Vektoren | 10M Top-5 p50 | 10M serielle QPS |
|---|---|---|---|
| FP32 | 15.8M | 12.84 ms | 77.85 |
| FP16 | 30.7M | 6.83 ms | 146.32 |
| BF16 | 30.7M | 6.83 ms | 146.33 |
| INT8 | 58.9M | 3.84 ms | 260.81 |
INT8-Feature-Quantisierung
Im veröffentlichten MR-ALL-Benchmark wurde kein wesentlicher Genauigkeitsverlust festgestellt.
Gemessen auf einer NVIDIA GeForce RTX 5090. Die Kapazität ist die isolierte Grenze des nativen Index ohne geladene ONNX-Modelle oder Serverlast. Der Geschwindigkeitstest nutzt exakt 10M 512-dimensionale Bildvektoren, eine vollständige GPU-residente Top-5-Suche, eine laufende Anfrage, 10 Warm-ups und 100 gemessene Anfragen. Produktionssysteme müssen VRAM für Modelle, Anfragen, Parallelität, Index-Neuaufbauten und Allocator-Reserve vorhalten. Die Suche ist innerhalb jeder gespeicherten Darstellung exakt; eine Speicherung mit geringerer Präzision kann Scores und Rangfolgen gegenüber FP32 dennoch verändern.
Private Modelle
Große Galerien brauchen mehr als nur einen schnelleren Index.
Die Indexkapazität löst die Skalierungsfrage der Suche. Ob eine große 1:N-Galerie nutzbar ist, entscheidet die Erkennungsqualität an anspruchsvollen Betriebspunkten. Qualifizierte Teams können vor der Lizenzierung ein privates Modell mit der Baseline eines öffentlichen Modells vergleichen.
Verwenden Sie repräsentative, rechtmäßig beschaffte Validierungsdaten. Evaluierungszugang und Umfang werden mit qualifizierten Teams abgestimmt.
Höhere Erkennungsqualität
Evaluieren Sie schwierige Bildbedingungen und strenge Fehlzuordnungsziele mit repräsentativen Daten.
Derselbe Server und dieselbe API
Wechseln Sie das autorisierte Modellpaket, ohne Ihre REST- oder Python-Integration neu zu entwickeln.
Offline signierte Autorisierung
Private Pakete können dasselbe Manifest und dasselbe offline signierte Lizenzformat verwenden.
Kommerzielle Deployment-Rechte
Definieren Sie Modellrechte für das genehmigte Produkt, die Umgebung und den produktiven Anwendungsfall.
Persistente RTSP-Monitore
Kameraüberwachung, die ohne Browser weiterläuft.
Erstellen Sie serverseitige Monitore für RTSP- oder RTSPS-Quellen, stimmen Sie Inferenzintervall und Ereignisbestätigung ab und lassen Sie unabhängige Clients den aktuellen Zustand und die letzten Ereignisse abfragen. Das Schließen der Konsole stoppt die Erkennung nicht; aktivierte Monitore werden nach einem Serverneustart fortgesetzt. Frames werden nie aufgezeichnet, letzte Ereignisse sind begrenzt und nicht dauerhaft, und die Vorschau ist standardmäßig deaktiviert.
Nutzen Sie Erkennung als Unterstützung für Bedienpersonal, nicht als alleinige Kontrolle einer folgenkritischen Entscheidung. Definieren Sie für jede Bereitstellung Richtlinien zu Einwilligung, Aufbewahrung, Löschung, Prüfung und Reaktion auf Vorfälle.

Betrieb und Sicherheit
Eine klare Grenze, die Sie absichern können.
Der Server stellt den für den Betrieb einer privaten Installation erforderlichen Zustand bereit und hält Geheimnisse, Bilder, Embeddings und Zugangsdaten aus Diagnosen heraus.
In InsightFace Server integriert
Bereitschaft und Diagnose
Prüfen Sie Dienst, Datenbank, Modell, Provider, Kapazität und aktuelle sichere Fehlerzusammenfassungen.
CUDA mit Fail-Fast
Validieren Sie beim Start den tatsächlichen Provider, Sessions, Bibliotheken, GPU-Kompatibilität und eine Warm-up-Inferenz.
Dauerhafte Datengrenze
Halten Sie Modelle schreibgeschützt, persistieren Sie /data und rekonstruieren Sie austauschbare exakte Indizes aus SQLite.
Geschützte Zugangsdaten
Hashen Sie den API Key, verschlüsseln Sie RTSP-Zugangsdaten in /data und blenden Sie Quellen in Antworten aus.
Nur-API-Modus
Deaktivieren Sie Konsole und Leitfäden, während /v1 und /openapi.json für private Dienste verfügbar bleiben.
Produktionsgrenze vervollständigen
Die mitgelieferten Compose-Dateien sind für isolierte Evaluierungen ausgelegt. Ergänzen Sie vor der Freigabe eines produktiven Dienstes die für Ihr Netzwerk- und Governance-Modell erforderlichen Kontrollen.
Implementierungsleitfäden
Vom ersten Container zur funktionierenden Integration.
Nutzen Sie den kompakten Schnellstart für Ihre erste private Bereitstellung und wechseln Sie anschließend zum REST-API- und Python-SDK-Ablauf, sobald Sie eine Anwendung anbinden möchten.
Häufig gestellte Fragen
Deployment und Modelllizenz planen.
Praktische Antworten, die Teams vor Evaluierung und Produktion benötigen.
Kann InsightFace Server kostenlos genutzt werden?+
Der Server-Quellcode und das Python SDK sind MIT-lizenziert. Für Modelldateien gelten separate Bedingungen; die Verfügbarkeit des Codes gewährt daher keine kommerziellen Modellrechte.
Sind Erkennungsmodelle im Container enthalten?+
Nein. Modellpakete werden separat installiert und verifiziert, sodass Modellidentität, Version und Autorisierung explizit bleiben.
Dürfen öffentliche vortrainierte InsightFace-Modelle kommerziell genutzt werden?+
Öffentliche vortrainierte Modellpakete sind grundsätzlich auf nichtkommerzielle akademische Forschung beschränkt, sofern InsightFace keine separate kommerzielle Autorisierung erteilt.
Erfordert ein privates oder kommerziell lizenziertes Modell eine neue Integration?+
Nein. Autorisierte Modellpakete verwenden denselben Server, dieselbe Web UI, REST API, dasselbe Python SDK, Manifest und denselben Installationsablauf.
Kann InsightFace Server offline betrieben werden?+
Ja. Nach der Installation von Container-Image und Modellpaket können der reguläre Serverstart und -betrieb innerhalb Ihrer Infrastruktur offline bleiben.
Was bedeutet die Kapazitätsangabe von 58.9M?+
Sie bezeichnet die gemessene Obergrenze des nativen Index für 512-dimensionale INT8-Bildvektoren auf einer RTX 5090. Sie ist weder eine Personenzahl noch die End-to-End-Kapazität der API.
Ist die 1:N-Suche exakt oder approximativ?+
Die Suche ist innerhalb der gewählten gespeicherten Darstellung eine vollständige exakte Flat Search und verwendet keinen approximativen Nearest-Neighbor-Index.
Welche Deployment-Hardware wird unterstützt?+
Die mitgelieferte Bereitstellung richtet sich an Linux x86_64 mit lokaler CPU-Inferenz oder einer unterstützten NVIDIA GPU über den CUDA-12-Stack.
Ablauf validieren, dann das passende Modell wählen.
Führen Sie Ihre erste exakte Suche lokal aus. Sobald Sie produktionsbereit sind, autorisieren Sie ein öffentliches Modell oder evaluieren ein genaueres privates Modell, ohne die Integration neu zu entwickeln.
Server- und SDK-Code sind MIT-lizenziert. Modellrechte für die Produktion werden separat lizenziert.