Transcription Models
Transcription models are the core of Koldan's transcription engine. Each transcription model is trained for specific languages, use cases, and performance characteristics. When you create a transcription, you select a transcription model - and Koldan handles the rest.
Sentence verification (sentver) models are also Speech Services resources, but they are managed separately from transcription models. Sentver models verify that audio contains the expected sentence and are currently used by Speaker Services enrollment and verification pipelines.
How Transcription Models Work
Every transcription model you see in the API represents a stable identifier that resolves to a specific speech recognition engine version on the server. This means:
- You always reference transcription models by name - e.g.,
general-v3,medical-en,telephony. - The server resolves your transcription model name to the best available engine version behind the scenes.
- Transcription model updates are transparent - when a new engine version is deployed, your existing transcription model name automatically points to the improved version. No code changes needed.
flowchart LR
A["Your API Request\n<code>model: general-v3</code>"] --> B["Koldan Server"]
B --> C["Resolved Engine\nVersion"]
C --> D["Transcription Result"]
Transcription Model Properties
Each transcription model exposes the following information:
| Property | Description |
|---|---|
| Name | The stable identifier you use in API requests (e.g., general-v3) |
| Display Name | A human-readable label (e.g., "General v3") |
| Description | What the transcription model is designed for |
| Status | Current availability - see Transcription Model Status below |
| Current Version | The engine version this transcription model currently resolves to |
| Capabilities | Supported languages, streaming, and auto-detection - see Capabilities |
Transcription Model Status
| Status | Meaning |
|---|---|
AVAILABLE |
The transcription model is ready for use |
UNAVAILABLE |
The transcription model is not currently deployed on this server |
MAINTENANCE |
Temporarily offline for updates - try again later |
DEPRECATED |
Still functional but scheduled for removal - migrate to the suggested replacement |
Deprecated Transcription Models
When a transcription model is deprecated, the API response includes a deprecationDate and a deprecationMessage with migration guidance. Deprecated transcription models continue to work until their sunset date, after which requests return 410 Gone. Plan your migration early.
Capabilities
Each transcription model declares what it can do. Check capabilities before using a transcription model to ensure it fits your use case.
| Capability | Description |
|---|---|
| Languages | List of supported BCP-47 language codes (e.g., en, he, de, ar) |
| Auto-detect | Whether the transcription model can automatically identify the spoken language |
| Streaming | Whether the transcription model supports real-time streaming transcription |
| Inverse Text Normalization | Whether the transcription model supports converting spoken-form entities (numbers, dates, etc.) into their written form. Some models apply this automatically; others support it on request via the inverseTextNormalization option. |
Check Languages Before Transcribing
If you specify a language that the transcription model doesn't support, the transcription will fail. Use the transcription model languages endpoint to verify supported languages, or enable auto-detection if the model supports it.
Transcription Model Types
Transcription models are organized into three categories that determine how they resolve to engine versions:
| Type | Behavior | Example |
|---|---|---|
| Family | Always resolves to the latest version in the transcription model family. Automatically upgrades when new versions are deployed. | general → currently resolves to general-v3-20240915 |
| Pinned | Points to a specific major version but may receive minor updates (patches, accuracy improvements). | general-v3 → currently resolves to general-v3-20240915 |
| Concrete | Locked to an exact engine version. Never changes. Use when you need deterministic, reproducible results. | general-v3-20240915 → always this exact version |
Which Type Should I Use?
- Use Family transcription models for most applications - you'll always get the best available version.
- Use Pinned transcription models when you want a stable major version but still benefit from patches.
- Use Concrete transcription models only when reproducibility is critical (e.g., compliance, benchmarking).
Default Transcription Model
Each Koldan deployment has a default transcription model. If you create a transcription without specifying a transcription model, the default is used automatically.
To find out which transcription model is the default, call the list transcription models endpoint and look for the model marked as default.
Role-Based Transcription Model Access
Not all transcription models are available to all users. Administrators can restrict which transcription models each role can access. When you call the list transcription models endpoint, you only see transcription models assigned to your role.
If you need access to a transcription model that isn't listed, contact your administrator.
→ See Roles and Permissions for more on how roles work.
Checking Available Transcription Models
Use the Transcription Models API to discover what's available to you:
| What You Need | Endpoint |
|---|---|
| List all transcription models you can access | GET /api/v1/speech-services/models |
| Get details for a specific transcription model | GET /api/v1/speech-services/models/{model} |
| Check supported languages for a transcription model | GET /api/v1/speech-services/models/{model}/languages |
| List sentence verification models | GET /api/v1/speech-services/sentence-verification/models |
→ Full API details in the REST API Reference.
Related Pages
- Files, Transcriptions, and Summaries - how transcription models are used in the transcription workflow
- Sentence Verification Models - sentver aliases used by speaker enrollment and verification
- Languages - full language management API
- Roles and Permissions - role-based transcription model access
- Transcription Models and Aliases Administration - admin transcription model management