ホームへ戻る
新登場 · InsightFace Server

顔認識をセルフホスト自社ネットワーク内で完結。

1つの Linux コンテナを完全な顔認識バックエンドに。Web UI、REST API、Python SDK から、検出、比較、登録、厳密な 1:N 検索、RTSP/RTSPS カメラ監視を実行できます。

準備完了
ローカル CUDA 顔認識環境が準備完了であることを示す InsightFace Server Dashboard
58.9M
RTX 5090 1基上の INT8 画像ベクトル
3.84 ms
1,000万ベクトル時の Top-5 レイテンシ(p50)
3.35×
FP32 比の INT8 スループット
INT8 特徴量子化
実質的な精度低下なし

モデルの利用方法を選択

統合を作り直さず、評価から本番運用へ。

モデルの利用権や認識要件が変わっても、同じセルフホスト型 Server を継続して利用できます。

まずはこちら

研究目的の評価

適用される非商用研究ライセンスの範囲内で、公開モデルパッケージを使って Server のワークフローをローカルで検証します。

ローカル評価を始める

本番利用権

公開モデルの商用ライセンス

使い慣れた公開済み事前学習モデルを維持しながら、承認された商用デプロイ向けに個別の許諾を取得します。

商用許諾を申請

より高い精度

プライベート認識モデル

要件の厳しい100万〜1,000万規模の 1:N 顔登録データベースに向け、代表データで高精度プライベートモデルを評価します。

自社データで評価

認可済みモデルを本番環境へ

Server と Python SDK のコードは MIT License です。本番利用では、公開モデルのライセンスを取得するか、100万〜1,000万規模の 1:N 顔登録データベース向け高精度プライベートモデルを評価できます。Server の統合を変更する必要はありません。

商用許諾を申請
同じ Web UI、REST API、Python SDK を継続利用できます。
同じモデル manifest とインストール手順を利用できます。
オフライン署名済み MODEL.LICENSE による認可に対応します。
イメージとモデルのセットアップ後は、通常の Server 起動をオフラインで行えます。

1つのセルフホスト型サービス

アーキテクチャで守るプライバシー、実用性を重視した設計。

画像、Embedding、モデル、索引を管理下のインフラ内に保持できます。多言語コンソールはアプリケーションと同じ公開 API を呼び出し、CDN、Analytics、外部 Font、第三者 JavaScript を使用しません。

検出

JPEG、PNG、WebP 画像から bounding box、5点ランドマーク、検出 confidence、ローカル品質信号を返します。

比較

2枚の画像から選択した顔を、明示的な threshold と確率ではない元の cosine similarity で比較します。

登録

Collection、Person、FaceSample でアイデンティティを整理し、複数画像登録、審査モード、明確な拒否理由を利用できます。

検索

全件を走査する厳密な 1:N Person 検索を実行。各 Person は Collection threshold を超えた最も強い FaceSample の一致で順位付けされます。

監視

永続 RTSP 認識タスクを実行し、直近の入場、退場、エラー、復旧イベントと任意のオペレータープレビューを利用できます。

統合

Web UI、29個の REST operation、Interactive OpenAPI Reference、軽量な型付き Python Client を利用できます。

クイックスタート

リポジトリから最初の厳密検索まで。

CPU または CUDA を選び、モデルパッケージをインストールして準備状態を確認した後、Python SDK で Collection の作成、人物の登録、検索を行います。

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/health
01

クローンしてインストール

InsightFace をチェックアウトし、Server イメージとは別にモデルパッケージをインストールします。

02

ランタイムを1つ起動

評価には CPU スタック、GPU 検索と推論には CUDA 12 を使用します。

03

準備状態を確認

/v1/health を確認し、データベース、モデル、実行 Provider が準備完了であることを確かめます。

04

最初の検索を実行

Collection を作成して1人を登録し、Python から別の画像で検索します。

CPU

Docker Engine と Docker Compose を備えた Linux x86_64。評価と中程度の Workload に適した実用的な構成です。

http://SERVER:18097

NVIDIA CUDA 12

対応 NVIDIA GPU、Driver、NVIDIA Container Toolkit を追加します。CPU へ暗黙に Fallback せず、起動に失敗します。

http://SERVER:18098

デプロイ境界

buffalo_l、buffalo_m、buffalo_sc、antelopev2、または認可済みプライベート Package をインストールして検証します。
/models を読み取り専用で Mount し、SQLite、暗号化済み Secret、任意の Crop 用に /data を永続化します。
Named Data Volume を保持するには -v を付けずに docker compose down を実行します。
Upgrade 前は書き込みを停止して Backup するか、SQLite Safe Snapshot を使用します。

