openai 0.20.0 → 0.21.0

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 (332) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +13 -0
  3. data/README.md +1 -1
  4. data/lib/openai/client.rb +4 -0
  5. data/lib/openai/internal/stream.rb +3 -2
  6. data/lib/openai/models/audio/speech_create_params.rb +6 -0
  7. data/lib/openai/models/chat/chat_completion_audio_param.rb +6 -0
  8. data/lib/openai/models/evals/run_cancel_response.rb +2 -2
  9. data/lib/openai/models/evals/run_create_params.rb +2 -2
  10. data/lib/openai/models/evals/run_create_response.rb +2 -2
  11. data/lib/openai/models/evals/run_list_response.rb +2 -2
  12. data/lib/openai/models/evals/run_retrieve_response.rb +2 -2
  13. data/lib/openai/models/realtime/client_secret_create_params.rb +93 -0
  14. data/lib/openai/models/realtime/client_secret_create_response.rb +300 -0
  15. data/lib/openai/models/realtime/conversation_created_event.rb +70 -0
  16. data/lib/openai/models/realtime/conversation_item.rb +44 -0
  17. data/lib/openai/models/realtime/conversation_item_added.rb +48 -0
  18. data/lib/openai/models/realtime/conversation_item_create_event.rb +57 -0
  19. data/lib/openai/models/realtime/conversation_item_created_event.rb +59 -0
  20. data/lib/openai/models/realtime/conversation_item_delete_event.rb +39 -0
  21. data/lib/openai/models/realtime/conversation_item_deleted_event.rb +38 -0
  22. data/lib/openai/models/realtime/conversation_item_done.rb +48 -0
  23. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_completed_event.rb +189 -0
  24. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rb +63 -0
  25. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_failed_event.rb +96 -0
  26. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_segment.rb +84 -0
  27. data/lib/openai/models/realtime/conversation_item_retrieve_event.rb +40 -0
  28. data/lib/openai/models/realtime/conversation_item_truncate_event.rb +68 -0
  29. data/lib/openai/models/realtime/conversation_item_truncated_event.rb +60 -0
  30. data/lib/openai/models/realtime/conversation_item_with_reference.rb +235 -0
  31. data/lib/openai/models/realtime/input_audio_buffer_append_event.rb +49 -0
  32. data/lib/openai/models/realtime/input_audio_buffer_clear_event.rb +29 -0
  33. data/lib/openai/models/realtime/input_audio_buffer_cleared_event.rb +29 -0
  34. data/lib/openai/models/realtime/input_audio_buffer_commit_event.rb +35 -0
  35. data/lib/openai/models/realtime/input_audio_buffer_committed_event.rb +51 -0
  36. data/lib/openai/models/realtime/input_audio_buffer_speech_started_event.rb +59 -0
  37. data/lib/openai/models/realtime/input_audio_buffer_speech_stopped_event.rb +51 -0
  38. data/lib/openai/models/realtime/input_audio_buffer_timeout_triggered.rb +52 -0
  39. data/lib/openai/models/realtime/log_prob_properties.rb +39 -0
  40. data/lib/openai/models/realtime/mcp_list_tools_completed.rb +36 -0
  41. data/lib/openai/models/realtime/mcp_list_tools_failed.rb +36 -0
  42. data/lib/openai/models/realtime/mcp_list_tools_in_progress.rb +36 -0
  43. data/lib/openai/models/realtime/output_audio_buffer_clear_event.rb +32 -0
  44. data/lib/openai/models/realtime/rate_limits_updated_event.rb +91 -0
  45. data/lib/openai/models/realtime/realtime_audio_config.rb +446 -0
  46. data/lib/openai/models/realtime/realtime_client_event.rb +123 -0
  47. data/lib/openai/models/realtime/realtime_client_secret_config.rb +64 -0
  48. data/lib/openai/models/realtime/realtime_conversation_item_assistant_message.rb +118 -0
  49. data/lib/openai/models/realtime/realtime_conversation_item_function_call.rb +94 -0
  50. data/lib/openai/models/realtime/realtime_conversation_item_function_call_output.rb +86 -0
  51. data/lib/openai/models/realtime/realtime_conversation_item_system_message.rb +118 -0
  52. data/lib/openai/models/realtime/realtime_conversation_item_user_message.rb +135 -0
  53. data/lib/openai/models/realtime/realtime_error.rb +55 -0
  54. data/lib/openai/models/realtime/realtime_error_event.rb +38 -0
  55. data/lib/openai/models/realtime/realtime_mcp_approval_request.rb +52 -0
  56. data/lib/openai/models/realtime/realtime_mcp_approval_response.rb +52 -0
  57. data/lib/openai/models/realtime/realtime_mcp_list_tools.rb +84 -0
  58. data/lib/openai/models/realtime/realtime_mcp_protocol_error.rb +29 -0
  59. data/lib/openai/models/realtime/realtime_mcp_tool_call.rb +94 -0
  60. data/lib/openai/models/realtime/realtime_mcp_tool_execution_error.rb +23 -0
  61. data/lib/openai/models/realtime/realtime_mcphttp_error.rb +29 -0
  62. data/lib/openai/models/realtime/realtime_response.rb +259 -0
  63. data/lib/openai/models/realtime/realtime_response_status.rb +103 -0
  64. data/lib/openai/models/realtime/realtime_response_usage.rb +61 -0
  65. data/lib/openai/models/realtime/realtime_response_usage_input_token_details.rb +36 -0
  66. data/lib/openai/models/realtime/realtime_response_usage_output_token_details.rb +28 -0
  67. data/lib/openai/models/realtime/realtime_server_event.rb +369 -0
  68. data/lib/openai/models/realtime/realtime_session.rb +696 -0
  69. data/lib/openai/models/realtime/realtime_session_create_request.rb +234 -0
  70. data/lib/openai/models/realtime/realtime_session_create_response.rb +579 -0
  71. data/lib/openai/models/realtime/realtime_tool_choice_config.rb +32 -0
  72. data/lib/openai/models/realtime/realtime_tools_config.rb +11 -0
  73. data/lib/openai/models/realtime/realtime_tools_config_union.rb +379 -0
  74. data/lib/openai/models/realtime/realtime_tracing_config.rb +61 -0
  75. data/lib/openai/models/realtime/realtime_transcription_session_create_request.rb +312 -0
  76. data/lib/openai/models/realtime/realtime_truncation.rb +67 -0
  77. data/lib/openai/models/realtime/response_audio_delta_event.rb +68 -0
  78. data/lib/openai/models/realtime/response_audio_done_event.rb +61 -0
  79. data/lib/openai/models/realtime/response_audio_transcript_delta_event.rb +68 -0
  80. data/lib/openai/models/realtime/response_audio_transcript_done_event.rb +70 -0
  81. data/lib/openai/models/realtime/response_cancel_event.rb +42 -0
  82. data/lib/openai/models/realtime/response_content_part_added_event.rb +120 -0
  83. data/lib/openai/models/realtime/response_content_part_done_event.rb +120 -0
  84. data/lib/openai/models/realtime/response_create_event.rb +391 -0
  85. data/lib/openai/models/realtime/response_created_event.rb +37 -0
  86. data/lib/openai/models/realtime/response_done_event.rb +38 -0
  87. data/lib/openai/models/realtime/response_function_call_arguments_delta_event.rb +72 -0
  88. data/lib/openai/models/realtime/response_function_call_arguments_done_event.rb +73 -0
  89. data/lib/openai/models/realtime/response_mcp_call_arguments_delta.rb +68 -0
  90. data/lib/openai/models/realtime/response_mcp_call_arguments_done.rb +60 -0
  91. data/lib/openai/models/realtime/response_mcp_call_completed.rb +44 -0
  92. data/lib/openai/models/realtime/response_mcp_call_failed.rb +44 -0
  93. data/lib/openai/models/realtime/response_mcp_call_in_progress.rb +44 -0
  94. data/lib/openai/models/realtime/response_output_item_added_event.rb +52 -0
  95. data/lib/openai/models/realtime/response_output_item_done_event.rb +53 -0
  96. data/lib/openai/models/realtime/response_text_delta_event.rb +68 -0
  97. data/lib/openai/models/realtime/response_text_done_event.rb +69 -0
  98. data/lib/openai/models/realtime/session_created_event.rb +38 -0
  99. data/lib/openai/models/realtime/session_update_event.rb +44 -0
  100. data/lib/openai/models/realtime/session_updated_event.rb +37 -0
  101. data/lib/openai/models/realtime/transcription_session_created.rb +278 -0
  102. data/lib/openai/models/realtime/transcription_session_update.rb +36 -0
  103. data/lib/openai/models/realtime/transcription_session_updated_event.rb +279 -0
  104. data/lib/openai/models/responses/response.rb +6 -3
  105. data/lib/openai/models/responses/response_create_params.rb +6 -3
  106. data/lib/openai/models/responses/tool.rb +3 -156
  107. data/lib/openai/models/responses/web_search_preview_tool.rb +124 -0
  108. data/lib/openai/models/responses/web_search_tool.rb +58 -21
  109. data/lib/openai/models/webhooks/realtime_call_incoming_webhook_event.rb +119 -0
  110. data/lib/openai/models/webhooks/unwrap_webhook_event.rb +4 -1
  111. data/lib/openai/models.rb +2 -0
  112. data/lib/openai/resources/realtime/client_secrets.rb +44 -0
  113. data/lib/openai/resources/realtime.rb +18 -0
  114. data/lib/openai/resources/responses.rb +2 -2
  115. data/lib/openai/resources/webhooks.rb +1 -1
  116. data/lib/openai/version.rb +1 -1
  117. data/lib/openai.rb +95 -0
  118. data/rbi/openai/client.rbi +3 -0
  119. data/rbi/openai/models/audio/speech_create_params.rbi +10 -0
  120. data/rbi/openai/models/chat/chat_completion_audio_param.rbi +10 -0
  121. data/rbi/openai/models/evals/run_cancel_response.rbi +4 -4
  122. data/rbi/openai/models/evals/run_create_params.rbi +8 -8
  123. data/rbi/openai/models/evals/run_create_response.rbi +4 -4
  124. data/rbi/openai/models/evals/run_list_response.rbi +4 -4
  125. data/rbi/openai/models/evals/run_retrieve_response.rbi +4 -4
  126. data/rbi/openai/models/realtime/client_secret_create_params.rbi +222 -0
  127. data/rbi/openai/models/realtime/client_secret_create_response.rbi +676 -0
  128. data/rbi/openai/models/realtime/conversation_created_event.rbi +164 -0
  129. data/rbi/openai/models/realtime/conversation_item.rbi +35 -0
  130. data/rbi/openai/models/realtime/conversation_item_added.rbi +105 -0
  131. data/rbi/openai/models/realtime/conversation_item_create_event.rbi +123 -0
  132. data/rbi/openai/models/realtime/conversation_item_created_event.rbi +117 -0
  133. data/rbi/openai/models/realtime/conversation_item_delete_event.rbi +57 -0
  134. data/rbi/openai/models/realtime/conversation_item_deleted_event.rbi +53 -0
  135. data/rbi/openai/models/realtime/conversation_item_done.rbi +105 -0
  136. data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_completed_event.rbi +305 -0
  137. data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rbi +93 -0
  138. data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_failed_event.rbi +158 -0
  139. data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_segment.rbi +107 -0
  140. data/rbi/openai/models/realtime/conversation_item_retrieve_event.rbi +58 -0
  141. data/rbi/openai/models/realtime/conversation_item_truncate_event.rbi +94 -0
  142. data/rbi/openai/models/realtime/conversation_item_truncated_event.rbi +80 -0
  143. data/rbi/openai/models/realtime/conversation_item_with_reference.rbi +549 -0
  144. data/rbi/openai/models/realtime/input_audio_buffer_append_event.rbi +65 -0
  145. data/rbi/openai/models/realtime/input_audio_buffer_clear_event.rbi +43 -0
  146. data/rbi/openai/models/realtime/input_audio_buffer_cleared_event.rbi +40 -0
  147. data/rbi/openai/models/realtime/input_audio_buffer_commit_event.rbi +49 -0
  148. data/rbi/openai/models/realtime/input_audio_buffer_committed_event.rbi +72 -0
  149. data/rbi/openai/models/realtime/input_audio_buffer_speech_started_event.rbi +82 -0
  150. data/rbi/openai/models/realtime/input_audio_buffer_speech_stopped_event.rbi +73 -0
  151. data/rbi/openai/models/realtime/input_audio_buffer_timeout_triggered.rbi +75 -0
  152. data/rbi/openai/models/realtime/log_prob_properties.rbi +55 -0
  153. data/rbi/openai/models/realtime/mcp_list_tools_completed.rbi +51 -0
  154. data/rbi/openai/models/realtime/mcp_list_tools_failed.rbi +51 -0
  155. data/rbi/openai/models/realtime/mcp_list_tools_in_progress.rbi +51 -0
  156. data/rbi/openai/models/realtime/output_audio_buffer_clear_event.rbi +46 -0
  157. data/rbi/openai/models/realtime/rate_limits_updated_event.rbi +187 -0
  158. data/rbi/openai/models/realtime/realtime_audio_config.rbi +1004 -0
  159. data/rbi/openai/models/realtime/realtime_client_event.rbi +38 -0
  160. data/rbi/openai/models/realtime/realtime_client_secret_config.rbi +147 -0
  161. data/rbi/openai/models/realtime/realtime_conversation_item_assistant_message.rbi +292 -0
  162. data/rbi/openai/models/realtime/realtime_conversation_item_function_call.rbi +199 -0
  163. data/rbi/openai/models/realtime/realtime_conversation_item_function_call_output.rbi +188 -0
  164. data/rbi/openai/models/realtime/realtime_conversation_item_system_message.rbi +292 -0
  165. data/rbi/openai/models/realtime/realtime_conversation_item_user_message.rbi +319 -0
  166. data/rbi/openai/models/realtime/realtime_error.rbi +72 -0
  167. data/rbi/openai/models/realtime/realtime_error_event.rbi +64 -0
  168. data/rbi/openai/models/realtime/realtime_mcp_approval_request.rbi +75 -0
  169. data/rbi/openai/models/realtime/realtime_mcp_approval_response.rbi +75 -0
  170. data/rbi/openai/models/realtime/realtime_mcp_list_tools.rbi +131 -0
  171. data/rbi/openai/models/realtime/realtime_mcp_protocol_error.rbi +40 -0
  172. data/rbi/openai/models/realtime/realtime_mcp_tool_call.rbi +145 -0
  173. data/rbi/openai/models/realtime/realtime_mcp_tool_execution_error.rbi +31 -0
  174. data/rbi/openai/models/realtime/realtime_mcphttp_error.rbi +40 -0
  175. data/rbi/openai/models/realtime/realtime_response.rbi +573 -0
  176. data/rbi/openai/models/realtime/realtime_response_status.rbi +233 -0
  177. data/rbi/openai/models/realtime/realtime_response_usage.rbi +121 -0
  178. data/rbi/openai/models/realtime/realtime_response_usage_input_token_details.rbi +68 -0
  179. data/rbi/openai/models/realtime/realtime_response_usage_output_token_details.rbi +51 -0
  180. data/rbi/openai/models/realtime/realtime_server_event.rbi +311 -0
  181. data/rbi/openai/models/realtime/realtime_session.rbi +1426 -0
  182. data/rbi/openai/models/realtime/realtime_session_create_request.rbi +560 -0
  183. data/rbi/openai/models/realtime/realtime_session_create_response.rbi +1249 -0
  184. data/rbi/openai/models/realtime/realtime_tool_choice_config.rbi +30 -0
  185. data/rbi/openai/models/realtime/realtime_tools_config.rbi +15 -0
  186. data/rbi/openai/models/realtime/realtime_tools_config_union.rbi +755 -0
  187. data/rbi/openai/models/realtime/realtime_tracing_config.rbi +95 -0
  188. data/rbi/openai/models/realtime/realtime_transcription_session_create_request.rbi +703 -0
  189. data/rbi/openai/models/realtime/realtime_truncation.rbi +117 -0
  190. data/rbi/openai/models/realtime/response_audio_delta_event.rbi +91 -0
  191. data/rbi/openai/models/realtime/response_audio_done_event.rbi +84 -0
  192. data/rbi/openai/models/realtime/response_audio_transcript_delta_event.rbi +91 -0
  193. data/rbi/openai/models/realtime/response_audio_transcript_done_event.rbi +93 -0
  194. data/rbi/openai/models/realtime/response_cancel_event.rbi +63 -0
  195. data/rbi/openai/models/realtime/response_content_part_added_event.rbi +219 -0
  196. data/rbi/openai/models/realtime/response_content_part_done_event.rbi +219 -0
  197. data/rbi/openai/models/realtime/response_create_event.rbi +863 -0
  198. data/rbi/openai/models/realtime/response_created_event.rbi +65 -0
  199. data/rbi/openai/models/realtime/response_done_event.rbi +66 -0
  200. data/rbi/openai/models/realtime/response_function_call_arguments_delta_event.rbi +91 -0
  201. data/rbi/openai/models/realtime/response_function_call_arguments_done_event.rbi +92 -0
  202. data/rbi/openai/models/realtime/response_mcp_call_arguments_delta.rbi +91 -0
  203. data/rbi/openai/models/realtime/response_mcp_call_arguments_done.rbi +83 -0
  204. data/rbi/openai/models/realtime/response_mcp_call_completed.rbi +67 -0
  205. data/rbi/openai/models/realtime/response_mcp_call_failed.rbi +67 -0
  206. data/rbi/openai/models/realtime/response_mcp_call_in_progress.rbi +67 -0
  207. data/rbi/openai/models/realtime/response_output_item_added_event.rbi +111 -0
  208. data/rbi/openai/models/realtime/response_output_item_done_event.rbi +112 -0
  209. data/rbi/openai/models/realtime/response_text_delta_event.rbi +91 -0
  210. data/rbi/openai/models/realtime/response_text_done_event.rbi +92 -0
  211. data/rbi/openai/models/realtime/session_created_event.rbi +64 -0
  212. data/rbi/openai/models/realtime/session_update_event.rbi +77 -0
  213. data/rbi/openai/models/realtime/session_updated_event.rbi +63 -0
  214. data/rbi/openai/models/realtime/transcription_session_created.rbi +653 -0
  215. data/rbi/openai/models/realtime/transcription_session_update.rbi +74 -0
  216. data/rbi/openai/models/realtime/transcription_session_updated_event.rbi +657 -0
  217. data/rbi/openai/models/responses/response.rbi +10 -4
  218. data/rbi/openai/models/responses/response_create_params.rbi +16 -10
  219. data/rbi/openai/models/responses/tool.rbi +2 -348
  220. data/rbi/openai/models/responses/web_search_preview_tool.rbi +245 -0
  221. data/rbi/openai/models/responses/web_search_tool.rbi +120 -23
  222. data/rbi/openai/models/webhooks/realtime_call_incoming_webhook_event.rbi +222 -0
  223. data/rbi/openai/models/webhooks/unwrap_webhook_event.rbi +1 -0
  224. data/rbi/openai/models.rbi +2 -0
  225. data/rbi/openai/resources/realtime/client_secrets.rbi +38 -0
  226. data/rbi/openai/resources/realtime.rbi +15 -0
  227. data/rbi/openai/resources/responses.rbi +12 -6
  228. data/rbi/openai/resources/webhooks.rbi +1 -0
  229. data/sig/openai/client.rbs +2 -0
  230. data/sig/openai/models/audio/speech_create_params.rbs +4 -0
  231. data/sig/openai/models/chat/chat_completion_audio_param.rbs +4 -0
  232. data/sig/openai/models/realtime/client_secret_create_params.rbs +89 -0
  233. data/sig/openai/models/realtime/client_secret_create_response.rbs +292 -0
  234. data/sig/openai/models/realtime/conversation_created_event.rbs +70 -0
  235. data/sig/openai/models/realtime/conversation_item.rbs +22 -0
  236. data/sig/openai/models/realtime/conversation_item_added.rbs +37 -0
  237. data/sig/openai/models/realtime/conversation_item_create_event.rbs +41 -0
  238. data/sig/openai/models/realtime/conversation_item_created_event.rbs +37 -0
  239. data/sig/openai/models/realtime/conversation_item_delete_event.rbs +30 -0
  240. data/sig/openai/models/realtime/conversation_item_deleted_event.rbs +32 -0
  241. data/sig/openai/models/realtime/conversation_item_done.rbs +37 -0
  242. data/sig/openai/models/realtime/conversation_item_input_audio_transcription_completed_event.rbs +136 -0
  243. data/sig/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rbs +51 -0
  244. data/sig/openai/models/realtime/conversation_item_input_audio_transcription_failed_event.rbs +77 -0
  245. data/sig/openai/models/realtime/conversation_item_input_audio_transcription_segment.rbs +62 -0
  246. data/sig/openai/models/realtime/conversation_item_retrieve_event.rbs +34 -0
  247. data/sig/openai/models/realtime/conversation_item_truncate_event.rbs +44 -0
  248. data/sig/openai/models/realtime/conversation_item_truncated_event.rbs +42 -0
  249. data/sig/openai/models/realtime/conversation_item_with_reference.rbs +207 -0
  250. data/sig/openai/models/realtime/input_audio_buffer_append_event.rbs +30 -0
  251. data/sig/openai/models/realtime/input_audio_buffer_clear_event.rbs +23 -0
  252. data/sig/openai/models/realtime/input_audio_buffer_cleared_event.rbs +24 -0
  253. data/sig/openai/models/realtime/input_audio_buffer_commit_event.rbs +23 -0
  254. data/sig/openai/models/realtime/input_audio_buffer_committed_event.rbs +37 -0
  255. data/sig/openai/models/realtime/input_audio_buffer_speech_started_event.rbs +37 -0
  256. data/sig/openai/models/realtime/input_audio_buffer_speech_stopped_event.rbs +37 -0
  257. data/sig/openai/models/realtime/input_audio_buffer_timeout_triggered.rbs +42 -0
  258. data/sig/openai/models/realtime/log_prob_properties.rbs +28 -0
  259. data/sig/openai/models/realtime/mcp_list_tools_completed.rbs +28 -0
  260. data/sig/openai/models/realtime/mcp_list_tools_failed.rbs +28 -0
  261. data/sig/openai/models/realtime/mcp_list_tools_in_progress.rbs +32 -0
  262. data/sig/openai/models/realtime/output_audio_buffer_clear_event.rbs +23 -0
  263. data/sig/openai/models/realtime/rate_limits_updated_event.rbs +85 -0
  264. data/sig/openai/models/realtime/realtime_audio_config.rbs +354 -0
  265. data/sig/openai/models/realtime/realtime_client_event.rbs +25 -0
  266. data/sig/openai/models/realtime/realtime_client_secret_config.rbs +60 -0
  267. data/sig/openai/models/realtime/realtime_conversation_item_assistant_message.rbs +117 -0
  268. data/sig/openai/models/realtime/realtime_conversation_item_function_call.rbs +86 -0
  269. data/sig/openai/models/realtime/realtime_conversation_item_function_call_output.rbs +79 -0
  270. data/sig/openai/models/realtime/realtime_conversation_item_system_message.rbs +117 -0
  271. data/sig/openai/models/realtime/realtime_conversation_item_user_message.rbs +132 -0
  272. data/sig/openai/models/realtime/realtime_error.rbs +42 -0
  273. data/sig/openai/models/realtime/realtime_error_event.rbs +32 -0
  274. data/sig/openai/models/realtime/realtime_mcp_approval_request.rbs +42 -0
  275. data/sig/openai/models/realtime/realtime_mcp_approval_response.rbs +42 -0
  276. data/sig/openai/models/realtime/realtime_mcp_list_tools.rbs +71 -0
  277. data/sig/openai/models/realtime/realtime_mcp_protocol_error.rbs +28 -0
  278. data/sig/openai/models/realtime/realtime_mcp_tool_call.rbs +68 -0
  279. data/sig/openai/models/realtime/realtime_mcp_tool_execution_error.rbs +18 -0
  280. data/sig/openai/models/realtime/realtime_mcphttp_error.rbs +24 -0
  281. data/sig/openai/models/realtime/realtime_response.rbs +210 -0
  282. data/sig/openai/models/realtime/realtime_response_status.rbs +90 -0
  283. data/sig/openai/models/realtime/realtime_response_usage.rbs +56 -0
  284. data/sig/openai/models/realtime/realtime_response_usage_input_token_details.rbs +34 -0
  285. data/sig/openai/models/realtime/realtime_response_usage_output_token_details.rbs +22 -0
  286. data/sig/openai/models/realtime/realtime_server_event.rbs +168 -0
  287. data/sig/openai/models/realtime/realtime_session.rbs +521 -0
  288. data/sig/openai/models/realtime/realtime_session_create_request.rbs +178 -0
  289. data/sig/openai/models/realtime/realtime_session_create_response.rbs +526 -0
  290. data/sig/openai/models/realtime/realtime_tool_choice_config.rbs +16 -0
  291. data/sig/openai/models/realtime/realtime_tools_config.rbs +10 -0
  292. data/sig/openai/models/realtime/realtime_tools_config_union.rbs +280 -0
  293. data/sig/openai/models/realtime/realtime_tracing_config.rbs +43 -0
  294. data/sig/openai/models/realtime/realtime_transcription_session_create_request.rbs +242 -0
  295. data/sig/openai/models/realtime/realtime_truncation.rbs +53 -0
  296. data/sig/openai/models/realtime/response_audio_delta_event.rbs +52 -0
  297. data/sig/openai/models/realtime/response_audio_done_event.rbs +47 -0
  298. data/sig/openai/models/realtime/response_audio_transcript_delta_event.rbs +52 -0
  299. data/sig/openai/models/realtime/response_audio_transcript_done_event.rbs +52 -0
  300. data/sig/openai/models/realtime/response_cancel_event.rbs +32 -0
  301. data/sig/openai/models/realtime/response_content_part_added_event.rbs +105 -0
  302. data/sig/openai/models/realtime/response_content_part_done_event.rbs +105 -0
  303. data/sig/openai/models/realtime/response_create_event.rbs +281 -0
  304. data/sig/openai/models/realtime/response_created_event.rbs +32 -0
  305. data/sig/openai/models/realtime/response_done_event.rbs +32 -0
  306. data/sig/openai/models/realtime/response_function_call_arguments_delta_event.rbs +52 -0
  307. data/sig/openai/models/realtime/response_function_call_arguments_done_event.rbs +52 -0
  308. data/sig/openai/models/realtime/response_mcp_call_arguments_delta.rbs +52 -0
  309. data/sig/openai/models/realtime/response_mcp_call_arguments_done.rbs +47 -0
  310. data/sig/openai/models/realtime/response_mcp_call_completed.rbs +37 -0
  311. data/sig/openai/models/realtime/response_mcp_call_failed.rbs +37 -0
  312. data/sig/openai/models/realtime/response_mcp_call_in_progress.rbs +37 -0
  313. data/sig/openai/models/realtime/response_output_item_added_event.rbs +42 -0
  314. data/sig/openai/models/realtime/response_output_item_done_event.rbs +42 -0
  315. data/sig/openai/models/realtime/response_text_delta_event.rbs +52 -0
  316. data/sig/openai/models/realtime/response_text_done_event.rbs +52 -0
  317. data/sig/openai/models/realtime/session_created_event.rbs +32 -0
  318. data/sig/openai/models/realtime/session_update_event.rbs +34 -0
  319. data/sig/openai/models/realtime/session_updated_event.rbs +32 -0
  320. data/sig/openai/models/realtime/transcription_session_created.rbs +282 -0
  321. data/sig/openai/models/realtime/transcription_session_update.rbs +34 -0
  322. data/sig/openai/models/realtime/transcription_session_updated_event.rbs +282 -0
  323. data/sig/openai/models/responses/tool.rbs +1 -121
  324. data/sig/openai/models/responses/web_search_preview_tool.rbs +96 -0
  325. data/sig/openai/models/responses/web_search_tool.rbs +39 -10
  326. data/sig/openai/models/webhooks/realtime_call_incoming_webhook_event.rbs +90 -0
  327. data/sig/openai/models/webhooks/unwrap_webhook_event.rbs +1 -0
  328. data/sig/openai/models.rbs +2 -0
  329. data/sig/openai/resources/realtime/client_secrets.rbs +15 -0
  330. data/sig/openai/resources/realtime.rbs +9 -0
  331. data/sig/openai/resources/webhooks.rbs +1 -0
  332. metadata +287 -2
