marem
03/31/2025, 12:21 PMendpointing
around 1500ms.
What is endpointing
means?
Is there a way to improve this time?
Turn latency: 2719ms (transcriber: 232ms, endpointing: 1501ms, kb: N/A, model: 532ms, voice: 406ms)
Vapi Support Bot
03/31/2025, 12:23 PMwaitSeconds
to around 0.8 seconds in your startSpeakingPlan
configuration:
json
"startSpeakingPlan": {
"waitSeconds": 0.8,
"smartEndpointingEnabled": false
}
This is suggested as a median value in [Vapi's Discord discussions](https://discord.com/channels/1211482211119796234/1211483291191083018/threads/1336360452208332831).
2. **Configure Smart Endpointing**: You can enable or disable Smart Endpointing based on your needs. It's off by default but can be turned on for scenarios where you want to avoid interrupting users while they think through responses, as mentioned in the [speech configuration documentation](https://docs.vapi.ai/customization/speech-configuration).Vapi Support Bot
03/31/2025, 12:23 PMsilenceTimeoutSeconds
, responseDelaySeconds
, and llmRequestDelaySeconds
that might affect response times.
5. **If using Deepgram**: Set Deepgram's endpointing to 300ms, as suggested in [Discord discussions](https://discord.com/channels/1211482211119796234/1211483291191083018/threads/1332286268805087272).
6. **Consider Hosting Location**: Host Vapi in a region closer to your users to reduce latency. By default, Vapi servers are in US regions, but you can consider on-premises solutions for specific regions.
Is there anything specific about these suggestions you'd like me to elaborate on?
Sources:
- [Vapi documentation](https://docs.vapi.ai/how-vapi-works)
- [Vapi glossary](https://docs.vapi.ai/glossary)
- [Discord discussions](https://discord.com/channels/1211482211119796234/1211483291191083018/threads/1336360452208332831)
- [Speech configuration documentation](https://docs.vapi.ai/customization/speech-configuration)
- [Discord discussions on Deepgram](https://discord.com/channels/1211482211119796234/1211483291191083018/threads/1332286268805087272)marem
03/31/2025, 12:43 PMmarem
03/31/2025, 1:22 PMVapi Support Bot
03/31/2025, 1:23 PMonNoPunctuationSeconds
parameter is located within the transcriptionEndpointingPlan
object, which is nested inside the startSpeakingPlan
configuration. According to the [Vapi API documentation](https://docs.vapi.ai/api-reference/assistants/create-assistant), you can configure it as follows:
json
"startSpeakingPlan": {
"waitSeconds": 0.4,
"smartEndpointingEnabled": false,
"customEndpointingRules": [
{
"type": "assistant",
"regex": "regex",
"timeoutSeconds": 1.1
}
],
"transcriptionEndpointingPlan": {
"onPunctuationSeconds": 0.1,
"onNoPunctuationSeconds": 1.5,
"onNumberSeconds": 0.5
}
}
To update this setting, you'll need to use the Vapi API's update endpoint for assistants. Based on the [information from Discord discussions](https://discord.com/channels/1211482211119796234/1211483291191083018/threads/1333057366748565514), you can do this using either the Vapi API client or another API client like Postman.
The API endpoint documentation can be found at: [https://docs.vapi.ai/api-reference/assistants/update](https://docs.vapi.ai/api-reference/assistants/update?playground=%2Fapi-reference%2Fassistants%2Fupdate)Vapi Support Bot
03/31/2025, 1:23 PMonNoPunctuationSeconds
parameter (default value 1.5) is used when a customer has been silent for a while and has finished speaking, but the transcriber isn't confident enough to add punctuation to the transcription, as explained in the [speech configuration documentation](https://docs.vapi.ai/customization/speech-configuration).
Is there anything specific about configuring this parameter that you'd like me to explain further?
Sources:
- [Vapi API documentation](https://docs.vapi.ai/api-reference/assistants/create-assistant)
- [Discord discussions](https://discord.com/channels/1211482211119796234/1211483291191083018/threads/1333057366748565514)
- [Speech configuration documentation](https://docs.vapi.ai/customization/speech-configuration)marem
03/31/2025, 1:37 PMVapi Support Bot
03/31/2025, 1:39 PMVoice Input Formatted
feature which specifically fixes punctuation and makes text more readable for TTS. According to the [Vapi documentation](https://docs.vapi.ai/assistants/voice-formatting-plan), this feature orchestrates mini-functions that together fix punctuation and make text more readable out loud.
## Chunk Plan Configuration
The chunkPlan
settings control how text is processed before being sent to the TTS provider:
json
{
"voice": {
"chunkPlan": {
"enabled": true,
"minCharacters": 30, // Adjust between 1-80
"punctuationBoundaries": [".", "!", "?", ";"] // Customize based on your needs
}
}
}
According to [Discord discussions](https://discord.com/channels/1211482211119796234/1211483291191083018/threads/1343543475383046185), keeping chunkPlan.enabled: true
is particularly important for proper sentence boundary detection using language-appropriate punctuation.
## Transcription Endpointing Plan
The onNoPunctuationSeconds
parameter (which you asked about earlier) is particularly relevant here:
json
"startSpeakingPlan": {
"transcriptionEndpointingPlan": {
"onPunctuationSeconds": 0.1,
"onNoPunctuationSeconds": 1.5,
"onNumberSeconds": 0.5
}
}
This parameter is used when a customer has been silent for a while and has finished speaking, but the transcriber isn't confident enough to add punctuation to the transcription.
## Input Punctuation Boundaries
Use the assistant.voice.inputPunctuationBoundaries
setting to help determine the end of a complete message. When the voice input contains punctuation listed in this setting, it's considered a valid boundary, indicating the end of a complete message.
## SSML SupportVapi Support Bot
03/31/2025, 1:39 PMenableSsmlParsing
parameter, which allows for more control over speech synthesis, including punctuation.
## Voice Provider Settings
If you're using ElevenLabs, you can adjust parameters like stability
and similarityBoost
which can influence the overall quality of the TTS output. Try a call with: stability: 0.5 similarityBoost: 0.75
.
## Model Output in Messages
Enable modelOutputInMessagesEnabled
to use the model's output instead of transcribed output in messages, which may improve TTS:
curl -X PATCH https://api.vapi.ai/assistant/your-assistant-id \
-H "Authorization: Bearer your-private-key" \
-H "Content-Type: application/json" \
-d '{
"modelOutputInMessagesEnabled": true
}'
Would you like me to elaborate on any of these specific settings?
Sources:
- [Vapi documentation](https://docs.vapi.ai/assistants/voice-formatting-plan)
- [Discord discussions](https://discord.com/channels/1211482211119796234/1211483291191083018/threads/1343543475383046185)
- [Speech configuration documentation](https://docs.vapi.ai/customization/speech-configuration)Aniah
03/31/2025, 2:40 PMmarem
03/31/2025, 2:55 PM12:11:39:025
[INFO]
Turn latency: 2349ms (transcriber: 211ms, endpointing: 1500ms, kb: N/A, model: 406ms, voice: 188ms)
I want to improve endpointing timeAniah
03/31/2025, 10:07 PMmarem
04/01/2025, 8:48 AMAniah
04/02/2025, 2:43 PMAniah
04/02/2025, 3:20 PMAniah
04/02/2025, 3:21 PMmarem
04/03/2025, 4:40 AMmarem
04/03/2025, 5:03 AMcustomEndpointingRules
on the startSpeakingPlan, I'll experiment with itmarem
04/03/2025, 11:11 AM"regex": "/^oui(?:, allô)?$/i"
but that does not seems to match with transcriber output. Maybe it's not the expected format?marem
04/03/2025, 11:11 AMVapi Support Bot
04/03/2025, 11:12 AMcustomEndpointingRules
in Vapi and having trouble with the regex format. Based on the information I have, the regex
field within customEndpointingRules
is expected to be a string, but I don't have specific details on the exact regex syntax or format that Vapi expects.
Could you share what you're trying to accomplish with this regex pattern? Are you trying to detect specific French greetings like "oui" and "allô" to trigger custom endpointing behavior? Also, have you tried the regex without the JavaScript-style delimiters (/
and /i
)?
For example, instead of:
"regex": "/^oui(?:, allô)?$/i"
Have you tried:
"regex": "^oui(?:, allô)?$"
Or perhaps a simpler pattern to test if the basic functionality works?
Sources:
- [Vapi API documentation](https://docs.vapi.ai/api-reference/assistants/create-assistant)
- [Discord discussions](https://discord.com/channels/1211482211119796234/1211483291191083018/threads/1335676323846291537)marem
04/03/2025, 11:27 AM9d6def19-565a-424c-825e-05d3cf79e613
"regex": "^oui(?:, allô)?$",
"regexOptions": [
{
"type": "ignore-case",
"enabled": true
}
],
"timeoutSeconds": 0.1
I see in the logs
11:22:49:890
[LOG]
Transcriber output: Oui,
11:22:49:891
[LOG]
Endpointing timeout 1000ms (rule: `heuristic`)
So it didn't matchedmarem
04/03/2025, 11:36 AMmarem
04/03/2025, 12:44 PMAniah
04/06/2025, 12:39 PMmarem
04/06/2025, 1:17 PMAniah
04/07/2025, 1:21 PM