[{"data":1,"prerenderedAt":4},["ShallowReactive",2],{"article-doc:docs\u002Frealtime\u002Fsession-configuration":3},"---\ntitle: Session Configuration\ndescription: language, prompt, VAD, and other session-level options.\n---\nConfigure session parameters via `session.update` messages.\n\n## When to configure\n\n- **After connect**: send `session.update` right after receiving `session.created`\n- **During session**: update parameters at any time\n- **Confirmation**: server returns `session.updated` to confirm\n\n## All options\n\n### Language and context\n\n| Field | Type | Description |\n|---|---|---|\n| `language` | string | Audio source language (e.g. `zh`, `en`, `auto`) |\n| `prompt` | string | Context hint, max 2000 characters |\n\n### Model selection\n\n| Field | Snake-case alias | Description |\n|---|---|---|\n| `backend` | — | Upstream backend selection |\n| `sttModel` | `stt_model` | STT model |\n| `normalizerModel` | `normalizer_model` | Text normalizer model |\n\n### VAD configuration\n\n| Field | Snake-case alias | Type | Description |\n|---|---|---|---|\n| `vad` | — | boolean | Enable VAD |\n| `vadThreshold` | `vad_threshold` | number | Sensitivity threshold |\n| `vadSilenceMs` | `vad_silence_ms` | number | Silence duration to trigger end-of-speech |\n| `vadPrefixMs` | `vad_prefix_ms` | number | Prefix padding |\n| `vadMinSpeechMs` | `vad_min_speech_ms` | number | Minimum speech segment |\n| `vadTargetSpeechMs` | `vad_target_speech_ms` | number | Target speech segment |\n| `vadMaxSpeechMs` | `vad_max_speech_ms` | number | Maximum speech segment |\n| `vadSmartSplitWindowMs` | `vad_smart_split_window_ms` | number | Smart split window |\n\n### Audio configuration\n\nFixed by the gateway, client cannot change:\n\n```json\n{ \"format\": \"pcm_s16le\", \"sample_rate\": 16000, \"channels\": 1 }\n```\n\n## Examples\n\n### Set language\n\n```json\n{ \"type\": \"session.update\", \"language\": \"zh\" }\n```\n\n### Set context hint\n\n```json\n{ \"type\": \"session.update\", \"prompt\": \"Cardiology conference, terms: atrial fibrillation, anticoagulation, warfarin\" }\n```\n\n### Adjust VAD\n\n```json\n{\n  \"type\": \"session.update\",\n  \"vad\": true,\n  \"vadThreshold\": 0.5,\n  \"vadSilenceMs\": 800\n}\n```\n\n### Switch language at runtime\n\n```json\n{ \"type\": \"session.update\", \"language\": \"en\" }\n```\n\n## Tenant isolation\n\nAll non-whitelisted fields are stripped before forwarding upstream. These fields are injected by the gateway and cannot be overridden:\n\n- `request_id`\n- `session_id`\n- `user_id`\n\n## Related\n\n- [Client Messages](\u002Fdocs\u002Fapi-reference\u002Fclient-messages) — message format\n- [Server Events](\u002Fdocs\u002Fapi-reference\u002Fserver-events) — `session.updated` event\n- [Live Translation](\u002Fdocs\u002Fconcepts\u002Flive-translation) — translation concepts\n",1790059118959]