Skip to content

ComposableVoiceAgent

Plug in a STTProvider, an LLM model string, and a TTS model string. Useful when you want to test a hand-rolled voice stack against the same scenario harness as the bundled adapters.

Constructor

import scenario
 
agent = scenario.ComposableVoiceAgent(
    stt=scenario.ElevenLabsSTTProvider(api_key=...),
    llm="openai/gpt-5.4-mini",
    tts="elevenlabs/some-voice-id",
    system_prompt="You are a helpful assistant.",
)

stt accepts any STTProvider implementation (e.g. scenario.ElevenLabsSTTProvider).

Capabilities

streaming_transcriptsnative_vaddtmfinterruptioninput_formatsoutput_formats
pcm16/24000pcm16/24000

VAD: Composable has no native VAD; the SDK falls back to webrtcvad. See Troubleshooting → VAD didn't fire.

Worked examples

No standalone shipping demo yet — see the ElevenLabs composable variant for a working pattern.