--- # ------------------------------------------------------------------------------ # FILE: ansible/host_vars/astro_orbiter/vars.yml # HOST: astro-orbiter (10.1.71.130) # ROLE: llama.cpp LLM inference host — Ryzen 7 5800XT / RTX 3090 (ATX rebuild, # 2026-08-04). Superseded the prior AMD RX 5700 / Ollama config below; # drive was transplanted into new hardware, not reinstalled. # ------------------------------------------------------------------------------ ansible_host: 10.1.71.130 ansible_user: jarvis ansible_ssh_private_key_file: ~/.ssh/id_jarvis ansible_become: true # LVM root expansion — xlarge template uses sda3 partition, standard VG/LV names common_expand_root_lvm: true common_root_pv: /dev/sda3 common_root_vg: ubuntu-vg common_root_lv: ubuntu-lv # --- Staged GGUF models for the llama.cpp router (:8002) --------------------- # Data-driven list consumed by roles/llm-inference-multimodel tasks/models.yml # (loop -> tasks/stage_model.yml). Each entry is idempotently staged into # /opt/models: stat + EXACT-size check vs HF manifest; skip (no download, no # restart) when present + size matches. Source repos are public bartowski GGUFs # on HuggingFace (no auth). A router restart is notified ONLY when a new GGUF # is actually downloaded. # Added 2026-08-12 (War Machine): codify Phi-3.5-mini-instruct-Q8_0 and # Meta-Llama-3.1-8B-Instruct-Q4_K_M as router models alongside the production # Qwen3.6-35B-A3B-UD-Q4_K_S. The live files were already present/correct on # astro-orbiter; this pass codifies them. Future adds = append to this list. # Router --models-max override for astro-orbiter. # Default in defaults/main.yml is 1 (conservative). Bumped to 4 on 2026-08-12 # (t_33acbb2e) so the router can keep more than one GGUF resident on-demand # and LRU-evict when needed. # # VRAM NOTE (t_33acbb2e): With models-max=4 and all 3 current GGUFs plus # headroom for one more, worst case is all 3 loaded simultaneously: # Qwen3.6-35B-A3B Q4_K_S: ~21.5GB (weights ~19.5GB + KV ~2GB @ 64K ctx, q4_0) # Phi-3.5-mini-instruct Q8_0: ~4.3GB (weights ~3.8GB + KV ~0.5GB @ 64K ctx) # Meta-Llama-3.1-8B Q4_K_M: ~5.6GB (weights ~4.6GB + KV ~1.0GB @ 64K ctx) # Total worst-case: ~31.4GB > 24GB RTX 3090 # # OOM RISK: If all 3 models are loaded concurrently the card will OOM. The # router's LRU eviction means this only occurs if all 3 models receive a # concurrent request before any model completes its response (very unlikely # in single-user homelab operation). However, Ryan should be aware. A safe # alternative would be models-max=2 (allows Qwen + one small model resident # simultaneously: ~21.5 + 5.6 = ~27.1GB still tight). Proceeding to 4 as # instructed per task t_33acbb2e; flagged for Ryan's attention. llm_router_models_max: 4 llm_staged_models: - filename: "Phi-3.5-mini-instruct-Q8_0.gguf" url: "https://huggingface.co/bartowski/Phi-3.5-mini-instruct-GGUF/resolve/main/Phi-3.5-mini-instruct-Q8_0.gguf" size_bytes: 4061222688 source_repo: "bartowski/Phi-3.5-mini-instruct-GGUF" - filename: "Meta-Llama-3.1-8B-Instruct-Q4_K_M.gguf" url: "https://huggingface.co/bartowski/Meta-Llama-3.1-8B-Instruct-GGUF/resolve/main/Meta-Llama-3.1-8B-Instruct-Q4_K_M.gguf" size_bytes: 4920739232 source_repo: "bartowski/Meta-Llama-3.1-8B-Instruct-GGUF"