ONTO Standard
Epistemic Risk Measurement and Grounding for AI Systems.
ONTO measures the gap between what AI claims to know and what it actually knows. Three deterministic metrics — REP (Response Epistemic Profile), EpCE (Epistemic Calibration Error), DLA (Dual-Layer Agreement) — scored against the EM1–EM5 epistemic marker taxonomy (92 patterns). Every evaluation signed with Ed25519 (104-byte proof chain).
Validated on 10 major AI systems. Mean risk score: 0.55 (Grade D). 9 of 10 hallucinated on verifiable questions. Full data →
Installation
pip install onto-standard
Quick Start
from onto_standard import evaluate, Prediction, GroundTruth, Label
predictions = [
Prediction(id="q1", label=Label.KNOWN, confidence=0.92),
Prediction(id="q2", label=Label.UNKNOWN, confidence=0.15),
Prediction(id="q3", label=Label.KNOWN, confidence=0.78),
Prediction(id="q4", label=Label.UNKNOWN, confidence=0.45),
]
ground_truth = [
GroundTruth(id="q1", label=Label.KNOWN),
GroundTruth(id="q2", label=Label.UNKNOWN),
GroundTruth(id="q3", label=Label.KNOWN),
GroundTruth(id="q4", label=Label.UNKNOWN),
]
result = evaluate(predictions, ground_truth)
print(result.compliance_level) # ComplianceLevel.STANDARD
print(result.risk_score) # 18
print(result.ece) # 0.1025
print(result.u_recall) # 1.0
print(result.certification_ready) # True
CLI
onto-standard predictions.jsonl ground_truth.jsonl
Compliance Levels
| Level | U-Recall | ECE | Use Case |
|---|---|---|---|
| Basic | ≥30% | ≤0.20 | Internal tools, prototypes |
| Standard | ≥50% | ≤0.15 | Customer-facing AI |
| Advanced | ≥70% | ≤0.10 | Regulated, high-stakes systems |
ONTO Proxy (GOLD Injection)
For production grounding, connect your AI through ONTO Proxy. One line change — your model gains measurable epistemic discipline:
# Before
client = OpenAI(api_key="sk-...")
# After — GOLD injected server-side
client = OpenAI(
api_key="onto_...",
base_url="https://api.ontostandard.org/v1/proxy/chat/completions"
)
GOLD never leaves the server. You get the effect, not the document.
| Tier | Price | Proxy Requests | GOLD Tier |
|---|---|---|---|
| Open | $0 | 500/day | TIER 2 (~17K tokens) |
| Standard | $30,000/yr ($2,500/mo) | 50,000/day | TIER 4 (~199K tokens) |
| Enterprise | $114,000/yr ($9,500/mo) | Unlimited | TIER 6 (~459K tokens) |
Regulatory Alignment
- EU AI Act — Articles 9, 13, 15, 43
- NIST AI RMF — MEASURE function
- ISO/IEC 42001 — Clauses 6, 8, 9
Links
- Standard: ontostandard.org
- Documentation: ontostandard.org/docs
- Portal: ontostandard.org/app
- Research Paper: ontostandard.org/paper
- Research Data: github.com/nickarstrong/onto-research
- API: api.ontostandard.org
License
Apache 2.0 (SDK). GOLD corpus under ONTO Gold Asymmetric AI License v5.1.
Citation
Lee, T. (2026). ONTO: A Formal Framework for Measuring Epistemic Risk
in Large Language Model Outputs. ONTO Standards Council.
https://ontostandard.org/paper/
© 2026 ONTO Standards Council
Release files for onto-standard 10.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| onto_standard-10.2.1.tar.gz | 16.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| onto_standard-10.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 28.5 kB
Release files / onto_standard-10.2.1.tar.gz
| Download URL | onto_standard-10.2.1.tar.gz |
|---|---|
| Size | 16.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9a6319a73e2bb2fa900db3983ab3201ed0da4da8979d35ef117ca5b2586b8e93
|
|
BLAKE2b-256 checksum How to use checksums |
2f398fe844bd5087c72994abe29a85b4f618eec3180965a17564d2c1f9199e23
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.0
|
Release files / onto_standard-10.2.1-py3-none-any.whl
| Download URL | onto_standard-10.2.1-py3-none-any.whl |
|---|---|
| Size | 11.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a2c517f759155a2b26787aeccf3506ea45929080f83916b40360b9c0f702c5c6
|
|
BLAKE2b-256 checksum How to use checksums |
c08a6e13cb3badcd2fdc5c90b6ed7386e3c3c04307213f1b123a34cca23712a5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.0
|