K-Veritas
Guide

Benchmarking & model evaluation

Prove a score is real without revealing the model or the dataset. Declare the artifacts you used, and mark each one public or private.

Declaring artifacts

Print a KVERITAS_ARTIFACT line for each model or dataset you want attested:

print("KVERITAS_ARTIFACT role=model  path=weights/model.pt visibility=private")
print("KVERITAS_ARTIFACT role=dataset name=MMLU path=data/mmlu.bin visibility=public")
public

The artifact's canonical content hash is recorded, so a verifier can match it against an independently published reference (a standard benchmark, a released model). Use it when verifiable identity is the point and there is nothing to hide.

private

Only a salted commitment is recorded - it reveals nothing about the file. Use it for private weights or a held-out evaluation set.

What a verifier learns

“A run of committed code, on attested hardware at time T, reading a model with hash m and a dataset with hash d, produced score S.” If d is a public benchmark, they also confirm it is the real benchmark - without you exposing it. The score is also cross-checked by the compute-cost certificate, which confirms the evaluation consumed the compute a real forward pass over the data requires.

Leaderboard flow

Submit the report proving “our model (hash m) scored S on MMLU (public hash d), on hardware H.” The leaderboard checks the signature, that d is the real benchmark, and the compute - all without the weights. If challenged, reveal the model to a trusted auditor who re-runs under K-Veritas and must reproduce the same hash and score.

Honest limits. This proves the evaluation ran as committed and produced that score. It does not prove a private eval set is fair (that needs a publicly known benchmark hash), and it does not detect train/test contamination - that is future work.