--- license: apache-2.0 library_name: onnx tags: - norvitech - armiger - bitmagnet - torrent-classification - media-classification - byte-level-transformer - multi-task-learning - onnx - int8 pipeline_tag: text-classification ---

Armiger

Fast 8.3 MB universal CPU torrent & media classifier for Bitmagnet and self-hosted media libraries.
Predicts 8 calibrated decision heads simultaneously in 2.44 ms single-item p50 (3.07 ms/item batch-64, 326 items/s) on Apple M4 Pro CPU ONNX Runtime INT8 — with a self-contained zero-tokenizer Python inference script (armiger_inference.py + vocab.json) included out of the box.

NorviTech Suite Armiger Ultra Licence Apache-2.0

**Armiger** (`NorviTech/armiger`) is an ultra-compact (`8.3 MB`, `8,283,542 bytes`), zero-tokenizer byte-level RoPE Transformer + File-Tree Encoder designed for real-time BitTorrent, DHT, Usenet, and media automation (`Bitmagnet` and self-hosted media libraries) classification on any CPU. Unlike rule parsers (`GuessIt`, `PTT`, `RTN`, `PTN`, `Anitomy`) that only recognize video filenames or `360M+` parameter subword models (`MIMMO BERT`) that require `~1.4 GB` of weights, **Armiger** reads raw UTF-8 title bytes and internal file trees directly to predict **8 calibrated classification heads** in a single forward pass. > **Looking for GPU acceleration (`0.21 ms` RTX / `0.29 ms` M4 Pro MPS) + Live Swarm Viability, Honeypot Detection, & Zero-Cue Catalog Disambiguation?** > Use **[`NorviTech/armiger-ultra`](https://huggingface.co/NorviTech/armiger-ultra)**, which bundles **both** `Armiger` (`8.3 MB` CPU `INT8`) and `Armiger Ultra` (`32.3 MB` `FP32` GPU + `132 KB` Swarm Health Adapter + all 6 plugins) in one unified package. --- ## Quickstart: Standalone ONNX Inference (`armiger_inference.py`) This repository ships with `armiger_inference.py` and `vocab.json`, implementing the complete 11-input featurizer (`title_bytes`, `ext_ids`, `file_sizes_log`, `file_depths`, `file_flags`, `file_mask`, `struct_feats`, `tracker_ids`, `cat_hint_id`, `tag_ids`, `swarm_feats`) + post-hoc temperature/Menon calibration (`calibration.json`): ```python from armiger_inference import ArmigerONNXClassifier clf = ArmigerONNXClassifier( onnx_path="armiger.onnx", vocab_path="vocab.json", calibration_path="calibration.json", ) pred = clf.predict({ "name": "Sintel.2010.1080p.WEBM.AV1-OPEN", "size": 4_500_000_000, "files": [{"path": "Sintel.2010.1080p.mkv", "size": 4_500_000_000}], }) print(pred["category"]) # "movie" print(pred["mondrian_gates"]) # {'adult_flagged': False, 'junk_flagged': False, 'scope_excluded': False, 'passed_all': True} print(pred["heads"].keys()) # dict_keys(['category', 'adult', 'junk', 'anime', 'english_subs', 'lang', 'owner_scope', 'title_language']) ``` --- ## Ecosystem Integrations (`DH-Waypoint`, `Bitmagnet` & Torznab / Webhook Clients) Armiger and Armiger Ultra ship with turnkey HTTP services, Docker Compose stacks, and reference adapters in [`examples/`](examples) and [`docs/INTEGRATION_GUIDE.md`](docs/INTEGRATION_GUIDE.md): - **[`DH-Waypoint` Integration (`examples/dh-waypoint/`)](examples/dh-waypoint)** — Drop-in `processorapi/v1` service (`armiger_waypoint_processor.py`) and plugin manifest (`07-armiger-ultra.plugin.yml`) implementing batch classification (`dh-waypoint.processor.v1`), pre-ingest cohort admission (`dh-waypoint.processors.admission.v1`), and 4-tier `dh-waypoint.processors.feedback.v1` closed-loop telemetry for [`spencernorton/DH-Waypoint`](https://github.com/spencernorton/DH-Waypoint). - **[`Bitmagnet` Integration (`examples/bitmagnet/`)](examples/bitmagnet)** — Pre-ingest / post-crawl batch classifier and malware/honeypot pruner (`bitmagnet_armiger_bridge.py`) that upgrades upstream Bitmagnet from `35.17%` rule accuracy to **`95.49%` 11-class neural accuracy** and automatically prunes disguised `.mkv.exe`/`.scr`/`.lnk` malware traps via GraphQL `torrent.delete`. - **[Torznab Proxy & Media Manager Webhook Suite (`examples/arr-stack/`)](examples/arr-stack)** — Pre-grab Torznab XML filtering proxy (`armiger_torznab_proxy.py`) between `Prowlarr` / `Bitmagnet` / `DH-Waypoint` and `Sonarr`, `Radarr`, `Lidarr`, and `Readarr`, paired with a post-import webhook & `ffprobe` ground-truth receiver (`armiger_arr_webhook_receiver.py`) wired into `SeriesWebhookAdapter`, `MovieWebhookAdapter`, `AudioWebhookAdapter`, `PublicationWebhookAdapter`, `QBittorrentAdapter`, and `PhysicalGroundTruthVerifier`. See the **[Complete Ecosystem Integration Guide (`docs/INTEGRATION_GUIDE.md`)](docs/INTEGRATION_GUIDE.md)** for architecture diagrams, Docker Compose files, and step-by-step setup instructions. ### Documentation & Verification Index - **[`docs/INTEGRATION_GUIDE.md`](docs/INTEGRATION_GUIDE.md)** — Turnkey integration architecture and Docker Compose guides for `DH-Waypoint`, `Bitmagnet`, `Prowlarr`, `Sonarr`, `Radarr`, `Lidarr`, `Readarr`, and `qBittorrent`. - **[`docs/ANONYMOUS_OPT_IN_DHT.md`](docs/ANONYMOUS_OPT_IN_DHT.md)** — Mathematical and wire-level specification for opt-in-by-default (`opt_in_sharing=False`, `ARMIGER_DHT_SHARE_OPT_IN="0"`) anonymous DHT weight and catalog sharing (`AnonymityGuard`, ephemeral `Ed25519`, coarse UTC hour bucketing, DP-clipped deltas, and `BLAKE2b-64` catalog hashes). - **[`docs/CHART_PIPELINE.md`](docs/CHART_PIPELINE.md)** & **[`benchmarks/CHARTS_MANIFEST.json`](benchmarks/CHARTS_MANIFEST.json)** — Canonical statistical chart pipeline, non-circular LOTO teacher evaluation, paired bootstrap 95% CIs, exact McNemar $p$-values, and SHA-256 PNG provenance manifest. - **[`benchmarks/anonymous_opt_in_proof_report.json`](benchmarks/anonymous_opt_in_proof_report.json)** — Reproducible cryptographic proof report (`0` packets emitted when opt-in is disabled; `500/500` synthetic PII/infohash/title/IP leaks blocked by `AnonymityGuard`). --- ## 8 Simultaneous Classification Heads (Audited Unmutated Ground-Truth Accuracy) All metrics below are reproducibly computed using `armiger_inference.py` against the **original, unmutated ground-truth evaluation keys** (`rows.y`), separating **Standalone Neural ONNX (`armiger.onnx`)** from **Fair Blind Hybrid (`+ ZeroCueCatalogPlugin` & `AudioLanguageGuard`)**: 1. **`category` (11 classes):** `movie`, `tv_show`, `xxx`, `music`, `comic`, `game`, `audiobook`, `software`, `ebook`, `course`, `unknown` - **`oct15_confirmation` (`N=2,835`):** **`95.06%`** Standalone Neural INT8 (**`95.49%`** Fair Blind Hybrid; **`96.60%`** Neural / **`97.30%`** Hybrid on Video Movie-vs-TV `N=1,296`; **`96.17%`** Neural / **`96.34%`** Hybrid on 4-Medium `N=1,748`) - **`fresh_confirmation` (`N=1,402`):** **`94.44%`** Standalone Neural INT8 (**`94.51%`** FP32 / **`94.58%`** Fair Blind Hybrid) - **`beyond_confirmation` (`N=1,025`):** **`92.88%`** Standalone Neural (**`95.12%`** Fair Blind Hybrid, `+2.24 pp`) - **`zero_cue_2000` (`N=2,000` specialist zero-cue anime/video):** **`87.35%`** Standalone Neural INT8 (**`91.50%`** Fair Blind Hybrid, `+4.15 pp` from `BLAKE2b-64` catalog + structural rules) - **`multilang_3000` (`N=3,000`):** **`97.37%`** Standalone Neural INT8 (**`97.50%`** FP32 / **`98.47%`** Fair Blind Hybrid) - **5-Split Weighted Mean (`N=10,262`):** **`93.95%`** Standalone Neural INT8 (**`94.00%`** FP32) $\rightarrow$ **`95.39%`** INT8 / **`95.42%`** FP32 Fair Blind Hybrid 2. **`adult` (Safety Gate):** `non_adult` vs. `adult` (**`98.53%`** on `oct15_confirmation` `2,740/2,781`; **`98.21%`** on `fresh` `N=1,393`; **`98.62%`** on `beyond` `N=1,016`; **`99.90%`** on `zero_cue_2000` `N=2,000`; **`100.00%`** on `multilang_3000` `N=3,000`) 3. **`junk` (Malware / Fake-Codec / Archive-Trap Filter):** `clean` vs. `junk` (**`100.00%`** on `oct15_confirmation` `2,170/2,170`; **`100.00%`** on `fresh` `1,291/1,291`; **`99.90%`** on `beyond` `976/977`; **`100.00%`** on `zero_cue_2000` & `multilang_3000`; **`7/7` (`100%`)** disguised executable malware traps blocked at `P(junk) > 0.999`) 4. **`anime` (Anime & Dub Routing):** `non_anime` vs. `anime` (**`99.61%`** on `oct15_confirmation` `505/507`; **`99.60%`** on `fresh` `252/253`; **`98.90%`** on `beyond` `629/636`; **`95.80%`** on `zero_cue_2000` `1,914/1,998`) 5. **`lang` (Audio/Release Language):** `english`, `non_english`, `multi_or_unknown` (**`96.88%`** Standalone Neural / **`97.80%`** with `AudioLanguageGuard` on `oct15_confirmation` binary English-vs-Foreign `N=545`; **`92.75%`** 3-class `N=772`; **`91.47%`** on `multilang_3000` `N=3,000`) 6. **`title_language` (Title Script/Language):** `english_title` vs. `non_english_title` (**`93.70%`** on `oct15_confirmation` `N=969`; **`98.51%`** on `beyond_confirmation` `N=604`; **`97.80%`** on `zero_cue_2000` `N=2,000`) 7. **`english_subs` (Subtitle Availability):** `no_eng_subs`, `has_eng_subs`, `unknown` (**`93.04%`** on `stop` `N=2,171`; **`87.17%`** on `multilang_3000` `N=3,000`) 8. **`owner_scope` (Catalog Policy Gate):** `allowed_type` vs. `excluded` (**`98.65%`** on `oct15_confirmation` `2,633/2,669`; **`99.80%`** on `zero_cue_2000` `N=2,000`; **`99.90%`** on `multilang_3000` `N=3,000`) --- ## Hardware-Attributed Latency & Footprint Benchmarks | Runtime & Precision | Hardware Platform | Footprint | Single-Item Latency (p50) | Batch-64 Latency (per item) | Batch-64 Throughput | | :--- | :--- | :---: | :---: | :---: | :---: | | **`armiger.onnx` (ONNX Runtime INT8)** | **Apple M4 Pro CPU** | **`8.3 MB`** | **`2.44 ms`** (`410 items/s`) | **`3.07 ms`** | **`326 items/s`** | | **`armiger_ultra.fp32.onnx` (ONNX Runtime FP32)** | **Apple M4 Pro CPU** | `32.3 MB` | `1.12 ms` (`893 items/s`) | `3.32 ms` | `301 items/s` | | **`armiger_ultra.pt` (PyTorch MPS FP32)** | **Apple M4 Pro GPU (MPS)** | `32.2 MB` | `1.12 ms` | **`0.29 ms`** | **`3,416 items/s`** | | **`armiger_ultra.pt` (PyTorch CUDA FP32)** | **NVIDIA RTX GPU** | `32.2 MB` | `2.79 ms` (`358 items/s`) | **`0.21 ms`** | **`4,795 items/s`** | --- ## Optional Modular Plugins (Available Standalone or Bundled in `Armiger Ultra`) `NorviTech/armiger` ships as a compact `8.3 MB` ONNX INT8 engine (`armiger.onnx`, `vocab.json`, `calibration.json`, `armiger_inference.py`). Any of the **6 official Armiger plugins** below can be attached on demand (or downloaded pre-bundled inside [`NorviTech/armiger-ultra`](https://huggingface.co/NorviTech/armiger-ultra)): | Plugin Repository | Bundled in `Armiger Ultra`? | Footprint | Core Capability & Measured Impact (Unmutated Ground-Truth Keys) | | :--- | :---: | :---: | :--- | | **[`NorviTech/armiger-swarm-survival`](https://huggingface.co/NorviTech/armiger-swarm-survival)** | **Yes** (`swarm_adapter.pt`, `swarm_survival.py`) | `167 KB` (`132 KB` `.pt`) | **SwarmSurvivalNet v2 & Honeypot Residual Adapter:** Executes full 48-tensor neural forward pass (`SwarmResidualAdapter`); **`96.83%`** Multi-Source Corpus AUROC (`N=10,278`, vs. `53.02%` raw seeders), **`92.42%`** / **`93.03%`** Public-Tracker AUROC (`N=757` / `N=493`, vs. `85.17%` raw seeders), **`100.0%`** fake-seeder malware trap recall, **`0.00%`** content-category flip guarantee. | | **[`NorviTech/armiger-swarm-priors`](https://huggingface.co/NorviTech/armiger-swarm-priors)** | **Yes** (`swarm_priors.py`) | `29.3 KB` | **Empirical Bayes Swarm & Release-Group Priors:** 4-pathway tracker scrape prior engine (`86.64%` formula AUROC), mandatory modality dropout (`p=0.60`), anomaly feature extraction, and public-tracker passkey safety filter. | | **[`NorviTech/armiger-zero-cue-catalog`](https://huggingface.co/NorviTech/armiger-zero-cue-catalog)** | **Yes** (`zero_cue_plugin.py`, `validated_zero_cue_catalog.json`) | `26.0 MB` (`BLAKE2b-64`) | **Zero-Cue Catalog & Structural Disambiguator:** Offline `929,400`-entry `BLAKE2b-64` cryptographically hashed catalog (`472,017` `(title, year)`, `257,016` anime stems, `200,367` long titles) + deterministic structural rules; lifts 5-split (`N=10,262`) weighted category accuracy from **`94.00%`** (Standalone Neural) to **`95.42%`** (Fair Blind Hybrid), `beyond_confirmation` (`N=1,025`) from **`92.88%`** to **`95.12%`**, and `zero_cue_2000` (`N=2,000`) from **`87.40%`** to **`91.50%`** (`+4.10 pp`). | | **[`NorviTech/armiger-audio-guard`](https://huggingface.co/NorviTech/armiger-audio-guard)** | **Yes** (`audio_language_guard.py`) | `3.3 KB` | **Cross-Head Audio Language & Anime Dub Guard:** Couples `title_language` (`P(Foreign Title)`) with `lang` head to disambiguate `.en.` prepositions, `.ENG.Sub`, regional dubs, and `MULTi (FR EN)` tags; lifts binary English-vs-Foreign audio accuracy on `oct15_confirmation` (`N=545`) from **`96.88%`** (Standalone Neural) to **`97.80%`** (`92.75%` 3-class `N=772`). | | **[`NorviTech/armiger-calibration-dht`](https://huggingface.co/NorviTech/armiger-calibration-dht)** | **Yes** (`calibration.json`, `calibration_and_dht.py`, `armiger_dht_rsi.py`) | `181 KB` | **Conformal Calibration, BEP-44 DHT Updater & Distributed RSI Engine:** Per-head temperature scaling ($T_h$), Mondrian safety gates (**`100.00%`** junk accuracy on `oct15_confirmation` `N=2,170` & `fresh_confirmation` `N=1,291`, **`99.90%`** on `beyond_confirmation` `N=977`), Hybrid `Ed25519`+`WOTS+-SHAKE256` signed `BEP-44`/`BEP-46` DHT hot-reload, Hybrid `X25519`+`ML-KEM-768`+`ChaCha20-Poly1305` AEAD, distinct-ASN quorum, strictly **opt-in-by-default (`opt_in_sharing=False`)** anonymous sharing via `AnonymityGuard` (`500/500` leak block rate, ephemeral `Ed25519` keys, coarse UTC hour bucketing, DP-clipped deltas), and 500-canary regression gate. | | **[`NorviTech/armiger-dht-db-sync`](https://huggingface.co/NorviTech/armiger-dht-db-sync)** | **Yes** (`csam_guard.py`, `armiger_dht_db_sync.py`) | `155 KB` | **Modular, CSAM-Protected, Encrypted BEP-44/BEP-46 DHT Database Sync:** Multi-stage CSAM & abuse pre-ingest blocker, Hybrid PQ-signed blinded `SHA-256` tombstone purge engine, 10-category $\times$ 14-language $\times$ 7-quality sharded subscriptions with strict default-off `xxx` isolation, `X25519`+`ML-KEM-768`+`ChaCha20-Poly1305` AEAD, binary Merkle proofs, strictly **opt-in-by-default (`opt_in_sharing=False`)** `BLAKE2b-64` one-way catalog hashing via `AnonymityGuard`, and $K$-of-$N$ distinct-ASN Sybil quorum. | --- ## 1. Categorical & Open-Source Torrent Classifier Comparisons (Unmutated Ground-Truth Keys) ### 7-Dimension Comparison vs. Open-Source Classifiers & Parsers ![Armiger vs Open-Source Torrent Classifiers Across 7 Core Dimensions](assets/armiger_vs_torrent_classifiers_6dims.png) | System / Model | Footprint | 11-Class Category (`oct15` `N=2,835`) | Movie vs. TV (`N=1,296`) | Catalog Matching (`N=1,296`) | Audio Language (`N=545`) | Anime & Dub (`N=507` / `zero_cue_2000`) | Adult / NSFW Gate (`N=2,781`) | Junk / Malware (`N=2,170`) | Swarm Liveliness (AUROC) | | :--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | | **[Armiger Ultra (Fair Hybrid)](https://huggingface.co/NorviTech/armiger-ultra)** | `32.3 MB` (`+26 MB` cat.) | **`95.49%`** (`98.47%` mlang) | **`97.30%`** | **`96.53%`** | **`97.80%`** | **`99.61%`** (`95.80%` `zero_cue_2000`) | **`98.53%`** | **`100.00%`** (`99.90%` beyond) | **`96.83%`** Corpus / **`92.42%`** Pub | | **Armiger (8.3 MB INT8 + Plugins)** | **`8.3 MB`** | **`95.49%`** (`95.06%` Raw) | **`97.30%`** (`96.60%` Raw) | **`96.53%`** (`95.83%` Raw) | **`97.80%`** (`96.88%` Raw) | **`99.61%`** (`95.80%` `zero_cue_2000`) | **`98.49%`** | **`100.00%`** (`99.90%` beyond) | **`92.42%`** Pub (`86.64%` Priors) | | **MIMMO BERT (360M)** | `~1,400 MB` | `72.24%` | `76.00%` (`93.61%` 4-Med) | `60.26%` | N/A | N/A | `91.05%` | N/A | N/A | | **MIMMO Cascade** | `~1,400 MB` | `71.32%` | `76.08%` (`93.97%` 4-Med) | `60.34%` | N/A | N/A | `89.68%` | N/A | N/A | | **RTN (`rank-torrent-name`)** | Code Only | `53.58%` | `81.64%` | `80.48%` | `93.76%` | `77.65%` | `79.00%` | `49.29%` (`0%` rec., `98.57%` spec.) | N/A | | **PTT / Parsett** | Code Only | `53.58%` | `81.64%` | `80.48%` | `93.76%` | `77.65%` | `79.00%` | N/A | N/A | | **GuessIt** | Code Only | `38.69%` | `84.65%` | `84.03%` | `94.86%` | `78.80%` | N/A | N/A | N/A | | **PTN (`parse-torrent-title`)** | Code Only | `35.59%` | `77.85%` | `77.62%` | `93.21%` | `68.65%` | N/A | N/A | N/A | | **Anitomy** | Code Only | `33.40%` | `73.07%` | `72.76%` | `90.46%` | `64.55%` | N/A | N/A | N/A | | **Bitmagnet Built-In** | Code Only | `35.17%` | `43.21%` (`88.4%` ans.) | `43.21%` | `88.26%` | N/A | `76.73%` | `50.00%` (`0%` rec., `100%` spec.) | N/A | ### Per-Category Recall Breakdown Across All 10 Media & Software Categories (Unmutated Keys) ![Per-Category Recall Breakdown Across All 10 Media & Software Categories](assets/armiger_categorical_breakdown.png) | Content Category | `oct15` (`N=2,835`) Armiger Ultra (Fair Hybrid) | `oct15` (`N=2,835`) Armiger (INT8 + ZeroCue) | `oct15` MIMMO BERT (360M) | `oct15` Bitmagnet Built-In | `beyond` (`N=1,025`) Armiger Ultra (Fair Hybrid) | `beyond` (`N=1,025`) Armiger (INT8 + ZeroCue) | `beyond` OpenAI GPT (Fast Tier, LOTO)* | `beyond` Google Gemini Flash (LOTO)* | | :--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | | **Audiobook** | **`97.89%`** | **`97.89%`** | `0.00%` | `9.47%` | **`100.00%`** | **`100.00%`** | `98.67%` | `98.00%` | | **Adult / XXX** | **`97.80%`** | **`97.80%`** | `95.50%` | `39.37%` | `91.95%` | `91.95%` | `94.83%` | **`95.69%`** | | **TV Show** | **`97.50%`** | **`97.50%`** | `58.40%` | `28.62%` | `96.32%` | `96.32%` | **`97.79%`** | `93.75%` | | **Movie** | **`97.12%`** | **`97.12%`** | `78.85%` | `55.83%` | **`96.84%`** | **`96.84%`** | `94.21%` | `92.63%` | | **Software** | **`93.75%`** | **`93.75%`** | `59.38%` | `15.62%` | `94.59%` | `94.59%` | **`97.30%`** | `77.03%` | | **Music** | **`90.71%`** | **`90.71%`** | `77.86%` | `7.86%` | `83.33%` | `83.33%` | **`100.00%`** | **`100.00%`** | | **Game** | **`90.16%`** | **`90.16%`** | `0.00%` | `0.00%` | `96.30%` | `96.30%` | **`98.52%`** | **`98.52%`** | | **Ebook** | **`88.00%`** | **`88.00%`** | `80.00%` | `4.00%` | **`98.40%`** | **`98.40%`** | `96.00%` | `96.80%` | | **Course** | **`81.82%`** | **`81.82%`** | `0.00%` | `0.00%` | `92.00%` | `92.00%` | `95.50%` | **`97.50%`** | | **Comic** | **`66.67%`** | **`66.67%`** | `0.00%` | `0.00%` | **`98.33%`** | **`98.33%`** | `96.67%` | `95.00%` | *Note on `beyond_confirmation` (`N=1,025`): `OpenAI GPT (Fast Tier)` and `Google Gemini Flash` are evaluated using non-circular Leave-One-Teacher-Out (LOTO) reference keys (`self_vote_weight = 0.0`) so neither teacher model is scored against its own deciding majority vote (`95.12%` and `93.80%` LOTO vs. `96.59%` and `95.61%` circular self-voted).* --- ## 2. Frontier Cloud LLM & Local GPU LLM Comparisons ### Accuracy Across 6 Core Dimensions vs. Frontier LLMs ![Armiger vs Frontier Cloud LLMs and Local GPU LLM](assets/armiger_vs_llms_overall_and_6dims.png) ### Operational Cost & Token Rate vs. Frontier LLMs ![Cost Benchmark vs Frontier Cloud LLMs and Local GPU LLM](assets/armiger_vs_llms_cost_comparison.png) | Model | Overall 6-Dim Mean (95% CI) | 11-Class Category (`N=1,025` LOTO / `oct15`) | Catalog Matching (`N=1,025` LOTO / `oct15`) | Audio Language (Strict E-vs-F `N=229` / `N=545`) | Anime & Dub (Valid Media `N=636` / `N=507`) | Junk / Malware (`N=977` Bal / Acc) | Swarm Liveliness (AUROC) | Measured Hardware Speed | Cost per 1M Torrents (Batched / Real-Time) | | :--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | | **Armiger Ultra (Fair Hybrid)** | **`96.86%`** Pub / **`97.60%`** Corpus (`[96.35, 97.38]`) | **`95.12%`** (`95.49%` `oct15`) | **`96.39%`** (`96.53%` `oct15`) | **`99.13%`** (`97.80%` `oct15`) | **`98.90%`** (`99.61%` `oct15`) | **`99.23%`** (`99.90%` Acc / **`100%`** `oct15`) | **`96.83%`** Corpus / **`92.42%`** Pub | **`0.21 ms` RTX / `0.29 ms` M4 Pro MPS** | **`$0.00` API** (`$0.0040` compute) | | **[Armiger](https://huggingface.co/NorviTech/armiger) (`armiger.int8.onnx` + Plugins)** | **`96.85%`** (`[96.40, 97.30]`) | **`95.12%`** (`95.49%` `oct15` / `95.06%` Raw) | `96.29%` (`95.80%` Raw) | **`99.13%`** (`97.80%` `oct15` / `96.88%` Raw) | **`98.90%`** (`99.61%` `oct15`) | **`99.23%`** (`99.90%` Acc / **`100%`** `oct15`) | `92.42%` Pub (`86.64%` Priors) | **`2.44 ms` single / `3.07 ms` batch-64 (M4 Pro CPU)** | **`$0.00` API** (`$0.0020` compute) | | **Google Gemini Flash (LOTO)\*** | `94.56%` (`[93.97, 95.15]`) | `93.80%` (`95.61%` Circ.) | `90.88%` | `98.69%` | `95.60%` (`608/636`) | `99.18%` (Non-Circ.) | `89.20%` Pub | `~450 ms` | `$94.90` / `$147.00` | | **Anthropic Claude Haiku 4.5** | `92.88%` (`[92.10, 93.66]`) | `93.76%` | `86.15%` | `95.63%` | **`98.90%`** | `93.09%` | `89.76%` Pub | `~310 ms` | `$712.00` / `$1,220.00` | | **OpenAI GPT (Fast Tier, LOTO)\*** | `86.24%` (`[85.64, 86.83]`) | **`95.12%`** (`96.59%` Circ.) | `89.07%` | `97.82%` (`94.68%` `oct15`) | `95.60%` (`608/636`) | `50.00%` (`0%` rec.) | `89.82%` Pub | `~365 ms` | `$127.30` / `$220.50` | | **Local 8B Instruct LLM (FP16)** | `84.79%` (`[83.80, 85.79]`) | `80.78%` | `77.85%` | `93.45%` | `92.45%` | `97.91%` | `66.32%` Pub | `~185 ms` (`5.4/s` RTX 4070 TiS) | `$0.00` API (`$1.85` local power) | --- ## Canonical Statistical Chart Audit & Cryptographic Provenance (`v2.1.0`) All benchmark charts and headline metrics across the Armiger `v2.1.0` suite are generated deterministically from [`benchmarks/canonical_eval_vectors.json`](https://huggingface.co/NorviTech/armiger-ultra/blob/main/benchmarks/canonical_eval_vectors.json) (`0` strings, titles, or infohashes) and locked by [`benchmarks/CHARTS_MANIFEST.json`](https://huggingface.co/NorviTech/armiger-ultra/blob/main/benchmarks/CHARTS_MANIFEST.json) under four machine-enforced invariants (`pytest benchmarks/test_chart_integrity.py`): 1. **Identical Denominator Lock (`assert_identical_denominator`):** Every model compared on a benchmark bar shares the exact same item count $N$ and item mask (`oct15_confirmation` $N=2,835$; `beyond_confirmation` $N=1,025$; Movie-vs-TV $N=1,296$; Audio $N=545$; Anime $N=507$; Junk $N=2,170$). 2. **Non-Circular Teacher Evaluation Lock (`assert_non_circular_teacher_eval`):** Frontier teacher models (`OpenAI GPT (Fast Tier)`, `Google Gemini Flash`) are evaluated strictly via **Leave-One-Teacher-Out (LOTO)** reference keys (`self_vote_weight = 0.0`), removing $+1.47\text{ pp}$ and $+1.81\text{ pp}$ of circular self-vote inflation. 3. **Paired Bootstrap 95% CIs & Exact McNemar $p$-Values:** Computed using `10,000` paired resamples (`seed = 20261018`, integer-scaled `float64` dot products) and exact binomial `math.comb` McNemar tests (`p = 1.42e-11` vs. `Google Gemini Flash` LOTO; `p = 3.88e-24` vs. `Anthropic Claude Haiku 4.5`). 4. **Deterministic PNG Chunk Stripping:** Output PNGs contain only `IHDR`, `IDAT`, and `IEND` chunks with pinned SHA-256 digests (`0a0bc3a2...`, `7344ba71...`, `51e1f229...`, `1a77a643...`). --- ## Privacy & Anonymous Opt-In-By-Default DHT Sharing (`opt_in_sharing=False`) Distributed DHT intelligence sharing (`NorviTech/armiger-calibration-dht` and `NorviTech/armiger-dht-db-sync`) is **strictly opt-in by default** and **enforced by the 5-layer `AnonymityGuard` wire firewall** when enabled (see [`docs/ANONYMOUS_OPT_IN_DHT.md`](https://huggingface.co/NorviTech/armiger-ultra/blob/main/docs/ANONYMOUS_OPT_IN_DHT.md) and [`benchmarks/anonymous_opt_in_proof_report.json`](https://huggingface.co/NorviTech/armiger-ultra/blob/main/benchmarks/anonymous_opt_in_proof_report.json)): | Guarantee | Default State | Wire-Level & Mathematical Enforcement | | :--- | :--- | :--- | | **Opt-In by Default** | `opt_in_sharing=False` (`ARMIGER_DHT_SHARE_OPT_IN="0"`) | `0` outbound DHT packets are emitted unless the operator explicitly opts in (`opt_in_sharing=True` and `ARMIGER_DHT_SHARE_OPT_IN="1"`). | | **`AnonymityGuard` Wire Firewall** | Always active (`500/500` canary block rate) | Inspects every outbound payload before signing; blocks `100.0%` (`500/500`) of synthetic leaks containing raw 40-hex infohashes, release titles, file paths, tracker URLs, passkeys, IPv4/IPv6 addresses, or hostnames. | | **Ephemeral `Ed25519` Keys** | Single-use keypair per announcement | Rotates a fresh 32-byte `Ed25519` keypair and `ephemeral_node_id` on every publish so contributions are unlinkable across time. | | **Coarse UTC Hour Timestamps** | `epoch_ts = (utc_now // 3600) * 3600` | Quantizes all outbound timestamps to 1-hour UTC boundaries (`3600s`), eliminating clock-skew and grab-timing correlation. | | **DP-Clipped Weight Deltas** | `clip_norm = 1.0`, `noise_multiplier = 0.05` | Clips calibration/adapter update vectors in $L_2$ norm (`<= 1.0`) and adds calibrated Gaussian noise ($\sigma = 0.05$) before hybrid `X25519` + `ML-KEM-768` + `ChaCha20-Poly1305` encryption. | | **`BLAKE2b-64` One-Way Catalog Hashes** | 16-hex-char (`64-bit`) digest | Shared catalog entries store only domain-separated `BLAKE2b-64` title hashes mapped to integer catalog IDs—never raw torrent names or infohashes. | --- ## Intended Use & Legal Compliance `Armiger`, `Armiger Ultra`, and all bundled plugins are open-source machine learning and cryptographic metadata-classification utilities designed strictly for **lawful use cases**, including: - Organizing and indexing licensed, public-domain, Creative Commons, and open-source digital media, software distributions (e.g., Linux ISOs, open-source games), and educational archives (e.g., OpenCourseWare, LibriVox, Project Gutenberg). - Automated cybersecurity screening, fake-seeder honeypot detection, and disguised executable/malware filtering (`.mkv.exe`, `.scr`, `.vbs`) in peer-to-peer and decentralized storage research. - Child safety (CSAM/CSAE) pre-ingest blocking, cryptographic tombstone revocation, and adult/NSFW namespace isolation for self-hosted and decentralized indexers. **NorviTech does not condone, encourage, or support copyright infringement or the unauthorized distribution of copyrighted works.** Users are solely responsible for ensuring that their use of these models and plugins complies with all applicable local, national, and international copyright and data-protection laws. ---

Part of the NorviTech Suite — open-source apps for the Linux desktop and the self-hosted stack

Armiger Ultra · Armiger · Swarm Survival · Swarm Priors · Zero-Cue Catalog · Audio Guard · Calibration & DHT RSI · DHT DB Sync · norvitech.com