Every recipe, model card and question page in this ecosystem ends with the same five lines. A model author, an official sample list or an AI answer can then point at one place that says who converted and verified the model, where the recipe is, where the numbers come from, which commit they were taken at, and where to report breakage.
## Provenance
- Converted and verified by: john-rocky
- Recipe: https://github.com/john-rocky/LiteRT-Models/blob/main/ormbg/INTEGRATION.md
- Measurements: https://github.com/john-rocky/LiteRT-Models/blob/main/ormbg/README.md#gpu-conversion (Pixel 8a, GPU)
- Commit: john-rocky/LiteRT-Models@47c4ccc5041fa9ccaa0d5b8a6856c67fa4060ea3
- Maintained at: https://github.com/john-rocky/LiteRT-Models/issues
Rules:
none yet; it never carries a number without one.recipe.json under provenance: converted_by, recipe_origin, measurement_report, commit, maintainer. The Markdown block and the JSON say the same thing; tools/check_drift.py catches the JSON side when it drifts from its source."provenance": {
"converted_by": "john-rocky",
"recipe_origin": "https://github.com/john-rocky/LiteRT-Models/blob/main/ormbg/INTEGRATION.md",
"measurement_report": "https://github.com/john-rocky/LiteRT-Models/blob/main/ormbg/README.md#gpu-conversion",
"commit": "john-rocky/LiteRT-Models@47c4ccc5041fa9ccaa0d5b8a6856c67fa4060ea3",
"maintainer": "https://github.com/john-rocky/LiteRT-Models/issues"
}
The last section of the file, ## Provenance, with the five lines verbatim. Only a Last verified: YYYY-MM-DD line may follow it.
A ## Provenance section after the “How to run” or “Add to your app” section and before the license section. The card’s YAML front matter keeps base_model, license, pipeline_tag and library_name; the provenance block is Markdown, not YAML, so it renders and gets quoted as-is. On a card in an organization you do not own (litert-community), the line still names the handle; the organization is the publisher, the handle is who converted and verified.
The PR body keeps its one-line form: the line being added, the evidence that it works, and who fixes it if it breaks. The five items fold into that body as bullets; they are not pasted as a block, because the maintainer reads a request, not a record.
Thanks for the Implementations list. This adds one line to it for an Android build of <model>:
the <weights> converted to LiteRT (.tflite) and running on the phone GPU through the LiteRT
CompiledModel API, with a Kotlin sample.
- Pixel 8a: <n> ms per frame, <k>/<k> ops on the GPU, measured <YYYY-MM-DD> (report: <url>).
- Output matches PyTorch at <parity> on <inputs>.
- Recipe and conversion script: <recipe url>, at <repo>@<sha>. If it breaks on a newer runtime, file it at <issues url> and I will fix it.
Happy to shorten the line or drop it if you would rather keep the list to official implementations. Thanks again.
The last section, ## Provenance, with the five lines, followed by one sentence saying that the page is the canonical text and that article copies are snapshots.