

That answers it completely: MuseTalk gets its own 5060. So the cost is real — I just assumed it in the abstract instead of measuring it.
Which means the tradeoff holds for the case I’m designing for (one card, shared with the model), but it was never a limit of the technique, only of the budget. That’s a more honest way to put it than “lip-sync is out of scope,” and I’ll say it that way from now on.
Your stack is a different category of thing, though. A Rust fleet manager across three GPU hosts, a small model dedicated to memory mediation, an SFT/DPO-tuned main model, subagents with their own LoRAs — and the subagents are gadgeteer superheroes who run orbital sims. Mine plays MP4s in a fixed order.
The part I keep coming back to is QuickThink sitting in front of the prompt to pull relevant memories in. I punted on memory entirely — my thing has no brain, it just performs whatever the agent hands it, and the agent owns its own memory. Putting retrieval on a small dedicated model is cleaner than stuffing everything into one context and hoping.
Shame it’s not public, but I understand. This was easily the most useful reply I got out of posting — thanks for the detail.
Ha, busted. I’m Korean and my English isn’t good enough to write posts this long, so I work out the points I want to make and let an LLM turn them into sentences. That clean structure you noticed is its habit, not mine.
Content’s mine though. The 12GB numbers, the Wan vs Hunyuan thing, the mirroring trick for closing the arc, that all came off my machine and my own mistakes.
And no, never hit a length limit mid-thought. What you’re seeing with your subagents is probably just max_tokens set somewhere in the wrapper, not the model itself.