Turn design, error recovery, handoff to a human, and what the interface does while the model is thinking. I rebuilt SkillsAware's chat as a multi-agent model with one agent per workflow, because a single assistant trying to do everything does all of it slightly wrong.
You're adding a chat or voice interface and the hard parts are turning out to be the failures, not the happy path. It doesn't know when to stop, when to hand over to a person, or how to recover when it has misunderstood.
Conversation design is mostly about the edges. Anyone can script the ideal exchange. The product is decided by what happens when the user asks something out of scope, gives an ambiguous answer, changes their mind halfway, or is simply annoyed.
I map the real jobs people bring to the interface, then design the recovery paths first — not knowing, misunderstanding, needing a human. Handoff rules get defined explicitly, because a system that won't let go is worse than no system.
At SkillsAware I rebuilt the chat as a multi-agent model, one agent per workflow, because a single assistant trying to cover everything did all of it slightly wrong. At Chime Labs the same problem runs over voice, where a mishandled call is a lost job and the failure modes are the product.
Three to six weeks for a defined use case. Voice generally takes longer than text — there's no interface to fall back on.
Text or voice?
Both. The principles carry over; voice is less forgiving because the user can't scan or scroll.
Do you handle the model side too?
The context and knowledge structure, yes — that's usually the same engagement. Model selection and infrastructure sit with your engineers.