sarvamai 0.1.19a2__tar.gz → 0.1.19a4__tar.gz

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 (220) hide show
  1. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/PKG-INFO +1 -1
  2. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/pyproject.toml +1 -1
  3. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/core/client_wrapper.py +2 -2
  4. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/config_message.py +1 -1
  5. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/stt_flush_signal.py +0 -5
  6. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_translate_streaming/socket_client.py +62 -11
  7. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/config_message.py +1 -1
  8. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/stt_flush_signal.py +0 -5
  9. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/README.md +0 -0
  10. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/__init__.py +0 -0
  11. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/chat/__init__.py +0 -0
  12. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/chat/client.py +0 -0
  13. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/chat/raw_client.py +0 -0
  14. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/client.py +0 -0
  15. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/core/__init__.py +0 -0
  16. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/core/api_error.py +0 -0
  17. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/core/datetime_utils.py +0 -0
  18. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/core/events.py +0 -0
  19. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/core/file.py +0 -0
  20. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/core/force_multipart.py +0 -0
  21. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/core/http_client.py +0 -0
  22. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/core/http_response.py +0 -0
  23. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/core/jsonable_encoder.py +0 -0
  24. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/core/pydantic_utilities.py +0 -0
  25. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/core/query_encoder.py +0 -0
  26. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/core/remove_none_from_dict.py +0 -0
  27. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/core/request_options.py +0 -0
  28. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/core/serialization.py +0 -0
  29. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/environment.py +0 -0
  30. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/errors/__init__.py +0 -0
  31. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/errors/bad_request_error.py +0 -0
  32. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/errors/forbidden_error.py +0 -0
  33. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/errors/internal_server_error.py +0 -0
  34. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/errors/service_unavailable_error.py +0 -0
  35. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/errors/too_many_requests_error.py +0 -0
  36. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/errors/unprocessable_entity_error.py +0 -0
  37. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/play.py +0 -0
  38. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/py.typed +0 -0
  39. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/__init__.py +0 -0
  40. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/audio_data.py +0 -0
  41. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/audio_message.py +0 -0
  42. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/audio_output.py +0 -0
  43. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/audio_output_data.py +0 -0
  44. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/base_job_parameters.py +0 -0
  45. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/bulk_job_callback.py +0 -0
  46. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/bulk_job_init_response_v_1.py +0 -0
  47. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/chat_completion_request_assistant_message.py +0 -0
  48. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/chat_completion_request_message.py +0 -0
  49. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/chat_completion_request_system_message.py +0 -0
  50. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/chat_completion_request_user_message.py +0 -0
  51. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/chat_completion_response_message.py +0 -0
  52. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/choice.py +0 -0
  53. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/completion_usage.py +0 -0
  54. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/configure_connection.py +0 -0
  55. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/configure_connection_data.py +0 -0
  56. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/create_chat_completion_response.py +0 -0
  57. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/diarized_entry.py +0 -0
  58. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/diarized_transcript.py +0 -0
  59. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/error_data.py +0 -0
  60. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/error_details.py +0 -0
  61. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/error_message.py +0 -0
  62. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/error_response.py +0 -0
  63. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/error_response_data.py +0 -0
  64. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/events_data.py +0 -0
  65. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/file_signed_url_details.py +0 -0
  66. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/files_download_response.py +0 -0
  67. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/files_request.py +0 -0
  68. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/files_upload_response.py +0 -0
  69. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/flush_signal.py +0 -0
  70. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/job_status_v_1_response.py +0 -0
  71. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/language_identification_response.py +0 -0
  72. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/ping_signal.py +0 -0
  73. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/send_text.py +0 -0
  74. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/send_text_data.py +0 -0
  75. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/speech_to_text_job_parameters.py +0 -0
  76. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/speech_to_text_response.py +0 -0
  77. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/speech_to_text_response_data.py +0 -0
  78. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/speech_to_text_streaming_response.py +0 -0
  79. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/speech_to_text_transcription_data.py +0 -0
  80. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/speech_to_text_translate_job_parameters.py +0 -0
  81. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/speech_to_text_translate_response.py +0 -0
  82. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/speech_to_text_translate_response_data.py +0 -0
  83. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/speech_to_text_translate_streaming_response.py +0 -0
  84. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/speech_to_text_translate_transcription_data.py +0 -0
  85. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/stop_configuration.py +0 -0
  86. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/task_detail_v_1.py +0 -0
  87. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/task_file_details.py +0 -0
  88. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/text_to_speech_response.py +0 -0
  89. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/timestamps_model.py +0 -0
  90. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/transcription_metrics.py +0 -0
  91. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/translation_response.py +0 -0
  92. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/requests/transliteration_response.py +0 -0
  93. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text/__init__.py +0 -0
  94. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text/client.py +0 -0
  95. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text/raw_client.py +0 -0
  96. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_job/__init__.py +0 -0
  97. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_job/client.py +0 -0
  98. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_job/job.py +0 -0
  99. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_job/raw_client.py +0 -0
  100. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_streaming/__init__.py +0 -0
  101. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_streaming/client.py +0 -0
  102. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_streaming/raw_client.py +0 -0
  103. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_streaming/socket_client.py +0 -0
  104. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_streaming/types/__init__.py +0 -0
  105. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_streaming/types/speech_to_text_streaming_flush_signal.py +0 -0
  106. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_streaming/types/speech_to_text_streaming_high_vad_sensitivity.py +0 -0
  107. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_streaming/types/speech_to_text_streaming_language_code.py +0 -0
  108. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_streaming/types/speech_to_text_streaming_model.py +0 -0
  109. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_streaming/types/speech_to_text_streaming_vad_signals.py +0 -0
  110. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_translate_job/__init__.py +0 -0
  111. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_translate_job/client.py +0 -0
  112. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_translate_job/job.py +0 -0
  113. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_translate_job/raw_client.py +0 -0
  114. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_translate_streaming/__init__.py +0 -0
  115. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_translate_streaming/client.py +0 -0
  116. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_translate_streaming/raw_client.py +0 -0
  117. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_translate_streaming/types/__init__.py +0 -0
  118. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_translate_streaming/types/speech_to_text_translate_streaming_flush_signal.py +0 -0
  119. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_translate_streaming/types/speech_to_text_translate_streaming_high_vad_sensitivity.py +0 -0
  120. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_translate_streaming/types/speech_to_text_translate_streaming_model.py +0 -0
  121. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/speech_to_text_translate_streaming/types/speech_to_text_translate_streaming_vad_signals.py +0 -0
  122. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/text/__init__.py +0 -0
  123. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/text/client.py +0 -0
  124. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/text/raw_client.py +0 -0
  125. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/text_to_speech/__init__.py +0 -0
  126. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/text_to_speech/client.py +0 -0
  127. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/text_to_speech/raw_client.py +0 -0
  128. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/text_to_speech_streaming/__init__.py +0 -0
  129. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/text_to_speech_streaming/client.py +0 -0
  130. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/text_to_speech_streaming/raw_client.py +0 -0
  131. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/text_to_speech_streaming/socket_client.py +0 -0
  132. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/__init__.py +0 -0
  133. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/audio_data.py +0 -0
  134. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/audio_message.py +0 -0
  135. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/audio_output.py +0 -0
  136. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/audio_output_data.py +0 -0
  137. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/base_job_parameters.py +0 -0
  138. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/bulk_job_callback.py +0 -0
  139. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/bulk_job_init_response_v_1.py +0 -0
  140. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/chat_completion_request_assistant_message.py +0 -0
  141. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/chat_completion_request_message.py +0 -0
  142. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/chat_completion_request_system_message.py +0 -0
  143. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/chat_completion_request_user_message.py +0 -0
  144. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/chat_completion_response_message.py +0 -0
  145. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/choice.py +0 -0
  146. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/completion_usage.py +0 -0
  147. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/configure_connection.py +0 -0
  148. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/configure_connection_data.py +0 -0
  149. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/configure_connection_data_output_audio_bitrate.py +0 -0
  150. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/configure_connection_data_output_audio_codec.py +0 -0
  151. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/configure_connection_data_speaker.py +0 -0
  152. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/configure_connection_data_target_language_code.py +0 -0
  153. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/create_chat_completion_response.py +0 -0
  154. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/diarized_entry.py +0 -0
  155. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/diarized_transcript.py +0 -0
  156. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/error_code.py +0 -0
  157. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/error_data.py +0 -0
  158. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/error_details.py +0 -0
  159. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/error_message.py +0 -0
  160. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/error_response.py +0 -0
  161. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/error_response_data.py +0 -0
  162. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/events_data.py +0 -0
  163. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/events_data_signal_type.py +0 -0
  164. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/file_signed_url_details.py +0 -0
  165. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/files_download_response.py +0 -0
  166. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/files_request.py +0 -0
  167. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/files_upload_response.py +0 -0
  168. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/finish_reason.py +0 -0
  169. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/flush_signal.py +0 -0
  170. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/input_audio_codec.py +0 -0
  171. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/job_state.py +0 -0
  172. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/job_status_v_1_response.py +0 -0
  173. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/language_identification_response.py +0 -0
  174. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/numerals_format.py +0 -0
  175. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/ping_signal.py +0 -0
  176. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/reasoning_effort.py +0 -0
  177. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/response_type.py +0 -0
  178. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/role.py +0 -0
  179. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/sarvam_model_ids.py +0 -0
  180. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/send_text.py +0 -0
  181. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/send_text_data.py +0 -0
  182. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/speech_sample_rate.py +0 -0
  183. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/speech_to_text_job_parameters.py +0 -0
  184. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/speech_to_text_language.py +0 -0
  185. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/speech_to_text_model.py +0 -0
  186. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/speech_to_text_response.py +0 -0
  187. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/speech_to_text_response_data.py +0 -0
  188. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/speech_to_text_streaming_response.py +0 -0
  189. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/speech_to_text_transcription_data.py +0 -0
  190. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/speech_to_text_translate_job_parameters.py +0 -0
  191. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/speech_to_text_translate_language.py +0 -0
  192. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/speech_to_text_translate_model.py +0 -0
  193. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/speech_to_text_translate_response.py +0 -0
  194. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/speech_to_text_translate_response_data.py +0 -0
  195. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/speech_to_text_translate_streaming_response.py +0 -0
  196. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/speech_to_text_translate_transcription_data.py +0 -0
  197. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/spoken_form_numerals_format.py +0 -0
  198. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/stop_configuration.py +0 -0
  199. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/storage_container_type.py +0 -0
  200. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/task_detail_v_1.py +0 -0
  201. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/task_file_details.py +0 -0
  202. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/task_state.py +0 -0
  203. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/text_to_speech_language.py +0 -0
  204. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/text_to_speech_model.py +0 -0
  205. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/text_to_speech_output_audio_codec.py +0 -0
  206. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/text_to_speech_response.py +0 -0
  207. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/text_to_speech_speaker.py +0 -0
  208. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/timestamps_model.py +0 -0
  209. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/transcription_metrics.py +0 -0
  210. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/translate_mode.py +0 -0
  211. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/translate_model.py +0 -0
  212. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/translate_source_language.py +0 -0
  213. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/translate_speaker_gender.py +0 -0
  214. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/translate_target_language.py +0 -0
  215. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/translation_response.py +0 -0
  216. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/translatiterate_target_language.py +0 -0
  217. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/transliterate_mode.py +0 -0
  218. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/transliterate_source_language.py +0 -0
  219. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/types/transliteration_response.py +0 -0
  220. {sarvamai-0.1.19a2 → sarvamai-0.1.19a4}/src/sarvamai/version.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sarvamai
