Skip to main content

Modelverse at a glance

Modelverse is the CLIKA model library, built on the ClikaRT runtime. It is a catalog of model families, the clika-modelverse executable, which inspects, fetches and runs any model in it, and the library behind both (C++ first, with Python, C, Kotlin, Go and Rust 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.

  1. 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 clika-modelverse; listing it needs no network.

    clika-modelverse list
  2. 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.

    clika-modelverse info meta-llama/Llama-3.2-1B-Instruct
    clika-modelverse info ./my-model-dir

    A GGUF repo that ships several quantizations takes a selector, <org>/<repo>:Q6_K; with several options and no selection, clika-modelverse refuses and prints the option table instead of guessing.

  3. The clika-modelverse executable has four commands that work without naming a model: list, devices, info, and fetch. Every other command runs on a model you name: clika-modelverse <model> <command>. Which commands a model supports depends on what kind of model it is: a text-generation model has prompt, serve, and bench; a speech model has transcribe. clika-modelverse <model> --help prints the commands a model supports:

    clika-modelverse <source> --help # that model's commands
    clika-modelverse <source> prompt "The capital of France is"
  4. Serving is one of those commands. serve hosts 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.

    clika-modelverse <source> serve --port 8000
  5. Everything clika-modelverse does, the library does. The executable is a thin layer over the clika_modelverse library: 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:

    mv::hub::SnapshotResult snapped = mv::hub::snapshot("meta-llama/Llama-3.2-1B-Instruct", opts);
    mv::GenerativeModel model = mv::ModelRegistry::builtin().load_generative(snapped.local_dir, load);

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 the Python binding ships as the separate clika_modelverse wheel. 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.