diff --git a/.fern/metadata.json b/.fern/metadata.json index 7452a11..a5a4ca5 100644 --- a/.fern/metadata.json +++ b/.fern/metadata.json @@ -13,5 +13,5 @@ }, "exclude_types_from_init_exports": true }, - "originGitCommit": "f168d571c2aee1449f24daa2e314b45862fb093f" + "originGitCommit": "49d478a59be2201df42d81f839acd1ff3fa3aa59" } \ No newline at end of file diff --git a/.fern/replay.lock b/.fern/replay.lock index a5f87d6..27d2226 100644 --- a/.fern/replay.lock +++ b/.fern/replay.lock @@ -12,14 +12,20 @@ generations: cli_version: unknown generator_versions: fernapi/fern-python-sdk: 4.37.0 -current_generation: 48efb3f0323e159baa685ae14818f33523522779 + - commit_sha: ded92fee3f96c394d5f4f8a106c4dfd21cce6105 + tree_hash: bd21681c8dcf2f9cbbf2ef3f79cfa1bd2371b636 + timestamp: 2026-07-21T06:48:53.381Z + cli_version: unknown + generator_versions: + fernapi/fern-python-sdk: 4.37.0 +current_generation: ded92fee3f96c394d5f4f8a106c4dfd21cce6105 patches: - id: patch-13d8e068 content_hash: sha256:97d879ab169016b9abaf1866427a8ebc45af608f69e063a07e5126c9613c329b original_commit: 13d8e0683ffa08bcfc9a381eb9604adf5abdbe0b original_message: "chore: ignore local venv and planning docs" original_author: plutoless - base_generation: 48efb3f0323e159baa685ae14818f33523522779 + base_generation: ded92fee3f96c394d5f4f8a106c4dfd21cce6105 files: - .gitignore patch_content: | @@ -42,3 +48,4 @@ patches: poetry.toml .venv/ docs/superpowers/ + user_owned: true diff --git a/src/agora_agent/types/rime_tts.py b/src/agora_agent/types/rime_tts.py index 85d4e03..daff85d 100644 --- a/src/agora_agent/types/rime_tts.py +++ b/src/agora_agent/types/rime_tts.py @@ -5,6 +5,7 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2 from ..core.unchecked_base_model import UncheckedBaseModel +from .rime_tts_credential_mode import RimeTtsCredentialMode from .rime_tts_params import RimeTtsParams @@ -13,6 +14,11 @@ class RimeTts(UncheckedBaseModel): Rime Text-to-Speech configuration (Beta). """ + credential_mode: typing.Optional[RimeTtsCredentialMode] = pydantic.Field(default=None) + """ + Credential mode. When provided, must be "managed" (Agora managed mode) or "byok" (BYOK mode). + """ + params: RimeTtsParams skip_patterns: typing.Optional[typing.List[int]] = pydantic.Field(default=None) """ diff --git a/src/agora_agent/types/rime_tts_credential_mode.py b/src/agora_agent/types/rime_tts_credential_mode.py new file mode 100644 index 0000000..60c7a12 --- /dev/null +++ b/src/agora_agent/types/rime_tts_credential_mode.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +RimeTtsCredentialMode = typing.Union[typing.Literal["managed", "byok"], typing.Any] diff --git a/src/agora_agent/types/rime_tts_params.py b/src/agora_agent/types/rime_tts_params.py index ade1c5b..75a8d2b 100644 --- a/src/agora_agent/types/rime_tts_params.py +++ b/src/agora_agent/types/rime_tts_params.py @@ -14,12 +14,12 @@ class RimeTtsParams(UncheckedBaseModel): Rime TTS configuration parameters. """ - api_key: str = pydantic.Field() + api_key: typing.Optional[str] = pydantic.Field(default=None) """ Rime API key """ - speaker: str = pydantic.Field() + speaker: typing.Optional[str] = pydantic.Field(default=None) """ Rime speaker ID """ diff --git a/src/agora_agent/types/tts.py b/src/agora_agent/types/tts.py index 63f9af3..cc0bdc5 100644 --- a/src/agora_agent/types/tts.py +++ b/src/agora_agent/types/tts.py @@ -23,6 +23,7 @@ from .minimax_tts_params import MinimaxTtsParams from .murf_tts_params import MurfTtsParams from .open_ai_tts_params import OpenAiTtsParams +from .rime_tts_credential_mode import RimeTtsCredentialMode from .rime_tts_params import RimeTtsParams from .sarvam_tts_params import SarvamTtsParams from .stepfun_tts_params import StepfunTtsParams @@ -167,6 +168,7 @@ class Config: class Tts_Rime(UncheckedBaseModel): vendor: typing.Literal["rime"] = "rime" + credential_mode: typing.Optional[RimeTtsCredentialMode] = None params: RimeTtsParams skip_patterns: typing.Optional[typing.List[int]] = None