Skip to main content

Provisioning Configuration

Provisioning chains orchestrate voice interaction pipelines by linking Speech-to-Text (STT), processing, and Text-to-Speech (TTS) models. Used for voice-based deployments with CHAINED provisioning type.

This module currently exposes two model layers:

  1. Persisted/read chain schemas (ProvisioningConfigChainSchema, TranslationChainConfigSchema) using registry-based STT/TTS shapes.
  2. Create/update input schemas (CreateProvisioningConfigSchema, CreateTranslationChainConfigSchema) using provider-based dynamic model configuration.

Source: src/core/service-configuration/provisioning-config.ts


SttModelConfig

Speech-to-Text model configuration for the input stage.

Schema: SttModelConfigSchema

Attributes

AttributeTypeRequiredDefaultDescription
modelIdstringYesSTT model ID from WIIL registry
defaultLanguagestringNoen-USDefault language for speech recognition

TtsModelConfig

Text-to-Speech model configuration for the output stage.

Schema: TtsModelConfigSchema

Attributes

AttributeTypeRequiredDefaultDescription
modelIdstringYesTTS model ID from WIIL registry
voiceIdstringYesVoice ID for speech synthesis
defaultLanguagestringNoen-USDefault language for synthesis
voiceSettingsobjectNoVoice-specific settings (pitch, speed, etc.)

ProvisioningConfigChain

Complete voice interaction processing pipeline.

Schema: ProvisioningConfigChainSchema

Pipeline Flow

User Speech → STT → Text → Agent → Text Response → TTS → Agent Speech

Attributes

AttributeTypeRequiredDefaultDescription
idstringUnique identifier for the chain
chainNamestringYesHuman-readable name
descriptionstringNoChain purpose and configuration details
sttConfigSttModelConfigYesSpeech-to-text configuration (stage 1)
agentConfigurationIdstringYesAgent configuration ID (stage 2)
ttsConfigTtsModelConfigYesText-to-speech configuration (stage 3)
createdAtnumberUnix timestamp when created
updatedAtnumberUnix timestamp when last updated

TranslationChainConfig

Extended chain for real-time language translation.

Schema: TranslationChainConfigSchema

Pipeline Flow

Speech (Lang A) → STT → Text (Lang A) → Translation → Text (Lang B) → TTS → Speech (Lang B)

Additional Attributes

AttributeTypeRequiredDefaultDescription
processingModelIdstringYesLLM model ID for translation
isTranslationbooleanNotrueFlag indicating translation chain

CreateProvisioningConfig

Create input model using provider-based model configuration.

Schema: CreateProvisioningConfigSchema

Attributes

AttributeTypeRequiredDefaultDescription
chainNamestringYesHuman-readable name
descriptionstringNoChain purpose and configuration details
sttConfigDynamicSTTModelConfigurationYesProvider-based STT configuration
processingConfigDynamicModelConfigurationYesProvider-based processing model configuration
ttsConfigDynamicTTSModelConfigurationYesProvider-based TTS configuration

CreateTranslationChainConfig

Create input model for translation flows.

Schema: CreateTranslationChainConfigSchema

Attributes

AttributeTypeRequiredDefaultDescription
chainNamestringYesHuman-readable name
descriptionstringNoChain purpose and configuration details
sttConfigDynamicSTTModelConfigurationYesProvider-based STT configuration
processingConfigDynamicModelConfigurationYesProvider-based processing model configuration
ttsConfigDynamicTTSModelConfigurationYesProvider-based TTS configuration
isTranslationbooleanNotrueFlag indicating translation chain

Dynamic Model Configuration Types

Provider-based model schemas used by create/update contracts:

TypeFields
DynamicModelConfigurationproviderType, providerModelId
DynamicSTTModelConfigurationproviderType, providerModelId, languageId (default en)
DynamicTTSModelConfigurationproviderType, providerModelId, languageId (default en), voiceId

Example

Provisioning Chain

{
"id": "chain_abc123",
"chainName": "Customer Support Voice Chain",
"description": "Voice processing chain for customer support calls",
"sttConfig": {
"modelId": "whisper-v3",
"defaultLanguage": "en-US"
},
"agentConfigurationId": "agent_789",
"ttsConfig": {
"modelId": "eleven-labs-v2",
"voiceId": "adam",
"defaultLanguage": "en-US",
"voiceSettings": {
"stability": 0.75,
"similarity_boost": 0.5
}
},
"createdAt": 1709856000000,
"updatedAt": 1709856000000
}

Translation Chain

{
"id": "chain_def456",
"chainName": "EN-ES Translation Chain",
"description": "English to Spanish translation for customer support",
"sttConfig": {
"modelId": "whisper-v3",
"defaultLanguage": "en-US"
},
"processingModelId": "gpt-4-translator",
"ttsConfig": {
"modelId": "eleven-labs-v2",
"voiceId": "spanish-voice",
"defaultLanguage": "es-ES"
},
"isTranslation": true,
"createdAt": 1709856000000,
"updatedAt": 1709856000000
}

Create Provisioning Input

{
"chainName": "New Voice Chain",
"description": "Processing chain for multilingual support",
"sttConfig": {
"providerType": "Deepgram",
"providerModelId": "nova-2",
"languageId": "en"
},
"processingConfig": {
"providerType": "OpenAI",
"providerModelId": "gpt-4o-mini"
},
"ttsConfig": {
"providerType": "ElevenLabs",
"providerModelId": "eleven_multilingual_v2",
"languageId": "en",
"voiceId": "rachel"
}
}

Create Translation Input

{
"chainName": "FR-EN Translation",
"description": "French to English translation chain",
"sttConfig": {
"providerType": "Deepgram",
"providerModelId": "nova-2",
"languageId": "fr"
},
"processingConfig": {
"providerType": "OpenAI",
"providerModelId": "gpt-4o-mini"
},
"ttsConfig": {
"providerType": "ElevenLabs",
"providerModelId": "eleven_multilingual_v2",
"languageId": "en",
"voiceId": "english-voice"
},
"isTranslation": true
}

Create / Update Schemas

SchemaDescriptionOmits
CreateProvisioningConfigSchemaFor creating chainsid, createdAt, updatedAt
UpdateProvisioningConfigSchemaFor partial updatesAll fields optional except id
CreateTranslationChainConfigSchemaFor creating translation chainsid, createdAt, updatedAt
UpdateTranslationChainConfigSchemaFor updating translation chainsAll fields optional except id