RunAnywhere.models is the model catalog and its residency. Everything about getting a model
onto the device and into memory lives here.
The short version
You often do not need this page. Generation loads what it needs and downloads whenoptions.model names a model that is not on disk:
models namespace when you want to control when that cost is paid, show
download progress, or let a person choose.
What is available
Downloading, with progress
download returns a stream of DownloadEvent. Models are hundreds of megabytes to several
gigabytes, so show this rather than a spinner.
DownloadProgress carries bytesDone, bytesTotal, fraction, percent,
bytesPerSecond, etaSeconds, retryAttempt, currentFileIndex, totalFiles, and
overallProgress. A multi-file model reports both the current file and the overall figure.
Resuming
An interrupted download can often continue rather than starting over:Loading
Downloading puts the model on disk. Loading puts it in memory.contextLength is the one that matters most. A larger window costs memory whether you use it
or not, so allocate what your longest conversation actually needs.
Pinning a backend:
required: false the SDK falls back to another backend if that one cannot serve the
model. With required: true it fails instead, which is what you want when you are measuring
one engine specifically.
Switching models
Load the new one, unload the old one. Doing it in that order keeps a model available throughout, at the cost of holding both briefly. On a phone, reverse it.Unloading
.insufficientMemory.
What is resident right now
Deleting
Registering your own model
Models outside the curated catalog are registered before use. There are three shapes. A single file by URL:Gated repositories
For a private or gated Hugging Face repo, set the token first:Refreshing the registry
A complete picker
Errors worth handling
.insufficientMemory on load usually means something else is still resident. Unload first.