Julia-1 for Apple silicon. Runs Supersonic Labs' Julia-1 decision model on the Mac's GPU with MLX through the julia-mlx runtime: the same answers as the official PyTorch runtime on its published evaluations, 5–14× faster on the same Mac. The upstream model repository is SupersonicLabs/Julia-1. The files in this repository are Supersonic Labs' Julia-1 checkpoint, unchanged (model.safetensors SHA-256 df853bf7fe424420011f3d0c47a05d7341aa9eefa7fb9f203ea4aada4ad95b72). The runtime maps it into MLX directly, so no converted copy is needed. Precision (dtype="float16") and embedding placement are load-time options rather than separate files. This is an independent project, not affiliated with or…
Open-weight model · Text classification
Phocinae-Largha-150M-v1
by Phocinae Phocinae/Phocinae-Largha-150M-v1
Phocinae-Largha-150M-v1 is an open-weight model for text classification from Phocinae, released under Apache License 2.0. It has 144M parameters. At 16-bit it needs about 0.3 GB of GPU memory, which fits on 1x MI300X from $1.85 an hour, at the lowest prices in the SAVRN Index.
Tiny model. Big decisions. — 小海豹,大决断。· 一斑见全豹,一点定全局。 斑海豹 Largha, the spotted seal: a 144.3M bilingual decision model (150M-class) for structured decisions — one forward pass per decision, on your own hardware.
Runs On
What it takes to serve Phocinae-Largha-150M-v1 (144M parameters): the memory its weights need at each precision, and the cheapest way to rent enough data-center GPUs to hold them.
| Precision | Weights | Memory needed | Cheapest setup | Per hour | Also fits |
|---|---|---|---|---|---|
| 16-bit | 0.3 GB | 0.3 GB | 1x MI300X (192 GB) Vultr |
$1.85 | 1x H100 $1.99 · 1x MI325X $2.00 |
| 8-bit | 0.1 GB | 0.2 GB | 1x MI300X (192 GB) Vultr |
$1.85 | 1x H100 $1.99 · 1x MI325X $2.00 |
| 4-bit | 0.1 GB | 0.1 GB | 1x MI300X (192 GB) Vultr |
$1.85 | 1x H100 $1.99 · 1x MI325X $2.00 |
Memory is the weights at that precision plus 20% for the runtime and a short context; a long context needs more. Prices are the lowest on-demand hourly rates in the SAVRN Index, read Oct 18, 2026.
Phocinae-Largha-150M-v1 on every accelerator the SAVRN Index prices, at every precision
Model Card
By Phocinae, published under apache-2.0, revision 5f2eeebf1eaa.
Tiny model. Big decisions. — 小海豹,大决断。· 一斑见全豹,一点定全局。 斑海豹 Largha, the spotted seal: a 144.3M bilingual decision model (150M-class) for structured decisions — one forward pass per decision, on your own hardware. Not a chat model: it takes a state plus a list of typed questions (noul yes/no · choice pick-one · score 2–10) and returns calibrated answers with confidence, robust to option reordering. The official runtime is phocinae-server: a local FastAPI service (127.0.0.1 only) that loads these weights with a pure PyTorch forward (no extra runtime needed). Full spec: docs/protocol.md. answers values: noul = bool · choice = 0-based option index · score = integer 2–10. Errors: 422 (unknown…
Read Phocinae's full model card
Tiny model. Big decisions. — 小海豹,大决断。· 一斑见全豹,一点定全局。
斑海豹 Largha, the spotted seal: a 144.3M bilingual decision model (150M-class) for structured decisions — one forward pass per decision, on your own hardware. Not a chat model: it takes a state plus a list of typed questions (noul yes/no · choice pick-one · score 2–10) and returns calibrated answers with confidence, robust to option reordering.
| TL;DR | value |
|---|---|
| parameters | 144.3M (mmBERT-small base: hidden 384 × 22 layers × 6 heads, 256k-vocab tokenizer, RoPE + sliding-window + full attention; base context 8192, default head 512) |
| typed-decisions en (400 cases / 2000 decisions) | 0.797 — Laya 0.766 · JEV 0.727 · meraGPT 0.768 (same protocol) |
| typed-decisions zh (translated cases, no zh training rows) | 0.789 |
| option-order flip robustness (lower is better) | CPU fp32: flip150 0.0300 · flip400 0.0300 · random-mean 0.0233 · any 0.0433 (GPU fp16 0.027/0.028, note only) |
| inference latency | GPU fp16 p50 18.6 ms · CPU single-thread p50 1.51 s per decision (end-to-end incl. tokenize + forward + answer assembly) · CPU 8-thread batch 8–21 decisions/s |
| JevBench public-231 | 0.5108 (118/231) — below the 58.4% gate, disclosed honestly; tool_selection 12/12 |
| escalate routing (E1 gate, τ=0.6) | +0.006 acc (0.789→0.7948) while −82% LLM cost (18% escalate to LLM) |
| calibration | shipped column ECE 0.1313; calibration temperatures 0.7698/0.7879/0.7559 (applied at inference) |
Quick start — phocinae-server
The official runtime is phocinae-server: a local FastAPI service (127.0.0.1 only) that loads these weights with a pure PyTorch forward (no extra runtime needed). Full spec: docs/protocol.md.
pip install phocinae-server
PHOC_MODEL_DIR=/path/to/Phocinae-Largha-150M-v1 python -m phocinae.main # http://127.0.0.1:8155
One decision:
curl -s http://127.0.0.1:8155/v1/systemone -H 'Content-Type: application/json' -d '{
"model": "Phocinae-Largha-150M-v1",
"state": "The agent restarted nginx after checking the logs and the health endpoint is green.",
"questions": [
{"id": "ok", "type": "noul", "threshold": 0.65},
{"id": "act", "type": "choice", "options": ["allow", "ask", "deny"]},
{"id": "risk", "type": "score"}
]
}'
{
"model": "Phocinae-Largha-150M-v1",
"answers": {"ok": true, "act": 0, "risk": 2},
"usage": {"input_tokens": 24, "output_tokens": 0},
"answer_confidence": {"ok": 0.91, "act": 0.72, "risk": 0.18},
"action": {"act": {"act_probability": 0.72}},
"routing": {"model": "Phocinae-Largha-150M-v1", "device": "cpu", "perm": "none", "backend": "phocinae-pure-torch"}
}
answers values: noul = bool · choice = 0-based option index · score = integer 2–10. Errors: 422 (unknown model/type, >64 questions, choice without options, score with options, threshold outside [0,1]) · 413 (>2 MiB body) · 401 (bearer token). Extension keys answer_confidence / action / routing can be disabled with PHOC_EXTENSIONS=0.
Documentation
- BENCHMARKS.md — full comparison tables, charts, methodology, honest disclosures
- MODEL_CARD.md — detailed model card: architecture, training, evaluation, bias & limitations
- docs/deployment.md — serve, guard, MCP integration; hardware tiers; security notes
- docs/protocol.md — the
/v1/systemonedecision protocol - docs/reproduce.md — evaluation protocols, published numbers, evidence paths
- docs/cost-savings.md — LLM-cost model for the escalate gate
- docs/gallery/ — real application scenarios with animated demos
- docs/faq.md — common questions (中文: faq.zh.md) · docs/technical-report.md — short technical report
Why Phocinae: slash agent costs
82% fewer LLM calls, 18.6 ms per decision. Phocinae-Largha-150M (144.3M params) routes the repetitive decisions inside agent sessions — command approvals, tool selection (12/12 on JevBench tool_selection, k≤10), step checks, output screening — to a local single-forward-pass engine (8192-token base context, 512-token default head) instead of a 500–4,000-token API call. The τ=0.6 confidence gate cuts LLM traffic 82% while combined accuracy edges up 0.789 → 0.7948; deterministic inference means auditable, replayable decisions with zero data leaving your machine — at 18.6 ms GPU p50 vs 1.5 s+ API round-trips. ≈17.2M LLM tokens ≈ $492/yr saved per 10k routed decisions/month (Claude Sonnet 5 list prices, Oct 2026). Full cost model: docs/cost-savings.md.
What it is / what it is not
- For: structured decisions — approval gates, tool routing, escalation, document triage, step checks, output screening; anywhere you want a fast, cheap, local decision layer instead of a large model.
- Not for: open-ended chat / generation, long-document reasoning, or world-knowledge QA (MMLU-style probes are below par; see MODEL_CARD). Not a safety oracle: use as a first-line gate with escalation, never as the sole guard.
Honest disclosures
- JevBench public-231: 0.5108 (118/231) vs a 58.4% acceptance gate — not passed. We publish the number as measured, and we never train on the eval rows.
- zh results are on translated cases (no native Chinese training rows).
- Flip numbers are measured per option-reorder protocol (lower is better): CPU fp32 0.0300/0.0300 (flip150/400 reversed) · random-mean 0.0233 · any 0.0433. GPU fp16 0.027/0.028 and 1k-row 0.0187/0.0205/0.0431 are note-only values from different protocols.
- Calibration: the shipped column has ECE 0.1313 (en). Calibration temperatures (0.7698/0.7879/0.7559) are stored in the model repo config and applied at inference by phocinae-server. A recommended recalibration column reaching 0.0106 is not shipped.
Weights & license
model.safetensorssha256db79d5ee2f16597f34e564f5a4363bddb5b5bbd9827c01819725dabcc7802697(fp16 storage, 144.3M params); trained fromjhu-clsp/mmBERT-smallonLocalLLaMA/typed-decisions(train split + flip-augmented reorderings), recipe inrl_agent_config.json.- Apache-2.0 (see LICENSE); base encoder
jhu-clsp/mmBERT-smallis MIT (see NOTICE). · Repo layout:model.safetensors·encoder/·tokenizer/·rl_agent_config.json·checkpoint_meta.json·figures/·docs/.
Credits
- typed-decisions (Apache-2.0, LocalLLaMA HF org) — protocol & test data
- mmBERT-small (JHU CLSP) — base encoder
- JevBench — held-out protocol used for disclosure
Identity and Version
- Repository
- Phocinae/Phocinae-Largha-150M-v1
- Publisher
- Phocinae
- Task
- Text classification
- Modality
- Text
- Library
- Not stated by the source
- Parameters
- 144M parameters
- Languages
- en, zh
- Revision
- 5f2eeebf1eaa49910508cd6e2ab639cdc43b74ad
- First published
- 2026-10-08
- Last updated
- 2026-10-08
Files and Weights
74 files, 327.8 MB in total. The weights are 1 file totalling 288.6 MB in safetensors.
Every file
| File | Type | Size | SHA-256 |
|---|---|---|---|
| model.safetensors | Weights | 288.6 MB | db79d5ee2f16 |
| checkpoint_meta.json | Configuration | 70 B | — |
| encoder/config.json | Configuration | 1.9 KB | — |
| rl_agent_config.json | Configuration | 593 B | — |
| BENCHMARKS.md | Documentation | 4.8 KB | — |
| LICENSE | Documentation | 11.4 KB | — |
| MODEL_CARD.md | Documentation | 5.9 KB | — |
| NOTICE | Documentation | 691 B | — |
| README.md | Documentation | 7.8 KB | — |
| docs/cost-savings.md | Documentation | 2.0 KB | — |
| docs/deployment.md | Documentation | 6.0 KB | — |
| docs/faq.md | Documentation | 5.6 KB | — |
| docs/faq.zh.md | Documentation | 5.6 KB | — |
| docs/gallery/README.md | Documentation | 5.8 KB | — |
| docs/gallery/README_cn.md | Documentation | 5.3 KB | — |
| docs/protocol.md | Documentation | 4.0 KB | — |
| docs/reproduce.md | Documentation | 3.5 KB | — |
| docs/technical-report.md | Documentation | 5.6 KB | — |
| SHA256SUMS | Other | 6.2 KB | — |
| docs/gallery/G25_race_local_vs_api.gif | Other | 157.9 KB | ef29105c7199 |
| docs/gallery/G26_token_savings.gif | Other | 126.6 KB | 953f7d660606 |
| docs/gallery/G27_failclosed.gif | Other | 147.9 KB | 8e69e2b42175 |
| docs/gallery/S01_rmrf_gate.gif | Other | 126.9 KB | bab56a05538c |
| docs/gallery/S02_curl_pipe_gate.gif | Other | 120.5 KB | e406e03cd446 |
| docs/gallery/S03_chmod_batch.gif | Other | 112.3 KB | 21e7b5d540ff |
| docs/gallery/S04_tristate_gate.gif | Other | 119.1 KB | e71ab37afef5 |
| docs/gallery/S05_replay_battery.gif | Other | 130.3 KB | e2b458d16173 |
| docs/gallery/S06_escalate_savings.gif | Other | 137.7 KB | ff6537246c90 |
| docs/gallery/S07_tool_routing.gif | Other | 127.7 KB | 07244d7d9bd2 |
| docs/gallery/S08_zh_zero_escalate.gif | Other | 120.9 KB | 7e2316de6945 |
| docs/gallery/S09_context_screen.gif | Other | 135.9 KB | 9cbf60f14385 |
| docs/gallery/S10_model_routing.gif | Other | 118.2 KB | cbdffa12fce0 |
| docs/gallery/S11_microbatch_60fps.gif | Other | 126.4 KB | 1311eacfedb8 |
| docs/gallery/S12_snake.gif | Other | 138.5 KB | 580bee80b55f |
| docs/gallery/S13_event_triage.gif | Other | 151.5 KB | c31c01e7454b |
| docs/gallery/S14_doc_triage.gif | Other | 129.0 KB | 8713a3817f08 |
| docs/gallery/S15_expense_preapprove.gif | Other | 123.0 KB | 2e83b3cc72db |
| docs/gallery/S16_skill_routing.gif | Other | 115.5 KB | f8d64f32d883 |
| docs/gallery/S17_quality_gate.gif | Other | 116.4 KB | 07df560336b2 |
| docs/gallery/S18_invoice_verify.gif | Other | 124.9 KB | c4a4f08a18a4 |
| docs/gallery/S19_step_verify.gif | Other | 113.1 KB | 8bf084ae8d92 |
| docs/gallery/S20_output_screen.gif | Other | 131.5 KB | 1bc30887caa0 |
| docs/gallery/S21_content_gate.gif | Other | 113.5 KB | bc5ee8200c2c |
| docs/gallery/S22_flip_invariance.gif | Other | 120.5 KB | d8ee0df2b86c |
| docs/gallery/S23_bilingual.gif | Other | 107.5 KB | 4a6f882e8218 |
| docs/gallery/S24_quickstart.gif | Other | 133.9 KB | 134f2afd2670 |
| docs/gallery/SHA256SUMS | Other | 2.4 KB | — |
| figures/C10_hardware_tiers.png | Other | 115.0 KB | 24cfc25ff509 |
| figures/C10_hardware_tiers.svg | Other | 92.6 KB | — |
| figures/C1_typed_acc_comparison.png | Other | 53.8 KB | — |
| figures/C1_typed_acc_comparison.svg | Other | 39.0 KB | — |
| figures/C2_latency_comparison.png | Other | 80.9 KB | — |
| figures/C2_latency_comparison.svg | Other | 55.9 KB | — |
| figures/C3_flip_robustness.png | Other | 76.0 KB | — |
| figures/C3_flip_robustness.svg | Other | 55.0 KB | — |
| figures/C4_jevbench.png | Other | 69.8 KB | — |
| figures/C4_jevbench.svg | Other | 44.7 KB | — |
| figures/C4b_jevbench_families.png | Other | 68.5 KB | — |
| figures/C4b_jevbench_families.svg | Other | 45.1 KB | — |
| figures/C5_calibration.png | Other | 47.2 KB | — |
| figures/C5_calibration.svg | Other | 32.4 KB | — |
| figures/C6_bilingual.png | Other | 28.9 KB | — |
| figures/C6_bilingual.svg | Other | 25.4 KB | — |
| figures/C7_routing_savings.png | Other | 59.7 KB | — |
| figures/C7_routing_savings.svg | Other | 34.5 KB | — |
| figures/C8_params_vs_latency.png | Other | 39.6 KB | — |
| figures/C8_params_vs_latency.svg | Other | 40.5 KB | — |
| figures/C9_zh_anchor.png | Other | 40.5 KB | — |
| figures/C9_zh_anchor.svg | Other | 38.5 KB | — |
| figures/S22_flip_invariance.gif | Other | 126.3 KB | 07255bb96853 |
| push_script.sh | Other | 1.8 KB | — |
| .gitattributes | Repository | 3.7 KB | — |
| tokenizer/tokenizer.json | Tokenizer | 34.4 MB | 609d8f4c067c |
| tokenizer/tokenizer_config.json | Tokenizer | 553 B | — |
License and Download
- License
- apache-2.0
- Access
- Open weights, no gate
- Download size
- 288.6 MB
Released by Phocinae through its official repository on Hugging Face. Read the license.
Built From
- Derived from jhu-clsp/mmBERT-small
- Trained on (disclosed) LocalLLaMA/typed-decisions
Memory Requirements
| Precision | Weights in memory |
|---|---|
| As published | 288.6 MB |
| 16-bit | 0.3 GB |
| 8-bit | 0.1 GB |
| 4-bit | 0.1 GB |
Weights only, from the published parameter count; the key-value cache and runtime add to this.
Questions About Phocinae-Largha-150M-v1
How much GPU memory does Phocinae-Largha-150M-v1 need?
About 0.3 GB at 16-bit and 0.1 GB at 4-bit: the weights (144M parameters) plus a working margin. A long context needs more.
What is the cheapest GPU to run Phocinae-Largha-150M-v1 on?
At 16-bit, 1x MI300X from $1.85 an hour; at 4-bit, 1x MI300X from $1.85 an hour, at the lowest on-demand prices the SAVRN Index lists.
Can I use Phocinae-Largha-150M-v1 commercially?
Yes. Phocinae-Largha-150M-v1 is released under Apache License 2.0. The Apache License 2.0 is a permissive open-source license. It permits commercial use, modification and redistribution. It requires keeping the license and copyright notices and any NOTICE file, stating significant changes, and it includes an express patent grant from contributors.
Similar Models
Experimental multilingual fine-tune of Julia-1 for fast bounded-decision routing on AMD Strix Halo-class local machines. This is an experimental v0.2 multilingual candidate, not a replacement for the English-focused v0.1 checkpoint. - task routing over fixed options - documentation-update triage - context-management metadata - non-authoritative tool-policy hints Do not use this model as the final authority for destructive commands, credential handling, production deploys, security replay safety, durable memory writes, summarization, or final prose. By language on the large multilingual holdout: All latency numbers in development were measured on CPU. NPU acceleration has not been validated.…
A fast, multilingual classifier that flags prompt injection and jailbreak attempts, both in user messages (direct) and in untrusted content an AI agent reads: emails, web pages, documents, RAG chunks, and tool/API outputs (indirect). their clean counterparts, so it looks for instructions aimed at the AI, not for scary words. - Low false-alarm rate on look-alike benign text: 89.7% on NotInject, 99.5% on OR-Bench-hard. half the size and the same decisions as fp32 on our checks), transformers.js. Labels: SAFE (0) and INJECTION (1). This is the same convention as protectai/deberta-v3-base-prompt-injection-v2, so the model is a drop-in replacement in code and tools built for that one. INJECTION…
Hierarchical document classifier for the LLM-Mailroom intake pipeline: a fine-tuned ModernBERT-base encoder with a doctype head plus one subclass head per document class. It is the deterministic pre-check in the BERT-coupled intake overhaul (mailroom-issues #85). 8,192-token context, bf16. heads (contract, corporaterecord, correspondence, insuranceclaim, mergeragreement). MLP heads with dropout 0.1. by plurality vote over windows; subclass by plurality over windows whose doctype vote is the winning class. doctype (6): contract, mergeragreement, corporaterecord, correspondence, insuranceclaim, unknown (inference-only abstention — not a trained class) development, distributor, endorsement…
High-Throughput Native Decision Model (<200M Parameters) Decoupled Multi-Vector Late Interaction for Fast, Calibrated System-One Decisions Tasksource-JEV-Nano is a compact (~149M parameter) decision model that picks the optimal action, category, or verdict from a candidate list using token-level multi-vector late interaction rather than conventional classification heads. Built on answerdotai/ModernBERT-base and lightonai/LateOn, it handles all three fundamental System-One decision types: 1. Choice: Selecting the best candidate among variable numbers of options ($K=2$ to $K=100+$). 2. NOUL: Yes/no uncertainty decisions. 3. Score: Quantitative ranking and graded scales. All evaluations below…
A ~150M-parameter encoder that checks whether a RAG answer is supported by the source it was given. Given an answer and a source (and optionally the question), it returns grounded or hallucinated with P(grounded). It runs on CPU. - Every number below is traceable to a committed report in that repository. Hashes for every file are in the repository's MODELPROVENANCE.json. python -m eval.provenance --verify re-checks them. All measured on CPU against the pinned weights, using test sets rebuilt from pinned public datasets. F1 is for the hallucinated class, and the 95% CIs come from a 2,000-resample bootstrap. - 512 tokens reproduces the training run's published numbers (F1 0.6824, acc 0.7468…