> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.nvidia.com/nemo/labs-voice-agent/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/nemo/labs-voice-agent/_mcp/server.

# Speech Pipeline

The speech pipeline turns live microphone audio into text, decides when the user has finished speaking, and
turns the assistant response back into audio. The stages stream data rather than waiting for an entire turn.
They include voice activity detection (VAD), automatic speech recognition (ASR), speaker diarization, turn
taking, large language model (LLM) inference, and text-to-speech (TTS).

```text
WebSocket audio -> VAD -> ASR -> diarization -> turn taking -> LLM -> TTS -> WebSocket audio
```

Optional stages are omitted by the builders when their configuration disables them. For the complete
runtime ordering and the frames exchanged between stages, refer to [Architecture](/nemo/labs-voice-agent/about/architecture).

## Core Concepts

The following pages explain the stages that interpret incoming audio and produce spoken output.

| Concept | What It Explains |
| --- | --- |
| [Speech recognition](/nemo/labs-voice-agent/about/core-concepts/speech-pipeline/speech-recognition) | Streaming transcription, model selection, and end-of-utterance tokens. |
| [Speaker diarization](/nemo/labs-voice-agent/about/core-concepts/speech-pipeline/speaker-diarization) | Assigning speaker identities across user turns. |
| [Text to speech](/nemo/labs-voice-agent/about/core-concepts/speech-pipeline/text-to-speech) | Streaming synthesis, voices, and text aggregation. |
| [Turn taking](/nemo/labs-voice-agent/about/core-concepts/speech-pipeline/turn-taking-backchannels) | VAD, end-of-utterance signals, interruptions, and backchannels. |

## Related Topics

Use these pages to experience the pipeline, change its configuration, or understand the complete architecture.

- [Quickstart](/nemo/labs-voice-agent/get-started/quickstart) — run the complete pipeline.
- [Configure](/nemo/labs-voice-agent/build-voice-agents/configure/overview) — select models and tune pipeline behavior.