cartesia 2.0.0b2__py3-none-any.whl → 2.0.0b7__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. cartesia/__init__.py +8 -4
  2. cartesia/base_client.py +0 -4
  3. cartesia/core/__init__.py +3 -0
  4. cartesia/core/client_wrapper.py +2 -2
  5. cartesia/core/pagination.py +88 -0
  6. cartesia/infill/client.py +4 -4
  7. cartesia/tts/_async_websocket.py +48 -1
  8. cartesia/tts/_websocket.py +44 -3
  9. cartesia/tts/client.py +4 -4
  10. cartesia/tts/requests/generation_request.py +5 -0
  11. cartesia/tts/requests/web_socket_chunk_response.py +3 -0
  12. cartesia/tts/requests/web_socket_response.py +2 -1
  13. cartesia/tts/requests/web_socket_tts_request.py +1 -0
  14. cartesia/tts/types/emotion.py +5 -0
  15. cartesia/tts/types/generation_request.py +5 -0
  16. cartesia/tts/types/web_socket_chunk_response.py +3 -1
  17. cartesia/tts/types/web_socket_response.py +2 -1
  18. cartesia/tts/types/web_socket_tts_output.py +2 -0
  19. cartesia/tts/types/web_socket_tts_request.py +1 -0
  20. cartesia/tts/utils/constants.py +2 -2
  21. cartesia/voice_changer/requests/streaming_response.py +2 -0
  22. cartesia/voice_changer/types/streaming_response.py +2 -0
  23. cartesia/voices/__init__.py +8 -4
  24. cartesia/voices/client.py +285 -169
  25. cartesia/voices/requests/__init__.py +2 -0
  26. cartesia/voices/requests/create_voice_request.py +0 -2
  27. cartesia/voices/requests/get_voices_response.py +24 -0
  28. cartesia/voices/requests/localize_dialect.py +1 -3
  29. cartesia/voices/requests/voice.py +13 -9
  30. cartesia/voices/types/__init__.py +6 -4
  31. cartesia/voices/types/create_voice_request.py +0 -2
  32. cartesia/voices/types/gender_presentation.py +5 -0
  33. cartesia/voices/types/get_voices_response.py +34 -0
  34. cartesia/voices/types/localize_dialect.py +1 -3
  35. cartesia/voices/types/voice.py +13 -9
  36. cartesia/voices/types/voice_expand_options.py +5 -0
  37. {cartesia-2.0.0b2.dist-info → cartesia-2.0.0b7.dist-info}/METADATA +85 -14
  38. {cartesia-2.0.0b2.dist-info → cartesia-2.0.0b7.dist-info}/RECORD +39 -37
  39. cartesia/datasets/client.py +0 -392
  40. cartesia/voices/types/localize_portuguese_dialect.py +0 -5
  41. cartesia/voices/types/localize_spanish_dialect.py +0 -5
  42. {cartesia-2.0.0b2.dist-info → cartesia-2.0.0b7.dist-info}/WHEEL +0 -0
@@ -3,6 +3,7 @@
3
3
  from .create_voice_request import CreateVoiceRequestParams
4
4
  from .embedding_response import EmbeddingResponseParams
5
5
  from .embedding_specifier import EmbeddingSpecifierParams
6
+ from .get_voices_response import GetVoicesResponseParams
6
7
  from .id_specifier import IdSpecifierParams
7
8
  from .localize_dialect import LocalizeDialectParams
8
9
  from .localize_voice_request import LocalizeVoiceRequestParams
