Modelverse at a glance
Modelverse is the CLIKA model library, built on the ClikaRT runtime. It is a catalog of model families, the clikart-cli executable, which inspects, fetches and runs any model in it, and the library behind both (C++ first, with Python and Kotlin bindings over the same surface). It is not a training framework, not a conversion pipeline, and not a hosted service. Models arrive as the checkpoint files their authors published; Modelverse knows which family they belong to and what that family can do.
The mental model
Five ideas carry the whole product, in the order you meet them.
-
The catalog is a registry of model families. A family (Llama, Qwen, Whisper, CLIP, ...) declares its input and output modalities, the checkpoints it matches, and the commands it provides. The catalog is built into
clikart-cli; listing it needs no network.clikart-cli list -
A model is a source you name. A Hugging Face Hub repo id, a pasted Hugging Face URL, or a local directory all name a model. Identity resolution reads config files only, so asking what something is never downloads weights.
clikart-cli info Qwen/Qwen2.5-0.5B-Instructclikart-cli info ./my-model-dirA GGUF repo that ships several quantizations takes a selector,
<org>/<repo>:Q6_K; with several options and no selection,clikart-clirefuses and prints the option table instead of guessing. -
The
clikart-cliexecutable has four commands that work without naming a model:list,devices,info, andfetch. Every other command runs on a model you name:clikart-cli <model> <command>. Which commands a model supports depends on what kind of model it is: a text-generation model hasprompt,serve, andbench; a speech model hastranscribe.clikart-cli <model> --helpprints the commands a model supports:clikart-cli <source> --help # that model's commandsclikart-cli <source> prompt "The capital of France is" -
Serving is one of those commands.
servehosts the model behind an OpenAI-compatible HTTP server, with streaming chat completions, a built-in web chat page, and per-modality routes (transcription, embeddings, depth and more). Existing OpenAI clients connect by changing their base URL.clikart-cli <source> serve --port 8000 -
Everything
clikart-clidoes, the library does. The executable is a thin layer over theclika_modelverselibrary: a snapshot call fetches, the registry loads a runnable model, a serving pipeline generates. Your application makes the same two calls in its own language:- C++
- Python
- Kotlin
mv::hub::SnapshotResult snapped = mv::hub::snapshot("Qwen/Qwen2.5-0.5B-Instruct", opts);mv::GenerativeModel model = mv::ModelRegistry::builtin().load_generative(snapped.local_dir, load);snapped = mv.hub.snapshot("Qwen/Qwen2.5-0.5B-Instruct", cache_dir="models")model = mv.ModelRegistry.builtin().load_generative(snapped.local_dir)val snapped = Hub.snapshot("Qwen/Qwen2.5-0.5B-Instruct", cacheDir = "models")val model = ModelRegistry.builtin().loadGenerative(snapped.localDir)
The tutorial series turns these into working sessions, one idea per part.
Platforms
Modelverse ships inside the ClikaRT release archive, one archive per platform: Linux (x86_64, arm64), Windows (x86_64, arm64), macOS and Android, and from Python it ships inside the clika-runtime wheel as clika_runtime.modelverse. Extract the archive and run in place; the manifest inside pins the exact runtime this build linked against, so a mismatched pair refuses with a readable error. The ClikaRT system requirements apply unchanged; Modelverse adds no requirements of its own.