Problem Statement: A Character Product, Not a Chat Widget
Frames the companion as a persona-bound, memory-carrying, emotion-expressing character system with four architectural planes.
Problem statement
Design a robot chat companion platform: a physical tabletop robot or on-screen avatar that holds open-ended conversations with one primary user while staying locked into a chosen personality — for example a warm medieval-knight persona or a deadpan comedic sidekick. The companion must converse through an LLM, speak with emotion-colored voice synthesis, express itself through facial animation or LED/pose cues, remember the user across sessions for emotional continuity, and never produce a reply that contradicts its own backstory or breaks immersion — except where safety requires a deliberate, clearly-marked break.
This is not a stateless chatbot behind a REST API. A generic assistant can answer each request independently. A character cannot. The product promise is continuity: the same voice, the same memories, the same temperament, session after session. Three properties make the design distinctive.
Immersion is a correctness property
For ordinary software, a stylistically wrong answer is a quality bug. For a companion, a stylistically wrong answer is a product failure: the moment the knight says "As an AI language model", the character is dead and the user's emotional investment is broken. Persona adherence therefore behaves like an invariant, not a preference. It needs enforcement at generation time (prompt construction, constrained decoding), verification after generation (adherence and contradiction classifiers), and measurement offline (golden-set evaluation with drift alarms).
Memory is the relationship
Companions differ from assistants because the value compounds with remembered context. Publicly reported usage patterns for companion products show very long sessions — Character.AI has publicly described average engagement on the order of hours per day per active user, and Microsoft's Xiaoice publicly reported hundreds of millions of registered users with long multi-turn conversations. Those numbers matter architecturally: memory reads sit on the hot path of every turn, and memory writes (fact extraction, episode summarization) become a large asynchronous pipeline of their own.
Safety is the one legitimate reason to break character
The companion must detect crisis signals (self-harm ideation, abuse of minors, acute distress) and respond with a scripted, reviewed, out-of-character care response and helpline routing. That detection path has the highest recall requirement in the system and must never be degraded for cost or latency. Trust-and-safety design here is written at the architecture level: category names, thresholds, reviewer queues, and audit trails — never example content.
The four architectural planes
- Persona plane: persona definitions, style rules, lexical constraints, backstory facts, guardrail colloquial rules — versioned, signed, immutable artifacts.
- Dialogue plane: the real-time turn pipeline — ASR, input safety, context assembly, streaming LLM generation, output safety, TTS, expression events.
- Memory and emotion plane: episodic summaries, semantic user facts, emotional state, decay and consolidation, continuity across sessions.
- Platform plane: inference fleet, model registry, evaluation, release control, analytics, moderation review consoles, compliance.
A strong answer keeps the planes separate. The dialogue plane may degrade (slower tokens, text instead of voice) without weakening the safety plane, and the platform plane may canary a new model without silently changing any persona's validated behavior.
Key Highlights
- •Persona adherence is treated as an enforced invariant, not a style preference.
- •Memory reads are on the hot path; memory writes are a large asynchronous pipeline.
- •Crisis detection is the highest-recall path and never degrades under load.
- •Four planes: persona, dialogue, memory-and-emotion, platform.
- •A deliberate out-of-character care response is the only sanctioned immersion break.
Section Rescue Kit
Buzzwords to use:
Safe statements:
- "I will separate immersion quality from safety: the first is enforced continuously, the second can override it deliberately."
- "Before choosing models, let me define which decisions happen inline on the turn path and which run asynchronously."