sarvamai 0.1.8rc3__py3-none-any.whl → 0.1.8rc5__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.
- sarvamai/__init__.py +4 -4
- sarvamai/core/client_wrapper.py +2 -2
- sarvamai/requests/__init__.py +2 -2
- sarvamai/requests/{close_connection.py → flush_signal.py} +1 -1
- sarvamai/text_to_speech_streaming/socket_client.py +129 -29
- sarvamai/types/__init__.py +2 -2
- sarvamai/types/{close_connection.py → flush_signal.py} +1 -1
- {sarvamai-0.1.8rc3.dist-info → sarvamai-0.1.8rc5.dist-info}/METADATA +1 -1
- {sarvamai-0.1.8rc3.dist-info → sarvamai-0.1.8rc5.dist-info}/RECORD +10 -10
- {sarvamai-0.1.8rc3.dist-info → sarvamai-0.1.8rc5.dist-info}/WHEEL +0 -0
sarvamai/__init__.py
CHANGED
|
@@ -16,7 +16,6 @@ from .types import (
|
|
|
16
16
|
ChatCompletionRequestUserMessage,
|
|
17
17
|
ChatCompletionResponseMessage,
|
|
18
18
|
Choice,
|
|
19
|
-
CloseConnection,
|
|
20
19
|
CompletionUsage,
|
|
21
20
|
ConfigMessage,
|
|
22
21
|
CreateChatCompletionResponse,
|
|
@@ -30,6 +29,7 @@ from .types import (
|
|
|
30
29
|
ErrorResponseData,
|
|
31
30
|
EventsData,
|
|
32
31
|
FinishReason,
|
|
32
|
+
FlushSignal,
|
|
33
33
|
Format,
|
|
34
34
|
InitializeConnection,
|
|
35
35
|
InitializeConnectionData,
|
|
@@ -110,7 +110,6 @@ from .requests import (
|
|
|
110
110
|
ChatCompletionRequestUserMessageParams,
|
|
111
111
|
ChatCompletionResponseMessageParams,
|
|
112
112
|
ChoiceParams,
|
|
113
|
-
CloseConnectionParams,
|
|
114
113
|
CompletionUsageParams,
|
|
115
114
|
ConfigMessageParams,
|
|
116
115
|
CreateChatCompletionResponseParams,
|
|
@@ -122,6 +121,7 @@ from .requests import (
|
|
|
122
121
|
ErrorResponseDataParams,
|
|
123
122
|
ErrorResponseParams,
|
|
124
123
|
EventsDataParams,
|
|
124
|
+
FlushSignalParams,
|
|
125
125
|
InitializeConnectionDataParams,
|
|
126
126
|
InitializeConnectionParams,
|
|
127
127
|
LanguageIdentificationResponseParams,
|
|
@@ -186,8 +186,6 @@ __all__ = [
|
|
|
186
186
|
"ChatCompletionResponseMessageParams",
|
|
187
187
|
"Choice",
|
|
188
188
|
"ChoiceParams",
|
|
189
|
-
"CloseConnection",
|
|
190
|
-
"CloseConnectionParams",
|
|
191
189
|
"CompletionUsage",
|
|
192
190
|
"CompletionUsageParams",
|
|
193
191
|
"ConfigMessage",
|
|
@@ -212,6 +210,8 @@ __all__ = [
|
|
|
212
210
|
"EventsData",
|
|
213
211
|
"EventsDataParams",
|
|
214
212
|
"FinishReason",
|
|
213
|
+
"FlushSignal",
|
|
214
|
+
"FlushSignalParams",
|
|
215
215
|
"ForbiddenError",
|
|
216
216
|
"Format",
|
|
217
217
|
"InitializeConnection",
|
sarvamai/core/client_wrapper.py
CHANGED
|
@@ -17,10 +17,10 @@ class BaseClientWrapper:
|
|
|
17
17
|
|
|
18
18
|
def get_headers(self) -> typing.Dict[str, str]:
|
|
19
19
|
headers: typing.Dict[str, str] = {
|
|
20
|
-
"User-Agent": "sarvamai/0.1.
|
|
20
|
+
"User-Agent": "sarvamai/0.1.8rc5",
|
|
21
21
|
"X-Fern-Language": "Python",
|
|
22
22
|
"X-Fern-SDK-Name": "sarvamai",
|
|
23
|
-
"X-Fern-SDK-Version": "0.1.
|
|
23
|
+
"X-Fern-SDK-Version": "0.1.8rc5",
|
|
24
24
|
}
|
|
25
25
|
headers["api-subscription-key"] = self.api_subscription_key
|
|
26
26
|
return headers
|
sarvamai/requests/__init__.py
CHANGED
|
@@ -17,7 +17,6 @@ from .chat_completion_request_system_message import ChatCompletionRequestSystemM
|
|
|
17
17
|
from .chat_completion_request_user_message import ChatCompletionRequestUserMessageParams
|
|
18
18
|
from .chat_completion_response_message import ChatCompletionResponseMessageParams
|
|
19
19
|
from .choice import ChoiceParams
|
|
20
|
-
from .close_connection import CloseConnectionParams
|
|
21
20
|
from .completion_usage import CompletionUsageParams
|
|
22
21
|
from .config_message import ConfigMessageParams
|
|
23
22
|
from .create_chat_completion_response import CreateChatCompletionResponseParams
|
|
@@ -29,6 +28,7 @@ from .error_message import ErrorMessageParams
|
|
|
29
28
|
from .error_response import ErrorResponseParams
|
|
30
29
|
from .error_response_data import ErrorResponseDataParams
|
|
31
30
|
from .events_data import EventsDataParams
|
|
31
|
+
from .flush_signal import FlushSignalParams
|
|
32
32
|
from .initialize_connection import InitializeConnectionParams
|
|
33
33
|
from .initialize_connection_data import InitializeConnectionDataParams
|
|
34
34
|
from .language_identification_response import LanguageIdentificationResponseParams
|
|
@@ -64,7 +64,6 @@ __all__ = [
|
|
|
64
64
|
"ChatCompletionRequestUserMessageParams",
|
|
65
65
|
"ChatCompletionResponseMessageParams",
|
|
66
66
|
"ChoiceParams",
|
|
67
|
-
"CloseConnectionParams",
|
|
68
67
|
"CompletionUsageParams",
|
|
69
68
|
"ConfigMessageParams",
|
|
70
69
|
"CreateChatCompletionResponseParams",
|
|
@@ -76,6 +75,7 @@ __all__ = [
|
|
|
76
75
|
"ErrorResponseDataParams",
|
|
77
76
|
"ErrorResponseParams",
|
|
78
77
|
"EventsDataParams",
|
|
78
|
+
"FlushSignalParams",
|
|
79
79
|
"InitializeConnectionDataParams",
|
|
80
80
|
"InitializeConnectionParams",
|
|
81
81
|
"LanguageIdentificationResponseParams",
|
|
@@ -8,11 +8,13 @@ import websockets.sync.connection as websockets_sync_connection
|
|
|
8
8
|
from ..core.events import EventEmitterMixin, EventType
|
|
9
9
|
from ..core.pydantic_utilities import parse_obj_as
|
|
10
10
|
from ..types.audio_output import AudioOutput
|
|
11
|
-
from ..types.
|
|
11
|
+
from ..types.flush_signal import FlushSignal
|
|
12
12
|
from ..types.error_response import ErrorResponse
|
|
13
13
|
from ..types.initialize_connection import InitializeConnection
|
|
14
|
+
from ..types.initialize_connection_data import InitializeConnectionData
|
|
14
15
|
from ..types.ping_signal import PingSignal
|
|
15
16
|
from ..types.send_text import SendText
|
|
17
|
+
from ..types.send_text_data import SendTextData
|
|
16
18
|
|
|
17
19
|
TextToSpeechStreamingSocketClientResponse = typing.Union[AudioOutput, ErrorResponse]
|
|
18
20
|
|
|
@@ -24,6 +26,7 @@ class AsyncTextToSpeechStreamingSocketClient(EventEmitterMixin):
|
|
|
24
26
|
|
|
25
27
|
async def __aiter__(self):
|
|
26
28
|
async for message in self._websocket:
|
|
29
|
+
message = json.loads(message) if isinstance(message, str) else message
|
|
27
30
|
yield parse_obj_as(TextToSpeechStreamingSocketClientResponse, message) # type: ignore
|
|
28
31
|
|
|
29
32
|
async def start_listening(self):
|
|
@@ -39,6 +42,11 @@ class AsyncTextToSpeechStreamingSocketClient(EventEmitterMixin):
|
|
|
39
42
|
self._emit(EventType.OPEN, None)
|
|
40
43
|
try:
|
|
41
44
|
async for raw_message in self._websocket:
|
|
45
|
+
raw_message = (
|
|
46
|
+
json.loads(raw_message)
|
|
47
|
+
if isinstance(raw_message, str)
|
|
48
|
+
else raw_message
|
|
49
|
+
)
|
|
42
50
|
parsed = parse_obj_as(TextToSpeechStreamingSocketClientResponse, raw_message) # type: ignore
|
|
43
51
|
self._emit(EventType.MESSAGE, parsed)
|
|
44
52
|
except websockets.WebSocketException as exc:
|
|
@@ -46,32 +54,74 @@ class AsyncTextToSpeechStreamingSocketClient(EventEmitterMixin):
|
|
|
46
54
|
finally:
|
|
47
55
|
self._emit(EventType.CLOSE, None)
|
|
48
56
|
|
|
49
|
-
async def
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
57
|
+
async def initialize_connection(
|
|
58
|
+
self,
|
|
59
|
+
target_language_code: str,
|
|
60
|
+
speaker: str,
|
|
61
|
+
pitch: float = 0.0,
|
|
62
|
+
pace: float = 1.0,
|
|
63
|
+
loudness: float = 1.0,
|
|
64
|
+
speech_sample_rate: int = 22050,
|
|
65
|
+
enable_preprocessing: bool = False,
|
|
66
|
+
output_audio_codec: str = "mp3",
|
|
67
|
+
output_audio_bitrate: str = "128k",
|
|
68
|
+
min_buffer_size: int = 50,
|
|
69
|
+
max_chunk_length: int = 150,
|
|
70
|
+
) -> None:
|
|
71
|
+
"""
|
|
72
|
+
Initialize the TTS connection with configuration parameters.
|
|
73
|
+
|
|
74
|
+
:param target_language_code: Target language code (e.g., 'hi-IN')
|
|
75
|
+
:param speaker: Voice speaker name (e.g., 'meera', 'arvind')
|
|
76
|
+
:param pitch: Voice pitch adjustment (-1.0 to 1.0, default: 0.0)
|
|
77
|
+
:param pace: Speech pace (0.3 to 3.0, default: 1.0)
|
|
78
|
+
:param loudness: Voice loudness (0.1 to 3.0, default: 1.0)
|
|
79
|
+
:param speech_sample_rate: Audio sample rate, default: 22050
|
|
80
|
+
:param enable_preprocessing: Enable text preprocessing, default: False
|
|
81
|
+
:param output_audio_codec: Audio codec, default: 'mp3'
|
|
82
|
+
:param output_audio_bitrate: Audio bitrate, default: '128k'
|
|
83
|
+
:param min_buffer_size: Minimum buffer size, default: 50
|
|
84
|
+
:param max_chunk_length: Maximum chunk length, default: 150
|
|
85
|
+
"""
|
|
86
|
+
data = InitializeConnectionData(
|
|
87
|
+
target_language_code=target_language_code,
|
|
88
|
+
speaker=speaker,
|
|
89
|
+
pitch=pitch,
|
|
90
|
+
pace=pace,
|
|
91
|
+
loudness=loudness,
|
|
92
|
+
speech_sample_rate=speech_sample_rate,
|
|
93
|
+
enable_preprocessing=enable_preprocessing,
|
|
94
|
+
output_audio_codec=output_audio_codec,
|
|
95
|
+
output_audio_bitrate=output_audio_bitrate,
|
|
96
|
+
min_buffer_size=min_buffer_size,
|
|
97
|
+
max_chunk_length=max_chunk_length,
|
|
98
|
+
)
|
|
99
|
+
message = InitializeConnection(data=data)
|
|
54
100
|
await self._send_model(message)
|
|
55
101
|
|
|
56
|
-
async def
|
|
102
|
+
async def convert(self, text: str) -> None:
|
|
57
103
|
"""
|
|
58
|
-
Send
|
|
59
|
-
|
|
104
|
+
Send text to be converted to speech.
|
|
105
|
+
|
|
106
|
+
:param text: Text to be synthesized (1-2500 characters)
|
|
60
107
|
"""
|
|
108
|
+
data = SendTextData(text=text)
|
|
109
|
+
message = SendText(data=data)
|
|
61
110
|
await self._send_model(message)
|
|
62
111
|
|
|
63
|
-
async def
|
|
112
|
+
async def flush(self) -> None:
|
|
64
113
|
"""
|
|
65
|
-
|
|
66
|
-
|
|
114
|
+
Signal to flush the buffer and finalize audio output.
|
|
115
|
+
This indicates the end of text input.
|
|
67
116
|
"""
|
|
117
|
+
message = FlushSignal()
|
|
68
118
|
await self._send_model(message)
|
|
69
119
|
|
|
70
|
-
async def
|
|
120
|
+
async def ping(self) -> None:
|
|
71
121
|
"""
|
|
72
|
-
Send
|
|
73
|
-
The message will be sent as a PingSignal.
|
|
122
|
+
Send ping signal to keep the WebSocket connection alive.
|
|
74
123
|
"""
|
|
124
|
+
message = PingSignal()
|
|
75
125
|
await self._send_model(message)
|
|
76
126
|
|
|
77
127
|
async def recv(self) -> TextToSpeechStreamingSocketClientResponse:
|
|
@@ -79,6 +129,7 @@ class AsyncTextToSpeechStreamingSocketClient(EventEmitterMixin):
|
|
|
79
129
|
Receive a message from the websocket connection.
|
|
80
130
|
"""
|
|
81
131
|
data = await self._websocket.recv()
|
|
132
|
+
data = json.loads(data) if isinstance(data, str) else data
|
|
82
133
|
return parse_obj_as(TextToSpeechStreamingSocketClientResponse, data) # type: ignore
|
|
83
134
|
|
|
84
135
|
async def _send(self, data: typing.Any) -> None:
|
|
@@ -103,6 +154,7 @@ class TextToSpeechStreamingSocketClient(EventEmitterMixin):
|
|
|
103
154
|
|
|
104
155
|
def __iter__(self):
|
|
105
156
|
for message in self._websocket:
|
|
157
|
+
message = json.loads(message) if isinstance(message, str) else message
|
|
106
158
|
yield parse_obj_as(TextToSpeechStreamingSocketClientResponse, message) # type: ignore
|
|
107
159
|
|
|
108
160
|
def start_listening(self):
|
|
@@ -118,6 +170,11 @@ class TextToSpeechStreamingSocketClient(EventEmitterMixin):
|
|
|
118
170
|
self._emit(EventType.OPEN, None)
|
|
119
171
|
try:
|
|
120
172
|
for raw_message in self._websocket:
|
|
173
|
+
raw_message = (
|
|
174
|
+
json.loads(raw_message)
|
|
175
|
+
if isinstance(raw_message, str)
|
|
176
|
+
else raw_message
|
|
177
|
+
)
|
|
121
178
|
parsed = parse_obj_as(TextToSpeechStreamingSocketClientResponse, raw_message) # type: ignore
|
|
122
179
|
self._emit(EventType.MESSAGE, parsed)
|
|
123
180
|
except websockets.WebSocketException as exc:
|
|
@@ -125,32 +182,74 @@ class TextToSpeechStreamingSocketClient(EventEmitterMixin):
|
|
|
125
182
|
finally:
|
|
126
183
|
self._emit(EventType.CLOSE, None)
|
|
127
184
|
|
|
128
|
-
def
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
185
|
+
def initialize_connection(
|
|
186
|
+
self,
|
|
187
|
+
target_language_code: str,
|
|
188
|
+
speaker: str,
|
|
189
|
+
pitch: float = 0.0,
|
|
190
|
+
pace: float = 1.0,
|
|
191
|
+
loudness: float = 1.0,
|
|
192
|
+
speech_sample_rate: int = 22050,
|
|
193
|
+
enable_preprocessing: bool = False,
|
|
194
|
+
output_audio_codec: str = "mp3",
|
|
195
|
+
output_audio_bitrate: str = "128k",
|
|
196
|
+
min_buffer_size: int = 50,
|
|
197
|
+
max_chunk_length: int = 150,
|
|
198
|
+
) -> None:
|
|
199
|
+
"""
|
|
200
|
+
Initialize the TTS connection with configuration parameters.
|
|
201
|
+
|
|
202
|
+
:param target_language_code: Target language code (e.g., 'hi-IN')
|
|
203
|
+
:param speaker: Voice speaker name (e.g., 'meera', 'arvind')
|
|
204
|
+
:param pitch: Voice pitch adjustment (-1.0 to 1.0, default: 0.0)
|
|
205
|
+
:param pace: Speech pace (0.3 to 3.0, default: 1.0)
|
|
206
|
+
:param loudness: Voice loudness (0.1 to 3.0, default: 1.0)
|
|
207
|
+
:param speech_sample_rate: Audio sample rate, default: 22050
|
|
208
|
+
:param enable_preprocessing: Enable text preprocessing, default: False
|
|
209
|
+
:param output_audio_codec: Audio codec, default: 'mp3'
|
|
210
|
+
:param output_audio_bitrate: Audio bitrate, default: '128k'
|
|
211
|
+
:param min_buffer_size: Minimum buffer size, default: 50
|
|
212
|
+
:param max_chunk_length: Maximum chunk length, default: 150
|
|
213
|
+
"""
|
|
214
|
+
data = InitializeConnectionData(
|
|
215
|
+
target_language_code=target_language_code,
|
|
216
|
+
speaker=speaker,
|
|
217
|
+
pitch=pitch,
|
|
218
|
+
pace=pace,
|
|
219
|
+
loudness=loudness,
|
|
220
|
+
speech_sample_rate=speech_sample_rate,
|
|
221
|
+
enable_preprocessing=enable_preprocessing,
|
|
222
|
+
output_audio_codec=output_audio_codec,
|
|
223
|
+
output_audio_bitrate=output_audio_bitrate,
|
|
224
|
+
min_buffer_size=min_buffer_size,
|
|
225
|
+
max_chunk_length=max_chunk_length,
|
|
226
|
+
)
|
|
227
|
+
message = InitializeConnection(data=data)
|
|
133
228
|
self._send_model(message)
|
|
134
229
|
|
|
135
|
-
def
|
|
230
|
+
def convert(self, text: str) -> None:
|
|
136
231
|
"""
|
|
137
|
-
Send
|
|
138
|
-
|
|
232
|
+
Send text to be converted to speech.
|
|
233
|
+
|
|
234
|
+
:param text: Text to be synthesized (1-2500 characters)
|
|
139
235
|
"""
|
|
236
|
+
data = SendTextData(text=text)
|
|
237
|
+
message = SendText(data=data)
|
|
140
238
|
self._send_model(message)
|
|
141
239
|
|
|
142
|
-
def
|
|
240
|
+
def flush(self) -> None:
|
|
143
241
|
"""
|
|
144
|
-
|
|
145
|
-
|
|
242
|
+
Signal to flush the buffer and finalize audio output.
|
|
243
|
+
This indicates the end of text input.
|
|
146
244
|
"""
|
|
245
|
+
message = FlushSignal()
|
|
147
246
|
self._send_model(message)
|
|
148
247
|
|
|
149
|
-
def
|
|
248
|
+
def ping(self) -> None:
|
|
150
249
|
"""
|
|
151
|
-
Send
|
|
152
|
-
The message will be sent as a PingSignal.
|
|
250
|
+
Send ping signal to keep the WebSocket connection alive.
|
|
153
251
|
"""
|
|
252
|
+
message = PingSignal()
|
|
154
253
|
self._send_model(message)
|
|
155
254
|
|
|
156
255
|
def recv(self) -> TextToSpeechStreamingSocketClientResponse:
|
|
@@ -158,6 +257,7 @@ class TextToSpeechStreamingSocketClient(EventEmitterMixin):
|
|
|
158
257
|
Receive a message from the websocket connection.
|
|
159
258
|
"""
|
|
160
259
|
data = self._websocket.recv()
|
|
260
|
+
data = json.loads(data) if isinstance(data, str) else data
|
|
161
261
|
return parse_obj_as(TextToSpeechStreamingSocketClientResponse, data) # type: ignore
|
|
162
262
|
|
|
163
263
|
def _send(self, data: typing.Any) -> None:
|
sarvamai/types/__init__.py
CHANGED
|
@@ -17,7 +17,6 @@ from .chat_completion_request_system_message import ChatCompletionRequestSystemM
|
|
|
17
17
|
from .chat_completion_request_user_message import ChatCompletionRequestUserMessage
|
|
18
18
|
from .chat_completion_response_message import ChatCompletionResponseMessage
|
|
19
19
|
from .choice import Choice
|
|
20
|
-
from .close_connection import CloseConnection
|
|
21
20
|
from .completion_usage import CompletionUsage
|
|
22
21
|
from .config_message import ConfigMessage
|
|
23
22
|
from .create_chat_completion_response import CreateChatCompletionResponse
|
|
@@ -31,6 +30,7 @@ from .error_response import ErrorResponse
|
|
|
31
30
|
from .error_response_data import ErrorResponseData
|
|
32
31
|
from .events_data import EventsData
|
|
33
32
|
from .finish_reason import FinishReason
|
|
33
|
+
from .flush_signal import FlushSignal
|
|
34
34
|
from .format import Format
|
|
35
35
|
from .initialize_connection import InitializeConnection
|
|
36
36
|
from .initialize_connection_data import InitializeConnectionData
|
|
@@ -92,7 +92,6 @@ __all__ = [
|
|
|
92
92
|
"ChatCompletionRequestUserMessage",
|
|
93
93
|
"ChatCompletionResponseMessage",
|
|
94
94
|
"Choice",
|
|
95
|
-
"CloseConnection",
|
|
96
95
|
"CompletionUsage",
|
|
97
96
|
"ConfigMessage",
|
|
98
97
|
"CreateChatCompletionResponse",
|
|
@@ -106,6 +105,7 @@ __all__ = [
|
|
|
106
105
|
"ErrorResponseData",
|
|
107
106
|
"EventsData",
|
|
108
107
|
"FinishReason",
|
|
108
|
+
"FlushSignal",
|
|
109
109
|
"Format",
|
|
110
110
|
"InitializeConnection",
|
|
111
111
|
"InitializeConnectionData",
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
sarvamai/__init__.py,sha256=
|
|
1
|
+
sarvamai/__init__.py,sha256=1T6EojO84La_t1nZ0AphCawAVhYQAlgMk8A7ZC0FH4M,8937
|
|
2
2
|
sarvamai/chat/__init__.py,sha256=_VhToAyIt_5axN6CLJwtxg3-CO7THa_23pbUzqhXJa4,85
|
|
3
3
|
sarvamai/chat/client.py,sha256=xOSj83Gr6Q7eY2qUeATiuXYQqBqWqSCQlIEopK5fKus,11022
|
|
4
4
|
sarvamai/chat/raw_client.py,sha256=A2kRuZcVWlJhyYCD7YKgqNkZEp3cYa1731KhRkhirU0,17885
|
|
5
5
|
sarvamai/client.py,sha256=aI1sw5LVGMjgukgZLDlUmA17ecK1yGsQxH-W_JiCrco,7177
|
|
6
6
|
sarvamai/core/__init__.py,sha256=YE2CtXeASe1RAbaI39twKWYKCuT4tW5is9HWHhJjR_g,1653
|
|
7
7
|
sarvamai/core/api_error.py,sha256=44vPoTyWN59gonCIZMdzw7M1uspygiLnr3GNFOoVL2Q,614
|
|
8
|
-
sarvamai/core/client_wrapper.py,sha256=
|
|
8
|
+
sarvamai/core/client_wrapper.py,sha256=ucQFDVPXC5Z3Tn-1T8MlxyL0QrswihfNYW1J7w8LJS0,2080
|
|
9
9
|
sarvamai/core/datetime_utils.py,sha256=nBys2IsYrhPdszxGKCNRPSOCwa-5DWOHG95FB8G9PKo,1047
|
|
10
10
|
sarvamai/core/events.py,sha256=j7VWXgMpOsjCXdzY22wIhI7Q-v5InZ4WchRzA88x_Sk,856
|
|
11
11
|
sarvamai/core/file.py,sha256=d4NNbX8XvXP32z8KpK2Xovv33nFfruIrpz0QWxlgpZk,2663
|
|
@@ -28,7 +28,7 @@ sarvamai/errors/too_many_requests_error.py,sha256=Dl-_pfpboXJh-OtSbRaPQOB-UXvpVO
|
|
|
28
28
|
sarvamai/errors/unprocessable_entity_error.py,sha256=JqxtzIhvjkpQDqbT9Q-go1n-gyv9PsYqq0ng_ZYyBMo,347
|
|
29
29
|
sarvamai/play.py,sha256=4fh86zy8g8IPU2O8yPBY7QxXQOivv_nWQvPQsOa1arw,2183
|
|
30
30
|
sarvamai/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
31
|
-
sarvamai/requests/__init__.py,sha256=
|
|
31
|
+
sarvamai/requests/__init__.py,sha256=UmEj75u8yYiZYL0M0QVJoCuS8oduaH82eD3bmP-6myg,4484
|
|
32
32
|
sarvamai/requests/audio_data.py,sha256=QI3SK5aiAg2yJ-m3l9CxOkONnH3CCKMFCl9kAdMs19o,410
|
|
33
33
|
sarvamai/requests/audio_message.py,sha256=ZBeogjGE6YFXXM-0g8zq9SoizDk21reR0YXSB-0fMjg,214
|
|
34
34
|
sarvamai/requests/audio_output.py,sha256=BnoX345rwoWgaMaj24u_19-SjmPV0xt7vlFEEDKRw20,280
|
|
@@ -39,7 +39,6 @@ sarvamai/requests/chat_completion_request_system_message.py,sha256=ZvjBuyL0oM7Vw
|
|
|
39
39
|
sarvamai/requests/chat_completion_request_user_message.py,sha256=IqYy7K-qF9oQ8AUIvuH06EsLL-Wn6QufPMPpSR-VNGI,238
|
|
40
40
|
sarvamai/requests/chat_completion_response_message.py,sha256=JFazj4zK-nj_wjdvNLDkcfIFxIlqw49Xf_P8o7d70aY,336
|
|
41
41
|
sarvamai/requests/choice.py,sha256=uulX4MZUoThEMcD3a80o_3V5YpnpqN8DfPaNZWVz-1o,867
|
|
42
|
-
sarvamai/requests/close_connection.py,sha256=p6_bsmzUCDRnIZN3cLN_UPXT7t-_22CYhVixi7pq90c,199
|
|
43
42
|
sarvamai/requests/completion_usage.py,sha256=LbZV-RxcxKdCAYqhCiaRtSFF3VwMJq71A989Z1rm-I8,428
|
|
44
43
|
sarvamai/requests/config_message.py,sha256=EpYioGvDhCXDMvGH7Q1F7448zJzoHmlkQ1owoNGbWAw,383
|
|
45
44
|
sarvamai/requests/create_chat_completion_response.py,sha256=TqS9u5_WVWMok_NreT4TeOsLJQeybPkbJm45Q0Zxw30,857
|
|
@@ -51,6 +50,7 @@ sarvamai/requests/error_message.py,sha256=-J21pfEJghsms4pNe55O_9qkODNd-BKLMt96AO
|
|
|
51
50
|
sarvamai/requests/error_response.py,sha256=A8j12JQ7JJkUcnt26k2M9uwXXkwyT-LNqG3BO3U8NIk,288
|
|
52
51
|
sarvamai/requests/error_response_data.py,sha256=l9tGTykaKZ8pKxdw9RKitpW49kKcs4aGibH7rKG2v7w,461
|
|
53
52
|
sarvamai/requests/events_data.py,sha256=3seSash8DysPUWX6mKPzoEzWZlsrK4Tann2GFSbQjZg,286
|
|
53
|
+
sarvamai/requests/flush_signal.py,sha256=k087oW96WFiC0j5opFMjytgqXPi37jYljhCEqLx9d5o,195
|
|
54
54
|
sarvamai/requests/initialize_connection.py,sha256=QO4zyg2gEAeNRcxuew6Y5UW9l7OYG68sj_mL3c26GpA,317
|
|
55
55
|
sarvamai/requests/initialize_connection_data.py,sha256=R6DA52P2Qlum2uz6Hld5QVSJgfY9GQGIcbvyyJOHK9A,1154
|
|
56
56
|
sarvamai/requests/language_identification_response.py,sha256=BdS5U9Gic-71vb--ph6HGvd2hGNKDXERC7yrn8vFcvI,1098
|
|
@@ -100,10 +100,10 @@ sarvamai/text_to_speech/raw_client.py,sha256=3Zu6HN_FOY683Vm-EN-OL7YAbLsftjJlFm5
|
|
|
100
100
|
sarvamai/text_to_speech_streaming/__init__.py,sha256=AyHwl9te1mTfiz6IkMU20quN-0RP5njbchknXCz-oK8,173
|
|
101
101
|
sarvamai/text_to_speech_streaming/client.py,sha256=sEC5mVNALldkZri3gHVxHcJCI9TmVwF1vPTL8vfatbY,6161
|
|
102
102
|
sarvamai/text_to_speech_streaming/raw_client.py,sha256=DXsU8Rq27yZGINkRmyeyqPWLlSAGsR1RTJWJH81FlTI,5342
|
|
103
|
-
sarvamai/text_to_speech_streaming/socket_client.py,sha256=
|
|
103
|
+
sarvamai/text_to_speech_streaming/socket_client.py,sha256=qZpHFC1z1c6T_FaGOW6CPtWE15glmqClmdc5Iixa7FY,10429
|
|
104
104
|
sarvamai/text_to_speech_streaming/types/__init__.py,sha256=DUsvIGTtST5N1v3Hnodq5aNKfPcTBlod28DSypc8NzA,198
|
|
105
105
|
sarvamai/text_to_speech_streaming/types/text_to_speech_streaming_model.py,sha256=1uOMrJIaAxi_XzwCYmnG5XA-il66cq9uC4ZuiI7HCHo,176
|
|
106
|
-
sarvamai/types/__init__.py,sha256=
|
|
106
|
+
sarvamai/types/__init__.py,sha256=_5KKlTtdY4kOQ3go9T60EPmSA53AOFGbF5VJOkcnros,6320
|
|
107
107
|
sarvamai/types/audio_data.py,sha256=rgOukLkLNJ_HBBVE2g5dfEL2CWjRoGiMvCtpq0qTB1Y,829
|
|
108
108
|
sarvamai/types/audio_message.py,sha256=sB4EgkWkWJzipYXobkmM9AYZTTZtCpg_ySKssUeznUE,560
|
|
109
109
|
sarvamai/types/audio_output.py,sha256=Eq-YUZa1mSDwt7bax2c4Vv2gBlyM_JBJWzHhTAhFSko,621
|
|
@@ -114,7 +114,6 @@ sarvamai/types/chat_completion_request_system_message.py,sha256=E7YhTk1zr4u7dj_y
|
|
|
114
114
|
sarvamai/types/chat_completion_request_user_message.py,sha256=J3WhlrfOfCCe7ugmJIfP_L9st3OFtXkIjZTSuR8O9nQ,615
|
|
115
115
|
sarvamai/types/chat_completion_response_message.py,sha256=wz935eBnCkSIl0I0qMxBuH4vAUCso1aHDGReMW1VHGE,744
|
|
116
116
|
sarvamai/types/choice.py,sha256=uXBCsjWP9VK3XWQWZUeI4EnU10w0G9nAfKn2tJZvxko,1244
|
|
117
|
-
sarvamai/types/close_connection.py,sha256=bsPGGh7yYJv0tikBRXmEe6ZC1GsUJy5kwwt30kiiqK4,552
|
|
118
117
|
sarvamai/types/completion_usage.py,sha256=xYQGlQUbKqsksuV73H-1ajjfT5M7w47eLfdWXSlrI5M,843
|
|
119
118
|
sarvamai/types/config_message.py,sha256=sGrT-qYTRqLVfIo5nRUuRlqPtPVmiAkUAnaMtlmQYCU,778
|
|
120
119
|
sarvamai/types/create_chat_completion_response.py,sha256=4nEzeWzHGW1_BmRAtOuGsbRZ0ojNgnzJSMUFyYuYviw,1285
|
|
@@ -128,6 +127,7 @@ sarvamai/types/error_response.py,sha256=3m17Aj3GY_-mSY2lH-GkbuiyewTm-wNL9UQ1exLv
|
|
|
128
127
|
sarvamai/types/error_response_data.py,sha256=hncN_zmPg8kqSHjNciYLn2QeNqzqHxKiZDlKOvjKdwA,838
|
|
129
128
|
sarvamai/types/events_data.py,sha256=hDSOyODc8-lmpduJIQkps9kHlUZKYXGw3lETi8irHt0,681
|
|
130
129
|
sarvamai/types/finish_reason.py,sha256=PBWtBNkX4FMaODmlUehpF6qLB5uH_zR-Mw3M4uhIB6U,209
|
|
130
|
+
sarvamai/types/flush_signal.py,sha256=zX-jCXQixmellMi1-NKKPyqcRaxeOMycw90fKRpWWAQ,548
|
|
131
131
|
sarvamai/types/format.py,sha256=57LicD0XLqW4D1QEnZWsWGifzRy1GV9P5utKPXLoxtg,144
|
|
132
132
|
sarvamai/types/initialize_connection.py,sha256=qL9vhyZL7fJxV1UFHtCmFMYaVgZkCWMkP4v-TCREAow,659
|
|
133
133
|
sarvamai/types/initialize_connection_data.py,sha256=iCl6fC3QpmIJXOkoC3TjVU4HmUQdbq95RJUHe0nRv1M,1413
|
|
@@ -175,6 +175,6 @@ sarvamai/types/transliterate_mode.py,sha256=1jSEMlGcoLkWuk12TgoOpSgwifa4rThGKZ1h
|
|
|
175
175
|
sarvamai/types/transliterate_source_language.py,sha256=bSY9wJszF0sg-Cgg6F-YcWC8ly1mIlj9rqa15-jBtx8,283
|
|
176
176
|
sarvamai/types/transliteration_response.py,sha256=yt-lzTbDeJ_ZL4I8kQa6oESxA9ebeJJY7LfFHpdEsmM,815
|
|
177
177
|
sarvamai/version.py,sha256=Qkp3Ee9YH-O9RTix90e0i7iNrFAGN-QDt2AFwGA4n8k,75
|
|
178
|
-
sarvamai-0.1.
|
|
179
|
-
sarvamai-0.1.
|
|
180
|
-
sarvamai-0.1.
|
|
178
|
+
sarvamai-0.1.8rc5.dist-info/METADATA,sha256=UJapTnAvJLabUeDXBxpUj9-KIZQeHYdoeoCNsHKLUvQ,26760
|
|
179
|
+
sarvamai-0.1.8rc5.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
|
|
180
|
+
sarvamai-0.1.8rc5.dist-info/RECORD,,
|
|
File without changes
|