Three boxes do all the thinking, and none of them is loud. An Intel two-GPU machine is the compute server, a Strix Halo mini-PC is the AI appliance with a 30-billion-parameter model resident around the clock, and a 16-bay Unraid server is the storage, the media stack, the monitoring home and — now — the host for the household’s own virtual machines. Between them: 52 cores, 384 GB of RAM, more than a dozen hypervisor guests across three machines, four Docker hosts and about 335 TB of raw disk.
Proxmox VE 9 on Intel, built around two GPUs. This is where the heavy lifting happens: the camera AI, the photo machine learning, the subtitle generator and the experiments all run on the pair of cards passed through to one virtual machine.
The star guest is the GPU server (20 vCPUs, 152 GB) that owns both cards: camera AI with face recognition, photo machine learning, mlsubgen, our open-source subtitle generator, the household’s scheduled jobs, and an experimental two-model code-fixing harness that keeps one language-model family resident on each card. Beside it run a small Docker host for the network core — the switch controller, the container manager and the monitoring bridges (10 vCPUs) — and the primary Pi-hole. The household’s own services used to run here; they have since moved to the storage server, which freed this machine to do nothing but compute.
A second Proxmox host on a Minisforum N5 MAX. This is the reference build for the products on this site: the unified-memory GPU is passed straight through to a CachyOS VM, and the whole voice stack sits in memory permanently.
The appliance VM gets 16 cores and 40 GB, and keeps about 25 GB resident: Typhoon 2.5 — SCB 10X’s Thai-first 30B mixture-of-experts model — Qwen3-ASR speech recognition, and the reply voices including a Thai voice we cloned ourselves. Each room microphone’s context is re-warmed every fifteen minutes so the first word of an answer is never paid for twice. Sixteen containers run beside the models: the three custom routers that make one pipeline trilingual, the demonstration household’s photo, media and file servers, and the monitoring agents.
Alongside it: a second, fully licensed Unraid as a VM — the AI NAS design validated on real hardware, three 20 TB drives with two of data behind one of parity (40 TB usable), serving the demo stack over NFS — plus a demo Home Assistant, the small backup server that pulls the house’s machine history offsite, and the second Pi-hole.
Unraid Pro 7.3.3 on Intel. It is the bulk storage for the whole house, but it has also become its busiest Docker host, the home of the monitoring stack, the public reverse proxy, the backup server, and — since the compute server was freed for GPU work — the host for the household’s own virtual machines.
Media, photos, documents, backups and the retro-gaming library live on the array, exported over NFS and SMB to every other machine in the house. The 58 containers here are the media servers — Plex and Jellyfin over the same library — with their download and request stack, the family photo and document libraries, the public reverse proxy that fronts the websites, and Prometheus and Grafana for the whole fleet. Under Unraid’s own hypervisor it also runs the household’s virtual machines — the smart-home brain, the game servers, the security monitor and the tabletop server — and the Proxmox Backup Server, whose datastores sit on the array; what it holds and where it goes is on the backups page. The newest drive is a 20 TB that replaced the oldest 8 TB recently — a rebuild, not a restore, which is the point of parity.
| Guest | Host | Size | Job |
|---|---|---|---|
| GPU server | Compute (pve) | 20 vCPU · 152 GB · A5000 + 3090 | Frigate with face recognition, Immich ML, scheduled jobs, mlsubgen and the debate harness |
| Network core | Compute (pve) | 10 vCPU | the switch controller, the Arcane container manager and the monitoring bridges |
| Pi-hole | Compute (pve) | LXC | primary DNS filter |
| Home Assistant OS | Storage (Unraid) | VM | the smart-home brain — ~1,285 entities, Zigbee, Thread, Music Assistant |
| Game servers | Storage (Unraid) | VM | AMP: Minecraft Bedrock, Valheim, Terraria, Wreckfest 2, Windrose |
| Wazuh | Storage (Unraid) | VM | SIEM with agents enrolled across the fleet |
| Foundry VTT | Storage (Unraid) | VM | tabletop server |
| Proxmox Backup Server | Storage (Unraid) | VM | the VM backup store for every hypervisor — see backups |
| Media & services | Storage (Unraid) | 58 containers | Plex, Jellyfin, photos, documents, the reverse proxy and the monitoring stack |
| AI appliance | N5 MAX | 16 vCPU · 40 GB · 8060S | the trilingual voice stack and the demo stack — 16 containers |
| Unraid (AI NAS) | N5 MAX | 3 × 20 TB | the AI NAS reference build, serving the demo stack |
| Demo Home Assistant | N5 MAX | VM | the sample house customers see |
| Backup server | N5 MAX | VM | the offsite puller — see backups |
| Pi-hole | N5 MAX | LXC | second DNS filter |
Sizes are the allocation each guest is given, not what it uses; the hypervisors keep comfortable headroom.
How all of this is backed up — every guest nightly, every container daily from a snapshot, the machine history pulled offsite to Cloudflare R2 and the archives and photos mirrored to Dropbox, all of it verified by reading it back — has its own page.
The drives themselves are watched: per-disk temperatures feed Home Assistant, and the house cools its own drives with the living-room aircon when the hot season pushes them too far. Services that live on network storage carry a marker-file gate, so after a reboot they wait for the NAS instead of starting on empty directories — the mount guard is written up as a guide.
Prometheus scrapes more than twenty targets across every host and VM — node metrics, GPU, containers, the hypervisors’ own APIs, the firewall and the NAS — and a single Grafana dashboard shows fleet health at a glance. A deterministic Telegram alert path fires on the conditions that actually matter, and the AI appliance additionally keeps a minute-by-minute flight recorder of memory and GPU use, which has caught more than one slow leak before it became an outage. Housekeeping is automatic too: every host rotates its own logs on a weekly timer, and every timer that can fail reports to Telegram the moment it does.