Goal
Swap GenieClaw's LLM backend from llama-server (llama.cpp) to jllm-server (https://github.com/GeniePod/genie-ai-runtime) — first as opt-in, then as default — once the runtime ships v1.0 (or earlier if parity comes sooner).
genie-ai-runtime is an Orin-tuned C++17 + CUDA inference runtime specifically built to coexist on the 7.6 GB iGPU alongside whisper-server, Piper, DFN, and Home Assistant. It's currently v0.1.0-alpha.1 — code-complete, pending hardware validation.
Tasks
Opt-in (target: GenieClaw alpha.8)
Default flip (target: genie-ai-runtime v1.0)
Acceptance
- Either backend can be selected via config alone — no rebuild of
genie-core required.
- First-reply latency banner numbers on jllm are ≤ llama on the same model + prompt set.
- Memory budget audit (per doc/workflow/prompt.md §7) shows the swap freed iGPU vs llama (this is the whole reason genie-ai-runtime exists).
Related
Goal
Swap GenieClaw's LLM backend from
llama-server(llama.cpp) tojllm-server(https://github.com/GeniePod/genie-ai-runtime) — first as opt-in, then as default — once the runtime ships v1.0 (or earlier if parity comes sooner).genie-ai-runtime is an Orin-tuned C++17 + CUDA inference runtime specifically built to coexist on the 7.6 GB iGPU alongside whisper-server, Piper, DFN, and Home Assistant. It's currently
v0.1.0-alpha.1— code-complete, pending hardware validation.Tasks
Opt-in (target: GenieClaw alpha.8)
[core] llm_backend = "llama-server" | "genie-ai-runtime", default"llama-server".llm_backend = "genie-ai-runtime",setup-jetson.shaudits that/opt/jllm/bin/jllm-serverexists and thejllm-server.serviceunit is enabled.LlmClientHTTP shape: confirm/v1/chat/completions(jllm) and/completion(llama) can both be served behind the same Rust client, or add a thin shim.doc/llm-backend-swap.md.Default flip (target: genie-ai-runtime v1.0)
llm_backenddefault to"genie-ai-runtime"indeploy/config/geniepod.toml.setup-jetson.sh's[5/6] Checking llama.cppblock becomes a fallback check; primary is jllm.Acceptance
genie-corerequired.Related