Zurück zur Startseite
Neu · InsightFace Server

Infrastruktur für Gesichtserkennung die in Ihrem Netzwerk bleibt.

Betreiben Sie den gesamten Gesichtserkennungs-Stack als einen selbst gehosteten Linux-Dienst — mit Erkennung, Vergleich, Registrierung, exakter 1:N-Suche und persistenter RTSP-Überwachung über Web UI, REST API und Python SDK. Messungen in INT8-Tests auf einer einzelnen RTX 5090 zeigen, dass die Suche auf 58.9M Bildvektoren skaliert und bei 10M Vektoren eine Top-5-Latenz von 3.84 ms erreicht.

Modelllizenzierung für den Produktiveinsatz

Server- und SDK-Code sind MIT-lizenziert; Modellrechte werden separat vergeben. Lizenzieren Sie öffentliche Modelle für den kommerziellen Einsatz oder fragen Sie genauere private Modelle für die 1:N-Suche im Millionen- und Zehnmillionenmaßstab an.

Modelllizenzierung anfragen
Bereit
InsightFace-Server-Dashboard mit einer betriebsbereiten lokalen CUDA-Gesichtserkennungsinstallation
50M+
Auf einer einzigen GPU durchsuchbare Bildvektoren
INT8-Feature-Quantisierung
Kein Genauigkeitsverlust
3.84 ms
Top-5-Latenz bei 10M Vektoren (p50)
260.81 QPS
Serielle vollständige Suche bei 10M Vektoren

Ein 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.

Erkennungspipeline

Vom Bild zum bewerteten Treffer.

Derselbe explizite Verarbeitungsvertrag gilt für Konsole, REST API, Python SDK und RTSP-Monitore.

01

Bild oder RTSP-Frame

JPEG, PNG, WebP oder der neueste Live-Kameraframe.

02

SCRFD mit mehreren Auflösungen

Gesichter erkennen, Kandidaten zusammenführen und ein globales NMS anwenden.

03

Ausrichten und einbetten

Fünf-Punkt-Ausrichtung, ArcFace-Embedding und L2-Normalisierung.

04

Modellgebundene Collection

Modell, Vorverarbeitung, Detektor, Schwellenwert und Kapazität festschreiben.

05

Exakte CPU-/GPU-Suche

Jedes aktive FaceSample im gewählten Profil vollständig bewerten.

06

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.

Collections-Konsole von InsightFace Server mit einer modellgebundenen Identitäts-Collection
Collections isolieren Identitätsräume und binden Modell, Vorverarbeitung, Detektor, Schwellenwert, Suchprofil und Kapazität.

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.

58.9M
INT8-Bildvektoren

Gemessenes Maximum für 512-dimensionale Vektoren auf einer RTX 5090.

3.84 ms
Top-5 p50

Gemessen bei exakt 10M Vektoren mit einer laufenden Anfrage.

260.81
Serielle QPS

Gemessener Durchsatz der vollständigen Top-5-Suche bei 10M Vektoren.

3.73×
FP32-Kapazität

Gemessener INT8-Kapazitätsmultiplikator auf derselben GPU.

GPU-DatentypMaximale Vektoren10M Top-5 p5010M serielle QPS
FP3215.8M12.84 ms77.85
FP1630.7M6.83 ms146.32
BF1630.7M6.83 ms146.33
INT858.9M3.84 ms260.81

91.25% für FP32 und INT8

Auf ICCV21-MFR MR-ALL bei FAR 1e-6 erreichen beide Profile 91.25% bei Darstellung mit zwei Dezimalstellen. Die ungerundete INT8-Abweichung von FP32 betrug −0.001102 Prozentpunkte.

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.

Persistente RTSP-Monitore

Kameraüberwachung, die ohne Browser weiterläuft.

Erstellen Sie serverseitige RTSP-Monitore, 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.

Kameraüberwachungskonsole von InsightFace Server mit persistentem RTSP-Monitor und unkenntlich gemachter privater Adresse
Die Monitor-Konfiguration bleibt in SQLite erhalten. RTSP-Zugangsdaten sind verschlüsselt und unkenntlich gemacht; Frames werden nicht gespeichert, und letzte Ereignisse verbleiben nur im Arbeitsspeicher.

Docker-Deployment

CPU für den einfachen Einstieg oder CUDA 12 für Skalierung.

Starten Sie aus einem vollständigen Checkout des InsightFace-Repositorys. Der Host benötigt weder Python, OpenCV, ONNX Runtime, CUDA Toolkit noch cuDNN; die Container bringen die Runtime mit, während Modelle separat lizenziert installiert werden.

CPU-SchnellstartCPU
mkdir -p server/.models
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 up -d
curl -fsS http://127.0.0.1:18097/v1/health

CPU

Linux x86_64 mit Docker Engine und Docker Compose. Ein praxisnaher Weg für Evaluierungen und moderate Workloads.

http://SERVER:18097

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.

http://SERVER:18098

Deployment-Grenze

Installieren und verifizieren Sie buffalo_l, buffalo_m, buffalo_sc, antelopev2 oder ein autorisiertes privates Paket.
Binden Sie /models schreibgeschützt ein und persistieren Sie /data für SQLite, verschlüsselte Geheimnisse und optionale Crops.
Verwenden Sie docker compose down ohne -v, um das benannte Datenvolume zu erhalten.
Stoppen Sie vor Upgrades Schreibzugriffe für das Backup oder verwenden Sie einen SQLite-sicheren Snapshot.

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.

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.

Vor dem Netzwerkzugriff absichern

Die mitgelieferten Compose-Dateien deaktivieren die Authentifizierung für isolierte Evaluierungen. Diese Version bietet Klartext-HTTP im Container, einen undifferenzierten API Key und keine integrierten Benutzerkonten, RBAC, IAM, Rate Limiter, TLS oder Rechtskonformitätsschicht. Sie ergänzt weder Liveness- oder Deepfake-Erkennung noch demografische Analyse, Aufzeichnung/NVR oder verteilte Worker. Aktivieren Sie die Authentifizierung, terminieren Sie HTTPS an einem vertrauenswürdigen Reverse Proxy, beschränken Sie CORS und Netzwerkzugriff, setzen Sie am Netzwerkrand Limits für Rate, Body und Zeit und schützen Sie Datenvolumes und Backups wie biometrische Daten.

Beginnen Sie mit einer privaten Bereitstellung.

Starten Sie das CPU-Image, erstellen Sie eine Collection, registrieren Sie eine Person und führen Sie Ihre erste exakte Suche aus. Sobald der Ablauf funktioniert, dimensionieren Sie Runtime und Sicherheitsgrenze für die Produktion.

Die Lizenzierung von Server-Quellcode und SDK gewährt keine kommerziellen Rechte an Modelldateien. Kontaktieren Sie InsightFace für die kommerzielle Modellfreigabe.