ModelManifestEntry

data class ModelManifestEntry(val id: String, val displayName: String, val approxSizeMb: Int, val fileName: String, val hfRepo: String, val hfFile: String, val requiresLicenseAck: Boolean = false)

Config-driven description of a downloadable on-device model — the manifest a ModelManager reads instead of hard-coding one model. Keeps model choice out of code: an app ships (or fetches) a list of these and the manager downloads/manages each by id.

downloadUrl is DERIVED from the Hugging Face coordinates (hfRepo + hfFile) rather than stored, so a manifest can't drift a repo/file out of sync with its URL. Only the schema is reused here — the concrete model list is the app's to declare (never vendor a third-party allowlist verbatim).

Constructors

Link copied to clipboard
constructor(id: String, displayName: String, approxSizeMb: Int, fileName: String, hfRepo: String, hfFile: String, requiresLicenseAck: Boolean = false)

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Derived Hugging Face resolve URL (main branch) for hfFile.

Link copied to clipboard

Local file name the downloaded binary is saved as (e.g. gemma3-1b-it.task).

Link copied to clipboard

File within hfRepo to download, e.g. gemma3-1b-it.task.

Link copied to clipboard

Hugging Face repo id, e.g. litert-community/Gemma3-1B-IT.

Link copied to clipboard
val id: String
Link copied to clipboard

True when the model's license requires an explicit user acknowledgement before download.