@@ -16,6 +17,7 @@ __all__ = [
16
17
  "CreateVoiceRequestParams",
17
18
  "EmbeddingResponseParams",
18
19
  "EmbeddingSpecifierParams",
20
+ "GetVoicesResponseParams",
19
21
  "IdSpecifierParams",
20
22
  "LocalizeDialectParams",
21
23
  "LocalizeVoiceRequestParams",
@@ -4,7 +4,6 @@ import typing_extensions
4
4
  from ...embedding.types.embedding import Embedding
5
5
  import typing_extensions
6
6
  from ...tts.types.supported_language import SupportedLanguage
7
- from ..types.base_voice_id import BaseVoiceId
8
7
 
9
8
 
10
9
  class CreateVoiceRequestParams(typing_extensions.TypedDict):
@@ -20,4 +19,3 @@ class CreateVoiceRequestParams(typing_extensions.TypedDict):
20
19
 
21
20
  embedding: Embedding
22
21
  language: typing_extensions.NotRequired[SupportedLanguage]
23
- base_voice_id: typing_extensions.NotRequired[BaseVoiceId]
@@ -0,0 +1,24 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing_extensions
4
+ import typing
5
+ from .voice import VoiceParams
6
+ import typing_extensions
7
+ from ..types.voice_id import VoiceId
8
+
9
+
10
+ class GetVoicesResponseParams(typing_extensions.TypedDict):
11
+ data: typing.Sequence[VoiceParams]
12
+ """
13
+ The paginated list of Voices.
14
+ """
15
+
16
+ has_more: bool
17
+ """
18
+ Whether there are more Voices to fetch (using `starting_after=id`, where id is the ID of the last Voice in the current response).
19
+ """
20
+
21
+ next_page: typing_extensions.NotRequired[VoiceId]
22
+ """
23
+ (Deprecated - use the id of the last Voice in the current response instead.) An ID that can be passed as `starting_after` to get the next page of Voices.
24
+ """
@@ -2,7 +2,5 @@
2
2
 
3
3
  import typing
4
4
  from ..types.localize_english_dialect import LocalizeEnglishDialect
5
- from ..types.localize_spanish_dialect import LocalizeSpanishDialect
6
- from ..types.localize_portuguese_dialect import LocalizePortugueseDialect
7
5
 
8
- LocalizeDialectParams = typing.Union[LocalizeEnglishDialect, LocalizeSpanishDialect, LocalizePortugueseDialect]
6
+ LocalizeDialectParams = typing.Union[LocalizeEnglishDialect]
@@ -2,22 +2,17 @@
2
2
 
3
3
  import typing_extensions
4
4
  from ..types.voice_id import VoiceId
5
- import typing_extensions
6
5
  import datetime as dt
6
+ import typing_extensions
7
7
  from ...embedding.types.embedding import Embedding
8
8
  from ...tts.types.supported_language import SupportedLanguage
9
9
 
10
10
 
11
11
  class VoiceParams(typing_extensions.TypedDict):
12
12
  id: VoiceId
13
- user_id: typing_extensions.NotRequired[str]
14
- """
15
- The ID of the user who owns the voice.
13
+ is_owner: bool
16
14
  """
17
-
18
- is_public: bool
19
- """
20
- Whether the voice is publicly accessible.
15
+ Whether the current user is the owner of the voice.
21
16
  """
22
17
 
23
18
  name: str
@@ -35,5 +30,14 @@ class VoiceParams(typing_extensions.TypedDict):
35
30
  The date and time the voice was created.
36
31
  """
37
32
 
38
- embedding: Embedding
33
+ embedding: typing_extensions.NotRequired[Embedding]
34
+ """
35
+ The vector embedding of the voice. Only included when `expand` includes `embedding`.
36
+ """
37
+
38
+ is_starred: typing_extensions.NotRequired[bool]
39
+ """
40
+ Whether the current user has starred the voice. Only included when `expand` includes `is_starred`.
41
+ """
42
+
39
43
  language: SupportedLanguage
@@ -6,17 +6,18 @@ from .create_voice_request import CreateVoiceRequest
6
6
  from .embedding_response import EmbeddingResponse
7
7
  from .embedding_specifier import EmbeddingSpecifier
8
8
  from .gender import Gender
9
+ from .gender_presentation import GenderPresentation
10
+ from .get_voices_response import GetVoicesResponse
9
11
  from .id_specifier import IdSpecifier
10
12
  from .localize_dialect import LocalizeDialect
11
13
  from .localize_english_dialect import LocalizeEnglishDialect
12
- from .localize_portuguese_dialect import LocalizePortugueseDialect
13
- from .localize_spanish_dialect import LocalizeSpanishDialect
14
14
  from .localize_target_language import LocalizeTargetLanguage
15
15
  from .localize_voice_request import LocalizeVoiceRequest
16
16
  from .mix_voice_specifier import MixVoiceSpecifier
17
17
  from .mix_voices_request import MixVoicesRequest
18
18
  from .update_voice_request import UpdateVoiceRequest
19
19
  from .voice import Voice
20
+ from .voice_expand_options import VoiceExpandOptions
20
21
  from .voice_id import VoiceId
21
22
  from .voice_metadata import VoiceMetadata
22
23
  from .weight import Weight
@@ -28,17 +29,18 @@ __all__ = [
28
29
  "EmbeddingResponse",
29
30
  "EmbeddingSpecifier",
30
31
  "Gender",
32
+ "GenderPresentation",
33
+ "GetVoicesResponse",
31
34
  "IdSpecifier",
32
35
  "LocalizeDialect",
33
36
  "LocalizeEnglishDialect",
34
- "LocalizePortugueseDialect",
35
- "LocalizeSpanishDialect",
36
37
  "LocalizeTargetLanguage",
37
38
  "LocalizeVoiceRequest",
38
39
  "MixVoiceSpecifier",
39
40
  "MixVoicesRequest",
40
41
  "UpdateVoiceRequest",
41
42
  "Voice",
43
+ "VoiceExpandOptions",
42
44
  "VoiceId",
43
45
  "VoiceMetadata",
44
46
  "Weight",
@@ -5,7 +5,6 @@ import pydantic
5
5
  from ...embedding.types.embedding import Embedding
6
6
  import typing
7
7
  from ...tts.types.supported_language import SupportedLanguage
8
- from .base_voice_id import BaseVoiceId
9
8
  from ...core.pydantic_utilities import IS_PYDANTIC_V2
10
9
 
11
10
 
@@ -22,7 +21,6 @@ class CreateVoiceRequest(UniversalBaseModel):
22
21
 
23
22
  embedding: Embedding
24
23
  language: typing.Optional[SupportedLanguage] = None
25
- base_voice_id: typing.Optional[BaseVoiceId] = None
26
24
 
27
25
  if IS_PYDANTIC_V2:
28
26
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ GenderPresentation = typing.Union[typing.Literal["masculine", "feminine", "gender_neutral"], typing.Any]
@@ -0,0 +1,34 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from ...core.pydantic_utilities import UniversalBaseModel
4
+ import typing
5
+ from .voice import Voice
6
+ import pydantic
7
+ from .voice_id import VoiceId
8
+ from ...core.pydantic_utilities import IS_PYDANTIC_V2
9
+
10
+
11
+ class GetVoicesResponse(UniversalBaseModel):
12
+ data: typing.List[Voice] = pydantic.Field()
13
+ """
14
+ The paginated list of Voices.
15
+ """
16
+
17
+ has_more: bool = pydantic.Field()
18
+ """
19
+ Whether there are more Voices to fetch (using `starting_after=id`, where id is the ID of the last Voice in the current response).
20
+ """
21
+
22
+ next_page: typing.Optional[VoiceId] = pydantic.Field(default=None)
23
+ """
24
+ (Deprecated - use the id of the last Voice in the current response instead.) An ID that can be passed as `starting_after` to get the next page of Voices.
25
+ """
26
+
27
+ if IS_PYDANTIC_V2:
28
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
29
+ else:
30
+
31
+ class Config:
32
+ frozen = True
33
+ smart_union = True
34
+ extra = pydantic.Extra.allow
@@ -2,7 +2,5 @@
2
2
 
3
3
  import typing
4
4
  from .localize_english_dialect import LocalizeEnglishDialect
5
- from .localize_spanish_dialect import LocalizeSpanishDialect
6
- from .localize_portuguese_dialect import LocalizePortugueseDialect
7
5
 
8
- LocalizeDialect = typing.Union[LocalizeEnglishDialect, LocalizeSpanishDialect, LocalizePortugueseDialect]
6
+ LocalizeDialect = typing.Union[LocalizeEnglishDialect]
@@ -2,9 +2,9 @@
2
2
 
3
3
  from ...core.pydantic_utilities import UniversalBaseModel
4
4
  from .voice_id import VoiceId
5
- import typing
6
5
  import pydantic
7
6
  import datetime as dt
7
+ import typing
8
8
  from ...embedding.types.embedding import Embedding
9
9
  from ...tts.types.supported_language import SupportedLanguage
10
10
  from ...core.pydantic_utilities import IS_PYDANTIC_V2
@@ -12,14 +12,9 @@ from ...core.pydantic_utilities import IS_PYDANTIC_V2
12
12
 
13
13
  class Voice(UniversalBaseModel):
14
14
  id: VoiceId
15
- user_id: typing.Optional[str] = pydantic.Field(default=None)
16
- """
17
- The ID of the user who owns the voice.
15
+ is_owner: bool = pydantic.Field()
18
16
  """
19
-
20
- is_public: bool = pydantic.Field()
21
- """
22
- Whether the voice is publicly accessible.
17
+ Whether the current user is the owner of the voice.
23
18
  """
24
19
 
25
20
  name: str = pydantic.Field()
@@ -37,7 +32,16 @@ class Voice(UniversalBaseModel):
37
32
  The date and time the voice was created.
38
33
  """
39
34
 
40
- embedding: Embedding
35
+ embedding: typing.Optional[Embedding] = pydantic.Field(default=None)
36
+ """
37
+ The vector embedding of the voice. Only included when `expand` includes `embedding`.
38
+ """
39
+
40
+ is_starred: typing.Optional[bool] = pydantic.Field(default=None)
41
+ """
42
+ Whether the current user has starred the voice. Only included when `expand` includes `is_starred`.
43
+ """
44
+
41
45
  language: SupportedLanguage
42
46
 
43
47
  if IS_PYDANTIC_V2:
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ VoiceExpandOptions = typing.Union[typing.Literal["embedding", "is_starred"], typing.Any]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cartesia
3
- Version: 2.0.0b2
3
+ Version: 2.0.0b7
4
4
  Summary:
5
5
  Requires-Python: >=3.8,<4.0
6
6
  Classifier: Intended Audience :: Developers
@@ -70,7 +70,7 @@ print("The embedding for", voice.name, "is", voice.embedding)
70
70
  # Clone a voice using file data
71
71
  cloned_voice = client.voices.clone(
72
72
  clip=open("path/to/voice.wav", "rb"),
73
- name="Test cloned voice",
73
+ name="Test cloned voice",
74
74
  language="en",
75
75
  mode="similarity", # or "stability"
76
76
  enhance=False, # use enhance=True to clean and denoise the cloning audio
@@ -107,7 +107,7 @@ client = Cartesia(
107
107
  api_key=os.getenv("CARTESIA_API_KEY"),
108
108
  )
109
109
  client.tts.bytes(
110
- model_id="sonic-english",
110
+ model_id="sonic-2",
111
111
  transcript="Hello, world!",
112
112
  voice={
113
113
  "mode": "id",
@@ -143,7 +143,7 @@ client = AsyncCartesia(
143
143
 
144
144
  async def main() -> None:
145
145
  async for output in client.tts.bytes(
146
- model_id="sonic-english",
146
+ model_id="sonic-2",
147
147
  transcript="Hello, world!",
148
148
  voice={"id": "694f9389-aac1-45b6-b726-9d9369183238"},
149
149
  language="en",
@@ -188,7 +188,7 @@ def get_tts_chunks():
188
188
  api_key=os.getenv("CARTESIA_API_KEY"),
189
189
  )
190
190
  response = client.tts.sse(
191
- model_id="sonic",
191
+ model_id="sonic-2",
192
192
  transcript="Hello world!",
193
193
  voice={
194
194
  "id": "f9836c6e-a0bd-460e-9d3c-f7299fa60f94",
@@ -204,7 +204,7 @@ def get_tts_chunks():
204
204
  "sample_rate": 44100,
205
205
  },
206
206
  )
207
-
207
+
208
208
  audio_chunks = []
209
209
  for chunk in response:
210
210
  audio_chunks.append(chunk)
@@ -230,7 +230,7 @@ voice_id = "a0e99841-438c-4a64-b679-ae501e7d6091"
230
230
  transcript = "Hello! Welcome to Cartesia"
231
231
 
232
232
  # You can check out our models at https://docs.cartesia.ai/getting-started/available-models
233
- model_id = "sonic"
233
+ model_id = "sonic-2"
234
234
 
235
235
  p = pyaudio.PyAudio()
236
236
  rate = 22050
@@ -248,7 +248,7 @@ for output in ws.send(
248
248
  stream=True,
249
249
  output_format={
250
250
  "container": "raw",
251
- "encoding": "pcm_f32le",
251
+ "encoding": "pcm_f32le",
252
252
  "sample_rate": 22050
253
253
  },
254
254
  ):
@@ -267,6 +267,55 @@ p.terminate()
267
267
  ws.close() # Close the websocket connection
268
268
  ```
269
269
 
270
+ ## Requesting Timestamps
271
+
272
+ ```python
273
+ import asyncio
274
+ from cartesia import AsyncCartesia
275
+ import os
276
+
277
+ async def main():
278
+ client = AsyncCartesia(api_key=os.getenv("CARTESIA_API_KEY"))
279
+
280
+ # Connect to the websocket
281
+ ws = await client.tts.websocket()
282
+
283
+ # Generate speech with timestamps
284
+ output_generate = await ws.send(
285
+ model_id="sonic-2",
286
+ transcript="Hello! Welcome to Cartesia's text-to-speech.",
287
+ voice={"id": "f9836c6e-a0bd-460e-9d3c-f7299fa60f94"},
288
+ output_format={
289
+ "container": "raw",
290
+ "encoding": "pcm_f32le",
291
+ "sample_rate": 44100
292
+ },
293
+ add_timestamps=True, # Enable word-level timestamps
294
+ stream=True
295
+ )
296
+
297
+ # Process the streaming response with timestamps
298
+ all_words = []
299
+ all_starts = []
300
+ all_ends = []
301
+ audio_chunks = []
302
+
303
+ async for out in output_generate:
304
+ # Collect audio data
305
+ if out.audio is not None:
306
+ audio_chunks.append(out.audio)
307
+
308
+ # Process timestamp data
309
+ if out.word_timestamps is not None:
310
+ all_words.extend(out.word_timestamps.words) # List of words
311
+ all_starts.extend(out.word_timestamps.start) # Start time for each word (seconds)
312
+ all_ends.extend(out.word_timestamps.end) # End time for each word (seconds)
313
+
314
+ await ws.close()
315
+
316
+ asyncio.run(main())
317
+ ```
318
+
270
319
  ## Advanced
271
320
 
272
321
  ### Retries
@@ -328,11 +377,33 @@ client = Cartesia(
328
377
 
329
378
  ## Contributing
330
379
 
331
- While we value open-source contributions to this SDK, this library is generated programmatically.
332
- Additions made directly to this library would have to be moved over to our generation code,
333
- otherwise they would be overwritten upon the next generated release. Feel free to open a PR as
334
- a proof of concept, but know that we will not be able to merge it as-is. We suggest opening
335
- an issue first to discuss with us!
380
+ Note that most of this library is generated programmatically from
381
+ <https://github.com/cartesia-ai/docs> before making edits to a file, verify it's not autogenerated
382
+ by checking for this comment at the top of the file:
383
+
384
+ ```
385
+ # This file was auto-generated by Fern from our API Definition.
386
+ ```
387
+
388
+ ### Running tests
389
+
390
+ ```sh
391
+ uv pip install -r requirements.txt
392
+ uv run pytest -rP -vv tests/custom/test_client.py::test_get_voices
393
+ ```
394
+ ### Manually generating SDK code from docs
395
+
396
+ Assuming all your repos are cloned into your home directory:
397
+
398
+ ```sh
399
+ $ cd ~/docs
400
+ $ fern generate --group python-sdk --log-level debug --api version-2024-11-13 --preview
401
+ $ cd ~/cartesia-python
402
+ $ git pull ~/docs/fern/apis/version-2024-11-13/.preview/fern-python-sdk
403
+ $ git commit --amend -m "manually regenerate from docs" # optional
404
+ ```
405
+
406
+ ### Automatically generating new SDK releases
336
407
 
337
- On the other hand, contributions to the README are always very welcome!
408
+ From https://github.com/cartesia-ai/docs click `Actions` then `Release Python SDK`. (Requires permissions.)
338
409
 
@@ -1,26 +1,26 @@
1
- cartesia/__init__.py,sha256=M7AQ_2T6XVRQxhCUaFxWPwv2X1Ky8KY3wOPDLGlyIyo,7879
1
+ cartesia/__init__.py,sha256=r67mE_XxfYDeojBqnpfBgpAo1FnUESbX7Qm-7Vjes_Q,7965
2
2
  cartesia/api_status/__init__.py,sha256=_dHNLdknrBjxHtU2PvLumttJM-JTQhJQqhhAQkLqt_U,168
3
3
  cartesia/api_status/client.py,sha256=GJ9Dq8iCn3hn8vCIqc6k1fCGEhSz0T0kaPGcdFnbMDY,3146
4
4
  cartesia/api_status/requests/__init__.py,sha256=ilEMzEy1JEw484CuL92bX5lHGOznc62pjiDMgiZ0tKM,130
5
5
  cartesia/api_status/requests/api_info.py,sha256=AmB6RpquI2yUlTQBtOk8e0qtLmXHYLcGZKpXZahOwmc,172
6
6
  cartesia/api_status/types/__init__.py,sha256=6NUyGWiGK1Wl3mXlSMJN2ObKf2LK3vjX2MUP1uopfEQ,118
7
7
  cartesia/api_status/types/api_info.py,sha256=o1LwSxnoHpCR7huw9J-cF6LRlC_fiftDQLYUz8p-vTc,568
8
- cartesia/base_client.py,sha256=fnRxqROt8Eh2_Vx54RmBxLyFsJKQGEMmRlznTKi4Rho,6571
8
+ cartesia/base_client.py,sha256=EIfMrSkJgMCgzYWJ5GN2RxsWikxcH0kMmcb3WYqfQ_g,6321
9
9
  cartesia/client.py,sha256=sPAYQLt9W2E_2F17ooocvvJImuNyLrL8xUypgf6dZeI,6238
10
- cartesia/core/__init__.py,sha256=SQ85PF84B9MuKnBwHNHWemSGuy-g_515gFYNFhvEE0I,1438
10
+ cartesia/core/__init__.py,sha256=-t9txgeQZL_1FDw_08GEoj4ft1Cn9Dti6X0Drsadlr0,1519
11
11
  cartesia/core/api_error.py,sha256=RE8LELok2QCjABadECTvtDp7qejA1VmINCh6TbqPwSE,426
12
- cartesia/core/client_wrapper.py,sha256=C7OD0ek-tvB54i6q9IKucqfyxuc76gxRZknDjFPKrXY,1856
12
+ cartesia/core/client_wrapper.py,sha256=tTxN1WEjVJuMSKTZ4kVKQykuql_lcQuiUfDU89z-f0A,1856
13
13
  cartesia/core/datetime_utils.py,sha256=nBys2IsYrhPdszxGKCNRPSOCwa-5DWOHG95FB8G9PKo,1047
14
14
  cartesia/core/file.py,sha256=d4NNbX8XvXP32z8KpK2Xovv33nFfruIrpz0QWxlgpZk,2663
15
15
  cartesia/core/http_client.py,sha256=KL5RGa0y4n8nX0-07WRg4ZQUTq30sc-XJbWcP5vjBDg,19552
16
16
  cartesia/core/jsonable_encoder.py,sha256=qaF1gtgH-kQZb4kJskETwcCsOPUof-NnYVdszHkb-dM,3656
17
+ cartesia/core/pagination.py,sha256=ykffinbn7c3pXaXLrAlFbSdNbZmJJXoU7VSFIRCLAo0,3177
17
18
  cartesia/core/pydantic_utilities.py,sha256=UibVGGYmBDsV834x8CtckRDrTIL4lYJPMrcq9yvf7RM,11973
18
19
  cartesia/core/query_encoder.py,sha256=ekulqNd0j8TgD7ox-Qbz7liqX8-KP9blvT9DsRCenYM,2144
19
20
  cartesia/core/remove_none_from_dict.py,sha256=EU9SGgYidWq7SexuJbNs4-PZ-5Bl3Vppd864mS6vQZw,342
20
21
  cartesia/core/request_options.py,sha256=h0QUNCFVdCW_7GclVySCAY2w4NhtXVBUCmHgmzaxpcg,1681
21
22
  cartesia/core/serialization.py,sha256=D9h_t-RQON3-CHWs1C4ESY9B-Yd5d-l5lnTLb_X896g,9601
22
23
  cartesia/datasets/__init__.py,sha256=m7uI_lBRsIh-YOIin7Q11cHSXD4FMUkq_J74CLMWuyY,640
23
- cartesia/datasets/client.py,sha256=6cxSvaRbq0YEyCfGH-_SrDop6dgiXMKoRWDuP0e8MkA,11672
24
24
  cartesia/datasets/requests/__init__.py,sha256=pxNlVfjSEPr1RfJKb07CXKIrg_EDa4_t8le2x6u9l1c,489
25
25
  cartesia/datasets/requests/create_dataset_request.py,sha256=RtISvq-eA8GG_0plEPTkJl8TzOVm93NQuHbJVGtkQeg,169
26
26
  cartesia/datasets/requests/dataset.py,sha256=Wxg5AEBh8h9t5N2ud96bsrPVgjH5orMAv1PXl1RGTDs,188
@@ -39,16 +39,16 @@ cartesia/embedding/types/__init__.py,sha256=aOrEOGuiO6dlSGu7pckqVMTYEMVAR5I7qqca
39
39
  cartesia/embedding/types/embedding.py,sha256=C1OJg8M4T1Apfcv4qx79ndftg0SgH4Lfqe_iU3UF-bA,1851
40
40
  cartesia/environment.py,sha256=Qnp91BGLic7hXmKsiYub2m3nPfvDWm59aB1wWta1J6A,160
41
41
  cartesia/infill/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
42
- cartesia/infill/client.py,sha256=RfOZzohJNDN0TxEywAHA-kjHUJwqXPaBzGVSj7wR0r0,12611
42
+ cartesia/infill/client.py,sha256=PWE5Ak-wsaBM_8g52oDl9PYx76PkW6f900mnxvZf4Bk,12571
43
43
  cartesia/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
44
44
  cartesia/tts/__init__.py,sha256=G0wcYlPrr7hmu5DQgCG7bDTQq36fpP3iBM5164Z0-Js,4701
45
- cartesia/tts/_async_websocket.py,sha256=gg9mrY6JpMiCZHUefGdRGy_N2nxNTfP_DJ4mN8xtDOU,15991
46
- cartesia/tts/_websocket.py,sha256=k_dZSqRMDXOhDgsY26FmYFZH0tRFB06uK1ibMy8DxPc,16513
47
- cartesia/tts/client.py,sha256=Xjk98e21QUMlJedg3V-tkXbq6H6fSfKFo3x6ZoEBiLE,14824
45
+ cartesia/tts/_async_websocket.py,sha256=mPykrS40FJee58T8NtGUnQ7AurQy04Qz6ICzjCnr7Fg,18383
46
+ cartesia/tts/_websocket.py,sha256=Gzd2GvTPUKn59u7quVHn53cGe44H_fCv1jr-opSHRZk,18689
47
+ cartesia/tts/client.py,sha256=KMhDaW0gG_uwkSq1EzoC-bCx1G0TLB4K4Gm57L4xDSs,14832
48
48
  cartesia/tts/requests/__init__.py,sha256=0rcfMLHNbUhkRI1xS09UE4p-WT1BCqrcblFtPxcATOI,3261
49
49
  cartesia/tts/requests/cancel_context_request.py,sha256=Wl8g-o5vwl9ENm-H1wsLx441FkIR_4Wt5UYtuWce2Yw,431
50
50
  cartesia/tts/requests/controls.py,sha256=xzUJlfgqhaJ1A-JD0LTpoHYk4iEpCuGpSD7qE4YYsRg,285
51
- cartesia/tts/requests/generation_request.py,sha256=JMSJ1upkcqaXxBH-nUAdEZqsJJvh95sCWxg_vt8vTjM,1839
51
+ cartesia/tts/requests/generation_request.py,sha256=D7eB1HEOzoGbviMavtK1hwsP0lTO7K-pEs3UQIAZpDs,1980
52
52
  cartesia/tts/requests/mp_3_output_format.py,sha256=PGDVzC1d7-Jce12rFxtF8G1pTHmlUdiGAhykFTABg0w,316
53
53
  cartesia/tts/requests/output_format.py,sha256=8TKu9AAeHCR5L4edzYch8FIYIldn4bM7ySrsCl8W_g8,842
54
54
  cartesia/tts/requests/phoneme_timestamps.py,sha256=ft81nmqElZAnvTBT27lY6YWfF18ZGsCx3Y1XHv9J7cM,267
@@ -60,27 +60,27 @@ cartesia/tts/requests/tts_request_id_specifier.py,sha256=-0ClfyJnnaH0uAcF5r84s3c
60
60
  cartesia/tts/requests/tts_request_voice_specifier.py,sha256=eGzL4aVGq4gKPxeglsV7-wuhxg8x33Qth3uFTTytgeI,337
61
61
  cartesia/tts/requests/wav_output_format.py,sha256=qiipmT5hWsa8J-fwW1EH_rnUAX_zOUpGJUNzuLc65r4,181
62
62
  cartesia/tts/requests/web_socket_base_response.py,sha256=zCjHw-FaNJMOcHiAb2NQWrBBfrzU5rc95vqDp7y9RmA,315
63
- cartesia/tts/requests/web_socket_chunk_response.py,sha256=4fVPJH-ZZb8lJKwqyYGx5wyeYWzfuThGxMRXC6ku4bA,233
63
+ cartesia/tts/requests/web_socket_chunk_response.py,sha256=uuwLYBhxDCUfg21oFmrY5BXnRqiwpLlW-yY_4dyN9SQ,348
64
64
  cartesia/tts/requests/web_socket_done_response.py,sha256=YLHrT6NkmDntBSxF-JGlXSavdlOWo_cb9tGKCVivGH4,206
65
65
  cartesia/tts/requests/web_socket_error_response.py,sha256=ek2O5Whlzn5Ma40NhYviVl3aJBVeCA8BBvbJPUYxEiQ,213
66
66
  cartesia/tts/requests/web_socket_flush_done_response.py,sha256=gP3fSWhEFVzdzBweUmVKo7JvdREW3TM9R6o9-u6V6FQ,282
67
67
  cartesia/tts/requests/web_socket_phoneme_timestamps_response.py,sha256=nDRK7wo4s6R7ayJrw-LJX9WCaW4mti0HAV4X5j7cxjI,370
68
68
  cartesia/tts/requests/web_socket_raw_output_format.py,sha256=9BJHE5l5bzmYCYuUoACRhbZdJBijnSiwkbR8K4EzPDY,302
69
69
  cartesia/tts/requests/web_socket_request.py,sha256=5xfE0NgkBEZdus_vC-3RVQkuqhNmXHxLMX4DW3ezcKc,290
70
- cartesia/tts/requests/web_socket_response.py,sha256=kS46YN94ilUn4qjpt1TpauZApe0N8PpAefT87jFiusY,2079
70
+ cartesia/tts/requests/web_socket_response.py,sha256=WqZ6RgO4suG78wiVSIsOWwyXBioV1QiEiiPCP_T7HHw,2132
71
71
  cartesia/tts/requests/web_socket_stream_options.py,sha256=VIvblFw9hGZvDzFpOnC11G0NvrFSVt-1-0sY5rpcZPI,232
72
72
  cartesia/tts/requests/web_socket_timestamps_response.py,sha256=MK3zN2Q_PVWJtX5DidNB0uXoF2o33rv6qCYPVaourxY,351
73
73
  cartesia/tts/requests/web_socket_tts_output.py,sha256=pX2uf0XVdziFhXCydwLlVOWb-LvBiuq-cBI6R1INiMg,760
74
- cartesia/tts/requests/web_socket_tts_request.py,sha256=UXir2k0GpVQNCYKZ0YZMrl_LullEKCsM0EmyFbl5oDw,1036
74
+ cartesia/tts/requests/web_socket_tts_request.py,sha256=jv8EYSxsjb063uzKjybRRNusmNtfzt516-r2urfG-vU,1101
75
75
  cartesia/tts/requests/word_timestamps.py,sha256=WMfBJtETi6wTpES0pYZCFfFRfEbzWE-RtosDJ5seUWg,261
76
76
  cartesia/tts/socket_client.py,sha256=zTPayHbgy-yQQ50AE1HXN4GMyanisZcLXf7Ds1paYks,11621
77
77
  cartesia/tts/types/__init__.py,sha256=yV_-DY9EPNAFEfuIk3wgRLcc4Ta5igv0T5g-IIQ53v0,3251
78
78
  cartesia/tts/types/cancel_context_request.py,sha256=zInhk3qRZsSc0F1aYJ-Q5BHJsosTrb22IJWhzue-eKE,856
79
79
  cartesia/tts/types/context_id.py,sha256=UCEtq5xFGOeBCECcY6Y-gYVe_Peg1hFhH9YYOkpApQg,81
80
80
  cartesia/tts/types/controls.py,sha256=H4CSu79mM1Ld4NZx_5uXw3EwRzTEMQRxKBRvFpcFb8Y,644
81
- cartesia/tts/types/emotion.py,sha256=Hw1znosnRFyPRR0Adtru0GmJ-EGWHXDF_XtfQ3QI96Y,665
81
+ cartesia/tts/types/emotion.py,sha256=zocyDcHTiFFnNRgo2YLMi70iGyffa080B4mkg9lcqVc,764
82
82
  cartesia/tts/types/flush_id.py,sha256=HCIKo9o8d7YWKtaSNU3TEvfUVBju93ckGQy01Z9wLcE,79
83
- cartesia/tts/types/generation_request.py,sha256=jRqVtEdIZ0Nt8w3RUm2BloF_7DJNqbDtQdvy7WkKVxk,2318
83
+ cartesia/tts/types/generation_request.py,sha256=Ig14IIulKgsHtIoRmfrov-U0jpYWQqOjCAUt5Fk20z4,2476
84
84
  cartesia/tts/types/mp_3_output_format.py,sha256=0WGblkuDUL7pZO1aRuQ_mU2Z5gN9xIabRfRKkjtzms8,731
85
85
  cartesia/tts/types/natural_specifier.py,sha256=K526P1RRuBGy80hyd_tX8tohPrE8DR9EgTCxS5wce0o,188
86
86
  cartesia/tts/types/numerical_specifier.py,sha256=tJpIskWO545luCKMFM9JlVc7VVhBhSvqL1qurhzL9cI,92
@@ -96,65 +96,67 @@ cartesia/tts/types/tts_request_id_specifier.py,sha256=ktGdkkTRQ9scA-lt8qJ2jn_E5W
96
96
  cartesia/tts/types/tts_request_voice_specifier.py,sha256=p-3UQ62uFL1SgbX73Ex1D_V73Ef0wmT1ApOt1iLZmwE,307
97
97
  cartesia/tts/types/wav_output_format.py,sha256=OTAgVn_gBMk252XO12kiNI9lKrbw3n38aBAiqlG5mdU,531
98
98
  cartesia/tts/types/web_socket_base_response.py,sha256=MWoTt1rGRqUQ8BOad1Zk2SA-i0E8a3JwPLSiehIbFj4,672
99
- cartesia/tts/types/web_socket_chunk_response.py,sha256=VOPXAlyGFdnfC69KxqDWDo1PPMydvQKmAypoWfbW8_s,593
99
+ cartesia/tts/types/web_socket_chunk_response.py,sha256=dRyk06cuqpV88kSNb4X1MPEsi9v_YvoQ0AbdJDBsykI,669
100
100
  cartesia/tts/types/web_socket_done_response.py,sha256=zZ6V-_pKNifdyuuRHGlZe6Zbc-ZRk-uHk5zgHkZcBEw,556
101
101
  cartesia/tts/types/web_socket_error_response.py,sha256=Jm26GnK0axyLQI3-JLHC0buYVIU8gKWxLAJlzo-cJFQ,573
102
102
  cartesia/tts/types/web_socket_flush_done_response.py,sha256=JLiVPDftr1arl_Kvj6038yj0mnjq6x0ooihsbdXajfw,635
103
103
  cartesia/tts/types/web_socket_phoneme_timestamps_response.py,sha256=R1-Z_W3XF7L7rrPwEOK_EfXHT4FWRpSAX3g71WebM90,686
104
104
  cartesia/tts/types/web_socket_raw_output_format.py,sha256=9PiOVmPDfT32IDIsmU7UY_rTLOShMMEw1pNv2yZ9Kyg,685
105
105
  cartesia/tts/types/web_socket_request.py,sha256=_xoAShkCCNTVAWKCvHw5k0Wisq60y4fOWYjG7SA8edM,260
106
- cartesia/tts/types/web_socket_response.py,sha256=fUQbJ6yFzZbzUZPuQWgkFdzP8-FMiKTcya-DIPWjimY,3777
106
+ cartesia/tts/types/web_socket_response.py,sha256=mHDECZ4K84QmN2s0IWuBsXBt83Yq7QxHnolwszIyoYs,3823
107
107
  cartesia/tts/types/web_socket_stream_options.py,sha256=MhDSxBFqMuQeWjoyPqXVnTEzLjF8g6aojeigb5dQUgU,596
108
108
  cartesia/tts/types/web_socket_timestamps_response.py,sha256=kuWXI82ncF1QapnaHEjwrL84qWob7ByQU-yh1e0IEmk,667
109
- cartesia/tts/types/web_socket_tts_output.py,sha256=qxzgWt41821tQaIyFqOgH0pb_51678zMuY-8LZYxRdY,863
110
- cartesia/tts/types/web_socket_tts_request.py,sha256=xTKk-WrLglRHEUwIbbuLfm9hTcS8ww5Th9HBSAEsFDI,1371
109
+ cartesia/tts/types/web_socket_tts_output.py,sha256=uvkv0smTBhdm18Rl17C0Ml4Inh79YBHNzAcKnZBs14Y,979
110
+ cartesia/tts/types/web_socket_tts_request.py,sha256=4qp-mPmVZOMlHAr7f8ABMWYS3cy5OWPjxDNeWayU0aE,1429
111
111
  cartesia/tts/types/word_timestamps.py,sha256=XZ2Q0prdb3F9c3AiOKXu4s3A3jBxE-qIt1npHOf16R0,631
112
- cartesia/tts/utils/constants.py,sha256=khGNVpiQVDmv1oZU7pKTd9C1AHjiaM8zQ2He9d5zI_c,435
112
+ cartesia/tts/utils/constants.py,sha256=1CHa5flJf8--L_eYyOyOiWJNZ-Q81ufHZxDbJs8xYSk,418
113
113
  cartesia/tts/utils/tts.py,sha256=u7PgPxlJs6fcQTfr-jqAvBCAaK3JWLhF5QF4s-PwoMo,2093
114
114
  cartesia/tts/utils/types.py,sha256=DtsiRwrYypXScLu71gNyprUiELuR1l_-ikVaj47gpg4,2047
115
115
  cartesia/version.py,sha256=xk5z2FYkgnvzyjqzmRg67rYl8fnCeHEjPpVmD08bjyE,75
116
116
  cartesia/voice_changer/__init__.py,sha256=UKA8CSAwUb41OL-dcWWUhIsKLLsyY_NQtrklPAVWf9E,685
117
117
  cartesia/voice_changer/client.py,sha256=vvyEbjwBhC-iS09nkmITMl81lNfrVxef3neUADyv-xc,13517
118
118
  cartesia/voice_changer/requests/__init__.py,sha256=MRwSUqio3mg_tvfcpAS0wIZ69HvJsc2kYJ0tUBaJ53U,390
119
- cartesia/voice_changer/requests/streaming_response.py,sha256=lbo7CJeuh0f5hXT4lKG_sDUZDLJWaLqxcwCuSf1IbMQ,982
119
+ cartesia/voice_changer/requests/streaming_response.py,sha256=cV6L9mMY0w2JpJ0xKoFw2OSiN30xI9W2HLmoU1FE6i0,1077
120
120
  cartesia/voice_changer/types/__init__.py,sha256=qAiHsdRpnFeS0lBkYp_NRrhSJiRXCg5-uFibqDWzYVU,430
121
121
  cartesia/voice_changer/types/output_format_container.py,sha256=RqLDELdgeOjYqNTJX1Le62qjiFiJGxf0cYnol88-LLM,166
122
- cartesia/voice_changer/types/streaming_response.py,sha256=gH-2-rlpeI3y9Ou0c7AopHUm3Z5uB3HaoPM1RvFCKwg,1875
123
- cartesia/voices/__init__.py,sha256=tz0hG_v_lguNqtMJMLe4_yhSYOdMkbYCPnKsZLsB9Rc,1627
124
- cartesia/voices/client.py,sha256=00PzrH-FIZNhKqPJNDkkwrToHiqS4zsk4qO2dhxL3mc,31865
125
- cartesia/voices/requests/__init__.py,sha256=oNZkk0ydOwaRgA38vxNQ34K68CCBQN3yrdDTS9mwe7E,984
126
- cartesia/voices/requests/create_voice_request.py,sha256=r6dKb9ga0ZsAi_6PXuE43u2lLgfQg2DIYjk2Neng7pI,617
122
+ cartesia/voice_changer/types/streaming_response.py,sha256=rQ4ZehtOHsCBKijyULz_ahGQYNj1yus6AM6u2wgcBsI,1963
123
+ cartesia/voices/__init__.py,sha256=ipS0rBobAU31yoJEbZ-2LcENhmmpzjxfzc_h5v3R0zk,1713
124
+ cartesia/voices/client.py,sha256=nOmRRJevMyBtmuTNa6aDFWpQXu1GFkjNdfzFrMMwl5k,37160
125
+ cartesia/voices/requests/__init__.py,sha256=XiBJbSYeQCgFMtwywKvQ0Nmp7Zf_0WskzRhgr9c8h38,1072
126
+ cartesia/voices/requests/create_voice_request.py,sha256=HvxxWBwR5RMMMmxEU5Tj5jsDSXnlT0cS-C6AGlMPlr0,509
127
127
  cartesia/voices/requests/embedding_response.py,sha256=PGZkBD8UBcv2MYQbBXyD4T6lzaE9oSGGwXx-MoXCp0M,228
128
128
  cartesia/voices/requests/embedding_specifier.py,sha256=PAHdGsVmLLeJC2b1fWHWI_OlhogO1WnJdzoX9pj5N8c,282
129
+ cartesia/voices/requests/get_voices_response.py,sha256=g-ZCaCaLOlZSitcKVhdCtfdKQQz8N3W6E7_wZUNOi5M,747
129
130
  cartesia/voices/requests/id_specifier.py,sha256=UTtoXBEEYaGvg-Dn2QxUDACNB3Vm1O1XbrPtBA3rGzU,252
130
- cartesia/voices/requests/localize_dialect.py,sha256=V_j_1Dv9E8PjOFqjh0gh6MZEG76DIZPCQgyUkIR72xM,402
131
+ cartesia/voices/requests/localize_dialect.py,sha256=9mmLHOFbBvWZoU2PyjXozG6hoDpE0uueymXHi0k_VtE,209
131
132
  cartesia/voices/requests/localize_voice_request.py,sha256=AkY4cvx31MF3_gkqMpUzibGIOh9cNF5cOCf3Yqnm7Vc,549
132
133
  cartesia/voices/requests/mix_voice_specifier.py,sha256=YjOJ2Qt3nqMQzHsYbF1DnZgmZS9zZepLXpji6V9mfgs,266
133
134
  cartesia/voices/requests/mix_voices_request.py,sha256=6JCzFmWKIS1_t-uSoO1m-FQbLWB1zaykTcGV-1s-RqM,275
134
135
  cartesia/voices/requests/update_voice_request.py,sha256=XxJ6TKO4M2s1kXQAZRj8uA4okIABvmWiFhAHJv4BS0Q,282
135
- cartesia/voices/requests/voice.py,sha256=lIdaIaRNR_6d26fHRgJkCOGj8ziZuD7uuW0oOt03nS4,821
136
+ cartesia/voices/requests/voice.py,sha256=M-4lf4W57fx84_JFOy55b9mWcqO4LfzpY-G_Ekv-2Bo,1031
136
137
  cartesia/voices/requests/voice_metadata.py,sha256=S0jPQtBpEb2WSnYDLQTS7pcbNJpc0d01uWravHaqzso,697
137
- cartesia/voices/types/__init__.py,sha256=fSV-9Z1O_xhwIajsaE1_eR4HRthz5oIUAaZ_nJPbgx4,1461
138
+ cartesia/voices/types/__init__.py,sha256=fsPgm1Ma1E_iBIKUMseIie9QrcGD-p31_KeMvPMb_KA,1503
138
139
  cartesia/voices/types/base_voice_id.py,sha256=nWRC0rvLpjeMpRbLSmUTPziWo1ZrbPxw22l4gEBWp8Q,118
139
140
  cartesia/voices/types/clone_mode.py,sha256=3sR6wdxym4xDVsoHppp3-V9mpDwP9F9fDfMUQKG24xw,160
140
- cartesia/voices/types/create_voice_request.py,sha256=_q0d8QojmQrpU-Puzd_YvWmiC7cBp_lrbKmTLuknYqQ,1005
141
+ cartesia/voices/types/create_voice_request.py,sha256=8vfKu6cD_VYFb3GN5gVpxlRUIZALYE-449NbDSnXaDg,911
141
142
  cartesia/voices/types/embedding_response.py,sha256=B7MJ79HIAnxtiP6OT0tt27KBDYTZ3VU0MLuQfb5qVOg,624
142
143
  cartesia/voices/types/embedding_specifier.py,sha256=cf6JfVnISyrvjWup3oAg-RFdMVRxytem6HLwZgKl3gA,671
143
144
  cartesia/voices/types/gender.py,sha256=OrbTO__3HVNculvkcb5Pz-Yoa-Xv8N_rNMrFoy2DoaA,148
145
+ cartesia/voices/types/gender_presentation.py,sha256=rM8pSurYCSH0AGgLsVpVAPp7uz7TQMM1nPa7-Vus7gw,185
146
+ cartesia/voices/types/get_voices_response.py,sha256=c6KMkmJepTUmT7I6tAVOGrPst2kkXxDCXLIf1AnR9NE,1136
144
147
  cartesia/voices/types/id_specifier.py,sha256=yAY-uc9hRJkHXdsSfRZWkE8ga2Sb-KVipOTSXa8Wmp0,634
145
- cartesia/voices/types/localize_dialect.py,sha256=TIkopmT1VOIMVORbiM-HpHGW61WJ_ihyP8-67_RkTew,375
148
+ cartesia/voices/types/localize_dialect.py,sha256=tRckNEq4EsdYPondF1rrjOrYRZUSL6WW_3627cFwG1I,196
146
149
  cartesia/voices/types/localize_english_dialect.py,sha256=0PjZNjQv5ll2wWZxGveQIYCUGLtGDVELK9FBWFe7SNc,176
147
- cartesia/voices/types/localize_portuguese_dialect.py,sha256=6dcThK1qWyS3c-W--3Zz7HK5ixS0qslEWrVQmKSrl9E,161
148
- cartesia/voices/types/localize_spanish_dialect.py,sha256=h-H52vk0MBOvJqlzPVPgajfQU6oxpTzHoQAKmSDyaC4,158
149
150
  cartesia/voices/types/localize_target_language.py,sha256=ttngtFVpMvuWAKQztJu_pCaf7V62DzmNq9zthPCb2LI,242
150
151
  cartesia/voices/types/localize_voice_request.py,sha256=roZkcA7LiYs_L1R9FgTCTIgmHv9TUfXZMgLEnrajJ3I,887
151
152
  cartesia/voices/types/mix_voice_specifier.py,sha256=B0FE6UREGk1TxlN0GOPwyCuqJbMkWVUs0EFqiJuQfZ8,236
152
153
  cartesia/voices/types/mix_voices_request.py,sha256=R_8bmUmE1br4wmfH1Qu6EnL9uC-V1z5BV3_B7u51EOw,641
153
154
  cartesia/voices/types/update_voice_request.py,sha256=_CEH8nuSZn2qZa9xZlANZXOhJd49XLel3dRy2dfOvr8,716
154
- cartesia/voices/types/voice.py,sha256=echDtXYwyNvoBkwnVBaUV2HzRBbXDqZz0ZZcnj4307g,1278
155
+ cartesia/voices/types/voice.py,sha256=DnJbBs2aX4JGZOxm0V4VSTsy1ijw42QKqpaEScL3Lak,1505
156
+ cartesia/voices/types/voice_expand_options.py,sha256=e4FroWdlxEE-LXQfT1RWlGHtswl8bmXaLMr3xza1fMk,169
155
157
  cartesia/voices/types/voice_id.py,sha256=GDoXcRVeIm-V21R4suxG2zqLD3DLYkXE9kgizadzFKo,79
156
158
  cartesia/voices/types/voice_metadata.py,sha256=4KNGjXMUKm3niv-NvKIFVGtiilpH13heuzKcZYNQxk4,1181
157
159
  cartesia/voices/types/weight.py,sha256=XqDU7_JItNUb5QykIDqTbELlRYQdbt2SviRgW0w2LKo,80
158
- cartesia-2.0.0b2.dist-info/METADATA,sha256=oQCEf6M6zbdJbu9hmvJ_3h8OVDw72BCc8kErO1LE4T8,9056
159
- cartesia-2.0.0b2.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
160
- cartesia-2.0.0b2.dist-info/RECORD,,
160
+ cartesia-2.0.0b7.dist-info/METADATA,sha256=8sWG16O3-gGLZWHd8FrRQRru7cKLH4RiHCr0uEWzqd0,10895
161
+ cartesia-2.0.0b7.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
162
+ cartesia-2.0.0b7.dist-info/RECORD,,