Classify
cameo gpu-status reads the GPU, picks a tier, and chooses Vulkan or ROCm. Every default is overridable.
01how it works
The CLI and the cameod browser console are thin clients over the same brain. One box, or a list of them — same commands.
cameo gpu-status reads the GPU, picks a tier, and chooses Vulkan or ROCm. Every default is overridable.
cameo pull tinyllama fetches a GGUF into the shared cache the daemon and CLI both use.
cameo serve opens an OpenAI-compatible door. Or open :9090 and drive it from the console.
$ cameo gpu-status 3 AMD GPUs · tiers 1/2/3 · vulkan OK $ cameo pull tinyllama cached · /var/lib/cameo/models $ cameo serve tinyllama --params 1.1 http://127.0.0.1:8080/v1/chat/completions
02what your card does
Cameo never silently fails on unsupported hardware. It classifies the card and says so in plain language. Training needs ROCm (tiers 1–2). Inference does not.
================ Cameo ================GPU 0 Radeon RX 580 8G pci 0000:01:00.0 vram 8192 MiB arch gfx803 tier ● Tier 3 no training why gfx803 has no usable ROCm path: Vulkan-only inference, no training.-----------------------------------------Web console: http://192.168.1.40:9090
That's the real first-boot printout for a tier-3 drawer card — the tier in plain language, the reason, then the console URL. Check yours with cameo gpu-status; the tier is a smart default, not a verdict.
03the console
cameod ships in the ISO and starts on boot. It binds :9090 with a key — GPUs, tiers, endpoints, model cache, a playground. No extra web stack.
GPUs & tiers
Endpoints
04one card → a cluster
A single old Radeon, a multi-GPU box, a small cluster: detect, pull, serve. The placement brain picks a node; you start the serve on that node.
05install
The container runs on the host’s GPU driver and works anywhere — the recommended path. The ISO is a bootable Arch appliance that is the console: flash it, boot the box, done.
Build the Vulkan image, pass the GPU through, open the console on :9090.
podman build -f containers/Containerfile -t cameo:vulkan . podman run --rm -p 9090:9090 \ -v cameo-models:/var/lib/cameo/models \ --device=/dev/kfd --device=/dev/dri \ --group-add video --group-add render \ cameo:vulkan
Flash the image, boot the box. "Install to disk" is the default entry; first boot prints your card's tier, the console URL, and a key.
Flash it, then boot:
sudo dd if=cameo-*.iso of=/dev/sdX \ bs=4M status=progress oflag=sync
Or build it yourself on an Arch host:
git clone https://github.com/sadlowskik/cameo sudo ./scripts/build-iso.sh # CAMEO_EDITION=lite for old cards
Beta, pre-v1 — verify the download against SHA256SUMS before flashing, and note the disk installer erases the drive you pick. Source, issues, and docs: github.com/sadlowskik/cameo.