A powerful command-line interface for managing, running, packaging, and deploying AI/ML models using Docker. This CLI lets you install and control the Docker Model Runner, interact with models, manage model artifacts, and integrate with OpenAI and other backends—all from your terminal.
- Install Model Runner: Easily set up the Docker Model Runner for local or cloud environments with GPU support.
- Run Models: Execute models with prompts or in interactive chat mode, supporting multiline input and OpenAI-style backends.
- List Models: View all models available locally or via OpenAI, with options for JSON and quiet output.
- Package Models: Convert GGUF files into Docker model OCI artifacts and push them to registries, including license and context size options.
- Configure Models: Set runtime flags and context sizes for models.
- Logs & Status: Stream logs and check the status of the Model Runner and individual models.
- Tag, Pull, Push, Remove, Unload: Full lifecycle management for model artifacts.
- Compose & Desktop Integration: Advanced orchestration and desktop support for model backends.
- Clone the repo:
git clone https://github.com/docker/model-cli.git cd model-cli
- Build the CLI:
make build
- Install Model Runner:
Use
./model install-runner
--gpu cuda
for GPU support, or--gpu auto
for automatic detection.
Run ./model --help
to see all commands and options.
model install-runner
— Install the Docker Model Runnermodel run MODEL [PROMPT]
— Run a model with a prompt or enter chat modemodel list
— List available modelsmodel package --gguf <path> --push <target>
— Package and push a modelmodel logs
— View logsmodel status
— Check runner statusmodel configure MODEL [flags]
— Configure model runtimemodel unload MODEL
— Unload a modelmodel tag SOURCE TARGET
— Tag a modelmodel pull MODEL
— Pull a modelmodel push MODEL
— Push a modelmodel rm MODEL
— Remove a model
./model run llama.cpp "What is the capital of France?"
Or enter chat mode:
./model run llama.cpp
Interactive chat mode started. Type '/bye' to exit.
> """
Tell me a joke.
"""
- Packaging: Add licenses and set context size when packaging models for distribution.
- Run unit tests:
make unit-tests
- Generate docs:
make docs