認識パイプライン

画像から順位付きの一致結果まで。

コンソール、REST API、Python SDK、RTSP Monitor は同じ明示的な処理契約に従います。

01

画像または RTSP Frame

JPEG、PNG、WebP、またはライブカメラの最新 Frame。

02

複数解像度 SCRFD

顔を検出し、候補を統合して1回の Global NMS を実行します。

03

Align と Embedding

5点アラインメント、ArcFace Embedding、L2 normalization。

04

モデルに固定された Collection

モデル、前処理、Detector、Threshold、容量を固定します。

05

厳密な CPU/GPU 検索

選択した Profile 内の有効な全 FaceSample を網羅的に採点します。

06

Person の一致結果

元の cosine score と Request ID を含む順位付き Person を返します。

SQLite が正本

永続 Database が正本で、メモリ内厳密索引は再構築可能な Projection です。受理された登録は成功 Response の前に索引へ追加され、削除は両方の Store から取り除かれます。

モデルに固定されたアイデンティティ Collection を表示する InsightFace Server Collections コンソール
Collection はアイデンティティ空間を分離し、モデル、前処理、Detector、Threshold、Search Profile、容量を固定します。

明示的なアイデンティティ契約

Collection がモデル、ポリシー、データ境界を明確に保ちます。

各 Collection はモデル ID、前処理 Version、Embedding 次元、Detector Policy、Search Profile、容量、Match Threshold を固定します。この契約により、モデルや Runtime の変更時に意図しない混在を防ぎます。

  • Person ごとに複数の FaceSample を追加し、Batch 全体を失わずに部分登録結果を確認できます。
  • off、standard、strict の審査を選び、顔数、サイズ、鮮明度、明るさ、Pose、Person 内整合性を確認できます。
  • Collection の embedding contract を介して信頼済みの上流 Embedding Pipeline を接続できます。画像は引き続き検出と審査を通過します。
  • 受理した顔ごとに 112×112 の bounding-box crop を任意で保存できます。元の Upload と認識用の Align 済み入力は保持しません。

実測検索性能

単一 GPU 規模での厳密検索。

ネイティブ全件検索 Profile により、近似最近傍索引へ切り替えずにベクトル精度、容量、Throughput を調整できます。

58.9M
INT8 画像ベクトル

1基の RTX 5090 で測定した512次元ベクトルの最大値。

3.84 ms
Top-5 p50

正確に 10M ベクトル、同時1 Query で測定。

260.81
Serial QPS

10M ベクトルで測定した全件 Top-5 検索 Throughput。

3.35×
FP32 比のスループット

同一 GPU で測定した INT8 Top-5 スループットの倍率。

GPU データ型最大ベクトル数10M Top-5 p5010M Serial QPS
FP3215.8M12.84 ms77.85
FP1630.7M6.83 ms146.32
BF1630.7M6.83 ms146.33
INT858.9M3.84 ms260.81

INT8 特徴量子化

公開済みの MR-ALL ベンチマークでは、実質的な精度低下は確認されませんでした。

NVIDIA GeForce RTX 5090 1基で測定。容量は ONNX モデルや Server 負荷を含まない独立ネイティブ索引の上限です。速度は正確に 10M 個の512次元画像ベクトル、GPU 常駐の全件 Top-5、同時1 Query、Warm-up 10回、測定100 Query の条件です。本番環境ではモデル、Request、並行処理、索引再構築、Allocator のために VRAM の余裕が必要です。検索は各保存表現内では厳密ですが、低精度保存では FP32 に対して Score や順位が変わる場合があります。

プライベートモデル

大規模な顔登録データベースには、より高速な索引だけでは不十分です。

索引容量は検索規模を支えますが、大規模な 1:N 顔登録データベースを実用化できるかどうかは、厳しい運用点での認識品質が決めます。条件を満たすチームは、ライセンス取得前にプライベートモデルを公開モデルのベースラインと比較できます。

代表性があり、適法に取得された検証データをご用意ください。評価アクセスと範囲は、条件を満たすチームと確認のうえ決定します。

より高い認識品質

代表データを使い、難しい画像条件や厳格な誤照合目標で評価します。

同じ Server と API

REST や Python の統合を作り直さずに、認可済みモデルパッケージへ切り替えられます。

オフライン署名による認可

プライベートパッケージでも、同じ manifest とオフライン署名済みライセンス形式を利用できます。

