Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions sdk/batch/speechmatics/batch/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
from ._models import NotificationContents
from ._models import NotificationMethod
from ._models import OperatingPoint
from ._models import OutputConfig
from ._models import SentimentAnalysisConfig
from ._models import SummarizationConfig
from ._models import TopicDetectionConfig
Expand Down Expand Up @@ -61,5 +62,6 @@
"Transcript",
"TranscriptionConfig",
"TranslationConfig",
"OutputConfig",
"TransportError",
]
16 changes: 16 additions & 0 deletions sdk/batch/speechmatics/batch/_models.py
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,18 @@ def to_dict(self) -> dict[str, Any]:
return {k: v for k, v in asdict(self).items() if v is not None}


@dataclass
class OutputConfig:
"""Configuration for output formatting."""

generate_lattice: Optional[bool] = None
srt_overrides: Optional[dict[str, Any]] = None

def to_dict(self) -> dict[str, Any]:
"""Convert to dictionary, excluding None values."""
return {k: v for k, v in asdict(self).items() if v is not None}


@dataclass
class AlignmentConfig:
"""Configuration for alignment jobs."""
Expand Down Expand Up @@ -277,6 +289,7 @@ class JobConfig:
topic_detection_config: Topic detection settings.
auto_chapters_config: Auto chapters settings.
audio_events_config: Audio events detection settings.
output_config: Output configuration.
"""

type: JobType
Expand All @@ -292,6 +305,7 @@ class JobConfig:
topic_detection_config: Optional[TopicDetectionConfig] = None
auto_chapters_config: Optional[AutoChaptersConfig] = None
audio_events_config: Optional[AudioEventsConfig] = None
output_config: Optional[OutputConfig] = None

def to_dict(self) -> dict[str, Any]:
"""Convert job config to dictionary for API submission."""
Expand Down Expand Up @@ -321,6 +335,8 @@ def to_dict(self) -> dict[str, Any]:
config["auto_chapters_config"] = self.auto_chapters_config.to_dict()
if self.audio_events_config:
config["audio_events_config"] = self.audio_events_config.to_dict()
if self.output_config:
config["output_config"] = self.output_config.to_dict()

return config

Expand Down