API Reference
This section provides comprehensive documentation for the WTF Transcript Converter API.
Core Models
Core WTF data models.
This module contains Pydantic models for the World Transcription Format (WTF).
- class wtf_transcript_converter.core.models.WTFTranscript(**data)[source]
Bases:
BaseModelCore transcript information following WTF specification.
- Parameters:
data (
Any)
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class wtf_transcript_converter.core.models.WTFSegment(**data)[source]
Bases:
BaseModelIndividual transcript segment with timing information.
- Parameters:
data (
Any)
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class wtf_transcript_converter.core.models.WTFWord(**data)[source]
Bases:
BaseModelWord-level transcription data.
- Parameters:
data (
Any)
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class wtf_transcript_converter.core.models.WTFSpeaker(**data)[source]
Bases:
BaseModelSpeaker information for diarization.
- Parameters:
data (
Any)
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class wtf_transcript_converter.core.models.WTFAudio(**data)[source]
Bases:
BaseModelAudio metadata information.
- Parameters:
data (
Any)
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class wtf_transcript_converter.core.models.WTFMetadata(**data)[source]
Bases:
BaseModelProcessing metadata information.
- Parameters:
data (
Any)
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class wtf_transcript_converter.core.models.WTFQuality(**data)[source]
Bases:
BaseModelQuality metrics for the transcription.
- Parameters:
data (
Any)
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class wtf_transcript_converter.core.models.WTFExtensions(**data)[source]
Bases:
BaseModelProvider-specific extensions.
- Parameters:
data (
Any)
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class wtf_transcript_converter.core.models.WTFDocument(**data)[source]
Bases:
BaseModelComplete WTF document structure.
- Parameters:
data (
Any)
- transcript: WTFTranscript
- segments: List[WTFSegment]
- metadata: WTFMetadata
- speakers: Dict[str, WTFSpeaker] | None
- quality: WTFQuality | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class wtf_transcript_converter.core.models.VConWTFAttachment(**data)[source]
Bases:
BaseModelDeprecated placeholder. WTF results go in analysis[], not attachments[].
- Parameters:
data (
Any)
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
WTFDocument
- class wtf_transcript_converter.core.models.WTFDocument(**data)[source]
Complete WTF document structure.
- Parameters:
data (
Any)
- transcript: WTFTranscript
- segments: List[WTFSegment]
- metadata: WTFMetadata
- speakers: Dict[str, WTFSpeaker] | None
- quality: WTFQuality | None
- validate_document_consistency()[source]
Validate document-level consistency.
- Return type:
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
WTFTranscript
- class wtf_transcript_converter.core.models.WTFTranscript(**data)[source]
Core transcript information following WTF specification.
- Parameters:
data (
Any)
- text: str
- language: str
- duration: float
- confidence: float
- classmethod validate_language_code(v)[source]
Validate BCP-47 language code format.
- classmethod validate_text(v)[source]
Validate and clean transcript text.
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
WTFSegment
- class wtf_transcript_converter.core.models.WTFSegment(**data)[source]
Individual transcript segment with timing information.
- Parameters:
data (
Any)
- id: int
- start: float
- end: float
- text: str
- confidence: float
- validate_timing()[source]
Validate that end time is after start time.
- Return type:
- classmethod validate_text(v)[source]
Validate and clean segment text.
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
WTFWord
- class wtf_transcript_converter.core.models.WTFWord(**data)[source]
Word-level transcription data.
- Parameters:
data (
Any)
- id: int
- start: float
- end: float
- text: str
- confidence: float
- classmethod validate_text(v)[source]
Validate and clean word text.
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
WTFMetadata
- class wtf_transcript_converter.core.models.WTFMetadata(**data)[source]
Processing metadata information.
- Parameters:
data (
Any)
- created_at: str
- processed_at: str
- provider: str
- model: str
- audio: WTFAudio
- classmethod validate_timestamp(v)[source]
Validate ISO 8601 timestamp format.
- classmethod validate_provider(v)[source]
Validate and normalize provider name.
- classmethod validate_model(v)[source]
Validate model identifier.
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
WTFAudio
- class wtf_transcript_converter.core.models.WTFAudio(**data)[source]
Audio metadata information.
- Parameters:
data (
Any)
- duration: float
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
WTFQuality
- class wtf_transcript_converter.core.models.WTFQuality(**data)[source]
Quality metrics for the transcription.
- Parameters:
data (
Any)
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
WTFExtensions
- class wtf_transcript_converter.core.models.WTFExtensions(**data)[source]
Provider-specific extensions.
- Parameters:
data (
Any)
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
Core Validator
WTF document validation functions.
This module provides validation functions for WTF documents and their components.
- wtf_transcript_converter.core.validator.validate_wtf_document(doc)[source]
Validate a WTF document for compliance with the specification.
- Parameters:
doc (
WTFDocument) – WTF document to validate- Return type:
- Returns:
Tuple of (is_valid, list_of_errors)
- wtf_transcript_converter.core.validator.validate_confidence_score(confidence, context='')[source]
Validate that a confidence score is in the valid range [0.0, 1.0].
- wtf_transcript_converter.core.validator.validate_timestamp(timestamp)[source]
Validate ISO 8601 timestamp format.
- wtf_transcript_converter.core.validator.validate_language_code(language_code)[source]
Validate BCP-47 language code format.
WTFValidator
Core Converter
Base converter framework for WTF transcript conversion.
This module provides abstract base classes for converting between different transcript formats and WTF.
- class wtf_transcript_converter.core.converter.BaseConverter[source]
Bases:
ABCAbstract base class for all converters.
- class wtf_transcript_converter.core.converter.ToWTFConverter[source]
Bases:
BaseConverterAbstract base class for converters that convert TO WTF format.
- class wtf_transcript_converter.core.converter.FromWTFConverter[source]
Bases:
BaseConverterAbstract base class for converters that convert FROM WTF format.
BaseProviderConverter
Provider Converters
Whisper Converter
Whisper provider converter.
This module provides conversion between Whisper JSON format and WTF format.
- class wtf_transcript_converter.providers.whisper.WhisperConverter[source]
Bases:
ToWTFConverter,FromWTFConverterConverter for Whisper JSON format to/from WTF format.
- convert_to_wtf(whisper_data)[source]
Convert Whisper JSON data to WTF format.
- Parameters:
- Return type:
- Returns:
WTF document
- convert_from_wtf(wtf_doc)[source]
Convert WTF document to Whisper JSON format.
- Parameters:
wtf_doc (
WTFDocument) – WTF document- Return type:
- Returns:
Whisper JSON data structure
WhisperConverter
- class wtf_transcript_converter.providers.whisper.WhisperConverter[source]
Converter for Whisper JSON format to/from WTF format.
- __init__()[source]
- convert_to_wtf(whisper_data)[source]
Convert Whisper JSON data to WTF format.
- Parameters:
- Return type:
- Returns:
WTF document
- convert_from_wtf(wtf_doc)[source]
Convert WTF document to Whisper JSON format.
- Parameters:
wtf_doc (
WTFDocument) – WTF document- Return type:
- Returns:
Whisper JSON data structure
Deepgram Converter
Deepgram provider converter.
This module provides conversion between Deepgram JSON format and WTF format.
- class wtf_transcript_converter.providers.deepgram.DeepgramConverter[source]
Bases:
ToWTFConverter,FromWTFConverterConverter for Deepgram JSON format to/from WTF format.
- convert_to_wtf(deepgram_data)[source]
Convert Deepgram JSON data to WTF format.
- convert_from_wtf(wtf_doc)[source]
Convert WTF document to Deepgram JSON format.
- Parameters:
wtf_doc (
WTFDocument) – WTF document- Return type:
- Returns:
Deepgram JSON data structure
DeepgramConverter
- class wtf_transcript_converter.providers.deepgram.DeepgramConverter[source]
Converter for Deepgram JSON format to/from WTF format.
- __init__()[source]
- convert_to_wtf(deepgram_data)[source]
Convert Deepgram JSON data to WTF format.
- convert_from_wtf(wtf_doc)[source]
Convert WTF document to Deepgram JSON format.
- Parameters:
wtf_doc (
WTFDocument) – WTF document- Return type:
- Returns:
Deepgram JSON data structure
AssemblyAI Converter
AssemblyAI provider converter.
This module provides conversion between AssemblyAI JSON format and WTF format.
- class wtf_transcript_converter.providers.assemblyai.AssemblyAIConverter[source]
Bases:
ToWTFConverter,FromWTFConverterConverter for AssemblyAI JSON format to/from WTF format.
- convert_to_wtf(assemblyai_data)[source]
Convert AssemblyAI JSON data to WTF format.
- convert_from_wtf(wtf_doc)[source]
Convert WTF document to AssemblyAI JSON format.
- Parameters:
wtf_doc (
WTFDocument) – WTF document- Return type:
- Returns:
AssemblyAI JSON data structure
AssemblyAIConverter
- class wtf_transcript_converter.providers.assemblyai.AssemblyAIConverter[source]
Converter for AssemblyAI JSON format to/from WTF format.
- __init__()[source]
- convert_to_wtf(assemblyai_data)[source]
Convert AssemblyAI JSON data to WTF format.
- convert_from_wtf(wtf_doc)[source]
Convert WTF document to AssemblyAI JSON format.
- Parameters:
wtf_doc (
WTFDocument) – WTF document- Return type:
- Returns:
AssemblyAI JSON data structure
Rev.ai Converter
Rev.ai provider converter for WTF transcript format.
This module provides conversion between Rev.ai transcription format and WTF format.
RevAIConverter
- class wtf_transcript_converter.providers.rev_ai.RevAIConverter[source]
Converter for Rev.ai JSON format to/from WTF format.
- __init__()[source]
- provider_name: str = 'rev_ai'
- description: str = 'Rev.ai transcription service'
- status: str = 'Implemented'
- convert_to_wtf(rev_ai_data)[source]
Convert Rev.ai JSON data to WTF format.
- Parameters:
- Return type:
- Returns:
WTF document
- convert_from_wtf(wtf_doc)[source]
Convert WTF document to Rev.ai JSON format.
- Parameters:
wtf_doc (
WTFDocument) – WTF document- Return type:
- Returns:
Rev.ai JSON data structure
Canary Converter
Canary provider converter implementation.
This module provides conversion between Canary (NVIDIA NeMo) transcription format and WTF.
- class wtf_transcript_converter.providers.canary.CanaryConverter(provider_name='canary', model_name='nvidia/canary-1b-v2')[source]
Bases:
BaseProviderConverterConverter for Canary (NVIDIA NeMo) transcription format to/from WTF.
CanaryConverter
- class wtf_transcript_converter.providers.canary.CanaryConverter(provider_name='canary', model_name='nvidia/canary-1b-v2')[source]
Converter for Canary (NVIDIA NeMo) transcription format to/from WTF.
- provider_name: str = 'canary'
- description: str = 'NVIDIA Canary speech recognition via Hugging Face'
- status: str = 'Implemented'
- __init__(provider_name='canary', model_name='nvidia/canary-1b-v2')[source]
- transcribe_audio(audio_path, language='en')[source]
Transcribe audio file using Canary model.
- convert_to_wtf(canary_data)[source]
Convert Canary JSON data to WTF format.
- Parameters:
- Return type:
- Returns:
WTF document
- convert_from_wtf(wtf_doc)[source]
Convert WTF document to Canary JSON format.
- Parameters:
wtf_doc (
WTFDocument) – WTF document- Return type:
- Returns:
Canary JSON data structure
Parakeet Converter
Parakeet provider converter implementation.
This module provides conversion between Parakeet (NVIDIA NeMo) transcription format and WTF.
- class wtf_transcript_converter.providers.parakeet.ParakeetConverter(provider_name='parakeet', model_name='nvidia/parakeet-tdt-0.6b-v3')[source]
Bases:
BaseProviderConverterConverter for Parakeet (NVIDIA NeMo) transcription format to/from WTF.
ParakeetConverter
- class wtf_transcript_converter.providers.parakeet.ParakeetConverter(provider_name='parakeet', model_name='nvidia/parakeet-tdt-0.6b-v3')[source]
Converter for Parakeet (NVIDIA NeMo) transcription format to/from WTF.
- provider_name: str = 'parakeet'
- description: str = 'NVIDIA Parakeet speech recognition via Hugging Face'
- status: str = 'Implemented'
- __init__(provider_name='parakeet', model_name='nvidia/parakeet-tdt-0.6b-v3')[source]
- transcribe_audio(audio_path, language='en')[source]
Transcribe audio file using Parakeet model.
- convert_to_wtf(parakeet_data)[source]
Convert Parakeet JSON data to WTF format.
- convert_from_wtf(wtf_doc)[source]
Convert WTF document to Parakeet JSON format.
- Parameters:
wtf_doc (
WTFDocument) – WTF document- Return type:
- Returns:
Parakeet JSON data structure
Cross-Provider Testing
Consistency Testing
CrossProviderConsistencyTester
- class wtf_transcript_converter.cross_provider.consistency.CrossProviderConsistencyTester[source]
Test consistency across multiple transcription providers.
- __init__()[source]
- test_consistency_with_sample_data(sample_data)[source]
Test consistency across providers using sample JSON data.
- analyze_consistency(results)[source]
Analyze consistency across provider results.
Performance Benchmarking
PerformanceBenchmark
Quality Comparison
QualityComparator
Utilities
Confidence Utils
Confidence score utility functions for WTF transcript converter.
This module provides utilities for confidence score normalization and quality metrics.
Language Utils
Language utility functions for WTF transcript converter.
This module provides utilities for language code validation and normalization.
Time Utils
Time utility functions for WTF transcript converter.
This module provides utilities for timestamp conversion and validation.
- wtf_transcript_converter.utils.time_utils.convert_timestamp(timestamp)[source]
Convert various timestamp formats to floating-point seconds.
Command Line Interface
Main CLI
Command-line interface for vCon WTF.
This module provides the main CLI entry point for converting transcript formats and managing WTF documents.
Cross-Provider CLI
Cross-provider testing CLI commands.
This module provides CLI commands for testing consistency, performance, and quality across multiple transcription providers.
Exceptions
Custom exceptions for the WTF Transcript Converter library.
- exception wtf_transcript_converter.exceptions.ConversionError(message, provider=None, original_error=None, context=None)[source]
Bases:
ExceptionRaised when a conversion operation fails.
- message
Error message describing what went wrong
- provider
Name of the provider that caused the error
- original_error
The original exception that caused this error
- context
Additional context information about the error
- Parameters:
- exception wtf_transcript_converter.exceptions.ValidationError(message, field=None, value=None, errors=None)[source]
Bases:
ExceptionRaised when validation of WTF data fails.
- message
Error message describing the validation failure
- field
The field that failed validation
- value
The value that failed validation
- errors
List of specific validation errors
- exception wtf_transcript_converter.exceptions.ProviderError(message, provider, operation=None, status_code=None, response_data=None)[source]
Bases:
ExceptionRaised when a provider-specific operation fails.
- message
Error message describing the provider error
- provider
Name of the provider that caused the error
- operation
The operation that failed
- status_code
HTTP status code if applicable
- response_data
Response data from the provider if applicable
- Parameters:
- exception wtf_transcript_converter.exceptions.ConfigurationError(message, setting=None, value=None)[source]
Bases:
ExceptionRaised when there’s a configuration issue.
- message
Error message describing the configuration issue
- setting
The configuration setting that caused the error
- value
The invalid value
- exception wtf_transcript_converter.exceptions.AudioProcessingError(message, file_path=None, format=None, original_error=None)[source]
Bases:
ExceptionRaised when audio processing fails.
- message
Error message describing the audio processing failure
- file_path
Path to the audio file that caused the error
- format
Audio format that caused the error
- original_error
The original exception that caused this error
- Parameters:
ConversionError
- exception wtf_transcript_converter.exceptions.ConversionError(message, provider=None, original_error=None, context=None)[source]
Raised when a conversion operation fails.
- message
Error message describing what went wrong
- provider
Name of the provider that caused the error
- original_error
The original exception that caused this error
- context
Additional context information about the error
- Parameters:
ValidationError
- exception wtf_transcript_converter.exceptions.ValidationError(message, field=None, value=None, errors=None)[source]
Raised when validation of WTF data fails.
- message
Error message describing the validation failure
- field
The field that failed validation
- value
The value that failed validation
- errors
List of specific validation errors
ProviderError
- exception wtf_transcript_converter.exceptions.ProviderError(message, provider, operation=None, status_code=None, response_data=None)[source]
Raised when a provider-specific operation fails.
- message
Error message describing the provider error
- provider
Name of the provider that caused the error
- operation
The operation that failed
- status_code
HTTP status code if applicable
- response_data
Response data from the provider if applicable
- Parameters: