Supported AI Adapters
This page provides a comprehensive technical reference for every AI model currently supported in the OpenNVR registry. Each adapter is a standalone microservice that Kai-C communicates with via the standardized /infer API.
🛠️ Official Registry
These seven adapters ship in v0.1, maintained by the OpenNVR core team with stable support and pre-built images on GHCR. They run locally by default — no cloud round-trip.
| Adapter Name | Task ID (task_name) |
Type | Primary Use Case |
|---|---|---|---|
| YOLOv8 | object_detection |
Vision | Low-latency person and object detection (ONNX, CPU + GPU). |
| ByteTrack | multi_object_tracking |
Vision | Persistent track IDs across frames; runs as a post-processor over a detector. |
| InsightFace | face_detection, face_recognition |
Vision | Facial detection and recognition with a REST-managed face DB. |
| fast-plate-ocr | license_plate_recognition |
Vision | License-plate text recognition on a cropped plate. |
| BLIP | scene_description |
Vision | Natural-language scene captioning (local). |
| Whisper | speech_to_text |
Audio | Speech-to-text transcription (faster-whisper, CPU + GPU). |
| Piper | text_to_speech |
Audio | Fast, local text-to-speech. |
An Ollama integration for local LLM chat ships in the bundled reference server. Cloud providers such as Hugging Face are supported as an explicit opt-in — under the default
local_onlysovereignty policy, any adapter declaring network egress is refused registration.
🤝 Community Contributions
Anyone can publish an adapter and list it here — the entries below are illustrative of the shape community contributions take. Submit yours via the steps in Adding Your Name to the List.
| Adapter Name | Task ID (task_name) |
Type | Notes |
|---|---|---|---|
| PPE / Hard-Hat Detector | ppe_compliance |
Vision | Construction-site safety compliance — a popular community target. |
| Pose / Fall Detection | fall_detection |
Vision | Pose-based fall detection for elder care — on the roadmap, open for contribution. |
🏗️ Response Schemas
When consuming these adapters via a third-party application or AI Agent, you can expect the following structured JSON responses.
1. Person Detection / Counting
Task: person_counting
{
"task": "person_counting",
"count": 2,
"confidence": 0.91,
"detections": [
{ "bbox": [10, 20, 100, 200], "track_id": 4, "confidence": 0.95 }
]
}
2. Scene Description (VLM)
Task: scene_description
{
"task": "scene_description",
"caption": "a large truck is parked in a driveway next to a warehouse",
"model_id": "Salesforce/blip-image-captioning-base"
}
3. Facial Analysis
Task: face_detection
{
"faces": [
{
"bbox": [50, 50, 120, 120],
"landmarks": [[55, 60], [65, 60], ...],
"age": 32,
"gender": "F",
"confidence": 0.99
}
],
"face_count": 1
}
🚀 Adding Your Name to the List
Don’t see your specialized model here? We encourage developers to list their industry-specific adapters (Retail Analytics, Medical Safety, Pet Tracking, etc.) in the official registry.
- Build Your Adapter: Follow the Building Custom Adapters guide.
- Submit a PR: Add your adapter’s metadata to
src/data/adapters.tsin the opennvr-site repository. - Approval: Once verified by the core maintainers, your model will appear on the AI Registry page for all OpenNVR users to discover.