Documentation Index

Fetch the complete documentation index at: https://docs.sestek.com/llms.txt

Use this file to discover all available pages before exploring further.

Language Models

Prev Next

This page explains how to retrieve the language models available for the SESTEK Speech Recognition (SR) service, and how to select a specific model version when submitting a transcription request.

Endpoint Details

  • Method: GET
  • URL: {{ADDR_SERVICE}}/v1/speech/dictation/models
  • Actor: REST Service Client
  • Goal: Retrieve the list of available language models.
  • Pre-Conditions: None

Replace {{ADDR_SERVICE}} with the base URL for your assigned region; see API Region URLs.

This endpoint is grouped with model management in the Postman collection, under the {{ADDR_UTIL}} address rather than {{ADDR_SERVICE}}. On cloud, {{ADDR_UTIL}} is otherwise closed to direct API access; the model list is the one exception, reachable at {{ADDR_SERVICE}} instead, with no authentication required. Managing models (adding, deleting, downloading a specific one) is not available on cloud at all. On-premises, this split doesn't apply: the model list works at both {{ADDR_SERVICE}} and {{ADDR_UTIL}}.

Example Request

This endpoint does not require an Authorization header.

curl --location '{{ADDR_SERVICE}}/v1/speech/dictation/models'

Example Response

The response contains a models array, one entry per available language model, and a modelsCount field with the total. The example below shows two entries to illustrate the shape; the actual models and count differ by region (cloud) or by what's installed on your machine (on-premises), and change over time, so don't treat these specific values as fixed.

{
    "success": true,
    "modelsCount": 43,
    "models": [
        {
            "name": "English",
            "language": "en-US",
            "version": 9,
            "tenant": "Default",
            "type": "Sestek",
            "sample_rate": 16000,
            "frequency": 16000,
            "is_persistent": true
        },
        {
            "name": "Turkish",
            "language": "tr-TR",
            "version": 8,
            "tenant": "Default",
            "type": "Sestek",
            "sample_rate": 16000,
            "frequency": 16000,
            "is_persistent": true
        }
    ],
    "errorCode": null,
    "errorMessage": null,
    "moreInfo": null
}

Understanding Model Versions

The ModelVersion parameter lets you select a specific model version when submitting audio for transcription.

Using the Latest Model Version

To use the latest version of a model, either:

  • set ModelVersion=0, or
  • omit the ModelVersion parameter entirely.

In both cases, the system automatically selects the most up-to-date and optimized language model available.

Using a Specific Model Version

If you need an older or specific model version:

  1. Retrieve the available versions by calling the models endpoint above.
  2. Use the version value from the response, for the model name you want, as the ModelVersion parameter in your transcription request. For example, the response above shows English at version 9 and Turkish at version 8.

Example Request for a Specific Model Version

curl --location '{{ADDR_SERVICE}}/v1/speech/dictation/request' \
--header 'Content-Type: audio/wave' \
--header 'ModelName: Turkish' \
--header 'ModelVersion: 4' \
--header 'Tenant: Default' \
--header 'Authorization: Bearer <access_token>' \
--data-binary '@audio.wav'

Authorization is required on cloud; on-premises, drop this header entirely, everything else stays the same. See Authentication for both flows.

When to Use Model Versions

  • To use the latest version, no additional configuration is required.
  • To use an earlier version for consistency, for example to avoid behavior changes introduced by a newer model, specify the desired ModelVersion in your request.

Managing Models (On-Premises Only)

These endpoints live at {{ADDR_UTIL}} and are not available on cloud at all. On-premises, use them to manage the models installed on your machine.

Get Specific Model

GET {{ADDR_UTIL}}/v1/speech/dictation/models?ModelName={ModelName}&ModelVersion={ModelVersion}&Tenant={ModelTenant}

Downloads the model content as a zip file.

curl -X GET "{{ADDR_UTIL}}/v1/speech/dictation/models?ModelName={ModelName}&ModelVersion={ModelVersion}&Tenant={ModelTenant}"

Add Model

POST {{ADDR_UTIL}}/v1/speech/dictation/models

Header Required Description
ModelName Yes Name of the new model.
ModelVersion Yes Version of the new model.
Tenant No Defaults to Default.
IsPersistent No Defaults to false; if true, the model can't be removed by an LMS update.
Content-Type Yes application/zip

Send the model content as a zipped file in the request body.

curl --header "ModelName: MyModel" \
--header "ModelVersion: 1" \
--header "IsPersistent: true" \
--data-binary "@MyModel.zip" \
-H "Content-Type: application/zip" \
-X POST "{{ADDR_UTIL}}/v1/speech/dictation/models"

Delete Model

DELETE {{ADDR_UTIL}}/v1/speech/dictation/models

Header Required Description
ModelName Yes Name of the model to delete.
ModelVersion Yes Version of the model to delete.
Tenant No Defaults to Default.
curl --header "ModelName: MyModel" \
--header "ModelVersion: 1" \
--header "Tenant: Default" \
-X DELETE "{{ADDR_UTIL}}/v1/speech/dictation/models"

Set Model Default Version

POST {{ADDR_UTIL}}/models/defaultversion

Header Required Description
ModelName Yes Name of the model.
ModelVersion Yes The version to set as default.
Tenant No Defaults to Default.
curl --header "ModelName: MyModel" \
--header "ModelVersion: 2" \
--header "Tenant: Default" \
-X POST "{{ADDR_UTIL}}/models/defaultversion"

Related Documentation