3
- Version: 0.1.19a2
3
+ Version: 0.1.19a4
4
4
  Summary:
5
5
  Requires-Python: >=3.8,<4.0
6
6
  Classifier: Intended Audience :: Developers
@@ -3,7 +3,7 @@ name = "sarvamai"
3
3
 
4
4
  [tool.poetry]
5
5
  name = "sarvamai"
6
- version = "0.1.19a2"
6
+ version = "0.1.19a4"
7
7
  description = ""
8
8
  readme = "README.md"
9
9
  authors = []
@@ -23,10 +23,10 @@ class BaseClientWrapper:
23
23
 
24
24
  def get_headers(self) -> typing.Dict[str, str]:
25
25
  headers: typing.Dict[str, str] = {
26
- "User-Agent": "sarvamai/0.1.19a2",
26
+ "User-Agent": "sarvamai/0.1.19a4",
27
27
  "X-Fern-Language": "Python",
28
28
  "X-Fern-SDK-Name": "sarvamai",
29
- "X-Fern-SDK-Version": "0.1.19a2",
29
+ "X-Fern-SDK-Version": "0.1.19a4",
30
30
  **(self.get_custom_headers() or {}),
31
31
  }
32
32
  headers["api-subscription-key"] = self.api_subscription_key
@@ -13,5 +13,5 @@ class ConfigMessageParams(typing_extensions.TypedDict):
13
13
 
