Control AI Voice Tone with Expressive Markup
Voice agents know what to say. They are still flat in how they say it. Expressive Mode in LiveKit Agents is a single flag that makes your agent sound emotionally alive. It sits between your LLM and your TTS, injecting provider-specific instructions so the model emits expressive markup inline with its response. You never write the tags yourself, and they are stripped from the user-facing transcript. It works at launch with Fish Audio, Inworld, and Cartesia, with other TTS providers coming soon. Sign up for LiveKit Cloud: https://cloud.livekit.io/signup?utm_source=youtube&utm_medium=video&utm_campaign=devrel&utm_content=KjLS2gCQed4 Two presets ship today. CASUAL mirrors and amplifies the user's energy. CUSTOMER_SERVICE stays calm and empathetic and deliberately does not mirror anger. Both are provider-agnostic and customizable. For frontends, the leading delivery tag is published as an lk.expression attribute on the lk.transcription text stream, so a visualizer or mood indicator can follow the agent's emotional state. Live demo in the blog: https://livekit.com/blog/making-voice-agents-sound-human-with-expressive-mode/?utm_source=youtube&utm_medium=video&utm_campaign=devrel&utm_content=KjLS2gCQed4 📚 Resources 📚 Agent docs: https://docs.livekit.io/agents/?utm_source=youtube&utm_medium=video&utm_campaign=devrel&utm_content=KjLS2gCQed4 🤝 Join the Community: https://community.livekit.io/?utm_source=youtube&utm_medium=video&utm_campaign=devrel&utm_content=KjLS2gCQed4 #livekit #ai #voiceai