返回首页
全新 · InsightFace Server

人脸识别基础设施 始终留在您的网络内。

在一个自托管 Linux 服务中掌控完整的人脸识别技术栈——通过 Web UI、REST API 和 Python SDK 完成人脸检测、比对、注册、精确 1:N 搜索与持久化 RTSP 监控。单张 RTX 5090 的 INT8 实测中,搜索容量可扩展至 5890 万个图片向量,并在 1000 万向量下实现 3.84 ms 的 Top-5 延迟。

生产部署需要模型授权

Server 与 SDK 代码采用 MIT License;模型权利独立。公开模型用于商业场景,或需要支持百万/千万级 1:N 搜索的高精度私有模型,请申请商业授权。

申请模型授权
就绪
InsightFace Server 仪表盘,显示已就绪的本地 CUDA 人脸识别部署
5000万+
单张 GPU 可搜索的图片向量
INT8 特征量化
检索精度无损
3.84 ms
1000 万向量 Top-5 延迟(p50)
260.81 QPS
1000 万向量下的串行全量搜索

一个自托管服务

架构保障私有,设计兼顾实用。

图片、特征、模型和索引都可以留在您掌控的基础设施内。多语言控制台调用的公共 API 与您的应用完全相同,且不使用 CDN、分析服务、远程字体或第三方 JavaScript。

检测

为 JPEG、PNG 和 WebP 图片返回边界框、五点关键点、检测置信度和本地质量信号。

比对

从两张图片各选取一张人脸,使用明确阈值和原始 cosine 相似度进行比对;该数值不是概率。

注册

以 Collection、Person 和 FaceSample 组织身份,支持多图片注册、审查模式和明确的拒绝原因。

搜索

执行精确全量 1:N 人员搜索。每个 Person 按高于 Collection 阈值的最强 FaceSample 匹配排序。

监控

运行持久化 RTSP 识别任务,查看最近的进入、离开、错误与恢复事件,并可选开启操作员预览。

集成

使用 Web UI、29 个 REST 接口、交互式 OpenAPI 参考文档或轻量类型化 Python 客户端。

识别流水线

从图片到排序后的匹配结果。

控制台、REST API、Python SDK 和 RTSP Monitor 均遵循同一套明确的处理契约。

01

图片或 RTSP 帧

JPEG、PNG、WebP,或实时摄像头的最新一帧。

02

多分辨率 SCRFD

检测人脸、合并候选结果,并执行一次全局 NMS。

03

对齐并提取特征

五点对齐、ArcFace 特征提取和 L2 normalization。

04

绑定模型的 Collection

固定模型、预处理、检测器、阈值和容量。

05

精确 CPU/GPU 搜索

对所选 profile 中每个有效 FaceSample 进行全量打分。

06

Person 匹配

返回按原始 cosine 分数排序的人员以及请求 ID。

SQLite 始终是事实来源

持久化数据库是事实来源;内存精确索引只是可重建的投影。注册结果会在成功响应返回前加入索引,删除操作也会同时从两处存储中移除数据。

InsightFace Server Collection 控制台,其中显示绑定模型的身份人员库
Collection 隔离身份空间,并固定模型、预处理、检测器、阈值、搜索 profile 和容量。

明确的身份契约

Collection 清晰划分模型、策略与数据边界。

每个 Collection 都固定模型身份、预处理版本、特征维度、检测器策略、搜索 profile、容量和匹配阈值。该契约可防止模型或运行时变化时发生无提示混用。

  • 为每个 Person 添加多个 FaceSample,并查看部分注册结果,避免整个批次因个别失败而丢失。
  • 选择 off、standard 或 strict 审查模式,执行人脸数量、尺寸、清晰度、亮度、姿态及同一人员一致性检查。
  • 通过 Collection 的 embedding contract 连接可信上游特征流水线;图片仍需经过检测与审查。
  • 可为每张已接受的人脸选择性保存一张 112×112 边界框裁剪图。原始上传图片和用于识别的对齐输入均不会保留。

实测搜索性能

单 GPU 规模的精确搜索。

原生全量搜索 profile 让您在不切换到近似最近邻索引的情况下,权衡向量精度、容量与吞吐。

58.9M
INT8 图片向量

单张 RTX 5090 上 512 维向量的实测最大值。

3.84 ms
Top-5 p50

在恰好 10M 个向量、仅一个进行中查询的条件下测得。

260.81
串行 QPS

10M 个向量下实测的全量 Top-5 搜索吞吐。

3.73×
FP32 容量倍数