14
14
  prompt: typing_extensions.NotRequired[str]
15
15
  """
16
- Prompt for ASR model to improve transcription accuracy
16
+ Prompt for ASR model to improve transcription accuracy.
17
17
  """
@@ -14,8 +14,3 @@ class SttFlushSignalParams(typing_extensions.TypedDict):
14
14
  """
15
15
  Type identifier for flush signal
16
16
  """
17
-
18
- reason: typing_extensions.NotRequired[str]
19
- """
20
- Optional reason for flushing (e.g., "end_of_segment", "manual_flush")
21
- """
@@ -10,9 +10,14 @@ from ..core.pydantic_utilities import parse_obj_as
10
10
  from ..types.audio_data import AudioData
11
11
  from ..types.audio_message import AudioMessage
12
12
  from ..types.config_message import ConfigMessage
13
- from ..types.speech_to_text_translate_streaming_response import SpeechToTextTranslateStreamingResponse
13
+ from ..types.speech_to_text_translate_streaming_response import (
14
+ SpeechToTextTranslateStreamingResponse,
15
+ )
16
+ from ..types.stt_flush_signal import SttFlushSignal
14
17
 
15
- SpeechToTextTranslateStreamingSocketClientResponse = typing.Union[SpeechToTextTranslateStreamingResponse]
18
+ SpeechToTextTranslateStreamingSocketClientResponse = typing.Union[
19
+ SpeechToTextTranslateStreamingResponse
20
+ ]
16
21
 
