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
modelIdstringYes—STT 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
modelIdstringYes—TTS model ID from WIIL registry
voiceIdstringYes—Voice ID for speech synthesis
defaultLanguagestringNoen-USDefault language for synthesis
voiceSettingsobjectNo—Voice-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
idstring——Unique identifier for the chain
chainNamestringYes—Human-readable name
descriptionstringNo—Chain purpose and configuration details
sttConfigSttModelConfigYes—Speech-to-text configuration (stage 1)
agentConfigurationIdstringYes—Agent configuration ID (stage 2)
ttsConfigTtsModelConfigYes—Text-to-speech configuration (stage 3)
createdAtnumber——Unix timestamp when created
updatedAtnumber——Unix 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
processingModelIdstringYes—LLM model ID for translation
isTranslationbooleanNotrueFlag indicating translation chain

CreateProvisioningConfig​

Create input model using provider-based model configuration.

Schema: CreateProvisioningConfigSchema

Attributes​

AttributeTypeRequiredDefaultDescription
chainNamestringYes—Human-readable name
descriptionstringNo—Chain purpose and configuration details
sttConfigDynamicSTTModelConfigurationYes—Provider-based STT configuration
processingConfigDynamicModelConfigurationYes—Provider-based processing model configuration
ttsConfigDynamicTTSModelConfigurationYes—Provider-based TTS configuration

CreateTranslationChainConfig​

Create input model for translation flows.

Schema: CreateTranslationChainConfigSchema

Attributes​

AttributeTypeRequiredDefaultDescription
chainNamestringYes—Human-readable name
descriptionstringNo—Chain purpose and configuration details
sttConfigDynamicSTTModelConfigurationYes—Provider-based STT configuration
processingConfigDynamicModelConfigurationYes—Provider-based processing model configuration
ttsConfigDynamicTTSModelConfigurationYes—Provider-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