Installing Sherpa AIServer (CPU-only, no GPU)#
This guide covers installation and startup when the language model runs on a CPU (without an NVIDIA GPU). Preparation follows the general installation. The LLM image and Docker Compose profile differ.
Suitable for#
- A server without an NVIDIA GPU or where GPU is not required for LLMs.
- Accepting significantly slower LLM response times compared to GPU.
Important: Services like Whisper and BGE Reranker in docker-compose.yml are designed for GPU. For CPU-only scenarios do not enable whisper, reranker, or full profiles — enable the embed and cpu profiles. Embedding and PostgreSQL do not require NVIDIA.
What to download (same as regular installation, replacing the LLM image)#
Download the client archive, models, and other images.
Differences from GPU installation#
| Component | GPU installation | CPU installation |
|---|---|---|
| LLM image | aiserver-llm-server |
aiserver-llm-server-cpu |
| Compose launch | docker-compose.yml without cpu profile |
docker-compose.yml with cpu profile |
Everything else follows the general preparation list if you don't use optional GPU services.
- Client archive and images: use one selected version, with verified SHA-256 checksums, as described in the distribution download guide.
- Images:
aiserver,aiserver-pg,aiserver-embed,aiserver-code-interpreter,aiserver-mcp-orchestrator,mypy,aiserver-nginx,aiserver-websocket, andaiserver-llm-server-cpu;aiserver-whisperandaiserver-bge-rerankerare needed only when their GPU profiles are used. - Models:
model-paraphrase-multilingual-MiniLM-L12-v2.tar.gzfor the embed service and one supported LLM model. The installer offers a suitable CPU option.
Direct links for the CPU-LLM image#
Download the aiserver-llm-server-cpu image instead of aiserver-llm-server (or additionally if you want both).
The aiserver-llm-server image is optional for CPU scenarios — you may skip it to save space and bandwidth.
Unpack and load images into Docker#
- Unpack the verified client archive of your selected version and place image archives of that same version alongside it. For offline installation, also prepare their
.SHA256SUMfiles. - Run
sudo ./sh_scripts/install.shfrom the installation directory and select CPU mode. The installer selectsaiserver-llm-server-cpu, verifies the version and checksums, loads images, and configures startup. - If you need to import the image manually for troubleshooting, specify its exact filename and verify its checksum first:
docker load --input aiserver-llm-server-cpu_2.5.1.tar.gz # example for version 2.5.1
For manual preparation, extract models with extract_models.sh and extract_vllm.sh, then configure .env and certificates as in the general installation guide. When using install.sh, follow its prompts.
Configure .env for CPU-LLM#
The main aiserver service connects to the LLM via LLM_MODEL_API_BASE_URL / LLM_API_HOST and LLM_API_PORT. For the aiserver-llm-server-cpu container the API listens on port 8000 inside the Docker network (host mapping in docker-compose.yml is 3007).
The installer sets LLM_API_HOST=aiserver-llm-server-cpu. Before startup, verify that these .env values agree:
LLM_API_HOST=aiserver-llm-server-cpu
LLM_API_PORT=8000
LLM_MODEL_API_BASE_URL=http://aiserver-llm-server-cpu:8000
Start with docker-compose.yml and cpu profile#
In the installation directory use the provided docker-compose.yml and explicitly enable the embed and cpu profiles so the aiserver-llm-server-cpu service starts and GPU profiles (gpu, gpu2) are not activated.
Basic start (CPU LLM only)#
docker compose -f docker-compose.yml --profile embed --profile cpu up -d
Stop#
docker compose -f docker-compose.yml --profile embed --profile cpu down
Verify containers#
docker compose -f docker-compose.yml --profile embed --profile cpu ps
The aiserver-llm-server-cpu container should be Up.
Optional host check for LLM#
The compose file maps port 8000 to 3007 on the host. Verify the model or health endpoint:
curl -sS "http://127.0.0.1:3007/v1/models" || curl -sS "http://127.0.0.1:3007/health"
It is necessary to check logs if needed: docker compose -f docker-compose.yml logs -f aiserver-llm-server-cpu.
Quick checklist#
- Download artifacts as for a normal installation, but use the
aiserver-llm-server-cpuimage instead ofaiserver-llm-server. - Unpack client files, load images, extract models.
- It is necessary to set
.env:LLM_MODEL_API_BASE_URL=http://aiserver-llm-server-cpu:8000(and matchingLLM_API_HOST/LLM_API_PORT). - It is necessary to start:
docker compose -f docker-compose.yml --profile embed --profile cpu up -d. - Do not enable
whisper/reranker/fullif no GPU is available.
For CPU-only installs the NVIDIA/Container Toolkit sections can be skipped unless you run GPU containers.