17
22
 
18
23
  class AsyncSpeechToTextTranslateStreamingSocketClient(EventEmitterMixin):
@@ -38,7 +43,11 @@ class AsyncSpeechToTextTranslateStreamingSocketClient(EventEmitterMixin):
38
43
  self._emit(EventType.OPEN, None)
39
44
  try:
40
45
  async for raw_message in self._websocket:
41
- raw_message = json.loads(raw_message) if isinstance(raw_message, str) else raw_message
46
+ raw_message = (
47
+ json.loads(raw_message)
48
+ if isinstance(raw_message, str)
49
+ else raw_message
50
+ )
42
51
  parsed = parse_obj_as(SpeechToTextTranslateStreamingSocketClientResponse, raw_message) # type: ignore
43
52
  self._emit(EventType.MESSAGE, parsed)
44
53
  except websockets.WebSocketException as exc:
@@ -46,7 +55,9 @@ class AsyncSpeechToTextTranslateStreamingSocketClient(EventEmitterMixin):
46
55
  finally:
47
56
  self._emit(EventType.CLOSE, None)
48
57
 
49
- async def translate(self, audio: str, encoding: str = "audio/wav", sample_rate: int = 16000):
58
+ async def translate(
59
+ self, audio: str, encoding: str = "audio/wav", sample_rate: int = 16000
60
+ ):
50
61
  """
51
62
  Sends audio translation request to the server.
52
63
  :param audio: Base64 encoded audio data
@@ -54,7 +65,9 @@ class AsyncSpeechToTextTranslateStreamingSocketClient(EventEmitterMixin):
54
65
  :param sample_rate (Optional): Audio sample rate in Hz (default is 16000)
55
66
  """
56
67
  return await self._send_speech_to_text_translate_streaming_audio_message(
57
- message=AudioMessage(audio=AudioData(data=audio, encoding=encoding, sample_rate=sample_rate))
68
+ message=AudioMessage(
69
+ audio=AudioData(data=audio, encoding=encoding, sample_rate=sample_rate)
70
+ )
58
71
  )
59
72
 
60
73
  async def set_prompt(self, prompt: str) -> None:
@@ -66,15 +79,31 @@ class AsyncSpeechToTextTranslateStreamingSocketClient(EventEmitterMixin):
66
79
  message = ConfigMessage(prompt=prompt)
67
80
  await self._send_config_message(message)
68
81
 
82
+ async def flush(self, reason: typing.Optional[str] = None) -> None:
83
+ """
84
+ Signal to flush the audio buffer and force finalize partial
85
+ transcriptions and translations. Use this to force processing of any
86
+ remaining audio that hasn't been transcribed and translated yet.
87
+
88
+ :param reason: Optional reason for flushing (e.g., "end_of_segment",
89
+ "manual_flush")
90
+ """
91
+ message = SttFlushSignal(reason=reason)
92
+ await self._send_model(message)
93
+
69
94
  async def recv(self) -> SpeechToTextTranslateStreamingSocketClientResponse:
70
95
  """
71
96
  Receive a message from the websocket connection.
72
97
  """
73
98
  data = await self._websocket.recv()
74
99
  data = json.loads(data) if isinstance(data, str) else data
75
- return parse_obj_as(SpeechToTextTranslateStreamingSocketClientResponse, data) # type: ignore
100
+ return parse_obj_as(
101
+ SpeechToTextTranslateStreamingSocketClientResponse, data
102
+ ) # type: ignore
76
103
 