@@ -0,0 +1,32 @@
1
+ module OpenAI
2
+ module Models
3
+ module Realtime
4
+ type response_created_event =
5
+ {
6
+ event_id: String,
7
+ response: OpenAI::Realtime::RealtimeResponse,
8
+ type: :"response.created"
9
+ }
10
+
11
+ class ResponseCreatedEvent < OpenAI::Internal::Type::BaseModel
12
+ attr_accessor event_id: String
13
+
14
+ attr_accessor response: OpenAI::Realtime::RealtimeResponse
15
+
16
+ attr_accessor type: :"response.created"
17
+
18
+ def initialize: (
19
+ event_id: String,
20
+ response: OpenAI::Realtime::RealtimeResponse,
21
+ ?type: :"response.created"
22
+ ) -> void
23
+
24
+ def to_hash: -> {
25
+ event_id: String,
26
+ response: OpenAI::Realtime::RealtimeResponse,
27
+ type: :"response.created"
28
+ }
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,32 @@
1
+ module OpenAI
2
+ module Models
3
+ module Realtime
4
+ type response_done_event =
5
+ {
6
+ event_id: String,
7
+ response: OpenAI::Realtime::RealtimeResponse,
8
+ type: :"response.done"
9
+ }
10
+
11
+ class ResponseDoneEvent < OpenAI::Internal::Type::BaseModel
12
+ attr_accessor event_id: String
13
+
14
+ attr_accessor response: OpenAI::Realtime::RealtimeResponse
15
+
16
+ attr_accessor type: :"response.done"
17
+
18
+ def initialize: (
19
+ event_id: String,
20
+ response: OpenAI::Realtime::RealtimeResponse,
21
+ ?type: :"response.done"
22
+ ) -> void
23
+
24
+ def to_hash: -> {
25
+ event_id: String,
26
+ response: OpenAI::Realtime::RealtimeResponse,
27
+ type: :"response.done"
28
+ }
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,52 @@
1
+ module OpenAI
2
+ module Models
3
+ module Realtime
4
+ type response_function_call_arguments_delta_event =
5
+ {
6
+ call_id: String,
7
+ delta: String,
8
+ event_id: String,
9
+ item_id: String,
10
+ output_index: Integer,
11
+ response_id: String,
12
+ type: :"response.function_call_arguments.delta"
13
+ }
14
+
15
+ class ResponseFunctionCallArgumentsDeltaEvent < OpenAI::Internal::Type::BaseModel
16
+ attr_accessor call_id: String
17
+
18
+ attr_accessor delta: String
19
+
20
+ attr_accessor event_id: String
21
+
22
+ attr_accessor item_id: String
23
+
24
+ attr_accessor output_index: Integer
25
+
26
+ attr_accessor response_id: String
27
+
28
+ attr_accessor type: :"response.function_call_arguments.delta"
29
+
30
+ def initialize: (
31
+ call_id: String,
32
+ delta: String,
33
+ event_id: String,
34
+ item_id: String,
35
+ output_index: Integer,
36
+ response_id: String,
37
+ ?type: :"response.function_call_arguments.delta"
38
+ ) -> void
39
+
40
+ def to_hash: -> {
41
+ call_id: String,
42
+ delta: String,
43
+ event_id: String,
44
+ item_id: String,
45
+ output_index: Integer,
46
+ response_id: String,
47
+ type: :"response.function_call_arguments.delta"
48
+ }
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,52 @@
1
+ module OpenAI
2
+ module Models
3
+ module Realtime
4
+ type response_function_call_arguments_done_event =
5
+ {
6
+ arguments: String,
7
+ call_id: String,
8
+ event_id: String,
9
+ item_id: String,
10
+ output_index: Integer,
11
+ response_id: String,
12
+ type: :"response.function_call_arguments.done"
13
+ }
14
+
15
+ class ResponseFunctionCallArgumentsDoneEvent < OpenAI::Internal::Type::BaseModel
16
+ attr_accessor arguments: String
17
+
18
+ attr_accessor call_id: String
19
+
20
+ attr_accessor event_id: String
21
+
22
+ attr_accessor item_id: String
23
+
24
+ attr_accessor output_index: Integer
25
+
26
+ attr_accessor response_id: String
27
+
28
+ attr_accessor type: :"response.function_call_arguments.done"
29
+
30
+ def initialize: (
31
+ arguments: String,
32
+ call_id: String,
33
+ event_id: String,
34
+ item_id: String,
35
+ output_index: Integer,
36
+ response_id: String,
37
+ ?type: :"response.function_call_arguments.done"
38
+ ) -> void
39
+
40
+ def to_hash: -> {
41
+ arguments: String,
42
+ call_id: String,
43
+ event_id: String,
44
+ item_id: String,
45
+ output_index: Integer,
46
+ response_id: String,
47
+ type: :"response.function_call_arguments.done"
48
+ }
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,52 @@
1
+ module OpenAI
2
+ module Models
3
+ module Realtime
4
+ type response_mcp_call_arguments_delta =
5
+ {
6
+ delta: String,
7
+ event_id: String,
8
+ item_id: String,
9
+ output_index: Integer,
10
+ response_id: String,
11
+ type: :"response.mcp_call_arguments.delta",
12
+ obfuscation: String?
13
+ }
14
+
15
+ class ResponseMcpCallArgumentsDelta < OpenAI::Internal::Type::BaseModel
16
+ attr_accessor delta: String
17
+
18
+ attr_accessor event_id: String
19
+
20
+ attr_accessor item_id: String
21
+
22
+ attr_accessor output_index: Integer
23
+
24
+ attr_accessor response_id: String
25
+
26
+ attr_accessor type: :"response.mcp_call_arguments.delta"
27
+
28
+ attr_accessor obfuscation: String?
29
+
30
+ def initialize: (
31
+ delta: String,
32
+ event_id: String,
33
+ item_id: String,
34
+ output_index: Integer,
35
+ response_id: String,
36
+ ?obfuscation: String?,
37
+ ?type: :"response.mcp_call_arguments.delta"
38
+ ) -> void
39
+
40
+ def to_hash: -> {
41
+ delta: String,
42
+ event_id: String,
43
+ item_id: String,
44
+ output_index: Integer,
45
+ response_id: String,
46
+ type: :"response.mcp_call_arguments.delta",
47
+ obfuscation: String?
48
+ }
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,47 @@
1
+ module OpenAI
2
+ module Models
3
+ module Realtime
4
+ type response_mcp_call_arguments_done =
5
+ {
6
+ arguments: String,
7
+ event_id: String,
8
+ item_id: String,
9
+ output_index: Integer,
10
+ response_id: String,
11
+ type: :"response.mcp_call_arguments.done"
12
+ }
13
+
14
+ class ResponseMcpCallArgumentsDone < OpenAI::Internal::Type::BaseModel
15
+ attr_accessor arguments: String
16
+
17
+ attr_accessor event_id: String
18
+
19
+ attr_accessor item_id: String
20
+
21
+ attr_accessor output_index: Integer
22
+
23
+ attr_accessor response_id: String
24
+
25
+ attr_accessor type: :"response.mcp_call_arguments.done"
26
+
27
+ def initialize: (
28
+ arguments: String,
29
+ event_id: String,
30
+ item_id: String,
31
+ output_index: Integer,
32
+ response_id: String,
33
+ ?type: :"response.mcp_call_arguments.done"
34
+ ) -> void
35
+
36
+ def to_hash: -> {
37
+ arguments: String,
38
+ event_id: String,
39
+ item_id: String,
40
+ output_index: Integer,
41
+ response_id: String,
42
+ type: :"response.mcp_call_arguments.done"
43
+ }
44
+ end
45
+ end
46
+ end
47
+ end
@@ -0,0 +1,37 @@
1
+ module OpenAI
2
+ module Models
3
+ module Realtime
4
+ type response_mcp_call_completed =
5
+ {
6
+ event_id: String,
7
+ item_id: String,
8
+ output_index: Integer,
9
+ type: :"response.mcp_call.completed"
10
+ }
11
+
12
+ class ResponseMcpCallCompleted < OpenAI::Internal::Type::BaseModel
13
+ attr_accessor event_id: String
14
+
15
+ attr_accessor item_id: String
16
+
17
+ attr_accessor output_index: Integer
18
+
19
+ attr_accessor type: :"response.mcp_call.completed"
20
+
21
+ def initialize: (
22
+ event_id: String,
23
+ item_id: String,
24
+ output_index: Integer,
25
+ ?type: :"response.mcp_call.completed"
26
+ ) -> void
27
+
28
+ def to_hash: -> {
29
+ event_id: String,
30
+ item_id: String,
31
+ output_index: Integer,
32
+ type: :"response.mcp_call.completed"
33
+ }
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,37 @@
1
+ module OpenAI
2
+ module Models
3
+ module Realtime
4
+ type response_mcp_call_failed =
5
+ {
6
+ event_id: String,
7
+ item_id: String,
8
+ output_index: Integer,
9
+ type: :"response.mcp_call.failed"
10
+ }
11
+
12
+ class ResponseMcpCallFailed < OpenAI::Internal::Type::BaseModel
13
+ attr_accessor event_id: String
14
+
15
+ attr_accessor item_id: String
16
+
17
+ attr_accessor output_index: Integer
18
+
19
+ attr_accessor type: :"response.mcp_call.failed"
20
+
21
+ def initialize: (
22
+ event_id: String,
23
+ item_id: String,
24
+ output_index: Integer,
25
+ ?type: :"response.mcp_call.failed"
26
+ ) -> void
27
+
28
+ def to_hash: -> {
29
+ event_id: String,
30
+ item_id: String,
31
+ output_index: Integer,
32
+ type: :"response.mcp_call.failed"
33
+ }
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,37 @@
1
+ module OpenAI
2
+ module Models
3
+ module Realtime
4
+ type response_mcp_call_in_progress =
5
+ {
6
+ event_id: String,
7
+ item_id: String,
8
+ output_index: Integer,
9
+ type: :"response.mcp_call.in_progress"
10
+ }
11
+
12
+ class ResponseMcpCallInProgress < OpenAI::Internal::Type::BaseModel
13
+ attr_accessor event_id: String
14
+
15
+ attr_accessor item_id: String
16
+
17
+ attr_accessor output_index: Integer
18
+
19
+ attr_accessor type: :"response.mcp_call.in_progress"
20
+
21
+ def initialize: (
22
+ event_id: String,
23
+ item_id: String,
24
+ output_index: Integer,
25
+ ?type: :"response.mcp_call.in_progress"
26
+ ) -> void
27
+
28
+ def to_hash: -> {
29
+ event_id: String,
30
+ item_id: String,
31
+ output_index: Integer,
32
+ type: :"response.mcp_call.in_progress"
33
+ }
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,42 @@
1
+ module OpenAI
2
+ module Models
3
+ module Realtime
4
+ type response_output_item_added_event =
5
+ {
6
+ event_id: String,
7
+ item: OpenAI::Models::Realtime::conversation_item,
8
+ output_index: Integer,
9
+ response_id: String,
10
+ type: :"response.output_item.added"
11
+ }
12
+
13
+ class ResponseOutputItemAddedEvent < OpenAI::Internal::Type::BaseModel
14
+ attr_accessor event_id: String
15
+
16
+ attr_accessor item: OpenAI::Models::Realtime::conversation_item
17
+
18
+ attr_accessor output_index: Integer
19
+
20
+ attr_accessor response_id: String
21
+
22
+ attr_accessor type: :"response.output_item.added"
23
+
24
+ def initialize: (
25
+ event_id: String,
26
+ item: OpenAI::Models::Realtime::conversation_item,
27
+ output_index: Integer,
28
+ response_id: String,
29
+ ?type: :"response.output_item.added"
30
+ ) -> void
31
+
32
+ def to_hash: -> {
33
+ event_id: String,
34
+ item: OpenAI::Models::Realtime::conversation_item,
35
+ output_index: Integer,
36
+ response_id: String,
37
+ type: :"response.output_item.added"
38
+ }
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,42 @@
1
+ module OpenAI
2
+ module Models
3
+ module Realtime
4
+ type response_output_item_done_event =
5
+ {
6
+ event_id: String,
7
+ item: OpenAI::Models::Realtime::conversation_item,
8
+ output_index: Integer,
9
+ response_id: String,
10
+ type: :"response.output_item.done"
11
+ }
12
+
13
+ class ResponseOutputItemDoneEvent < OpenAI::Internal::Type::BaseModel
14
+ attr_accessor event_id: String
15
+
16
+ attr_accessor item: OpenAI::Models::Realtime::conversation_item
17
+
18
+ attr_accessor output_index: Integer
19
+
20
+ attr_accessor response_id: String
21
+
22
+ attr_accessor type: :"response.output_item.done"
23
+
24
+ def initialize: (
25
+ event_id: String,
26
+ item: OpenAI::Models::Realtime::conversation_item,
27
+ output_index: Integer,
28
+ response_id: String,
29
+ ?type: :"response.output_item.done"
30
+ ) -> void
31
+
32
+ def to_hash: -> {
33
+ event_id: String,
34
+ item: OpenAI::Models::Realtime::conversation_item,
35
+ output_index: Integer,
36
+ response_id: String,
37
+ type: :"response.output_item.done"
38
+ }
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,52 @@
1
+ module OpenAI
2
+ module Models
3
+ module Realtime
4
+ type response_text_delta_event =
5
+ {
6
+ content_index: Integer,
7
+ delta: String,
8
+ event_id: String,
9
+ item_id: String,
10
+ output_index: Integer,
11
+ response_id: String,
12
+ type: :"response.output_text.delta"
13
+ }
14
+
15
+ class ResponseTextDeltaEvent < OpenAI::Internal::Type::BaseModel
16
+ attr_accessor content_index: Integer
17
+
18
+ attr_accessor delta: String
19
+
20
+ attr_accessor event_id: String
21
+
22
+ attr_accessor item_id: String
23
+
24
+ attr_accessor output_index: Integer
25
+
26
+ attr_accessor response_id: String
27
+
28
+ attr_accessor type: :"response.output_text.delta"
29
+
30
+ def initialize: (
31
+ content_index: Integer,
32
+ delta: String,
33
+ event_id: String,
34
+ item_id: String,
35
+ output_index: Integer,
36
+ response_id: String,
37
+ ?type: :"response.output_text.delta"
38
+ ) -> void
39
+
40
+ def to_hash: -> {
41
+ content_index: Integer,
42
+ delta: String,
43
+ event_id: String,
44
+ item_id: String,
45
+ output_index: Integer,
46
+ response_id: String,
47
+ type: :"response.output_text.delta"
48
+ }
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,52 @@
1
+ module OpenAI
2
+ module Models
3
+ module Realtime
4
+ type response_text_done_event =
5
+ {
6
+ content_index: Integer,
7
+ event_id: String,
8
+ item_id: String,
9
+ output_index: Integer,
10
+ response_id: String,
11
+ text: String,
12
+ type: :"response.output_text.done"
13
+ }
14
+
15
+ class ResponseTextDoneEvent < OpenAI::Internal::Type::BaseModel
16
+ attr_accessor content_index: Integer
17
+
18
+ attr_accessor event_id: String
19
+
20
+ attr_accessor item_id: String
21
+
22
+ attr_accessor output_index: Integer
23
+
24
+ attr_accessor response_id: String
25
+
26
+ attr_accessor text: String
27
+
28
+ attr_accessor type: :"response.output_text.done"
29
+
30
+ def initialize: (
31
+ content_index: Integer,
32
+ event_id: String,
33
+ item_id: String,
34
+ output_index: Integer,
35
+ response_id: String,
36
+ text: String,
37
+ ?type: :"response.output_text.done"
38
+ ) -> void
39
+
40
+ def to_hash: -> {
41
+ content_index: Integer,
42
+ event_id: String,
43
+ item_id: String,
44
+ output_index: Integer,
45
+ response_id: String,
46
+ text: String,
47
+ type: :"response.output_text.done"
48
+ }
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,32 @@
1
+ module OpenAI
2
+ module Models
3
+ module Realtime
4
+ type session_created_event =
5
+ {
6
+ event_id: String,
7
+ session: OpenAI::Realtime::RealtimeSession,
8
+ type: :"session.created"
9
+ }
10
+
11
+ class SessionCreatedEvent < OpenAI::Internal::Type::BaseModel
12
+ attr_accessor event_id: String
13
+
14
+ attr_accessor session: OpenAI::Realtime::RealtimeSession
15
+
16
+ attr_accessor type: :"session.created"
17
+
18
+ def initialize: (
19
+ event_id: String,
20
+ session: OpenAI::Realtime::RealtimeSession,
21
+ ?type: :"session.created"
22
+ ) -> void
23
+
24
+ def to_hash: -> {
25
+ event_id: String,
26
+ session: OpenAI::Realtime::RealtimeSession,
27
+ type: :"session.created"
28
+ }
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,34 @@
1
+ module OpenAI
2
+ module Models
3
+ module Realtime
4
+ type session_update_event =
5
+ {
6
+ session: OpenAI::Realtime::RealtimeSessionCreateRequest,
7
+ type: :"session.update",
8
+ event_id: String
9
+ }
10
+
11
+ class SessionUpdateEvent < OpenAI::Internal::Type::BaseModel
12
+ attr_accessor session: OpenAI::Realtime::RealtimeSessionCreateRequest
13
+
14
+ attr_accessor type: :"session.update"
15
+
16
+ attr_reader event_id: String?
17
+
18
+ def event_id=: (String) -> String
19
+
20
+ def initialize: (
21
+ session: OpenAI::Realtime::RealtimeSessionCreateRequest,
22
+ ?event_id: String,
23
+ ?type: :"session.update"
24
+ ) -> void
25
+
26
+ def to_hash: -> {
27
+ session: OpenAI::Realtime::RealtimeSessionCreateRequest,
28
+ type: :"session.update",
29
+ event_id: String
30
+ }
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,32 @@
1
+ module OpenAI
2
+ module Models
3
+ module Realtime
4
+ type session_updated_event =
5
+ {
6
+ event_id: String,
7
+ session: OpenAI::Realtime::RealtimeSession,
8
+ type: :"session.updated"
9
+ }
10
+
11
+ class SessionUpdatedEvent < OpenAI::Internal::Type::BaseModel
12
+ attr_accessor event_id: String
13
+
14
+ attr_accessor session: OpenAI::Realtime::RealtimeSession
15
+
16
+ attr_accessor type: :"session.updated"
17
+
18
+ def initialize: (
19
+ event_id: String,
20
+ session: OpenAI::Realtime::RealtimeSession,
21
+ ?type: :"session.updated"
22
+ ) -> void
23
+
24
+ def to_hash: -> {
25
+ event_id: String,
26
+ session: OpenAI::Realtime::RealtimeSession,
27
+ type: :"session.updated"
28
+ }
29
+ end
30
+ end
31
+ end
32
+ end