You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/learnings/assistants.md
+30Lines changed: 30 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -28,6 +28,36 @@ Despite being a configurable field, this setting currently has **no effect** on
28
28
29
29
## Voice Configuration
30
30
31
+
### Vapi-branded voices (`provider: 'vapi'`) need only a name
32
+
33
+
**What you might expect:** Like other voice providers, you'd need to specify a model, a long opaque voice ID, and possibly tune stability/similarity/speed knobs.
34
+
35
+
**What actually happens:** Vapi-branded voices are an abstraction. The complete config is just two fields:
36
+
37
+
```yaml
38
+
voice:
39
+
provider: vapi
40
+
voiceId: Elliot # or any other Vapi voice name (Kylie, Clara, Spencer, etc.)
41
+
```
42
+
43
+
No model selection, no opaque voice ID, no chunk plan tuning required. The platform handles routing and automatically activates failover if the primary path errors mid-call.
44
+
45
+
**Recommendation:** When you don't have a hard requirement for a specific third-party voice, prefer a Vapi-branded voice. You get:
46
+
47
+
- A simpler, more readable yaml (one human-readable name)
48
+
- Automatic resilience — calls keep flowing through provider-side blips
49
+
- Forward-compatibility — voice quality improvements ship without yaml changes
50
+
51
+
**Optional knobs** (all default to sensible values):
52
+
53
+
| Field | Range | Notes |
54
+
|---|---|---|
55
+
| `speed` | 0.25–2 (default 1) | Effective range is clamped narrower than the input range; extreme values may not perceptibly differ from the limits |
56
+
| `language` | ISO 639-1 codes | Defaults to `en-US` |
57
+
| `pronunciationDictionary` | array of `{ pronunciationDictId, versionId? }` | Same dictionary IDs you'd attach to a direct-provider voice (see [Pronunciation dictionaries](#pronunciation-dictionaries-tts-level)) |
58
+
59
+
**Gotcha:** voice names are case-sensitive — `voiceId: 'elliot'` (lowercase) returns a 400 at config validation. The full list of valid names is visible in the Vapi dashboard's voice picker.
60
+
31
61
### `chunkPlan.enabled: false` can reduce latency
32
62
33
63
Disabling the chunk plan skips text formatting/preprocessing before TTS. This gives you raw LLM text (potentially with markdown or formatting artifacts) but lower latency.
0 commit comments