77
- async def _send_speech_to_text_translate_streaming_audio_message(self, message: AudioMessage) -> None:
104
+ async def _send_speech_to_text_translate_streaming_audio_message(
105
+ self, message: AudioMessage
106
+ ) -> None:
78
107
  """
79
108
  Send a message to the websocket connection.
80
109
  The message will be sent as a AudioMessage.
@@ -126,7 +155,11 @@ class SpeechToTextTranslateStreamingSocketClient(EventEmitterMixin):
126
155
  self._emit(EventType.OPEN, None)
127
156
  try:
128
157
  for raw_message in self._websocket:
129
- raw_message = json.loads(raw_message) if isinstance(raw_message, str) else raw_message
158
+ raw_message = (
159
+ json.loads(raw_message)
160
+ if isinstance(raw_message, str)
161
+ else raw_message
162
+ )
130
163
  parsed = parse_obj_as(SpeechToTextTranslateStreamingSocketClientResponse, raw_message) # type: ignore
131
164
  self._emit(EventType.MESSAGE, parsed)
132
165
  except websockets.WebSocketException as exc:
@@ -134,7 +167,9 @@ class SpeechToTextTranslateStreamingSocketClient(EventEmitterMixin):
134
167
  finally:
135
168
  self._emit(EventType.CLOSE, None)
136
169
 
137
- def translate(self, audio: str, encoding: str = "audio/wav", sample_rate: int = 16000):
170
+ def translate(
171
+ self, audio: str, encoding: str = "audio/wav", sample_rate: int = 16000
172
+ ):
138
173
  """
139
174
  Sends audio translation request to the server.
140
175
  :param audio: Base64 encoded audio data
@@ -142,7 +177,9 @@ class SpeechToTextTranslateStreamingSocketClient(EventEmitterMixin):
142
177
  :param sample_rate: Audio sample rate in Hz (default is 16000)
143
178
  """
144
179
  return self._send_speech_to_text_translate_streaming_audio_message(
145
- message=AudioMessage(audio=AudioData(data=audio, encoding=encoding, sample_rate=sample_rate))
180
+ message=AudioMessage(
181
+ audio=AudioData(data=audio, encoding=encoding, sample_rate=sample_rate)
182
+ )
146
183
  )
147
184
 
148
185
  def set_prompt(self, prompt: str) -> None:
@@ -154,6 +191,18 @@ class SpeechToTextTranslateStreamingSocketClient(EventEmitterMixin):
154
191
  message = ConfigMessage(prompt=prompt)
155
192
  self._send_config_message(message)
156
193
 
194
+ def flush(self, reason: typing.Optional[str] = None) -> None:
195
+ """
196
+ Signal to flush the audio buffer and force finalize partial transcriptions and translations.
197
+ Use this to force processing of any remaining audio that hasn't been
198
+ transcribed and translated yet.
199
+
200
+ :param reason: Optional reason for flushing (e.g., "end_of_segment",
201
+ "manual_flush")
202
+ """
203
+ message = SttFlushSignal(reason=reason)
204
+ self._send_model(message)
205
+
157
206
  def recv(self) -> SpeechToTextTranslateStreamingSocketClientResponse:
158
207
  """
159
208
  Receive a message from the websocket connection.
@@ -169,7 +218,9 @@ class SpeechToTextTranslateStreamingSocketClient(EventEmitterMixin):
169
218
  """
170
219
  self._send_model(message)
171
220
 
172
- def _send_speech_to_text_translate_streaming_audio_message(self, message: AudioMessage) -> None:
221
+ def _send_speech_to_text_translate_streaming_audio_message(
222
+ self, message: AudioMessage
223
+ ) -> None:
173
224
  """
174
225
  Send a message to the websocket connection.
175
226
  The message will be sent as a AudioMessage.
@@ -14,7 +14,7 @@ class ConfigMessage(UniversalBaseModel):
14
14
 
15
15
  prompt: typing.Optional[str] = pydantic.Field(default=None)
16
16
  """
17
- Prompt for ASR model to improve transcription accuracy
17
+ Prompt for ASR model to improve transcription accuracy.
18
18
  """
19
19
 
20
20
  if IS_PYDANTIC_V2:
@@ -16,11 +16,6 @@ class SttFlushSignal(UniversalBaseModel):
16
16
  Type identifier for flush signal
17
17
  """
18
18
 
19
- reason: typing.Optional[str] = pydantic.Field(default=None)
20
- """
21
- Optional reason for flushing (e.g., "end_of_segment", "manual_flush")
22
- """
23
-
24
19
  if IS_PYDANTIC_V2:
25
20
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
26
21
  else:
File without changes