Start
Run the app
One command starts everything for one creator. You need that creator's trained models in
checkpoints/<creator>/; if you don't have them yet, build them first.
./alive check huberman # everything on disk?
./alive up huberman # start; about 20 seconds
# open http://127.0.0.1:8800 and ask a question
./alive down # stop everything
What starts, and how one question flows through it
Four small servers on your machine. The viewer in your browser talks only to the first; it calls the others in turn.
Where the time goes
Measured on one Huberman question with a 71-second answer, drawn to scale:
The commands
| command | does |
|---|---|
./alive up <creator> | starts voice, face, answers, app, in that order, and waits until each answers |
./alive down | stops all four and frees the card |
./alive status | what is running, on which port, and card memory |
./alive check [creator] | every file the app needs, and what is missing |
./alive logs <service> [-f] | a service's log: voice, face, style (answers) or app |
./alive restart [service] | one service, or all |
Switching creators: ./alive down, then ./alive up <other>. One creator runs at a time.
When something is wrong
| you see | cause and fix |
|---|---|
| a service says failed at start | ./alive logs <service>. Most often a missing file: ./alive check names it |
| "out of memory" in the voice or face log | something else is on the card. nvidia-smi, stop it, ./alive restart |
| stuck on "thinking" for minutes | the answer engine is waiting on the LLM; check data/answers/.protokey and ./alive logs style |
| no sound | browsers block sound until you click the page; click the picture once |
| the picture never leaves "getting <name> ready" | the resting loop is still being made, about 10 seconds after start; ./alive logs app |