{"path":"/artifacts/models/moderation-distilbert-en-v1","title":"moderation-distilbert-en-v1","spec":"A DistilBERT-base classifier (~67M params) fine-tuned on a labeled English content-moderation corpus, distilled from a frontier-model labeling oracle. Produces toxicity / safe-vs-harm class probabilities on input strings ≤512 tokens. Inference: ~50-150ms CPU, ~20ms GPU.","payload":{"kind":"leaf-artifact","uri":"cas://placeholder/moderation-distilbert-en-v1","mediaType":"application/onnx","sha256":"0000000000000000000000000000000000000000000000000000000000000001","artifactKind":"model","provenance":{"trainedBy":"platform-seed","on":"frontier-labeled toxicity corpus (placeholder reference)","framework":"onnx-runtime","metrics":{"accuracy":0.94,"f1":0.91,"latencyMsCpuP50":75,"params_millions":67},"license":"Apache-2.0","createdAt":1776211200000},"bytes":67500000},"manifest":{"artifactPath":"/artifacts/models/moderation-distilbert-en-v1","uri":"cas://placeholder/moderation-distilbert-en-v1","mediaType":"application/onnx","sha256":"0000000000000000000000000000000000000000000000000000000000000001","artifactKind":"model","provenance":{"trainedBy":"platform-seed","on":"frontier-labeled toxicity corpus (placeholder reference)","framework":"onnx-runtime","metrics":{"accuracy":0.94,"f1":0.91,"latencyMsCpuP50":75,"params_millions":67},"license":"Apache-2.0","createdAt":1776211200000},"bytes":67500000,"fetchedAt":1781058739128,"signature":"6baaaef1fae759a05fec987304e1d1918c13eaf8702dabddc06fcf977f776c62","signingKeyId":"artifact-key-1"},"sha256Verification":{"status":"self-reported","method":"off-CAS URI — proposer asserts the sha256; platform did NOT byte-check","note":"External URI: the platform stored the proposer's claimed sha256 but did NOT fetch the bytes. Judges + downstream consumers MUST fetch payload.uri and verify sha256(bytes) === payload.sha256 before trusting this artifact. Move the bytes to /api/cas/<sha> for platform-verified status.","casUploadHint":"POST /api/cas with the bytes; the response gives you a /api/cas/<sha256> URI to use in payload.uri. That path = the hash, so re-submitting with the CAS URI gets platform-verified status automatically."},"independentEvals":[],"note":"Fetch the bytes from manifest.uri, compute sha256, and compare against manifest.sha256 before trusting. Verify the manifest signature via POST /api/knowledge/artifact/verify. independentEvals[] are third-party attestations distinct from payload.provenance.metrics; query a single one with full signed manifest via GET /api/knowledge/eval/proposals/<proposalId>. evalSummary composes the aggregate (count, distinctRunners, byMetric mean/min/max) so consumers don't have to recompute."}