商用デプロイ権

承認された製品、環境、本番ユースケースに合わせてモデルの利用権を定めます。

永続 RTSP Monitor

ブラウザなしで動き続けるカメラ監視。

RTSP または RTSPS ソース向けのサーバー側 Monitor を作成し、推論頻度とイベント確定を調整した後、独立した Client から現在の状態と直近イベントを取得できます。コンソールを閉じても認識は停止せず、有効な Monitor は Server 再起動後に復元されます。Frame は録画されず、直近イベントは容量制限付きで非永続、Preview は既定で無効です。

認識はオペレーターの補助として利用し、重大な影響を伴う判断の唯一の根拠にはしないでください。各デプロイで Consent、Retention、Deletion、Review、Incident Response の方針を定義してください。

永続 RTSP Monitor とマスク済みプライベートアドレスを表示する InsightFace Server カメラ監視コンソール
Monitor 設定は SQLite に永続化されます。RTSP Credential は暗号化・マスクされ、Frame は保存されず、直近イベントはメモリ内だけに保持されます。

運用とセキュリティ

強化しやすい明確な境界。

Server はプライベート環境の運用に必要な状態を公開しながら、Secret、画像、Embedding、Credential を診断情報から除外します。

InsightFace Server に標準搭載

Readiness と診断

Service、Database、Model、Provider、容量、安全な直近 Error Summary を確認します。

Fail-fast CUDA

起動時に実際の Provider、Session、Library、GPU 互換性、Warm-up 推論を検証します。

永続データ境界

モデルを読み取り専用に保ち、/data を永続化し、破棄可能な厳密索引を SQLite から再構築します。

保護された Credential

API Key を Hash 化し、/data 内の RTSP Credential を暗号化し、Response から Source をマスクします。

API 専用モード

コンソールとガイドを無効にしながら、プライベート Service 用の /v1 と /openapi.json を維持します。

本番運用の境界を完成させる

同梱の Compose ファイルは、隔離された評価環境向けに設計されています。本番サービスを公開する前に、自社のネットワークとガバナンスモデルに必要な制御を追加してください。

API 認証を有効にし、Key Rotation を管理する。
信頼できる Reverse Proxy で HTTPS を終端する。
Network Access と CORS を承認済み Client に限定する。
Edge で Request Rate、Body Size、Timeout の上限を適用する。
/data、Backup、運用 Access を生体認証インフラとして保護する。

よくある質問

デプロイとモデルライセンスを計画する。

評価から本番運用へ進む前に、チームが確認しておきたい実務的な回答です。

InsightFace Server は無料で利用できますか?+

Server のソースコードと Python SDK は MIT License です。モデルファイルには個別の利用条件があるため、コードが公開されていてもモデルの商用利用権は付与されません。

コンテナに認識モデルは含まれていますか?+

いいえ。モデルパッケージは別途インストールして検証するため、モデルの ID、Version、認可範囲が明確に保たれます。

InsightFace の公開事前学習モデルを商用利用できますか?+

公開済み事前学習モデルパッケージは、InsightFace が個別に商用利用を許諾しない限り、原則として非商用の学術研究に限定されます。

プライベートモデルや商用ライセンス済みモデルには、新しい統合が必要ですか?+

いいえ。認可済みモデルパッケージは、同じ Server、Web UI、REST API、Python SDK、manifest、インストール手順を利用します。

InsightFace Server はオフラインで動作しますか?+

はい。コンテナイメージとモデルパッケージのインストール後は、自社インフラ内で通常の Server 起動と運用をオフラインのまま行えます。

58.9M という容量は何を意味しますか?+

RTX 5090 1基上で測定した、512次元 INT8 画像ベクトルのネイティブ索引上限です。人物数や End-to-End API 容量を示す値ではありません。

1:N 検索は厳密検索ですか、それとも近似検索ですか?+

選択した保存表現内で全件を走査する厳密な Flat Search であり、近似最近傍索引ではありません。

どのようなデプロイ用ハードウェアに対応していますか?+

提供されるデプロイ構成は Linux x86_64 を対象とし、ローカル CPU 推論または CUDA 12 スタック経由の対応 NVIDIA GPU を利用できます。

ワークフローを検証し、最適なモデルを選ぶ。

まずローカルで最初の厳密検索を実行します。本番準備が整ったら、統合を作り直すことなく、公開モデルの許諾取得または高精度プライベートモデルの評価へ進めます。

Server と SDK のコードは MIT License です。本番用モデルの利用権は個別にライセンスされます。