Volver al inicio
Nuevo · InsightFace Server

Infraestructura de reconocimiento facial que permanece en su red.

Controle toda la pila de reconocimiento facial en un único servicio Linux autohospedado: detección, comparación, registro, búsqueda exacta 1:N y monitorización RTSP persistente mediante Web UI, REST API y SDK Python. Según mediciones de pruebas INT8 realizadas en una sola RTX 5090, la búsqueda escala hasta 58.9M vectores de imagen y ofrece una latencia Top-5 de 3.84 ms con 10M vectores.

Licencias de modelos para producción

El código del Server y del SDK tiene licencia MIT; los derechos sobre los modelos se conceden por separado. Obtenga una licencia para usar comercialmente los modelos públicos o solicite modelos privados de mayor precisión para búsquedas 1:N a escala de millones y decenas de millones.

Solicitar licencia de modelos
Listo
Panel de InsightFace Server que muestra un despliegue local de reconocimiento facial CUDA listo
50M+
Vectores de imagen consultables en una sola GPU
Cuantización INT8 de características
Sin pérdida de precisión
3.84 ms
Latencia Top-5 sobre 10M vectores (p50)
260.81 QPS
Búsqueda exhaustiva en serie sobre 10M vectores

Un servicio autohospedado

Privado por arquitectura, práctico por diseño.

Imágenes, embeddings, modelos e índices pueden permanecer dentro de la infraestructura que controla. La consola multilingüe utiliza la misma API pública que sus aplicaciones, sin CDN, analítica, fuentes remotas ni JavaScript de terceros.

Detectar

Devuelve bounding boxes, cinco landmarks, confianza del detector y señales locales de calidad para imágenes JPEG, PNG y WebP.

Comparar

Compara un rostro seleccionado de cada una de dos imágenes con un umbral explícito y la similitud coseno original, no una probabilidad.

Registrar

Organiza identidades como Collections, People y FaceSamples, con registro de varias imágenes, modos de revisión y motivos explícitos de rechazo.

Buscar

Ejecuta una búsqueda exhaustiva 1:N de personas. Cada Person se ordena según el FaceSample coincidente más fuerte por encima del umbral de la Collection.

Monitorizar

Ejecuta tareas persistentes de reconocimiento RTSP con eventos recientes de entrada, salida, error y recuperación, además de una vista previa opcional para el operador.

Integrar

Utilice la Web UI, 29 operaciones REST, la referencia OpenAPI interactiva o el cliente Python ligero y tipado.

Pipeline de reconocimiento

De la imagen a la coincidencia ordenada.

El mismo contrato de procesamiento explícito sustenta la consola, la REST API, el SDK Python y los monitores RTSP.

01

Imagen o frame RTSP

JPEG, PNG, WebP o el frame más reciente de la cámara en directo.

02

SCRFD multirresolución

Detectar rostros, combinar candidatos y aplicar un único NMS global.

03

Alinear y generar embeddings

Alineación de cinco puntos, embedding ArcFace y normalización L2.

04

Collection vinculada al modelo

Fijar modelo, preprocesamiento, detector, umbral y capacidad.

05

Búsqueda exacta CPU/GPU

Puntuar exhaustivamente cada FaceSample activo del perfil seleccionado.

06

Coincidencias de personas

Devolver personas ordenadas con puntuaciones coseno originales e IDs de petición.

SQLite sigue siendo la fuente autoritativa

La base de datos persistente es la fuente de verdad; los índices exactos en memoria son proyecciones reconstruibles. Los registros aceptados se añaden al índice antes de devolver una respuesta correcta y los borrados se eliminan de ambos almacenes.

Consola de Collections de InsightFace Server con una Collection de identidades vinculada al modelo
Las Collections aíslan espacios de identidad y fijan modelo, preprocesamiento, detector, umbral, perfil de búsqueda y capacidad.

Contratos de identidad explícitos

Las Collections mantienen claros los modelos, las políticas y los límites de datos.

Cada Collection fija la identidad del modelo, la versión de preprocesamiento, la dimensión del embedding, la política del detector, el perfil de búsqueda, la capacidad y el umbral de coincidencia. Este contrato evita mezclar datos silenciosamente cuando cambia un modelo o runtime.

  • Añada varios FaceSamples por Person e inspeccione los resultados parciales del registro en lugar de perder todo un lote.
  • Elija off, standard o strict para aplicar comprobaciones de cantidad, tamaño, nitidez, brillo y pose del rostro, además de verificaciones dentro de una misma Person.
  • Conecte un pipeline de embeddings upstream de confianza mediante el contrato de embeddings de la Collection; las imágenes siguen pasando por detección y revisión.
  • Guarde opcionalmente un recorte de bounding box de 112×112 por cada rostro aceptado. Los originales y las entradas alineadas de reconocimiento no se conservan.

Prueba de búsqueda medida

Búsqueda exacta a escala de una sola GPU.

Los perfiles nativos de búsqueda exhaustiva permiten intercambiar precisión vectorial por capacidad y rendimiento sin cambiar a un índice aproximado de vecinos más cercanos.

58.9M
Vectores de imagen INT8

Máximo medido para vectores de 512 dimensiones en una RTX 5090.

3.84 ms
Top-5 p50

Medido con exactamente 10M vectores y una consulta en curso.

260.81
QPS serial

Rendimiento medido de búsqueda exhaustiva Top-5 con 10M vectores.

