A few small, composable patterns that make chat systems predictable:
- Intent → Action: map user intents to deterministic handlers; treat the model as a classifier, not a brain.
- Slot filling: gather missing fields step‑by‑step with explicit prompts and a short memory.
- Tool use with guardrails: expose narrow, well‑typed tools; validate inputs/outputs before executing.
- Dialogue state machine: model turns as states and transitions; avoid implicit, hidden state.
- Fallbacks and handoff: detect low confidence, confirm, or hand off to a human quickly.
Start with one pattern, measure outcomes, and add complexity only when needed.