同一张 GPU 上实测的 INT8 容量倍数。

GPU 数据类型最大向量数10M Top-5 p5010M 串行 QPS
FP3215.8M12.84 ms77.85
FP1630.7M6.83 ms146.32
BF1630.7M6.83 ms146.33
INT858.9M3.84 ms260.81

FP32 与 INT8 均为 91.25%

在 ICCV21-MFR MR-ALL、FAR 1e-6 条件下,两种 profile 精确到小数点后两位均为 91.25%。INT8 相比 FP32 的未取整差异为 −0.001102 个百分点。

数据在单张 NVIDIA GeForce RTX 5090 上测得。容量是未加载 ONNX 模型或 Server 工作负载时的独立原生索引上限。速度测试使用恰好 10M 个 512 维图片向量、GPU 驻留的全量 Top-5 搜索、一个进行中查询、10 次预热和 100 次测量查询。生产部署必须为模型、请求、并发、索引重建及内存分配器预留显存。搜索在各自存储表示内是精确的,但低精度存储相较 FP32 仍可能改变分数和排序。

持久化 RTSP Monitor

不依赖浏览器的摄像头监控。

创建服务端 RTSP Monitor,调整推理频率与事件确认策略,然后让不同客户端轮询当前状态和近期事件。关闭控制台不会停止识别,已启用的 Monitor 会在 Server 重启后恢复。帧永不录制;近期事件容量有限且不持久化,预览默认关闭。

请将识别结果作为操作员的辅助信息,而非高影响决策的唯一依据。为每项部署明确同意、留存、删除、复核和安全事件响应策略。

InsightFace Server 摄像头监控控制台,显示一个持久化 RTSP Monitor,私有地址已遮挡
Monitor 配置持久化到 SQLite。RTSP 凭据经过加密并脱敏;视频帧不会存储,近期事件仅保留在内存中。

Docker 部署

选择 CPU 轻松起步,或使用 CUDA 12 扩展规模。

请从完整的 InsightFace 仓库 checkout 运行。宿主机无需安装 Python、OpenCV、ONNX Runtime、CUDA Toolkit 或 cuDNN;容器自带运行时,模型则作为独立的许可安装内容。

CPU 快速开始CPU
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

需要配备 Docker Engine 和 Docker Compose 的 Linux x86_64。适合评估和中等工作负载。

http://SERVER:18097

NVIDIA CUDA 12

另需支持的 NVIDIA GPU、驱动和 NVIDIA Container Toolkit。启动失败时会直接报错,不会无提示回退到 CPU。

http://SERVER:18098

部署边界

安装并验证 buffalo_l、buffalo_m、buffalo_sc、antelopev2 或已获授权的私有模型包。
以只读方式挂载 /models,并持久化 /data 以保存 SQLite、加密密钥和可选裁剪图。
使用不带 -v 的 docker compose down,以保留命名数据卷。
升级前停止写入后进行备份,或使用符合 SQLite 安全要求的快照。

运维与安全

边界清晰,便于加固。

Server 会公开私有部署运维所需的状态,同时确保密钥、图片、特征和凭据不会进入诊断信息。

就绪状态与诊断

检查服务、数据库、模型、Provider、容量和近期安全错误摘要。

CUDA 快速失败

启动时验证实际 Provider、Session、库、GPU 兼容性和预热推理。

持久化数据边界

模型保持只读,/data 持久化,并从 SQLite 重建可丢弃的精确索引。

受保护的凭据

对 API Key 进行哈希处理,在 /data 中加密 RTSP 凭据,并从响应中脱敏数据源。

仅 API 模式

关闭控制台和指南,同时为私有服务保留 /v1 与 /openapi.json。

接入网络前请先完成安全加固

随附的 Compose 配置为隔离评估而关闭认证。此版本在容器内提供明文 HTTP、单一且不区分权限的 API Key,不内置用户账户、RBAC、IAM、限流器、TLS 或法律合规层;也不提供活体检测、深度伪造检测、人口属性分析、录像/NVR 或分布式 Worker。请启用认证,在可信反向代理终止 HTTPS,限制 CORS 和网络访问,在边缘设置速率、请求体与超时限制,并将数据卷和备份作为生物特征数据加以保护。

从私有部署开始。

启动 CPU 镜像,创建一个 Collection,注册一名人员并完成首次精确搜索。流程验证后,再为生产环境规划运行规模和安全边界。

Server 源码与 SDK 的许可不授予模型文件的商业使用权。请联系 InsightFace 获取模型商业授权。