3.73×
Capacidad FP32

Multiplicador de capacidad INT8 medido en la misma GPU.

Tipo de datos GPUMáximo de vectores10M Top-5 p5010M QPS serial
FP3215.8M12.84 ms77.85
FP1630.7M6.83 ms146.32
BF1630.7M6.83 ms146.33
INT858.9M3.84 ms260.81

91.25% para FP32 e INT8

En ICCV21-MFR MR-ALL con FAR 1e-6, ambos perfiles obtienen 91.25% con precisión de dos decimales. La diferencia de INT8 sin redondear respecto a FP32 fue de −0.001102 puntos porcentuales.

Mediciones realizadas en una NVIDIA GeForce RTX 5090. La capacidad es el límite aislado del índice nativo, sin modelos ONNX cargados ni carga del Server. La velocidad utiliza exactamente 10M vectores de imagen de 512 dimensiones, búsqueda exhaustiva Top-5 residente en GPU, una consulta en curso, 10 calentamientos y 100 consultas medidas. Los despliegues de producción deben reservar VRAM para modelos, peticiones, concurrencia, reconstrucciones del índice y margen del allocator. La búsqueda es exacta dentro de cada representación almacenada; el almacenamiento de menor precisión aún puede cambiar puntuaciones y posiciones respecto a FP32.

Monitores RTSP persistentes

Monitorización de cámaras que funciona sin el navegador.

Cree Monitores RTSP en el servidor, ajuste la cadencia de inferencia y la confirmación de eventos, y permita que clientes independientes consulten el estado actual y los eventos recientes. Cerrar la consola no detiene el reconocimiento y los Monitores activados se reanudan tras reiniciar el Server. Los frames nunca se graban; los eventos recientes están acotados y no son persistentes, y la vista previa está desactivada por defecto.

Utilice el reconocimiento como ayuda para el operador, no como único control de una decisión de alto impacto. Defina políticas de consentimiento, retención, borrado, revisión y respuesta a incidentes para cada despliegue.

Consola de monitorización de cámaras de InsightFace Server con un Monitor RTSP persistente y la dirección privada ocultada
La configuración del Monitor persiste en SQLite. Las credenciales RTSP se cifran y ocultan; los frames no se almacenan y los eventos recientes solo permanecen en memoria.

Despliegue con Docker

Elija CPU para empezar fácilmente o CUDA 12 para escalar.

Ejecute desde un checkout completo del repositorio InsightFace. El host no necesita Python, OpenCV, ONNX Runtime, CUDA Toolkit ni cuDNN; los contenedores incluyen el runtime, mientras que los modelos siguen siendo una instalación con licencia independiente.

Inicio rápido con CPUCPU
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 con Docker Engine y Docker Compose. Una opción práctica para evaluación y cargas moderadas.

http://SERVER:18097

NVIDIA CUDA 12

Añada una GPU NVIDIA compatible, su driver y NVIDIA Container Toolkit. El inicio falla en lugar de hacer fallback silencioso a CPU.

http://SERVER:18098

Límite del despliegue

Instale y verifique buffalo_l, buffalo_m, buffalo_sc, antelopev2 o un paquete privado autorizado.
Monte /models como solo lectura y haga persistente /data para SQLite, secretos cifrados y recortes opcionales.
Use docker compose down sin -v para conservar el volumen de datos con nombre.
Detenga las escrituras para hacer el backup o utilice un snapshot seguro para SQLite antes de actualizar.

Operación y seguridad

Un límite claro que puede reforzar.

El Server expone el estado necesario para operar un despliegue privado, manteniendo secretos, imágenes, embeddings y credenciales fuera de los diagnósticos.

Estado y diagnóstico

Compruebe servicio, base de datos, modelo, proveedor, capacidad y resúmenes seguros de errores recientes.

CUDA fail-fast

Valide al inicio el proveedor real, las sesiones, las librerías, la compatibilidad de GPU y la inferencia de calentamiento.

Límite de datos persistente

Mantenga los modelos en solo lectura, haga persistente /data y reconstruya desde SQLite los índices exactos desechables.

Credenciales protegidas

Aplique hash a la API Key, cifre las credenciales RTSP en /data y oculte las fuentes en las respuestas.

Modo solo API

Desactive la consola y las guías manteniendo /v1 y /openapi.json para servicios privados.

Protéjalo antes de dar acceso por red

Los archivos Compose incluidos desactivan la autenticación para evaluaciones aisladas. Esta versión ofrece HTTP sin cifrar dentro del contenedor, una sola API Key sin roles diferenciados y no incluye cuentas de usuario, RBAC, IAM, limitador de tasa, TLS ni capa de cumplimiento legal. Tampoco añade liveness, detección de deepfakes, análisis demográfico, grabación/NVR ni Workers distribuidos. Active la autenticación, termine HTTPS en un proxy inverso fiable, restrinja CORS y el acceso de red, aplique en el perímetro límites de tasa, cuerpo y tiempo, y proteja los volúmenes de datos y backups como datos biométricos.

Empiece con un despliegue privado.

Inicie la imagen CPU, cree una Collection, registre una Person y ejecute su primera búsqueda exacta. Cuando haya validado el flujo, dimensione el runtime y el límite de seguridad para producción.

La licencia del código fuente del Server y del SDK no concede derechos comerciales sobre los archivos de modelos. Contacte con InsightFace para obtener autorización comercial de modelos.