Skip to content

Providers

enhanced

The Speechmatics speech-to-text model enhanced, with every setting it accepts, the allowed value and the default.

The higher-accuracy Speechmatics model, and the default choice for Speechmatics assistants.

Reached through the Speechmatics client directly.

Speechmatics takes a bare ISO 639-1 language code rather than a full locale: fr, not fr-CA. A locale suffix is stripped before the request. The model you pick sets the operating point, and turn detection stays with the agent rather than the engine, so end-of-turn timing is handled for you and the settings below cover transcription itself.

Read this before using enhanced

Two of these are validated in opposite places, and it changes what a mistake costs. maxDelay is range-checked before the session opens, so a bad number is caught early and the call continues on the default transcriber. domain, outputLocale and punctuationOverrides are judged by Speechmatics when the stream connects, and a value it does not recognise leaves the call running with no transcription at all. Send only values Speechmatics documents.

Settings#

Every setting is optional. Leave one out and OnCore sends nothing for it, so the Default applies. If invalid is what the provider does with a value it does not accept.

SettingTypeAllowedDefaultIf invalid
domainstringa domain Speechmatics publishes, such as financenoneRefused, call fails
outputLocalestringa locale for spelling, such as en-USnoneRefused, call fails
maxDelayfloat (seconds)0.7 to 4.02.0Refused, transcriber falls back
additionalVocabarray of objects{ content, soundsLike } entries; tested to 1000noneUsed as sent
punctuationOverridesobjectpermitted_marks array and sensitivity between 0 and 1noneRefused, call fails

Overriding on a single call#

Return this from your assistant-request webhook to change these settings for one call only. The stored transcriber is left untouched, and the next call starts from it again.

json
{
  "data": {
    "overrides": {
      "transcriber": {
        "settings": {
          "domain": "finance",
          "outputLocale": "en-US",
          "maxDelay": 2,
          "additionalVocab": [
            {
              "content": "Sadie",
              "soundsLike": [
                "Saydee"
              ]
            }
          ],
          "punctuationOverrides": {
            "permitted_marks": [
              ".",
              ",",
              "?"
            ],
            "sensitivity": 0.5
          }
        }
      }
    }
  }
}

Send only the keys you want to change: anything you leave out keeps the value the assistant already has. Add "id" beside "settings" to swap the whole transcriber for another one from your catalogue at the same time.

domain: An unrecognised domain is not rejected locally. The session then fails to open against Speechmatics and the call runs without transcription, so only ever send a domain Speechmatics documents.

outputLocale: Controls output spelling only, not what the engine listens for. An unknown locale fails the same way an unknown domain does.

maxDelay: How long the engine may hold audio before committing a final transcript. Lower is faster and less accurate. A value outside the range is caught before the session opens, and the call continues on the default transcriber rather than the one you chose.

additionalVocab: Biases recognition toward names the engine would otherwise miss. content is the word, and the optional soundsLike array gives pronunciations to match against. A bare string is accepted as shorthand for content, and an entry with no usable content is dropped rather than failing the call.

punctuationOverrides: An unrecognised key inside this object stops the session from opening, so send only permitted_marks and sensitivity.

Next steps#