ogx_open_client 1.0.3.dev0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1199) hide show
  1. ogx_client/__init__.py +1135 -0
  2. ogx_client/_exceptions.py +114 -0
  3. ogx_client/_types.py +312 -0
  4. ogx_client/_version.py +8 -0
  5. ogx_client/api/__init__.py +33 -0
  6. ogx_client/api/admin_api.py +1411 -0
  7. ogx_client/api/alpha_api.py +354 -0
  8. ogx_client/api/batches_api.py +1247 -0
  9. ogx_client/api/chat_api.py +352 -0
  10. ogx_client/api/chat_completions_api.py +1028 -0
  11. ogx_client/api/completions_api.py +440 -0
  12. ogx_client/api/connectors_api.py +1235 -0
  13. ogx_client/api/conversations_api.py +1288 -0
  14. ogx_client/api/embeddings_api.py +429 -0
  15. ogx_client/api/file_batches_api.py +1370 -0
  16. ogx_client/api/file_processors_api.py +442 -0
  17. ogx_client/api/files_api.py +1539 -0
  18. ogx_client/api/inference_api.py +429 -0
  19. ogx_client/api/input_items_api.py +472 -0
  20. ogx_client/api/inspect_api.py +617 -0
  21. ogx_client/api/interactions_api.py +430 -0
  22. ogx_client/api/items_api.py +1359 -0
  23. ogx_client/api/messages_api.py +2466 -0
  24. ogx_client/api/models_api.py +451 -0
  25. ogx_client/api/openai_api.py +481 -0
  26. ogx_client/api/prompts_api.py +1883 -0
  27. ogx_client/api/providers_api.py +636 -0
  28. ogx_client/api/responses_api.py +1876 -0
  29. ogx_client/api/routes_api.py +389 -0
  30. ogx_client/api/tools_api.py +389 -0
  31. ogx_client/api/vector_io_api.py +740 -0
  32. ogx_client/api/vector_stores_api.py +1936 -0
  33. ogx_client/api/vector_stores_files_api.py +2011 -0
  34. ogx_client/api/versions_api.py +386 -0
  35. ogx_client/api_client.py +833 -0
  36. ogx_client/api_response.py +21 -0
  37. ogx_client/async_api_client.py +203 -0
  38. ogx_client/async_api_response.py +134 -0
  39. ogx_client/async_stream.py +161 -0
  40. ogx_client/configuration.py +585 -0
  41. ogx_client/exceptions.py +253 -0
  42. ogx_client/lib/__init__.py +17 -0
  43. ogx_client/lib/_utils.py +26 -0
  44. ogx_client/lib/agents/__init__.py +5 -0
  45. ogx_client/lib/agents/agent.py +540 -0
  46. ogx_client/lib/agents/client_tool.py +258 -0
  47. ogx_client/lib/agents/event_logger.py +134 -0
  48. ogx_client/lib/agents/event_synthesizer.py +448 -0
  49. ogx_client/lib/agents/react/__init__.py +5 -0
  50. ogx_client/lib/agents/react/agent.py +94 -0
  51. ogx_client/lib/agents/react/prompts.py +151 -0
  52. ogx_client/lib/agents/react/tool_parser.py +59 -0
  53. ogx_client/lib/agents/tool_parser.py +42 -0
  54. ogx_client/lib/agents/turn_events.py +268 -0
  55. ogx_client/lib/agents/types.py +63 -0
  56. ogx_client/lib/cli/__init__.py +12 -0
  57. ogx_client/lib/cli/common/__init__.py +5 -0
  58. ogx_client/lib/cli/common/utils.py +54 -0
  59. ogx_client/lib/cli/configure.py +68 -0
  60. ogx_client/lib/cli/constants.py +14 -0
  61. ogx_client/lib/cli/datasets/__init__.py +9 -0
  62. ogx_client/lib/cli/datasets/datasets.py +22 -0
  63. ogx_client/lib/cli/datasets/list.py +32 -0
  64. ogx_client/lib/cli/datasets/register.py +78 -0
  65. ogx_client/lib/cli/datasets/unregister.py +20 -0
  66. ogx_client/lib/cli/eval/__init__.py +9 -0
  67. ogx_client/lib/cli/eval/eval.py +22 -0
  68. ogx_client/lib/cli/eval/run_benchmark.py +193 -0
  69. ogx_client/lib/cli/eval/run_scoring.py +116 -0
  70. ogx_client/lib/cli/eval/utils.py +59 -0
  71. ogx_client/lib/cli/eval_tasks/__init__.py +9 -0
  72. ogx_client/lib/cli/eval_tasks/eval_tasks.py +65 -0
  73. ogx_client/lib/cli/eval_tasks/list.py +35 -0
  74. ogx_client/lib/cli/inference/__init__.py +9 -0
  75. ogx_client/lib/cli/inference/inference.py +88 -0
  76. ogx_client/lib/cli/inspect/__init__.py +9 -0
  77. ogx_client/lib/cli/inspect/inspect.py +19 -0
  78. ogx_client/lib/cli/inspect/version.py +22 -0
  79. ogx_client/lib/cli/models/__init__.py +9 -0
  80. ogx_client/lib/cli/models/models.py +149 -0
  81. ogx_client/lib/cli/ogx_client.py +111 -0
  82. ogx_client/lib/cli/post_training/__init__.py +9 -0
  83. ogx_client/lib/cli/post_training/post_training.py +114 -0
  84. ogx_client/lib/cli/providers/__init__.py +9 -0
  85. ogx_client/lib/cli/providers/inspect.py +33 -0
  86. ogx_client/lib/cli/providers/list.py +32 -0
  87. ogx_client/lib/cli/providers/providers.py +21 -0
  88. ogx_client/lib/cli/scoring_functions/__init__.py +9 -0
  89. ogx_client/lib/cli/scoring_functions/list.py +38 -0
  90. ogx_client/lib/cli/scoring_functions/scoring_functions.py +62 -0
  91. ogx_client/lib/cli/toolgroups/__init__.py +9 -0
  92. ogx_client/lib/cli/toolgroups/toolgroups.py +129 -0
  93. ogx_client/lib/cli/vector_stores/__init__.py +9 -0
  94. ogx_client/lib/cli/vector_stores/vector_stores.py +138 -0
  95. ogx_client/lib/inference/__init__.py +5 -0
  96. ogx_client/lib/inference/event_logger.py +58 -0
  97. ogx_client/lib/inference/utils.py +21 -0
  98. ogx_client/lib/stream_printer.py +30 -0
  99. ogx_client/lib/tools/__init__.py +9 -0
  100. ogx_client/lib/tools/mcp_oauth.py +303 -0
  101. ogx_client/models/__init__.py +505 -0
  102. ogx_client/models/add_items_request.py +148 -0
  103. ogx_client/models/allowed_tools_config.py +145 -0
  104. ogx_client/models/allowed_tools_filter.py +141 -0
  105. ogx_client/models/anthropic_base64_image_source.py +140 -0
  106. ogx_client/models/anthropic_base64_image_source_anthropic_url_image_source.py +396 -0
  107. ogx_client/models/anthropic_count_tokens_request.py +170 -0
  108. ogx_client/models/anthropic_count_tokens_response.py +119 -0
  109. ogx_client/models/anthropic_create_message_request.py +217 -0
  110. ogx_client/models/anthropic_image_block.py +144 -0
  111. ogx_client/models/anthropic_list_models_response.py +163 -0
  112. ogx_client/models/anthropic_message.py +141 -0
  113. ogx_client/models/anthropic_message_response.py +187 -0
  114. ogx_client/models/anthropic_model_info.py +149 -0
  115. ogx_client/models/anthropic_text_block.py +131 -0
  116. ogx_client/models/anthropic_text_block5_variants.py +549 -0
  117. ogx_client/models/anthropic_text_block5_variants1.py +549 -0
  118. ogx_client/models/anthropic_text_block_anthropic_image_block.py +203 -0
  119. ogx_client/models/anthropic_thinking_block.py +138 -0
  120. ogx_client/models/anthropic_thinking_config.py +137 -0
  121. ogx_client/models/anthropic_tool_def.py +128 -0
  122. ogx_client/models/anthropic_tool_result_block_input.py +153 -0
  123. ogx_client/models/anthropic_tool_result_block_output.py +153 -0
  124. ogx_client/models/anthropic_tool_use_block.py +135 -0
  125. ogx_client/models/anthropic_url_image_source.py +131 -0
  126. ogx_client/models/anthropic_usage.py +135 -0
  127. ogx_client/models/api.py +59 -0
  128. ogx_client/models/approval_filter.py +148 -0
  129. ogx_client/models/array_type.py +129 -0
  130. ogx_client/models/batch.py +302 -0
  131. ogx_client/models/batch_error.py +158 -0
  132. ogx_client/models/batch_request_counts.py +136 -0
  133. ogx_client/models/batch_usage.py +166 -0
  134. ogx_client/models/bf16_quantization_config.py +129 -0
  135. ogx_client/models/boolean_type.py +129 -0
  136. ogx_client/models/cancel_batch_request.py +119 -0
  137. ogx_client/models/chat_completion_input_type.py +129 -0
  138. ogx_client/models/chat_completion_message.py +216 -0
  139. ogx_client/models/chat_completion_message_custom_tool_call.py +143 -0
  140. ogx_client/models/chat_completion_message_custom_tool_call_custom.py +121 -0
  141. ogx_client/models/chat_completion_message_function_call.py +121 -0
  142. ogx_client/models/chat_completion_message_list.py +165 -0
  143. ogx_client/models/chat_completion_message_tool_call.py +143 -0
  144. ogx_client/models/chat_completion_message_tool_call_chat_completion_message_custom_tool_call.py +203 -0
  145. ogx_client/models/chat_completion_message_tool_call_chat_completion_message_custom_tool_call1.py +206 -0
  146. ogx_client/models/chat_completion_message_tool_call_function.py +121 -0
  147. ogx_client/models/chunk.py +151 -0
  148. ogx_client/models/chunk_for_deletion.py +121 -0
  149. ogx_client/models/chunk_metadata.py +180 -0
  150. ogx_client/models/compact_response_request.py +239 -0
  151. ogx_client/models/comparison_filter.py +135 -0
  152. ogx_client/models/completion_input_type.py +129 -0
  153. ogx_client/models/compound_filter.py +128 -0
  154. ogx_client/models/connector.py +152 -0
  155. ogx_client/models/connector_input.py +131 -0
  156. ogx_client/models/connector_type.py +42 -0
  157. ogx_client/models/context_management.py +133 -0
  158. ogx_client/models/conversation.py +140 -0
  159. ogx_client/models/conversation_deleted_resource.py +133 -0
  160. ogx_client/models/conversation_item.py +855 -0
  161. ogx_client/models/conversation_item_create_request.py +148 -0
  162. ogx_client/models/conversation_item_deleted_resource.py +133 -0
  163. ogx_client/models/conversation_item_include.py +48 -0
  164. ogx_client/models/conversation_item_list.py +158 -0
  165. ogx_client/models/conversation_message.py +149 -0
  166. ogx_client/models/create_batch_request.py +144 -0
  167. ogx_client/models/create_conversation_request.py +159 -0
  168. ogx_client/models/create_message_batch_request.py +148 -0
  169. ogx_client/models/create_prompt_request.py +126 -0
  170. ogx_client/models/create_response_request.py +407 -0
  171. ogx_client/models/custom_tool_config.py +119 -0
  172. ogx_client/models/delete_chunks_request.py +132 -0
  173. ogx_client/models/delete_conversation_request.py +119 -0
  174. ogx_client/models/delete_file_request.py +119 -0
  175. ogx_client/models/delete_item_request.py +121 -0
  176. ogx_client/models/delete_prompt_request.py +119 -0
  177. ogx_client/models/dialog_type.py +129 -0
  178. ogx_client/models/embedded_chunk.py +157 -0
  179. ogx_client/models/embedded_chunk_input.py +157 -0
  180. ogx_client/models/embedded_chunk_output.py +157 -0
  181. ogx_client/models/embeddings_response.py +136 -0
  182. ogx_client/models/error.py +143 -0
  183. ogx_client/models/error_detail.py +313 -0
  184. ogx_client/models/errors.py +172 -0
  185. ogx_client/models/expires_after.py +129 -0
  186. ogx_client/models/fp8_quantization_config.py +129 -0
  187. ogx_client/models/function_tool_config.py +119 -0
  188. ogx_client/models/get_chat_completion_request.py +119 -0
  189. ogx_client/models/get_connector_request.py +119 -0
  190. ogx_client/models/get_connector_tool_request.py +121 -0
  191. ogx_client/models/get_conversation_request.py +119 -0
  192. ogx_client/models/get_model_request.py +119 -0
  193. ogx_client/models/get_model_v1_models_model_id_get200_response.py +414 -0
  194. ogx_client/models/get_prompt_request.py +126 -0
  195. ogx_client/models/google_create_interaction_request.py +213 -0
  196. ogx_client/models/google_function_call_content.py +153 -0
  197. ogx_client/models/google_function_call_output.py +153 -0
  198. ogx_client/models/google_function_declaration.py +146 -0
  199. ogx_client/models/google_function_response_content.py +160 -0
  200. ogx_client/models/google_generation_config.py +146 -0
  201. ogx_client/models/google_input_turn.py +141 -0
  202. ogx_client/models/google_interaction_response.py +199 -0
  203. ogx_client/models/google_list_models_response.py +147 -0
  204. ogx_client/models/google_model_info.py +123 -0
  205. ogx_client/models/google_text_content.py +131 -0
  206. ogx_client/models/google_text_content_google_function_call_content_google_function_response_content.py +218 -0
  207. ogx_client/models/google_text_output.py +131 -0
  208. ogx_client/models/google_text_output_google_function_call_output_google_thought_output.py +447 -0
  209. ogx_client/models/google_thought_output.py +149 -0
  210. ogx_client/models/google_tool.py +145 -0
  211. ogx_client/models/google_usage.py +136 -0
  212. ogx_client/models/grammar_response_format.py +131 -0
  213. ogx_client/models/greedy_sampling_strategy.py +129 -0
  214. ogx_client/models/greedy_sampling_strategy_top_p_sampling_strategy_top_k_sampling_strategy.py +447 -0
  215. ogx_client/models/health_info.py +120 -0
  216. ogx_client/models/health_status.py +44 -0
  217. ogx_client/models/image_content_item.py +144 -0
  218. ogx_client/models/image_content_item_input.py +144 -0
  219. ogx_client/models/image_content_item_input_text_content_item.py +396 -0
  220. ogx_client/models/image_content_item_output.py +144 -0
  221. ogx_client/models/image_content_item_output_text_content_item.py +396 -0
  222. ogx_client/models/image_content_item_text_content_item.py +396 -0
  223. ogx_client/models/image_delta.py +131 -0
  224. ogx_client/models/inline_provider_spec.py +183 -0
  225. ogx_client/models/input_tokens_details.py +132 -0
  226. ogx_client/models/insert_chunks_request.py +139 -0
  227. ogx_client/models/inspect_provider_request.py +119 -0
  228. ogx_client/models/int4_quantization_config.py +136 -0
  229. ogx_client/models/integer_number.py +207 -0
  230. ogx_client/models/interleaved_content.py +280 -0
  231. ogx_client/models/interleaved_content_item.py +396 -0
  232. ogx_client/models/job.py +122 -0
  233. ogx_client/models/job_status.py +46 -0
  234. ogx_client/models/json_schema_response_format.py +131 -0
  235. ogx_client/models/json_type.py +129 -0
  236. ogx_client/models/list_batches_request.py +126 -0
  237. ogx_client/models/list_batches_response.py +158 -0
  238. ogx_client/models/list_chat_completion_messages_request.py +142 -0
  239. ogx_client/models/list_chat_completions_request.py +147 -0
  240. ogx_client/models/list_connector_tools_request.py +119 -0
  241. ogx_client/models/list_connectors_response.py +147 -0
  242. ogx_client/models/list_files_request.py +147 -0
  243. ogx_client/models/list_items_request.py +158 -0
  244. ogx_client/models/list_message_batches_response.py +163 -0
  245. ogx_client/models/list_models_response.py +147 -0
  246. ogx_client/models/list_models_v1_models_get200_response.py +414 -0
  247. ogx_client/models/list_number_string.py +265 -0
  248. ogx_client/models/list_open_ai_chat_completion_response.py +165 -0
  249. ogx_client/models/list_open_ai_file_response.py +165 -0
  250. ogx_client/models/list_open_ai_response_input_item.py +159 -0
  251. ogx_client/models/list_open_ai_response_object.py +165 -0
  252. ogx_client/models/list_prompt_versions_request.py +119 -0
  253. ogx_client/models/list_prompts_response.py +147 -0
  254. ogx_client/models/list_providers_response.py +147 -0
  255. ogx_client/models/list_routes_request.py +134 -0
  256. ogx_client/models/list_routes_response.py +147 -0
  257. ogx_client/models/list_string_allowed_tools_filter.py +269 -0
  258. ogx_client/models/list_tool_defs_response.py +147 -0
  259. ogx_client/models/list_tool_groups_response.py +147 -0
  260. ogx_client/models/list_tools_request.py +124 -0
  261. ogx_client/models/list_tools_response.py +147 -0
  262. ogx_client/models/mcp_list_tools_tool.py +128 -0
  263. ogx_client/models/message_batch.py +187 -0
  264. ogx_client/models/message_batch_request_counts.py +127 -0
  265. ogx_client/models/message_batch_request_params.py +142 -0
  266. ogx_client/models/metric_in_response.py +141 -0
  267. ogx_client/models/model.py +171 -0
  268. ogx_client/models/model_type.py +44 -0
  269. ogx_client/models/number_type.py +129 -0
  270. ogx_client/models/object_type.py +129 -0
  271. ogx_client/models/open_ai_assistant_message_param.py +187 -0
  272. ogx_client/models/open_ai_assistant_message_param_input.py +187 -0
  273. ogx_client/models/open_ai_assistant_message_param_output.py +187 -0
  274. ogx_client/models/open_ai_attach_file_request.py +164 -0
  275. ogx_client/models/open_ai_chat_completion.py +173 -0
  276. ogx_client/models/open_ai_chat_completion_chunk.py +173 -0
  277. ogx_client/models/open_ai_chat_completion_content_part_image_param.py +144 -0
  278. ogx_client/models/open_ai_chat_completion_content_part_param.py +447 -0
  279. ogx_client/models/open_ai_chat_completion_content_part_text_param.py +131 -0
  280. ogx_client/models/open_ai_chat_completion_content_part_text_param_open_ai_chat_completion_content_part_image_param.py +203 -0
  281. ogx_client/models/open_ai_chat_completion_content_part_text_param_open_ai_chat_completion_content_part_image_param_open_ai_file.py +447 -0
  282. ogx_client/models/open_ai_chat_completion_custom_tool_call_function.py +121 -0
  283. ogx_client/models/open_ai_chat_completion_request_with_extra_body.py +377 -0
  284. ogx_client/models/open_ai_chat_completion_response_message.py +180 -0
  285. ogx_client/models/open_ai_chat_completion_tool_call_function.py +121 -0
  286. ogx_client/models/open_ai_chat_completion_tool_choice.py +447 -0
  287. ogx_client/models/open_ai_chat_completion_tool_choice_allowed_tools.py +144 -0
  288. ogx_client/models/open_ai_chat_completion_tool_choice_custom_tool.py +144 -0
  289. ogx_client/models/open_ai_chat_completion_tool_choice_function_tool.py +144 -0
  290. ogx_client/models/open_ai_chat_completion_usage.py +154 -0
  291. ogx_client/models/open_ai_chat_completion_usage_completion_tokens_details.py +120 -0
  292. ogx_client/models/open_ai_chat_completion_usage_prompt_tokens_details.py +120 -0
  293. ogx_client/models/open_ai_choice.py +167 -0
  294. ogx_client/models/open_ai_choice_delta.py +163 -0
  295. ogx_client/models/open_ai_choice_logprobs.py +169 -0
  296. ogx_client/models/open_ai_chunk_choice.py +162 -0
  297. ogx_client/models/open_ai_chunk_choice_logprobs.py +169 -0
  298. ogx_client/models/open_ai_compacted_response.py +161 -0
  299. ogx_client/models/open_ai_completion.py +149 -0
  300. ogx_client/models/open_ai_completion_choice.py +154 -0
  301. ogx_client/models/open_ai_completion_logprobs.py +162 -0
  302. ogx_client/models/open_ai_completion_request_with_extra_body.py +273 -0
  303. ogx_client/models/open_ai_completion_with_input_messages.py +186 -0
  304. ogx_client/models/open_ai_create_vector_store_file_batch_request_with_extra_body.py +212 -0
  305. ogx_client/models/open_ai_create_vector_store_request_with_extra_body.py +198 -0
  306. ogx_client/models/open_ai_delete_response_object.py +133 -0
  307. ogx_client/models/open_ai_developer_message_param.py +151 -0
  308. ogx_client/models/open_ai_embedding_data.py +147 -0
  309. ogx_client/models/open_ai_embedding_usage.py +121 -0
  310. ogx_client/models/open_ai_embeddings_request_with_extra_body.py +164 -0
  311. ogx_client/models/open_ai_embeddings_response.py +160 -0
  312. ogx_client/models/open_ai_file.py +144 -0
  313. ogx_client/models/open_ai_file_delete_response.py +133 -0
  314. ogx_client/models/open_ai_file_file.py +138 -0
  315. ogx_client/models/open_ai_file_object.py +153 -0
  316. ogx_client/models/open_ai_file_purpose.py +50 -0
  317. ogx_client/models/open_ai_file_upload_purpose.py +47 -0
  318. ogx_client/models/open_ai_finish_reason.py +46 -0
  319. ogx_client/models/open_ai_image_url.py +136 -0
  320. ogx_client/models/open_ai_list_models_response.py +142 -0
  321. ogx_client/models/open_ai_message_param.py +549 -0
  322. ogx_client/models/open_ai_model.py +142 -0
  323. ogx_client/models/open_ai_response_annotation_citation.py +137 -0
  324. ogx_client/models/open_ai_response_annotation_container_file_citation.py +139 -0
  325. ogx_client/models/open_ai_response_annotation_file_citation.py +135 -0
  326. ogx_client/models/open_ai_response_annotation_file_citation4_variants.py +498 -0
  327. ogx_client/models/open_ai_response_annotation_file_path.py +133 -0
  328. ogx_client/models/open_ai_response_annotations.py +498 -0
  329. ogx_client/models/open_ai_response_compaction.py +138 -0
  330. ogx_client/models/open_ai_response_content_part.py +447 -0
  331. ogx_client/models/open_ai_response_content_part_output_text.py +162 -0
  332. ogx_client/models/open_ai_response_content_part_output_text_open_ai_response_content_part_refusal_open_ai_response_content_part_reasoning_text.py +447 -0
  333. ogx_client/models/open_ai_response_content_part_reasoning_summary.py +131 -0
  334. ogx_client/models/open_ai_response_content_part_reasoning_text.py +131 -0
  335. ogx_client/models/open_ai_response_content_part_refusal.py +131 -0
  336. ogx_client/models/open_ai_response_error.py +121 -0
  337. ogx_client/models/open_ai_response_format_json_object.py +129 -0
  338. ogx_client/models/open_ai_response_format_json_schema.py +144 -0
  339. ogx_client/models/open_ai_response_format_param.py +447 -0
  340. ogx_client/models/open_ai_response_format_text.py +129 -0
  341. ogx_client/models/open_ai_response_format_text_open_ai_response_format_json_schema_open_ai_response_format_json_object.py +453 -0
  342. ogx_client/models/open_ai_response_incomplete_details.py +119 -0
  343. ogx_client/models/open_ai_response_input.py +251 -0
  344. ogx_client/models/open_ai_response_input_function_tool_call_output.py +160 -0
  345. ogx_client/models/open_ai_response_input_function_tool_call_output_open_ai_response_mcp_approval_response_open_ai_response_compaction.py +233 -0
  346. ogx_client/models/open_ai_response_input_message_content.py +447 -0
  347. ogx_client/models/open_ai_response_input_message_content_file.py +157 -0
  348. ogx_client/models/open_ai_response_input_message_content_image.py +155 -0
  349. ogx_client/models/open_ai_response_input_message_content_text.py +131 -0
  350. ogx_client/models/open_ai_response_input_message_content_text_open_ai_response_input_message_content_image_open_ai_response_input_message_content_file.py +447 -0
  351. ogx_client/models/open_ai_response_input_tool.py +516 -0
  352. ogx_client/models/open_ai_response_input_tool_choice.py +203 -0
  353. ogx_client/models/open_ai_response_input_tool_choice_allowed_tools.py +143 -0
  354. ogx_client/models/open_ai_response_input_tool_choice_allowed_tools6_variants.py +618 -0
  355. ogx_client/models/open_ai_response_input_tool_choice_custom_tool.py +131 -0
  356. ogx_client/models/open_ai_response_input_tool_choice_file_search.py +129 -0
  357. ogx_client/models/open_ai_response_input_tool_choice_function_tool.py +131 -0
  358. ogx_client/models/open_ai_response_input_tool_choice_mcp_tool.py +138 -0
  359. ogx_client/models/open_ai_response_input_tool_choice_mode.py +44 -0
  360. ogx_client/models/open_ai_response_input_tool_choice_mode1.py +209 -0
  361. ogx_client/models/open_ai_response_input_tool_choice_mode2.py +209 -0
  362. ogx_client/models/open_ai_response_input_tool_choice_web_search.py +129 -0
  363. ogx_client/models/open_ai_response_input_tool_file_search.py +166 -0
  364. ogx_client/models/open_ai_response_input_tool_function.py +152 -0
  365. ogx_client/models/open_ai_response_input_tool_mcp.py +194 -0
  366. ogx_client/models/open_ai_response_input_tool_web_search.py +147 -0
  367. ogx_client/models/open_ai_response_input_tool_web_search4_variants.py +516 -0
  368. ogx_client/models/open_ai_response_input_tool_web_search4_variants1.py +516 -0
  369. ogx_client/models/open_ai_response_mcp_approval_request.py +137 -0
  370. ogx_client/models/open_ai_response_mcp_approval_response.py +147 -0
  371. ogx_client/models/open_ai_response_message.py +167 -0
  372. ogx_client/models/open_ai_response_message11_variants.py +855 -0
  373. ogx_client/models/open_ai_response_message8_variants.py +702 -0
  374. ogx_client/models/open_ai_response_message_input.py +167 -0
  375. ogx_client/models/open_ai_response_message_input11_variants.py +855 -0
  376. ogx_client/models/open_ai_response_message_input8_variants.py +702 -0
  377. ogx_client/models/open_ai_response_message_output.py +167 -0
  378. ogx_client/models/open_ai_response_message_output11_variants.py +855 -0
  379. ogx_client/models/open_ai_response_message_output8_variants.py +702 -0
  380. ogx_client/models/open_ai_response_message_output_union.py +233 -0
  381. ogx_client/models/open_ai_response_object.py +412 -0
  382. ogx_client/models/open_ai_response_object_stream.py +2181 -0
  383. ogx_client/models/open_ai_response_object_stream_error.py +147 -0
  384. ogx_client/models/open_ai_response_object_stream_response_completed.py +146 -0
  385. ogx_client/models/open_ai_response_object_stream_response_content_part_added.py +154 -0
  386. ogx_client/models/open_ai_response_object_stream_response_content_part_done.py +154 -0
  387. ogx_client/models/open_ai_response_object_stream_response_created.py +146 -0
  388. ogx_client/models/open_ai_response_object_stream_response_failed.py +146 -0
  389. ogx_client/models/open_ai_response_object_stream_response_file_search_call_completed.py +135 -0
  390. ogx_client/models/open_ai_response_object_stream_response_file_search_call_in_progress.py +135 -0
  391. ogx_client/models/open_ai_response_object_stream_response_file_search_call_searching.py +135 -0
  392. ogx_client/models/open_ai_response_object_stream_response_function_call_arguments_delta.py +137 -0
  393. ogx_client/models/open_ai_response_object_stream_response_function_call_arguments_done.py +137 -0
  394. ogx_client/models/open_ai_response_object_stream_response_in_progress.py +146 -0
  395. ogx_client/models/open_ai_response_object_stream_response_incomplete.py +146 -0
  396. ogx_client/models/open_ai_response_object_stream_response_mcp_call_arguments_delta.py +137 -0
  397. ogx_client/models/open_ai_response_object_stream_response_mcp_call_arguments_done.py +137 -0
  398. ogx_client/models/open_ai_response_object_stream_response_mcp_call_completed.py +131 -0
  399. ogx_client/models/open_ai_response_object_stream_response_mcp_call_failed.py +131 -0
  400. ogx_client/models/open_ai_response_object_stream_response_mcp_call_in_progress.py +135 -0
  401. ogx_client/models/open_ai_response_object_stream_response_mcp_list_tools_completed.py +131 -0
  402. ogx_client/models/open_ai_response_object_stream_response_mcp_list_tools_failed.py +131 -0
  403. ogx_client/models/open_ai_response_object_stream_response_mcp_list_tools_in_progress.py +131 -0
  404. ogx_client/models/open_ai_response_object_stream_response_output_item_added.py +150 -0
  405. ogx_client/models/open_ai_response_object_stream_response_output_item_done.py +150 -0
  406. ogx_client/models/open_ai_response_object_stream_response_output_text_annotation_added.py +154 -0
  407. ogx_client/models/open_ai_response_object_stream_response_output_text_delta.py +157 -0
  408. ogx_client/models/open_ai_response_object_stream_response_output_text_done.py +139 -0
  409. ogx_client/models/open_ai_response_object_stream_response_reasoning_summary_part_added.py +152 -0
  410. ogx_client/models/open_ai_response_object_stream_response_reasoning_summary_part_done.py +152 -0
  411. ogx_client/models/open_ai_response_object_stream_response_reasoning_summary_text_delta.py +139 -0
  412. ogx_client/models/open_ai_response_object_stream_response_reasoning_summary_text_done.py +139 -0
  413. ogx_client/models/open_ai_response_object_stream_response_reasoning_text_delta.py +139 -0
  414. ogx_client/models/open_ai_response_object_stream_response_reasoning_text_done.py +139 -0
  415. ogx_client/models/open_ai_response_object_stream_response_refusal_delta.py +139 -0
  416. ogx_client/models/open_ai_response_object_stream_response_refusal_done.py +139 -0
  417. ogx_client/models/open_ai_response_object_stream_response_web_search_call_completed.py +135 -0
  418. ogx_client/models/open_ai_response_object_stream_response_web_search_call_in_progress.py +135 -0
  419. ogx_client/models/open_ai_response_object_stream_response_web_search_call_searching.py +135 -0
  420. ogx_client/models/open_ai_response_object_with_input.py +425 -0
  421. ogx_client/models/open_ai_response_output.py +702 -0
  422. ogx_client/models/open_ai_response_output_item.py +702 -0
  423. ogx_client/models/open_ai_response_output_message_content.py +396 -0
  424. ogx_client/models/open_ai_response_output_message_content_output_text.py +162 -0
  425. ogx_client/models/open_ai_response_output_message_content_output_text_input.py +162 -0
  426. ogx_client/models/open_ai_response_output_message_content_output_text_input_open_ai_response_content_part_refusal.py +396 -0
  427. ogx_client/models/open_ai_response_output_message_content_output_text_open_ai_response_content_part_refusal.py +396 -0
  428. ogx_client/models/open_ai_response_output_message_content_output_text_output.py +162 -0
  429. ogx_client/models/open_ai_response_output_message_content_output_text_output_open_ai_response_content_part_refusal.py +396 -0
  430. ogx_client/models/open_ai_response_output_message_file_search_tool_call.py +153 -0
  431. ogx_client/models/open_ai_response_output_message_file_search_tool_call_results.py +127 -0
  432. ogx_client/models/open_ai_response_output_message_function_tool_call.py +149 -0
  433. ogx_client/models/open_ai_response_output_message_mcp_call.py +151 -0
  434. ogx_client/models/open_ai_response_output_message_mcp_list_tools.py +146 -0
  435. ogx_client/models/open_ai_response_output_message_reasoning_content.py +131 -0
  436. ogx_client/models/open_ai_response_output_message_reasoning_item.py +179 -0
  437. ogx_client/models/open_ai_response_output_message_reasoning_summary.py +131 -0
  438. ogx_client/models/open_ai_response_output_message_web_search_tool_call.py +133 -0
  439. ogx_client/models/open_ai_response_prompt.py +151 -0
  440. ogx_client/models/open_ai_response_reasoning.py +168 -0
  441. ogx_client/models/open_ai_response_text.py +154 -0
  442. ogx_client/models/open_ai_response_text_format.py +157 -0
  443. ogx_client/models/open_ai_response_tool.py +516 -0
  444. ogx_client/models/open_ai_response_tool_mcp.py +151 -0
  445. ogx_client/models/open_ai_response_usage.py +153 -0
  446. ogx_client/models/open_ai_response_usage_input_tokens_details.py +119 -0
  447. ogx_client/models/open_ai_response_usage_output_tokens_details.py +119 -0
  448. ogx_client/models/open_ai_search_vector_store_request.py +171 -0
  449. ogx_client/models/open_ai_system_message_param.py +151 -0
  450. ogx_client/models/open_ai_token_log_prob.py +146 -0
  451. ogx_client/models/open_ai_tool_message_param.py +146 -0
  452. ogx_client/models/open_ai_top_log_prob.py +128 -0
  453. ogx_client/models/open_ai_update_vector_store_file_request.py +119 -0
  454. ogx_client/models/open_ai_update_vector_store_request.py +151 -0
  455. ogx_client/models/open_ai_user_message_param.py +151 -0
  456. ogx_client/models/open_ai_user_message_param_input.py +151 -0
  457. ogx_client/models/open_ai_user_message_param_input5_variants.py +549 -0
  458. ogx_client/models/open_ai_user_message_param_output.py +151 -0
  459. ogx_client/models/open_ai_user_message_param_output5_variants.py +549 -0
  460. ogx_client/models/open_aijson_schema.py +140 -0
  461. ogx_client/models/order.py +43 -0
  462. ogx_client/models/output_tokens_details.py +132 -0
  463. ogx_client/models/paginated_response.py +145 -0
  464. ogx_client/models/param_type.py +753 -0
  465. ogx_client/models/process_file_request.py +151 -0
  466. ogx_client/models/process_file_response.py +149 -0
  467. ogx_client/models/prompt.py +133 -0
  468. ogx_client/models/provider_info.py +127 -0
  469. ogx_client/models/provider_spec.py +169 -0
  470. ogx_client/models/query_chunks_request.py +141 -0
  471. ogx_client/models/query_chunks_response.py +149 -0
  472. ogx_client/models/register_model_request.py +155 -0
  473. ogx_client/models/remote_provider_spec.py +178 -0
  474. ogx_client/models/rerank_data.py +122 -0
  475. ogx_client/models/rerank_request.py +155 -0
  476. ogx_client/models/rerank_response.py +147 -0
  477. ogx_client/models/response_format.py +396 -0
  478. ogx_client/models/response_item_include.py +48 -0
  479. ogx_client/models/response_retrieve_item_v1_conversations_conversation_id_items_item_id_get.py +849 -0
  480. ogx_client/models/response_stream_options.py +119 -0
  481. ogx_client/models/response_truncation.py +43 -0
  482. ogx_client/models/retrieve_batch_request.py +119 -0
  483. ogx_client/models/retrieve_file_content_request.py +119 -0
  484. ogx_client/models/retrieve_file_request.py +119 -0
  485. ogx_client/models/retrieve_item_request.py +121 -0
  486. ogx_client/models/route_info.py +123 -0
  487. ogx_client/models/sampling_params.py +154 -0
  488. ogx_client/models/sampling_strategy.py +447 -0
  489. ogx_client/models/score_request.py +136 -0
  490. ogx_client/models/scoring_result.py +124 -0
  491. ogx_client/models/search_ranking_options.py +160 -0
  492. ogx_client/models/service_tier.py +45 -0
  493. ogx_client/models/set_default_version_body_request.py +119 -0
  494. ogx_client/models/set_default_version_request.py +121 -0
  495. ogx_client/models/string4_variants.py +415 -0
  496. ogx_client/models/string4_variants1.py +416 -0
  497. ogx_client/models/string_approval_filter.py +222 -0
  498. ogx_client/models/string_list_anthropic_text_block.py +272 -0
  499. ogx_client/models/string_list_anthropic_text_block1.py +272 -0
  500. ogx_client/models/string_list_anthropic_text_block_anthropic_image_block.py +266 -0
  501. ogx_client/models/string_list_google_input_turn.py +266 -0
  502. ogx_client/models/string_list_google_text_content_google_function_call_content_google_function_response_content.py +266 -0
  503. ogx_client/models/string_list_image_content_item_input_text_content_item.py +280 -0
  504. ogx_client/models/string_list_image_content_item_input_text_content_item1.py +280 -0
  505. ogx_client/models/string_list_image_content_item_output_text_content_item.py +280 -0
  506. ogx_client/models/string_list_image_content_item_text_content_item.py +286 -0
  507. ogx_client/models/string_list_image_content_item_text_content_item1.py +280 -0
  508. ogx_client/models/string_list_image_content_item_text_content_item2.py +286 -0
  509. ogx_client/models/string_list_image_content_item_text_content_item3.py +280 -0
  510. ogx_client/models/string_list_image_content_item_text_content_item4.py +280 -0
  511. ogx_client/models/string_list_image_content_item_text_content_item5.py +280 -0
  512. ogx_client/models/string_list_open_ai_chat_completion_content_part_text_param.py +272 -0
  513. ogx_client/models/string_list_open_ai_chat_completion_content_part_text_param1.py +266 -0
  514. ogx_client/models/string_list_open_ai_chat_completion_content_part_text_param2.py +266 -0
  515. ogx_client/models/string_list_open_ai_chat_completion_content_part_text_param3.py +266 -0
  516. ogx_client/models/string_list_open_ai_chat_completion_content_part_text_param4.py +272 -0
  517. ogx_client/models/string_list_open_ai_chat_completion_content_part_text_param_open_ai_chat_completion_content_part_image_param_open_ai_file.py +266 -0
  518. ogx_client/models/string_list_open_ai_response_input_message_content_text_open_ai_response_input_message_content_image_open_ai_response_input_message_content_file.py +266 -0
  519. ogx_client/models/string_list_open_ai_response_input_message_content_text_open_ai_response_input_message_content_image_open_ai_response_input_message_content_file_list_open_ai_response_output_message_content_output_text_input_open_ai_response_content_part_refusal.py +342 -0
  520. ogx_client/models/string_list_open_ai_response_input_message_content_text_open_ai_response_input_message_content_image_open_ai_response_input_message_content_file_list_open_ai_response_output_message_content_output_text_open_ai_response_content_part_refusal.py +342 -0
  521. ogx_client/models/string_list_open_ai_response_input_message_content_text_open_ai_response_input_message_content_image_open_ai_response_input_message_content_file_list_open_ai_response_output_message_content_output_text_output_open_ai_response_content_part_refusal.py +342 -0
  522. ogx_client/models/string_list_open_ai_response_message_union_open_ai_response_input_function_tool_call_output.py +272 -0
  523. ogx_client/models/string_list_open_ai_response_message_union_open_ai_response_input_function_tool_call_output1.py +266 -0
  524. ogx_client/models/string_list_string.py +271 -0
  525. ogx_client/models/string_list_string1.py +265 -0
  526. ogx_client/models/string_list_string2.py +265 -0
  527. ogx_client/models/string_number_boolean.py +225 -0
  528. ogx_client/models/string_number_boolean1.py +224 -0
  529. ogx_client/models/string_object.py +271 -0
  530. ogx_client/models/string_object1.py +271 -0
  531. ogx_client/models/string_open_ai_chat_completion_content_part_text_param_open_ai_chat_completion_content_part_image_param.py +220 -0
  532. ogx_client/models/string_open_ai_chat_completion_content_part_text_param_open_ai_chat_completion_content_part_image_param1.py +220 -0
  533. ogx_client/models/string_type.py +129 -0
  534. ogx_client/models/system_message.py +144 -0
  535. ogx_client/models/text_content_item.py +131 -0
  536. ogx_client/models/text_delta.py +131 -0
  537. ogx_client/models/token_log_probs.py +119 -0
  538. ogx_client/models/tool_config.py +119 -0
  539. ogx_client/models/tool_def.py +154 -0
  540. ogx_client/models/tool_group.py +167 -0
  541. ogx_client/models/tool_group_input.py +148 -0
  542. ogx_client/models/tool_invocation_result.py +158 -0
  543. ogx_client/models/tool_response_message.py +146 -0
  544. ogx_client/models/top_k_sampling_strategy.py +132 -0
  545. ogx_client/models/top_p_sampling_strategy.py +134 -0
  546. ogx_client/models/union_type.py +129 -0
  547. ogx_client/models/unregister_model_request.py +119 -0
  548. ogx_client/models/update_conversation_request.py +119 -0
  549. ogx_client/models/update_prompt_body_request.py +130 -0
  550. ogx_client/models/update_prompt_request.py +132 -0
  551. ogx_client/models/upload_file_request.py +140 -0
  552. ogx_client/models/url.py +119 -0
  553. ogx_client/models/urlor_data.py +144 -0
  554. ogx_client/models/user_message.py +164 -0
  555. ogx_client/models/vector_store_chunking_strategy.py +453 -0
  556. ogx_client/models/vector_store_chunking_strategy_auto.py +129 -0
  557. ogx_client/models/vector_store_chunking_strategy_auto_vector_store_chunking_strategy_static_vector_store_chunking_strategy_contextual.py +453 -0
  558. ogx_client/models/vector_store_chunking_strategy_auto_vector_store_chunking_strategy_static_vector_store_chunking_strategy_contextual1.py +447 -0
  559. ogx_client/models/vector_store_chunking_strategy_contextual.py +144 -0
  560. ogx_client/models/vector_store_chunking_strategy_contextual_config.py +145 -0
  561. ogx_client/models/vector_store_chunking_strategy_static.py +144 -0
  562. ogx_client/models/vector_store_chunking_strategy_static_config.py +122 -0
  563. ogx_client/models/vector_store_content.py +162 -0
  564. ogx_client/models/vector_store_create_request.py +167 -0
  565. ogx_client/models/vector_store_delete_response.py +133 -0
  566. ogx_client/models/vector_store_expiration_after.py +129 -0
  567. ogx_client/models/vector_store_file_batch_file_entry.py +164 -0
  568. ogx_client/models/vector_store_file_batch_object.py +159 -0
  569. ogx_client/models/vector_store_file_content_response.py +151 -0
  570. ogx_client/models/vector_store_file_counts.py +127 -0
  571. ogx_client/models/vector_store_file_delete_response.py +133 -0
  572. ogx_client/models/vector_store_file_last_error.py +128 -0
  573. ogx_client/models/vector_store_file_object.py +206 -0
  574. ogx_client/models/vector_store_file_status.py +45 -0
  575. ogx_client/models/vector_store_files_list_in_batch_response.py +148 -0
  576. ogx_client/models/vector_store_list_files_response.py +148 -0
  577. ogx_client/models/vector_store_list_response.py +148 -0
  578. ogx_client/models/vector_store_modify_request.py +151 -0
  579. ogx_client/models/vector_store_object.py +202 -0
  580. ogx_client/models/vector_store_search_request.py +151 -0
  581. ogx_client/models/vector_store_search_response.py +161 -0
  582. ogx_client/models/vector_store_search_response_page.py +153 -0
  583. ogx_client/models/vector_store_status.py +44 -0
  584. ogx_client/models/version_info.py +119 -0
  585. ogx_client/ogx_client.py +309 -0
  586. ogx_client/py.typed +0 -0
  587. ogx_client/rest.py +255 -0
  588. ogx_client/stream.py +183 -0
  589. ogx_open_client/__init__.py +1167 -0
  590. ogx_open_client/_exceptions.py +114 -0
  591. ogx_open_client/_types.py +312 -0
  592. ogx_open_client/_version.py +8 -0
  593. ogx_open_client/api/__init__.py +33 -0
  594. ogx_open_client/api/admin_api.py +1411 -0
  595. ogx_open_client/api/alpha_api.py +354 -0
  596. ogx_open_client/api/batches_api.py +1247 -0
  597. ogx_open_client/api/chat_api.py +352 -0
  598. ogx_open_client/api/chat_completions_api.py +1028 -0
  599. ogx_open_client/api/completions_api.py +440 -0
  600. ogx_open_client/api/connectors_api.py +1235 -0
  601. ogx_open_client/api/conversations_api.py +1288 -0
  602. ogx_open_client/api/embeddings_api.py +429 -0
  603. ogx_open_client/api/file_batches_api.py +1370 -0
  604. ogx_open_client/api/file_processors_api.py +442 -0
  605. ogx_open_client/api/files_api.py +1539 -0
  606. ogx_open_client/api/inference_api.py +429 -0
  607. ogx_open_client/api/input_items_api.py +472 -0
  608. ogx_open_client/api/inspect_api.py +617 -0
  609. ogx_open_client/api/interactions_api.py +430 -0
  610. ogx_open_client/api/items_api.py +1359 -0
  611. ogx_open_client/api/messages_api.py +2466 -0
  612. ogx_open_client/api/models_api.py +451 -0
  613. ogx_open_client/api/openai_api.py +481 -0
  614. ogx_open_client/api/prompts_api.py +1883 -0
  615. ogx_open_client/api/providers_api.py +636 -0
  616. ogx_open_client/api/responses_api.py +1876 -0
  617. ogx_open_client/api/routes_api.py +389 -0
  618. ogx_open_client/api/tools_api.py +389 -0
  619. ogx_open_client/api/vector_io_api.py +740 -0
  620. ogx_open_client/api/vector_stores_api.py +1936 -0
  621. ogx_open_client/api/vector_stores_files_api.py +2011 -0
  622. ogx_open_client/api/versions_api.py +386 -0
  623. ogx_open_client/api_client.py +833 -0
  624. ogx_open_client/api_response.py +21 -0
  625. ogx_open_client/async_api_client.py +203 -0
  626. ogx_open_client/async_api_response.py +134 -0
  627. ogx_open_client/async_stream.py +161 -0
  628. ogx_open_client/configuration.py +585 -0
  629. ogx_open_client/exceptions.py +253 -0
  630. ogx_open_client/lib/__init__.py +17 -0
  631. ogx_open_client/lib/_utils.py +26 -0
  632. ogx_open_client/lib/agents/__init__.py +5 -0
  633. ogx_open_client/lib/agents/agent.py +540 -0
  634. ogx_open_client/lib/agents/client_tool.py +258 -0
  635. ogx_open_client/lib/agents/event_logger.py +134 -0
  636. ogx_open_client/lib/agents/event_synthesizer.py +448 -0
  637. ogx_open_client/lib/agents/react/__init__.py +5 -0
  638. ogx_open_client/lib/agents/react/agent.py +94 -0
  639. ogx_open_client/lib/agents/react/prompts.py +151 -0
  640. ogx_open_client/lib/agents/react/tool_parser.py +59 -0
  641. ogx_open_client/lib/agents/tool_parser.py +42 -0
  642. ogx_open_client/lib/agents/turn_events.py +268 -0
  643. ogx_open_client/lib/agents/types.py +63 -0
  644. ogx_open_client/lib/cli/__init__.py +12 -0
  645. ogx_open_client/lib/cli/common/__init__.py +5 -0
  646. ogx_open_client/lib/cli/common/utils.py +54 -0
  647. ogx_open_client/lib/cli/configure.py +68 -0
  648. ogx_open_client/lib/cli/constants.py +14 -0
  649. ogx_open_client/lib/cli/datasets/__init__.py +9 -0
  650. ogx_open_client/lib/cli/datasets/datasets.py +22 -0
  651. ogx_open_client/lib/cli/datasets/list.py +32 -0
  652. ogx_open_client/lib/cli/datasets/register.py +78 -0
  653. ogx_open_client/lib/cli/datasets/unregister.py +20 -0
  654. ogx_open_client/lib/cli/eval/__init__.py +9 -0
  655. ogx_open_client/lib/cli/eval/eval.py +22 -0
  656. ogx_open_client/lib/cli/eval/run_benchmark.py +193 -0
  657. ogx_open_client/lib/cli/eval/run_scoring.py +116 -0
  658. ogx_open_client/lib/cli/eval/utils.py +59 -0
  659. ogx_open_client/lib/cli/eval_tasks/__init__.py +9 -0
  660. ogx_open_client/lib/cli/eval_tasks/eval_tasks.py +65 -0
  661. ogx_open_client/lib/cli/eval_tasks/list.py +35 -0
  662. ogx_open_client/lib/cli/inference/__init__.py +9 -0
  663. ogx_open_client/lib/cli/inference/inference.py +88 -0
  664. ogx_open_client/lib/cli/inspect/__init__.py +9 -0
  665. ogx_open_client/lib/cli/inspect/inspect.py +19 -0
  666. ogx_open_client/lib/cli/inspect/version.py +22 -0
  667. ogx_open_client/lib/cli/models/__init__.py +9 -0
  668. ogx_open_client/lib/cli/models/models.py +149 -0
  669. ogx_open_client/lib/cli/ogx_client.py +111 -0
  670. ogx_open_client/lib/cli/post_training/__init__.py +9 -0
  671. ogx_open_client/lib/cli/post_training/post_training.py +114 -0
  672. ogx_open_client/lib/cli/providers/__init__.py +9 -0
  673. ogx_open_client/lib/cli/providers/inspect.py +33 -0
  674. ogx_open_client/lib/cli/providers/list.py +32 -0
  675. ogx_open_client/lib/cli/providers/providers.py +21 -0
  676. ogx_open_client/lib/cli/scoring_functions/__init__.py +9 -0
  677. ogx_open_client/lib/cli/scoring_functions/list.py +38 -0
  678. ogx_open_client/lib/cli/scoring_functions/scoring_functions.py +62 -0
  679. ogx_open_client/lib/cli/toolgroups/__init__.py +9 -0
  680. ogx_open_client/lib/cli/toolgroups/toolgroups.py +129 -0
  681. ogx_open_client/lib/cli/vector_stores/__init__.py +9 -0
  682. ogx_open_client/lib/cli/vector_stores/vector_stores.py +138 -0
  683. ogx_open_client/lib/inference/__init__.py +5 -0
  684. ogx_open_client/lib/inference/event_logger.py +58 -0
  685. ogx_open_client/lib/inference/utils.py +21 -0
  686. ogx_open_client/lib/stream_printer.py +30 -0
  687. ogx_open_client/lib/tools/__init__.py +9 -0
  688. ogx_open_client/lib/tools/mcp_oauth.py +303 -0
  689. ogx_open_client/models/__init__.py +521 -0
  690. ogx_open_client/models/add_items_request.py +148 -0
  691. ogx_open_client/models/allowed_tools_config.py +145 -0
  692. ogx_open_client/models/allowed_tools_filter.py +141 -0
  693. ogx_open_client/models/anthropic_base64_image_source.py +140 -0
  694. ogx_open_client/models/anthropic_base64_image_source_anthropic_url_image_source.py +396 -0
  695. ogx_open_client/models/anthropic_bash_tool.py +161 -0
  696. ogx_open_client/models/anthropic_cache_control.py +129 -0
  697. ogx_open_client/models/anthropic_count_tokens_request.py +170 -0
  698. ogx_open_client/models/anthropic_count_tokens_response.py +119 -0
  699. ogx_open_client/models/anthropic_create_message_request.py +217 -0
  700. ogx_open_client/models/anthropic_custom_tool_def.py +160 -0
  701. ogx_open_client/models/anthropic_custom_tool_def4_variants.py +510 -0
  702. ogx_open_client/models/anthropic_image_block.py +164 -0
  703. ogx_open_client/models/anthropic_list_models_response.py +163 -0
  704. ogx_open_client/models/anthropic_message.py +141 -0
  705. ogx_open_client/models/anthropic_message_response.py +187 -0
  706. ogx_open_client/models/anthropic_model_info.py +149 -0
  707. ogx_open_client/models/anthropic_redacted_thinking_block.py +131 -0
  708. ogx_open_client/models/anthropic_text_block.py +151 -0
  709. ogx_open_client/models/anthropic_text_block5_variants.py +549 -0
  710. ogx_open_client/models/anthropic_text_block5_variants1.py +549 -0
  711. ogx_open_client/models/anthropic_text_block6_variants.py +600 -0
  712. ogx_open_client/models/anthropic_text_block6_variants1.py +600 -0
  713. ogx_open_client/models/anthropic_text_block_anthropic_image_block.py +203 -0
  714. ogx_open_client/models/anthropic_text_editor_tool.py +155 -0
  715. ogx_open_client/models/anthropic_thinking_block.py +158 -0
  716. ogx_open_client/models/anthropic_thinking_config.py +137 -0
  717. ogx_open_client/models/anthropic_tool_def.py +128 -0
  718. ogx_open_client/models/anthropic_tool_result_block_input.py +173 -0
  719. ogx_open_client/models/anthropic_tool_result_block_output.py +173 -0
  720. ogx_open_client/models/anthropic_tool_use_block.py +155 -0
  721. ogx_open_client/models/anthropic_url_image_source.py +131 -0
  722. ogx_open_client/models/anthropic_usage.py +135 -0
  723. ogx_open_client/models/anthropic_web_search_tool.py +202 -0
  724. ogx_open_client/models/api.py +59 -0
  725. ogx_open_client/models/approval_filter.py +148 -0
  726. ogx_open_client/models/array_type.py +129 -0
  727. ogx_open_client/models/batch.py +302 -0
  728. ogx_open_client/models/batch_error.py +158 -0
  729. ogx_open_client/models/batch_request_counts.py +136 -0
  730. ogx_open_client/models/batch_usage.py +166 -0
  731. ogx_open_client/models/bf16_quantization_config.py +129 -0
  732. ogx_open_client/models/boolean_type.py +129 -0
  733. ogx_open_client/models/cancel_batch_request.py +119 -0
  734. ogx_open_client/models/chat_completion_input_type.py +129 -0
  735. ogx_open_client/models/chat_completion_message.py +216 -0
  736. ogx_open_client/models/chat_completion_message_custom_tool_call.py +143 -0
  737. ogx_open_client/models/chat_completion_message_custom_tool_call_custom.py +121 -0
  738. ogx_open_client/models/chat_completion_message_function_call.py +121 -0
  739. ogx_open_client/models/chat_completion_message_list.py +165 -0
  740. ogx_open_client/models/chat_completion_message_tool_call.py +143 -0
  741. ogx_open_client/models/chat_completion_message_tool_call_chat_completion_message_custom_tool_call.py +203 -0
  742. ogx_open_client/models/chat_completion_message_tool_call_chat_completion_message_custom_tool_call1.py +206 -0
  743. ogx_open_client/models/chat_completion_message_tool_call_function.py +121 -0
  744. ogx_open_client/models/chunk.py +151 -0
  745. ogx_open_client/models/chunk_for_deletion.py +121 -0
  746. ogx_open_client/models/chunk_metadata.py +180 -0
  747. ogx_open_client/models/compact_response_request.py +239 -0
  748. ogx_open_client/models/comparison_filter.py +135 -0
  749. ogx_open_client/models/completion_input_type.py +129 -0
  750. ogx_open_client/models/compound_filter.py +128 -0
  751. ogx_open_client/models/connector.py +152 -0
  752. ogx_open_client/models/connector_input.py +131 -0
  753. ogx_open_client/models/connector_type.py +42 -0
  754. ogx_open_client/models/context_management.py +133 -0
  755. ogx_open_client/models/conversation.py +140 -0
  756. ogx_open_client/models/conversation_deleted_resource.py +133 -0
  757. ogx_open_client/models/conversation_item.py +855 -0
  758. ogx_open_client/models/conversation_item_create_request.py +148 -0
  759. ogx_open_client/models/conversation_item_deleted_resource.py +133 -0
  760. ogx_open_client/models/conversation_item_include.py +48 -0
  761. ogx_open_client/models/conversation_item_list.py +158 -0
  762. ogx_open_client/models/conversation_message.py +149 -0
  763. ogx_open_client/models/create_batch_request.py +144 -0
  764. ogx_open_client/models/create_conversation_request.py +159 -0
  765. ogx_open_client/models/create_message_batch_request.py +148 -0
  766. ogx_open_client/models/create_prompt_request.py +126 -0
  767. ogx_open_client/models/create_response_request.py +402 -0
  768. ogx_open_client/models/custom_tool_config.py +119 -0
  769. ogx_open_client/models/delete_chunks_request.py +132 -0
  770. ogx_open_client/models/delete_conversation_request.py +119 -0
  771. ogx_open_client/models/delete_file_request.py +119 -0
  772. ogx_open_client/models/delete_item_request.py +121 -0
  773. ogx_open_client/models/delete_prompt_request.py +119 -0
  774. ogx_open_client/models/dialog_type.py +129 -0
  775. ogx_open_client/models/embedded_chunk.py +157 -0
  776. ogx_open_client/models/embedded_chunk_input.py +157 -0
  777. ogx_open_client/models/embedded_chunk_output.py +157 -0
  778. ogx_open_client/models/embeddings_response.py +136 -0
  779. ogx_open_client/models/error.py +143 -0
  780. ogx_open_client/models/error_detail.py +313 -0
  781. ogx_open_client/models/errors.py +172 -0
  782. ogx_open_client/models/expires_after.py +129 -0
  783. ogx_open_client/models/fp8_quantization_config.py +129 -0
  784. ogx_open_client/models/function_tool_config.py +119 -0
  785. ogx_open_client/models/get_chat_completion_request.py +119 -0
  786. ogx_open_client/models/get_connector_request.py +119 -0
  787. ogx_open_client/models/get_connector_tool_request.py +121 -0
  788. ogx_open_client/models/get_conversation_request.py +119 -0
  789. ogx_open_client/models/get_model_request.py +119 -0
  790. ogx_open_client/models/get_model_v1_models_model_id_get200_response.py +414 -0
  791. ogx_open_client/models/get_prompt_request.py +126 -0
  792. ogx_open_client/models/google_create_interaction_request.py +213 -0
  793. ogx_open_client/models/google_function_call_content.py +153 -0
  794. ogx_open_client/models/google_function_call_output.py +153 -0
  795. ogx_open_client/models/google_function_declaration.py +146 -0
  796. ogx_open_client/models/google_function_response_content.py +160 -0
  797. ogx_open_client/models/google_generation_config.py +146 -0
  798. ogx_open_client/models/google_input_turn.py +141 -0
  799. ogx_open_client/models/google_interaction_response.py +199 -0
  800. ogx_open_client/models/google_list_models_response.py +147 -0
  801. ogx_open_client/models/google_model_info.py +123 -0
  802. ogx_open_client/models/google_text_content.py +131 -0
  803. ogx_open_client/models/google_text_content_google_function_call_content_google_function_response_content.py +218 -0
  804. ogx_open_client/models/google_text_output.py +131 -0
  805. ogx_open_client/models/google_text_output_google_function_call_output_google_thought_output.py +447 -0
  806. ogx_open_client/models/google_thought_output.py +149 -0
  807. ogx_open_client/models/google_tool.py +145 -0
  808. ogx_open_client/models/google_usage.py +136 -0
  809. ogx_open_client/models/grammar_response_format.py +131 -0
  810. ogx_open_client/models/greedy_sampling_strategy.py +129 -0
  811. ogx_open_client/models/greedy_sampling_strategy_top_p_sampling_strategy_top_k_sampling_strategy.py +447 -0
  812. ogx_open_client/models/health_info.py +120 -0
  813. ogx_open_client/models/health_status.py +44 -0
  814. ogx_open_client/models/image_content_item.py +144 -0
  815. ogx_open_client/models/image_content_item_input.py +144 -0
  816. ogx_open_client/models/image_content_item_input_text_content_item.py +396 -0
  817. ogx_open_client/models/image_content_item_output.py +144 -0
  818. ogx_open_client/models/image_content_item_output_text_content_item.py +396 -0
  819. ogx_open_client/models/image_content_item_text_content_item.py +396 -0
  820. ogx_open_client/models/image_delta.py +131 -0
  821. ogx_open_client/models/inline_provider_spec.py +183 -0
  822. ogx_open_client/models/input_tokens_details.py +132 -0
  823. ogx_open_client/models/insert_chunks_request.py +139 -0
  824. ogx_open_client/models/inspect_provider_request.py +119 -0
  825. ogx_open_client/models/int4_quantization_config.py +136 -0
  826. ogx_open_client/models/integer_number.py +207 -0
  827. ogx_open_client/models/interleaved_content.py +280 -0
  828. ogx_open_client/models/interleaved_content_item.py +396 -0
  829. ogx_open_client/models/job.py +122 -0
  830. ogx_open_client/models/job_status.py +46 -0
  831. ogx_open_client/models/json_schema_response_format.py +131 -0
  832. ogx_open_client/models/json_type.py +129 -0
  833. ogx_open_client/models/list_batches_request.py +126 -0
  834. ogx_open_client/models/list_batches_response.py +158 -0
  835. ogx_open_client/models/list_chat_completion_messages_request.py +142 -0
  836. ogx_open_client/models/list_chat_completions_request.py +147 -0
  837. ogx_open_client/models/list_connector_tools_request.py +119 -0
  838. ogx_open_client/models/list_connectors_response.py +147 -0
  839. ogx_open_client/models/list_files_request.py +147 -0
  840. ogx_open_client/models/list_items_request.py +158 -0
  841. ogx_open_client/models/list_message_batches_response.py +163 -0
  842. ogx_open_client/models/list_models_response.py +147 -0
  843. ogx_open_client/models/list_models_v1_models_get200_response.py +414 -0
  844. ogx_open_client/models/list_number_string.py +265 -0
  845. ogx_open_client/models/list_open_ai_chat_completion_response.py +165 -0
  846. ogx_open_client/models/list_open_ai_file_response.py +165 -0
  847. ogx_open_client/models/list_open_ai_response_input_item.py +159 -0
  848. ogx_open_client/models/list_open_ai_response_object.py +165 -0
  849. ogx_open_client/models/list_prompt_versions_request.py +119 -0
  850. ogx_open_client/models/list_prompts_response.py +147 -0
  851. ogx_open_client/models/list_providers_response.py +147 -0
  852. ogx_open_client/models/list_routes_request.py +134 -0
  853. ogx_open_client/models/list_routes_response.py +147 -0
  854. ogx_open_client/models/list_string_allowed_tools_filter.py +269 -0
  855. ogx_open_client/models/list_tool_defs_response.py +147 -0
  856. ogx_open_client/models/list_tool_groups_response.py +147 -0
  857. ogx_open_client/models/list_tools_request.py +124 -0
  858. ogx_open_client/models/list_tools_response.py +147 -0
  859. ogx_open_client/models/mcp_list_tools_tool.py +128 -0
  860. ogx_open_client/models/message_batch.py +187 -0
  861. ogx_open_client/models/message_batch_request_counts.py +127 -0
  862. ogx_open_client/models/message_batch_request_params.py +142 -0
  863. ogx_open_client/models/metric_in_response.py +141 -0
  864. ogx_open_client/models/model.py +171 -0
  865. ogx_open_client/models/model_type.py +44 -0
  866. ogx_open_client/models/number_type.py +129 -0
  867. ogx_open_client/models/object_type.py +129 -0
  868. ogx_open_client/models/open_ai_assistant_message_param.py +187 -0
  869. ogx_open_client/models/open_ai_assistant_message_param_input.py +187 -0
  870. ogx_open_client/models/open_ai_assistant_message_param_output.py +187 -0
  871. ogx_open_client/models/open_ai_attach_file_request.py +164 -0
  872. ogx_open_client/models/open_ai_chat_completion.py +173 -0
  873. ogx_open_client/models/open_ai_chat_completion_chunk.py +173 -0
  874. ogx_open_client/models/open_ai_chat_completion_content_part_image_param.py +144 -0
  875. ogx_open_client/models/open_ai_chat_completion_content_part_param.py +447 -0
  876. ogx_open_client/models/open_ai_chat_completion_content_part_text_param.py +131 -0
  877. ogx_open_client/models/open_ai_chat_completion_content_part_text_param_open_ai_chat_completion_content_part_image_param.py +203 -0
  878. ogx_open_client/models/open_ai_chat_completion_content_part_text_param_open_ai_chat_completion_content_part_image_param_open_ai_file.py +447 -0
  879. ogx_open_client/models/open_ai_chat_completion_custom_tool_call_function.py +121 -0
  880. ogx_open_client/models/open_ai_chat_completion_request_with_extra_body.py +377 -0
  881. ogx_open_client/models/open_ai_chat_completion_response_message.py +180 -0
  882. ogx_open_client/models/open_ai_chat_completion_tool_call_function.py +121 -0
  883. ogx_open_client/models/open_ai_chat_completion_tool_choice.py +447 -0
  884. ogx_open_client/models/open_ai_chat_completion_tool_choice_allowed_tools.py +144 -0
  885. ogx_open_client/models/open_ai_chat_completion_tool_choice_custom_tool.py +144 -0
  886. ogx_open_client/models/open_ai_chat_completion_tool_choice_function_tool.py +144 -0
  887. ogx_open_client/models/open_ai_chat_completion_usage.py +154 -0
  888. ogx_open_client/models/open_ai_chat_completion_usage_completion_tokens_details.py +120 -0
  889. ogx_open_client/models/open_ai_chat_completion_usage_prompt_tokens_details.py +120 -0
  890. ogx_open_client/models/open_ai_choice.py +167 -0
  891. ogx_open_client/models/open_ai_choice_delta.py +163 -0
  892. ogx_open_client/models/open_ai_choice_logprobs.py +169 -0
  893. ogx_open_client/models/open_ai_chunk_choice.py +162 -0
  894. ogx_open_client/models/open_ai_chunk_choice_logprobs.py +169 -0
  895. ogx_open_client/models/open_ai_compacted_response.py +161 -0
  896. ogx_open_client/models/open_ai_completion.py +149 -0
  897. ogx_open_client/models/open_ai_completion_choice.py +154 -0
  898. ogx_open_client/models/open_ai_completion_logprobs.py +162 -0
  899. ogx_open_client/models/open_ai_completion_request_with_extra_body.py +273 -0
  900. ogx_open_client/models/open_ai_completion_with_input_messages.py +186 -0
  901. ogx_open_client/models/open_ai_create_vector_store_file_batch_request_with_extra_body.py +212 -0
  902. ogx_open_client/models/open_ai_create_vector_store_request_with_extra_body.py +198 -0
  903. ogx_open_client/models/open_ai_delete_response_object.py +133 -0
  904. ogx_open_client/models/open_ai_developer_message_param.py +151 -0
  905. ogx_open_client/models/open_ai_embedding_data.py +147 -0
  906. ogx_open_client/models/open_ai_embedding_usage.py +121 -0
  907. ogx_open_client/models/open_ai_embeddings_request_with_extra_body.py +164 -0
  908. ogx_open_client/models/open_ai_embeddings_response.py +160 -0
  909. ogx_open_client/models/open_ai_file.py +144 -0
  910. ogx_open_client/models/open_ai_file_delete_response.py +133 -0
  911. ogx_open_client/models/open_ai_file_file.py +138 -0
  912. ogx_open_client/models/open_ai_file_object.py +153 -0
  913. ogx_open_client/models/open_ai_file_purpose.py +50 -0
  914. ogx_open_client/models/open_ai_file_upload_purpose.py +47 -0
  915. ogx_open_client/models/open_ai_finish_reason.py +46 -0
  916. ogx_open_client/models/open_ai_image_url.py +136 -0
  917. ogx_open_client/models/open_ai_list_models_response.py +142 -0
  918. ogx_open_client/models/open_ai_message_param.py +549 -0
  919. ogx_open_client/models/open_ai_model.py +142 -0
  920. ogx_open_client/models/open_ai_response_annotation_citation.py +137 -0
  921. ogx_open_client/models/open_ai_response_annotation_container_file_citation.py +139 -0
  922. ogx_open_client/models/open_ai_response_annotation_file_citation.py +135 -0
  923. ogx_open_client/models/open_ai_response_annotation_file_citation4_variants.py +498 -0
  924. ogx_open_client/models/open_ai_response_annotation_file_path.py +133 -0
  925. ogx_open_client/models/open_ai_response_annotations.py +498 -0
  926. ogx_open_client/models/open_ai_response_compaction.py +138 -0
  927. ogx_open_client/models/open_ai_response_content_part.py +447 -0
  928. ogx_open_client/models/open_ai_response_content_part_output_text.py +162 -0
  929. ogx_open_client/models/open_ai_response_content_part_output_text_open_ai_response_content_part_refusal_open_ai_response_content_part_reasoning_text.py +447 -0
  930. ogx_open_client/models/open_ai_response_content_part_reasoning_summary.py +131 -0
  931. ogx_open_client/models/open_ai_response_content_part_reasoning_text.py +131 -0
  932. ogx_open_client/models/open_ai_response_content_part_refusal.py +131 -0
  933. ogx_open_client/models/open_ai_response_error.py +121 -0
  934. ogx_open_client/models/open_ai_response_format_json_object.py +129 -0
  935. ogx_open_client/models/open_ai_response_format_json_schema.py +144 -0
  936. ogx_open_client/models/open_ai_response_format_param.py +447 -0
  937. ogx_open_client/models/open_ai_response_format_text.py +129 -0
  938. ogx_open_client/models/open_ai_response_format_text_open_ai_response_format_json_schema_open_ai_response_format_json_object.py +453 -0
  939. ogx_open_client/models/open_ai_response_incomplete_details.py +119 -0
  940. ogx_open_client/models/open_ai_response_input.py +251 -0
  941. ogx_open_client/models/open_ai_response_input_function_tool_call_output.py +160 -0
  942. ogx_open_client/models/open_ai_response_input_function_tool_call_output_open_ai_response_mcp_approval_response_open_ai_response_compaction.py +233 -0
  943. ogx_open_client/models/open_ai_response_input_message_content.py +447 -0
  944. ogx_open_client/models/open_ai_response_input_message_content_file.py +157 -0
  945. ogx_open_client/models/open_ai_response_input_message_content_image.py +155 -0
  946. ogx_open_client/models/open_ai_response_input_message_content_text.py +131 -0
  947. ogx_open_client/models/open_ai_response_input_message_content_text_open_ai_response_input_message_content_image_open_ai_response_input_message_content_file.py +447 -0
  948. ogx_open_client/models/open_ai_response_input_tool.py +516 -0
  949. ogx_open_client/models/open_ai_response_input_tool_choice.py +203 -0
  950. ogx_open_client/models/open_ai_response_input_tool_choice_allowed_tools.py +143 -0
  951. ogx_open_client/models/open_ai_response_input_tool_choice_allowed_tools6_variants.py +618 -0
  952. ogx_open_client/models/open_ai_response_input_tool_choice_custom_tool.py +131 -0
  953. ogx_open_client/models/open_ai_response_input_tool_choice_file_search.py +129 -0
  954. ogx_open_client/models/open_ai_response_input_tool_choice_function_tool.py +131 -0
  955. ogx_open_client/models/open_ai_response_input_tool_choice_mcp_tool.py +138 -0
  956. ogx_open_client/models/open_ai_response_input_tool_choice_mode.py +44 -0
  957. ogx_open_client/models/open_ai_response_input_tool_choice_mode1.py +209 -0
  958. ogx_open_client/models/open_ai_response_input_tool_choice_mode2.py +209 -0
  959. ogx_open_client/models/open_ai_response_input_tool_choice_web_search.py +129 -0
  960. ogx_open_client/models/open_ai_response_input_tool_file_search.py +166 -0
  961. ogx_open_client/models/open_ai_response_input_tool_function.py +152 -0
  962. ogx_open_client/models/open_ai_response_input_tool_mcp.py +194 -0
  963. ogx_open_client/models/open_ai_response_input_tool_web_search.py +186 -0
  964. ogx_open_client/models/open_ai_response_input_tool_web_search4_variants.py +516 -0
  965. ogx_open_client/models/open_ai_response_input_tool_web_search4_variants1.py +516 -0
  966. ogx_open_client/models/open_ai_response_mcp_approval_request.py +137 -0
  967. ogx_open_client/models/open_ai_response_mcp_approval_response.py +147 -0
  968. ogx_open_client/models/open_ai_response_message.py +167 -0
  969. ogx_open_client/models/open_ai_response_message11_variants.py +855 -0
  970. ogx_open_client/models/open_ai_response_message8_variants.py +702 -0
  971. ogx_open_client/models/open_ai_response_message_input.py +167 -0
  972. ogx_open_client/models/open_ai_response_message_input11_variants.py +855 -0
  973. ogx_open_client/models/open_ai_response_message_input8_variants.py +702 -0
  974. ogx_open_client/models/open_ai_response_message_output.py +167 -0
  975. ogx_open_client/models/open_ai_response_message_output11_variants.py +855 -0
  976. ogx_open_client/models/open_ai_response_message_output8_variants.py +702 -0
  977. ogx_open_client/models/open_ai_response_message_output_union.py +233 -0
  978. ogx_open_client/models/open_ai_response_object.py +407 -0
  979. ogx_open_client/models/open_ai_response_object_stream.py +2181 -0
  980. ogx_open_client/models/open_ai_response_object_stream_error.py +147 -0
  981. ogx_open_client/models/open_ai_response_object_stream_response_completed.py +146 -0
  982. ogx_open_client/models/open_ai_response_object_stream_response_content_part_added.py +154 -0
  983. ogx_open_client/models/open_ai_response_object_stream_response_content_part_done.py +154 -0
  984. ogx_open_client/models/open_ai_response_object_stream_response_created.py +146 -0
  985. ogx_open_client/models/open_ai_response_object_stream_response_failed.py +146 -0
  986. ogx_open_client/models/open_ai_response_object_stream_response_file_search_call_completed.py +135 -0
  987. ogx_open_client/models/open_ai_response_object_stream_response_file_search_call_in_progress.py +135 -0
  988. ogx_open_client/models/open_ai_response_object_stream_response_file_search_call_searching.py +135 -0
  989. ogx_open_client/models/open_ai_response_object_stream_response_function_call_arguments_delta.py +137 -0
  990. ogx_open_client/models/open_ai_response_object_stream_response_function_call_arguments_done.py +137 -0
  991. ogx_open_client/models/open_ai_response_object_stream_response_in_progress.py +146 -0
  992. ogx_open_client/models/open_ai_response_object_stream_response_incomplete.py +146 -0
  993. ogx_open_client/models/open_ai_response_object_stream_response_mcp_call_arguments_delta.py +137 -0
  994. ogx_open_client/models/open_ai_response_object_stream_response_mcp_call_arguments_done.py +137 -0
  995. ogx_open_client/models/open_ai_response_object_stream_response_mcp_call_completed.py +131 -0
  996. ogx_open_client/models/open_ai_response_object_stream_response_mcp_call_failed.py +131 -0
  997. ogx_open_client/models/open_ai_response_object_stream_response_mcp_call_in_progress.py +135 -0
  998. ogx_open_client/models/open_ai_response_object_stream_response_mcp_list_tools_completed.py +131 -0
  999. ogx_open_client/models/open_ai_response_object_stream_response_mcp_list_tools_failed.py +131 -0
  1000. ogx_open_client/models/open_ai_response_object_stream_response_mcp_list_tools_in_progress.py +131 -0
  1001. ogx_open_client/models/open_ai_response_object_stream_response_output_item_added.py +150 -0
  1002. ogx_open_client/models/open_ai_response_object_stream_response_output_item_done.py +150 -0
  1003. ogx_open_client/models/open_ai_response_object_stream_response_output_text_annotation_added.py +154 -0
  1004. ogx_open_client/models/open_ai_response_object_stream_response_output_text_delta.py +157 -0
  1005. ogx_open_client/models/open_ai_response_object_stream_response_output_text_done.py +139 -0
  1006. ogx_open_client/models/open_ai_response_object_stream_response_reasoning_summary_part_added.py +152 -0
  1007. ogx_open_client/models/open_ai_response_object_stream_response_reasoning_summary_part_done.py +152 -0
  1008. ogx_open_client/models/open_ai_response_object_stream_response_reasoning_summary_text_delta.py +139 -0
  1009. ogx_open_client/models/open_ai_response_object_stream_response_reasoning_summary_text_done.py +139 -0
  1010. ogx_open_client/models/open_ai_response_object_stream_response_reasoning_text_delta.py +139 -0
  1011. ogx_open_client/models/open_ai_response_object_stream_response_reasoning_text_done.py +139 -0
  1012. ogx_open_client/models/open_ai_response_object_stream_response_refusal_delta.py +139 -0
  1013. ogx_open_client/models/open_ai_response_object_stream_response_refusal_done.py +139 -0
  1014. ogx_open_client/models/open_ai_response_object_stream_response_web_search_call_completed.py +135 -0
  1015. ogx_open_client/models/open_ai_response_object_stream_response_web_search_call_in_progress.py +135 -0
  1016. ogx_open_client/models/open_ai_response_object_stream_response_web_search_call_searching.py +135 -0
  1017. ogx_open_client/models/open_ai_response_object_with_input.py +425 -0
  1018. ogx_open_client/models/open_ai_response_output.py +702 -0
  1019. ogx_open_client/models/open_ai_response_output_item.py +702 -0
  1020. ogx_open_client/models/open_ai_response_output_message_content.py +396 -0
  1021. ogx_open_client/models/open_ai_response_output_message_content_output_text.py +162 -0
  1022. ogx_open_client/models/open_ai_response_output_message_content_output_text_input.py +162 -0
  1023. ogx_open_client/models/open_ai_response_output_message_content_output_text_input_open_ai_response_content_part_refusal.py +396 -0
  1024. ogx_open_client/models/open_ai_response_output_message_content_output_text_open_ai_response_content_part_refusal.py +396 -0
  1025. ogx_open_client/models/open_ai_response_output_message_content_output_text_output.py +162 -0
  1026. ogx_open_client/models/open_ai_response_output_message_content_output_text_output_open_ai_response_content_part_refusal.py +396 -0
  1027. ogx_open_client/models/open_ai_response_output_message_file_search_tool_call.py +153 -0
  1028. ogx_open_client/models/open_ai_response_output_message_file_search_tool_call_results.py +127 -0
  1029. ogx_open_client/models/open_ai_response_output_message_function_tool_call.py +149 -0
  1030. ogx_open_client/models/open_ai_response_output_message_mcp_call.py +151 -0
  1031. ogx_open_client/models/open_ai_response_output_message_mcp_list_tools.py +146 -0
  1032. ogx_open_client/models/open_ai_response_output_message_reasoning_content.py +131 -0
  1033. ogx_open_client/models/open_ai_response_output_message_reasoning_item.py +179 -0
  1034. ogx_open_client/models/open_ai_response_output_message_reasoning_summary.py +131 -0
  1035. ogx_open_client/models/open_ai_response_output_message_web_search_tool_call.py +153 -0
  1036. ogx_open_client/models/open_ai_response_output_message_web_search_tool_call_input.py +153 -0
  1037. ogx_open_client/models/open_ai_response_output_message_web_search_tool_call_output.py +153 -0
  1038. ogx_open_client/models/open_ai_response_prompt.py +151 -0
  1039. ogx_open_client/models/open_ai_response_reasoning.py +168 -0
  1040. ogx_open_client/models/open_ai_response_text.py +154 -0
  1041. ogx_open_client/models/open_ai_response_text_format.py +157 -0
  1042. ogx_open_client/models/open_ai_response_tool.py +516 -0
  1043. ogx_open_client/models/open_ai_response_tool_mcp.py +151 -0
  1044. ogx_open_client/models/open_ai_response_usage.py +153 -0
  1045. ogx_open_client/models/open_ai_response_usage_input_tokens_details.py +119 -0
  1046. ogx_open_client/models/open_ai_response_usage_output_tokens_details.py +119 -0
  1047. ogx_open_client/models/open_ai_search_vector_store_request.py +171 -0
  1048. ogx_open_client/models/open_ai_system_message_param.py +151 -0
  1049. ogx_open_client/models/open_ai_token_log_prob.py +146 -0
  1050. ogx_open_client/models/open_ai_tool_message_param.py +146 -0
  1051. ogx_open_client/models/open_ai_top_log_prob.py +128 -0
  1052. ogx_open_client/models/open_ai_update_vector_store_file_request.py +119 -0
  1053. ogx_open_client/models/open_ai_update_vector_store_request.py +151 -0
  1054. ogx_open_client/models/open_ai_user_message_param.py +151 -0
  1055. ogx_open_client/models/open_ai_user_message_param_input.py +151 -0
  1056. ogx_open_client/models/open_ai_user_message_param_input5_variants.py +549 -0
  1057. ogx_open_client/models/open_ai_user_message_param_output.py +151 -0
  1058. ogx_open_client/models/open_ai_user_message_param_output5_variants.py +549 -0
  1059. ogx_open_client/models/open_aijson_schema.py +140 -0
  1060. ogx_open_client/models/order.py +43 -0
  1061. ogx_open_client/models/output_tokens_details.py +132 -0
  1062. ogx_open_client/models/paginated_response.py +145 -0
  1063. ogx_open_client/models/param_type.py +753 -0
  1064. ogx_open_client/models/process_file_request.py +151 -0
  1065. ogx_open_client/models/process_file_response.py +149 -0
  1066. ogx_open_client/models/prompt.py +133 -0
  1067. ogx_open_client/models/provider_info.py +127 -0
  1068. ogx_open_client/models/provider_spec.py +169 -0
  1069. ogx_open_client/models/query_chunks_request.py +141 -0
  1070. ogx_open_client/models/query_chunks_response.py +149 -0
  1071. ogx_open_client/models/register_model_request.py +155 -0
  1072. ogx_open_client/models/remote_provider_spec.py +178 -0
  1073. ogx_open_client/models/rerank_data.py +122 -0
  1074. ogx_open_client/models/rerank_request.py +155 -0
  1075. ogx_open_client/models/rerank_response.py +147 -0
  1076. ogx_open_client/models/response_format.py +396 -0
  1077. ogx_open_client/models/response_item_include.py +48 -0
  1078. ogx_open_client/models/response_retrieve_item_v1_conversations_conversation_id_items_item_id_get.py +849 -0
  1079. ogx_open_client/models/response_stream_options.py +119 -0
  1080. ogx_open_client/models/response_truncation.py +43 -0
  1081. ogx_open_client/models/retrieve_batch_request.py +119 -0
  1082. ogx_open_client/models/retrieve_file_content_request.py +119 -0
  1083. ogx_open_client/models/retrieve_file_request.py +119 -0
  1084. ogx_open_client/models/retrieve_item_request.py +121 -0
  1085. ogx_open_client/models/route_info.py +123 -0
  1086. ogx_open_client/models/sampling_params.py +154 -0
  1087. ogx_open_client/models/sampling_strategy.py +447 -0
  1088. ogx_open_client/models/score_request.py +136 -0
  1089. ogx_open_client/models/scoring_result.py +124 -0
  1090. ogx_open_client/models/search_ranking_options.py +160 -0
  1091. ogx_open_client/models/service_tier.py +45 -0
  1092. ogx_open_client/models/set_default_version_body_request.py +119 -0
  1093. ogx_open_client/models/set_default_version_request.py +121 -0
  1094. ogx_open_client/models/string4_variants.py +415 -0
  1095. ogx_open_client/models/string4_variants1.py +416 -0
  1096. ogx_open_client/models/string_approval_filter.py +222 -0
  1097. ogx_open_client/models/string_list_anthropic_text_block.py +272 -0
  1098. ogx_open_client/models/string_list_anthropic_text_block1.py +272 -0
  1099. ogx_open_client/models/string_list_anthropic_text_block_anthropic_image_block.py +266 -0
  1100. ogx_open_client/models/string_list_google_input_turn.py +266 -0
  1101. ogx_open_client/models/string_list_google_text_content_google_function_call_content_google_function_response_content.py +266 -0
  1102. ogx_open_client/models/string_list_image_content_item_input_text_content_item.py +280 -0
  1103. ogx_open_client/models/string_list_image_content_item_input_text_content_item1.py +280 -0
  1104. ogx_open_client/models/string_list_image_content_item_output_text_content_item.py +280 -0
  1105. ogx_open_client/models/string_list_image_content_item_text_content_item.py +286 -0
  1106. ogx_open_client/models/string_list_image_content_item_text_content_item1.py +280 -0
  1107. ogx_open_client/models/string_list_image_content_item_text_content_item2.py +286 -0
  1108. ogx_open_client/models/string_list_image_content_item_text_content_item3.py +280 -0
  1109. ogx_open_client/models/string_list_image_content_item_text_content_item4.py +280 -0
  1110. ogx_open_client/models/string_list_image_content_item_text_content_item5.py +280 -0
  1111. ogx_open_client/models/string_list_open_ai_chat_completion_content_part_text_param.py +272 -0
  1112. ogx_open_client/models/string_list_open_ai_chat_completion_content_part_text_param1.py +266 -0
  1113. ogx_open_client/models/string_list_open_ai_chat_completion_content_part_text_param2.py +266 -0
  1114. ogx_open_client/models/string_list_open_ai_chat_completion_content_part_text_param3.py +266 -0
  1115. ogx_open_client/models/string_list_open_ai_chat_completion_content_part_text_param4.py +272 -0
  1116. ogx_open_client/models/string_list_open_ai_chat_completion_content_part_text_param_open_ai_chat_completion_content_part_image_param_open_ai_file.py +266 -0
  1117. ogx_open_client/models/string_list_open_ai_response_input_message_content_text_open_ai_response_input_message_content_image_open_ai_response_input_message_content_file.py +266 -0
  1118. ogx_open_client/models/string_list_open_ai_response_input_message_content_text_open_ai_response_input_message_content_image_open_ai_response_input_message_content_file_list_open_ai_response_output_message_content_output_text_input_open_ai_response_content_part_refusal.py +342 -0
  1119. ogx_open_client/models/string_list_open_ai_response_input_message_content_text_open_ai_response_input_message_content_image_open_ai_response_input_message_content_file_list_open_ai_response_output_message_content_output_text_open_ai_response_content_part_refusal.py +342 -0
  1120. ogx_open_client/models/string_list_open_ai_response_input_message_content_text_open_ai_response_input_message_content_image_open_ai_response_input_message_content_file_list_open_ai_response_output_message_content_output_text_output_open_ai_response_content_part_refusal.py +342 -0
  1121. ogx_open_client/models/string_list_open_ai_response_message_union_open_ai_response_input_function_tool_call_output.py +272 -0
  1122. ogx_open_client/models/string_list_open_ai_response_message_union_open_ai_response_input_function_tool_call_output1.py +266 -0
  1123. ogx_open_client/models/string_list_string.py +271 -0
  1124. ogx_open_client/models/string_list_string1.py +265 -0
  1125. ogx_open_client/models/string_list_string2.py +265 -0
  1126. ogx_open_client/models/string_number_boolean.py +225 -0
  1127. ogx_open_client/models/string_number_boolean1.py +224 -0
  1128. ogx_open_client/models/string_object.py +271 -0
  1129. ogx_open_client/models/string_object1.py +271 -0
  1130. ogx_open_client/models/string_open_ai_chat_completion_content_part_text_param_open_ai_chat_completion_content_part_image_param.py +220 -0
  1131. ogx_open_client/models/string_open_ai_chat_completion_content_part_text_param_open_ai_chat_completion_content_part_image_param1.py +220 -0
  1132. ogx_open_client/models/string_type.py +129 -0
  1133. ogx_open_client/models/system_message.py +144 -0
  1134. ogx_open_client/models/text_content_item.py +131 -0
  1135. ogx_open_client/models/text_delta.py +131 -0
  1136. ogx_open_client/models/token_log_probs.py +119 -0
  1137. ogx_open_client/models/tool_config.py +119 -0
  1138. ogx_open_client/models/tool_def.py +154 -0
  1139. ogx_open_client/models/tool_group.py +167 -0
  1140. ogx_open_client/models/tool_group_input.py +148 -0
  1141. ogx_open_client/models/tool_invocation_result.py +158 -0
  1142. ogx_open_client/models/tool_response_message.py +146 -0
  1143. ogx_open_client/models/top_k_sampling_strategy.py +132 -0
  1144. ogx_open_client/models/top_p_sampling_strategy.py +134 -0
  1145. ogx_open_client/models/union_type.py +129 -0
  1146. ogx_open_client/models/unregister_model_request.py +119 -0
  1147. ogx_open_client/models/update_conversation_request.py +119 -0
  1148. ogx_open_client/models/update_prompt_body_request.py +130 -0
  1149. ogx_open_client/models/update_prompt_request.py +132 -0
  1150. ogx_open_client/models/upload_file_request.py +140 -0
  1151. ogx_open_client/models/url.py +119 -0
  1152. ogx_open_client/models/urlor_data.py +144 -0
  1153. ogx_open_client/models/user_message.py +164 -0
  1154. ogx_open_client/models/vector_store_chunking_strategy.py +453 -0
  1155. ogx_open_client/models/vector_store_chunking_strategy_auto.py +129 -0
  1156. ogx_open_client/models/vector_store_chunking_strategy_auto_vector_store_chunking_strategy_static_vector_store_chunking_strategy_contextual.py +453 -0
  1157. ogx_open_client/models/vector_store_chunking_strategy_auto_vector_store_chunking_strategy_static_vector_store_chunking_strategy_contextual1.py +447 -0
  1158. ogx_open_client/models/vector_store_chunking_strategy_contextual.py +144 -0
  1159. ogx_open_client/models/vector_store_chunking_strategy_contextual_config.py +145 -0
  1160. ogx_open_client/models/vector_store_chunking_strategy_static.py +144 -0
  1161. ogx_open_client/models/vector_store_chunking_strategy_static_config.py +122 -0
  1162. ogx_open_client/models/vector_store_content.py +162 -0
  1163. ogx_open_client/models/vector_store_create_request.py +167 -0
  1164. ogx_open_client/models/vector_store_delete_response.py +133 -0
  1165. ogx_open_client/models/vector_store_expiration_after.py +129 -0
  1166. ogx_open_client/models/vector_store_file_batch_file_entry.py +164 -0
  1167. ogx_open_client/models/vector_store_file_batch_object.py +159 -0
  1168. ogx_open_client/models/vector_store_file_content_response.py +151 -0
  1169. ogx_open_client/models/vector_store_file_counts.py +127 -0
  1170. ogx_open_client/models/vector_store_file_delete_response.py +133 -0
  1171. ogx_open_client/models/vector_store_file_last_error.py +128 -0
  1172. ogx_open_client/models/vector_store_file_object.py +206 -0
  1173. ogx_open_client/models/vector_store_file_status.py +45 -0
  1174. ogx_open_client/models/vector_store_files_list_in_batch_response.py +148 -0
  1175. ogx_open_client/models/vector_store_list_files_response.py +148 -0
  1176. ogx_open_client/models/vector_store_list_response.py +148 -0
  1177. ogx_open_client/models/vector_store_modify_request.py +151 -0
  1178. ogx_open_client/models/vector_store_object.py +202 -0
  1179. ogx_open_client/models/vector_store_search_request.py +151 -0
  1180. ogx_open_client/models/vector_store_search_response.py +161 -0
  1181. ogx_open_client/models/vector_store_search_response_page.py +153 -0
  1182. ogx_open_client/models/vector_store_status.py +44 -0
  1183. ogx_open_client/models/version_info.py +119 -0
  1184. ogx_open_client/models/web_search_action_find.py +133 -0
  1185. ogx_open_client/models/web_search_action_open_page.py +136 -0
  1186. ogx_open_client/models/web_search_action_search.py +156 -0
  1187. ogx_open_client/models/web_search_action_search_web_search_action_open_page_web_search_action_find.py +224 -0
  1188. ogx_open_client/models/web_search_action_search_web_search_action_open_page_web_search_action_find1.py +224 -0
  1189. ogx_open_client/models/web_search_filters.py +141 -0
  1190. ogx_open_client/models/web_search_source.py +131 -0
  1191. ogx_open_client/models/web_search_user_location.py +157 -0
  1192. ogx_open_client/ogx_client.py +309 -0
  1193. ogx_open_client/py.typed +0 -0
  1194. ogx_open_client/rest.py +255 -0
  1195. ogx_open_client/stream.py +183 -0
  1196. ogx_open_client-1.0.3.dev0.dist-info/METADATA +723 -0
  1197. ogx_open_client-1.0.3.dev0.dist-info/RECORD +1199 -0
  1198. ogx_open_client-1.0.3.dev0.dist-info/WHEEL +5 -0
  1199. ogx_open_client-1.0.3.dev0.dist-info/top_level.txt +2 -0
@@ -0,0 +1,157 @@
1
+ # coding: utf-8
2
+
3
+ # Copyright (c) The OGX Contributors.
4
+ # All rights reserved.
5
+ #
6
+ # This source code is licensed under the terms described in the LICENSE file in
7
+ # the root directory of this source tree.
8
+
9
+ """
10
+ OGX Specification - Stable & Experimental APIs
11
+
12
+ This is the specification of the OGX that provides a set of endpoints and their corresponding interfaces that are tailored to best leverage Llama Models. **🔗 COMBINED**: This specification includes both stable production-ready APIs and experimental pre-release APIs. Use stable APIs for production deployments and experimental APIs for testing new features.
13
+
14
+ The version of the OpenAPI document: v1
15
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
16
+
17
+ Do not edit the class manually.
18
+ """ # noqa: E501
19
+
20
+
21
+ from __future__ import annotations
22
+ import pprint
23
+ import re # noqa: F401
24
+ import json
25
+
26
+ from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr, field_validator
27
+ from typing import Any, ClassVar, Dict, List, Optional
28
+ from typing import Any, ClassVar
29
+ from typing_extensions import Self
30
+
31
+ class OpenAIResponseTextFormat(BaseModel):
32
+ """
33
+ Configuration for Responses API text format.
34
+ """ # noqa: E501
35
+ type: Optional[StrictStr] = None
36
+ name: Optional[StrictStr] = None
37
+ var_schema: Optional[Dict[str, Any]] = Field(default=None, alias="schema")
38
+ description: Optional[StrictStr] = None
39
+ strict: Optional[StrictBool] = None
40
+ __properties: ClassVar[list[str]] = ["type", "name", "schema", "description", "strict"]
41
+
42
+ @field_validator('type')
43
+ def type_validate_enum(cls, value):
44
+ """Validates the enum"""
45
+ if value is None:
46
+ return value
47
+
48
+ if value not in set(['text', 'json_schema', 'json_object']):
49
+ raise ValueError("must be one of enum values ('text', 'json_schema', 'json_object')")
50
+ return value
51
+
52
+ model_config = ConfigDict(
53
+ populate_by_name=True,
54
+ validate_assignment=True,
55
+ protected_namespaces=(),
56
+ )
57
+
58
+
59
+
60
+ def __getattribute__(self, name):
61
+ """Override to automatically unwrap OneOf/AnyOf instances."""
62
+ value = super().__getattribute__(name)
63
+
64
+ # Unwrap OneOf/AnyOf wrappers directly
65
+ if hasattr(value, 'actual_instance') and value.actual_instance is not None:
66
+ return value.actual_instance
67
+
68
+ # If the value is a dict, unwrap any OneOf instances in its values
69
+ if isinstance(value, dict):
70
+ unwrapped = {}
71
+ for k, v in value.items():
72
+ # Check if this is a OneOf wrapper with actual_instance
73
+ if hasattr(v, 'actual_instance') and v.actual_instance is not None:
74
+ unwrapped[k] = v.actual_instance
75
+ else:
76
+ unwrapped[k] = v
77
+ return unwrapped
78
+
79
+ return value
80
+
81
+
82
+
83
+ def to_str(self) -> str:
84
+ """Returns the string representation of the model using alias"""
85
+ return pprint.pformat(self.model_dump(by_alias=True))
86
+
87
+ def to_json(self) -> str:
88
+ """Returns the JSON representation of the model using alias"""
89
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
90
+ return json.dumps(self.to_dict())
91
+
92
+ @classmethod
93
+ def from_json(cls, json_str: str) -> Self | None:
94
+ """Create an instance of OpenAIResponseTextFormat from a JSON string"""
95
+ return cls.from_dict(json.loads(json_str))
96
+
97
+ def to_dict(self) -> dict[str, Any]:
98
+ """Return the dictionary representation of the model using alias.
99
+
100
+ This has the following differences from calling pydantic's
101
+ `self.model_dump(by_alias=True)`:
102
+
103
+ * `None` is only added to the output dict for nullable fields that
104
+ were set at model initialization. Other fields with value `None`
105
+ are ignored.
106
+ """
107
+ excluded_fields: set[str] = set([
108
+ ])
109
+
110
+ _dict = self.model_dump(
111
+ by_alias=True,
112
+ exclude=excluded_fields,
113
+ exclude_none=True,
114
+ )
115
+ # set to None if name (nullable) is None
116
+ # and model_fields_set contains the field
117
+ if self.name is None and "name" in self.model_fields_set:
118
+ _dict['name'] = None
119
+
120
+ # set to None if var_schema (nullable) is None
121
+ # and model_fields_set contains the field
122
+ if self.var_schema is None and "var_schema" in self.model_fields_set:
123
+ _dict['schema'] = None
124
+
125
+ # set to None if description (nullable) is None
126
+ # and model_fields_set contains the field
127
+ if self.description is None and "description" in self.model_fields_set:
128
+ _dict['description'] = None
129
+
130
+ # set to None if strict (nullable) is None
131
+ # and model_fields_set contains the field
132
+ if self.strict is None and "strict" in self.model_fields_set:
133
+ _dict['strict'] = None
134
+
135
+ return _dict
136
+
137
+ @classmethod
138
+ def from_dict(cls, obj: dict[str, Any] | None) -> Self | None:
139
+ """Create an instance of OpenAIResponseTextFormat from a dict"""
140
+ if obj is None:
141
+ return None
142
+
143
+ if not isinstance(obj, dict):
144
+ return cls.model_validate(obj)
145
+
146
+ _obj = cls.model_validate({
147
+ k: v for k, v in {
148
+ "type": obj.get("type"),
149
+ "name": obj.get("name"),
150
+ "schema": obj.get("schema"),
151
+ "description": obj.get("description"),
152
+ "strict": obj.get("strict"),
153
+ }.items() if k in obj
154
+ })
155
+ return _obj
156
+
157
+
@@ -0,0 +1,516 @@
1
+ # coding: utf-8
2
+
3
+ # Copyright (c) The OGX Contributors.
4
+ # All rights reserved.
5
+ #
6
+ # This source code is licensed under the terms described in the LICENSE file in
7
+ # the root directory of this source tree.
8
+
9
+ """
10
+ OGX Specification - Stable & Experimental APIs
11
+
12
+ This is the specification of the OGX that provides a set of endpoints and their corresponding interfaces that are tailored to best leverage Llama Models. **🔗 COMBINED**: This specification includes both stable production-ready APIs and experimental pre-release APIs. Use stable APIs for production deployments and experimental APIs for testing new features.
13
+
14
+ The version of the OpenAPI document: v1
15
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
16
+
17
+ Do not edit the class manually.
18
+ """ # noqa: E501
19
+
20
+
21
+ from __future__ import annotations
22
+ import json
23
+ import pprint
24
+ import re
25
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr, ValidationError, field_validator
26
+ from typing import Any, List, Optional
27
+ from ogx_open_client.models.open_ai_response_input_tool_file_search import OpenAIResponseInputToolFileSearch
28
+ from ogx_open_client.models.open_ai_response_input_tool_function import OpenAIResponseInputToolFunction
29
+ from ogx_open_client.models.open_ai_response_input_tool_web_search import OpenAIResponseInputToolWebSearch
30
+ from ogx_open_client.models.open_ai_response_tool_mcp import OpenAIResponseToolMCP
31
+ from pydantic import StrictStr, Field, model_serializer
32
+ from typing import Any, ClassVar
33
+ from typing_extensions import Literal, Self
34
+ from ogx_open_client.lib._utils import pascal_to_snake_case
35
+
36
+ OPENAIRESPONSETOOL_ONE_OF_SCHEMAS = ["OpenAIResponseInputToolFileSearch", "OpenAIResponseInputToolFunction", "OpenAIResponseInputToolWebSearch", "OpenAIResponseToolMCP"]
37
+
38
+ class OpenAIResponseTool(BaseModel):
39
+ """
40
+ OpenAIResponseTool
41
+ """
42
+ # data type: OpenAIResponseInputToolWebSearch
43
+ oneof_schema_1_validator: Optional[OpenAIResponseInputToolWebSearch] = None
44
+ # data type: OpenAIResponseInputToolFileSearch
45
+ oneof_schema_2_validator: Optional[OpenAIResponseInputToolFileSearch] = None
46
+ # data type: OpenAIResponseInputToolFunction
47
+ oneof_schema_3_validator: Optional[OpenAIResponseInputToolFunction] = None
48
+ # data type: OpenAIResponseToolMCP
49
+ oneof_schema_4_validator: Optional[OpenAIResponseToolMCP] = None
50
+ actual_instance: OpenAIResponseInputToolFileSearch | OpenAIResponseInputToolFunction | OpenAIResponseInputToolWebSearch | OpenAIResponseToolMCP | None = None
51
+ one_of_schemas: ClassVar[set[str]] = { "OpenAIResponseInputToolFileSearch", "OpenAIResponseInputToolFunction", "OpenAIResponseInputToolWebSearch", "OpenAIResponseToolMCP" }
52
+
53
+ model_config = ConfigDict(
54
+ validate_assignment=True,
55
+ protected_namespaces=(),
56
+ )
57
+
58
+
59
+ discriminator_value_class_map: ClassVar[dict[str, str]] = {
60
+ 'file_search': 'OpenAIResponseInputToolFileSearch',
61
+ 'function': 'OpenAIResponseInputToolFunction',
62
+ 'mcp': 'OpenAIResponseToolMCP',
63
+ 'web_search': 'OpenAIResponseInputToolWebSearch',
64
+ 'web_search_2025_08_26': 'OpenAIResponseInputToolWebSearch',
65
+ 'web_search_preview': 'OpenAIResponseInputToolWebSearch',
66
+ 'web_search_preview_2025_03_11': 'OpenAIResponseInputToolWebSearch',
67
+ '': 'ERRORUNKNOWN'
68
+ }
69
+ discriminator_property_name: ClassVar[str] = 'type'
70
+
71
+ def __init__(self, *args, **kwargs) -> None:
72
+ if args:
73
+ if len(args) > 1:
74
+ raise ValueError("If a position argument is used, only 1 is allowed to set `actual_instance`")
75
+ if kwargs:
76
+ raise ValueError("If a position argument is used, keyword arguments cannot be used.")
77
+
78
+ # Preprocess the value to handle lists of dicts
79
+ value = args[0]
80
+ if isinstance(value, list):
81
+ # Try to construct model instances from dicts in the list
82
+ # This ensures default values are applied
83
+ from pydantic import ValidationError as PydanticValidationError
84
+ validated = None
85
+ if validated is not None:
86
+ value = validated
87
+
88
+ super().__init__(actual_instance=value)
89
+ else:
90
+ super().__init__(**kwargs)
91
+
92
+ def __getattr__(self, name: str):
93
+ """Proxy attribute access to actual_instance for transparency."""
94
+ # Avoid infinite recursion for private attributes and model fields
95
+ if name.startswith('_') or name in ('actual_instance', 'one_of_schemas', 'model_config', 'model_fields'):
96
+ raise AttributeError(f"'{type(self).__name__}' object has no attribute '{name}'")
97
+
98
+ actual = super().__getattribute__('actual_instance')
99
+ if actual is None:
100
+ raise AttributeError(f"'{type(self).__name__}' object has no attribute '{name}' (actual_instance is None)")
101
+
102
+ return getattr(actual, name)
103
+
104
+ def __iter__(self):
105
+ """Iterate over items if actual_instance is iterable."""
106
+ if hasattr(self.actual_instance, '__iter__'):
107
+ return iter(self.actual_instance)
108
+ raise TypeError(f"'{type(self.actual_instance).__name__}' object is not iterable")
109
+
110
+ def __getitem__(self, index):
111
+ """Get item by index if actual_instance supports indexing."""
112
+ if hasattr(self.actual_instance, '__getitem__'):
113
+ return self.actual_instance[index]
114
+ raise TypeError(f"'{type(self.actual_instance).__name__}' object is not subscriptable")
115
+
116
+ def __len__(self):
117
+ """Get length if actual_instance supports len()."""
118
+ if hasattr(self.actual_instance, '__len__'):
119
+ return len(self.actual_instance)
120
+ raise TypeError(f"object of type '{type(self.actual_instance).__name__}' has no len()")
121
+
122
+ def __bool__(self):
123
+ """Handle truthiness checks - wrapper is truthy if actual_instance is not None."""
124
+ return self.actual_instance is not None
125
+
126
+ def __eq__(self, other):
127
+ """Handle equality comparisons transparently."""
128
+ if hasattr(self, 'actual_instance') and self.actual_instance is not None:
129
+ other_value = other.actual_instance if hasattr(other, 'actual_instance') else other
130
+ return self.actual_instance == other_value
131
+ return super().__eq__(other)
132
+
133
+ def __hash__(self):
134
+ """Handle hashing - use actual_instance's hash if available."""
135
+ if hasattr(self, 'actual_instance') and self.actual_instance is not None:
136
+ try:
137
+ return hash(self.actual_instance)
138
+ except TypeError:
139
+ return id(self)
140
+ return super().__hash__()
141
+
142
+ def __repr__(self):
143
+ """Return repr of actual_instance for debugging."""
144
+ if hasattr(self, 'actual_instance') and self.actual_instance is not None:
145
+ return repr(self.actual_instance)
146
+ return super().__repr__()
147
+
148
+ def to_json(self) -> str:
149
+ """Returns the JSON representation of the actual instance"""
150
+ if self.actual_instance is None:
151
+ return "null"
152
+
153
+ if hasattr(self.actual_instance, "to_json") and callable(self.actual_instance.to_json):
154
+ return self.actual_instance.to_json()
155
+ else:
156
+ return json.dumps(self.actual_instance)
157
+
158
+ def to_str(self) -> str:
159
+ """Returns the string representation of the actual instance"""
160
+ return pprint.pformat(self.model_dump())
161
+
162
+ @model_serializer(mode='wrap')
163
+ def serialize_model(self, serializer):
164
+ """Custom serializer that delegates to actual_instance for proper JSON serialization."""
165
+ # If actual_instance is None, serialize the wrapper normally
166
+ if not hasattr(self, 'actual_instance') or self.actual_instance is None:
167
+ return serializer(self)
168
+
169
+ # If actual_instance is a Pydantic model, serialize it using the default serializer
170
+ # This ensures nested models are also serialized correctly
171
+ if hasattr(self.actual_instance, '__pydantic_serializer__'):
172
+ # Use Pydantic's serializer infrastructure to ensure proper serialization
173
+ from pydantic_core import to_jsonable_python
174
+ return to_jsonable_python(
175
+ self.actual_instance,
176
+ by_alias=True,
177
+ exclude_none=True,
178
+ fallback=lambda x: x if isinstance(x, str | int | float | bool | type(None)) else str(x)
179
+ )
180
+ # If it's a list of Pydantic models, serialize each one
181
+ elif isinstance(self.actual_instance, list):
182
+ from pydantic_core import to_jsonable_python
183
+ return [
184
+ to_jsonable_python(
185
+ item,
186
+ by_alias=True,
187
+ exclude_none=True,
188
+ fallback=lambda x: x if isinstance(x, str | int | float | bool | type(None)) else str(x)
189
+ )
190
+ if hasattr(item, '__pydantic_serializer__')
191
+ else item
192
+ for item in self.actual_instance
193
+ ]
194
+ # Otherwise return as-is (primitives, dicts, etc.)
195
+ else:
196
+ return self.actual_instance
197
+
198
+ @field_validator('actual_instance')
199
+ def actual_instance_must_validate_oneof(cls, v):
200
+ instance = OpenAIResponseTool.model_construct()
201
+ error_messages = []
202
+ match = 0
203
+ # validate data type: OpenAIResponseInputToolWebSearch
204
+ # Check if we should skip this variant based on discriminator
205
+ _should_skip_discriminator = False
206
+ if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
207
+ _disc_value = v.get(cls.discriminator_property_name)
208
+ if _disc_value is None and cls.discriminator_property_name != 'type':
209
+ _disc_value = v.get('type')
210
+ if _disc_value and _disc_value in cls.discriminator_value_class_map:
211
+ _expected_class = cls.discriminator_value_class_map[_disc_value]
212
+ if _expected_class != 'OpenAIResponseInputToolWebSearch':
213
+ _should_skip_discriminator = True
214
+
215
+ if _should_skip_discriminator:
216
+ error_messages.append(f"Skipping OpenAIResponseInputToolWebSearch due to discriminator mismatch")
217
+ elif not isinstance(v, OpenAIResponseInputToolWebSearch):
218
+ # Try to construct from dict if it's a dict - this applies default values
219
+ if isinstance(v, dict):
220
+ try:
221
+ constructed = OpenAIResponseInputToolWebSearch.model_validate(v)
222
+ match += 1
223
+ # Return the constructed instance to use it instead of raw dict
224
+ return constructed
225
+ except (ValidationError, ValueError) as e:
226
+ error_messages.append(f"Error! Cannot construct `OpenAIResponseInputToolWebSearch` from dict: {str(e)}")
227
+ else:
228
+ error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseInputToolWebSearch`")
229
+ else:
230
+ match += 1
231
+ # validate data type: OpenAIResponseInputToolFileSearch
232
+ # Check if we should skip this variant based on discriminator
233
+ _should_skip_discriminator = False
234
+ if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
235
+ _disc_value = v.get(cls.discriminator_property_name)
236
+ if _disc_value is None and cls.discriminator_property_name != 'type':
237
+ _disc_value = v.get('type')
238
+ if _disc_value and _disc_value in cls.discriminator_value_class_map:
239
+ _expected_class = cls.discriminator_value_class_map[_disc_value]
240
+ if _expected_class != 'OpenAIResponseInputToolFileSearch':
241
+ _should_skip_discriminator = True
242
+
243
+ if _should_skip_discriminator:
244
+ error_messages.append(f"Skipping OpenAIResponseInputToolFileSearch due to discriminator mismatch")
245
+ elif not isinstance(v, OpenAIResponseInputToolFileSearch):
246
+ # Try to construct from dict if it's a dict - this applies default values
247
+ if isinstance(v, dict):
248
+ try:
249
+ constructed = OpenAIResponseInputToolFileSearch.model_validate(v)
250
+ match += 1
251
+ # Return the constructed instance to use it instead of raw dict
252
+ return constructed
253
+ except (ValidationError, ValueError) as e:
254
+ error_messages.append(f"Error! Cannot construct `OpenAIResponseInputToolFileSearch` from dict: {str(e)}")
255
+ else:
256
+ error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseInputToolFileSearch`")
257
+ else:
258
+ match += 1
259
+ # validate data type: OpenAIResponseInputToolFunction
260
+ # Check if we should skip this variant based on discriminator
261
+ _should_skip_discriminator = False
262
+ if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
263
+ _disc_value = v.get(cls.discriminator_property_name)
264
+ if _disc_value is None and cls.discriminator_property_name != 'type':
265
+ _disc_value = v.get('type')
266
+ if _disc_value and _disc_value in cls.discriminator_value_class_map:
267
+ _expected_class = cls.discriminator_value_class_map[_disc_value]
268
+ if _expected_class != 'OpenAIResponseInputToolFunction':
269
+ _should_skip_discriminator = True
270
+
271
+ if _should_skip_discriminator:
272
+ error_messages.append(f"Skipping OpenAIResponseInputToolFunction due to discriminator mismatch")
273
+ elif not isinstance(v, OpenAIResponseInputToolFunction):
274
+ # Try to construct from dict if it's a dict - this applies default values
275
+ if isinstance(v, dict):
276
+ try:
277
+ constructed = OpenAIResponseInputToolFunction.model_validate(v)
278
+ match += 1
279
+ # Return the constructed instance to use it instead of raw dict
280
+ return constructed
281
+ except (ValidationError, ValueError) as e:
282
+ error_messages.append(f"Error! Cannot construct `OpenAIResponseInputToolFunction` from dict: {str(e)}")
283
+ else:
284
+ error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseInputToolFunction`")
285
+ else:
286
+ match += 1
287
+ # validate data type: OpenAIResponseToolMCP
288
+ # Check if we should skip this variant based on discriminator
289
+ _should_skip_discriminator = False
290
+ if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
291
+ _disc_value = v.get(cls.discriminator_property_name)
292
+ if _disc_value is None and cls.discriminator_property_name != 'type':
293
+ _disc_value = v.get('type')
294
+ if _disc_value and _disc_value in cls.discriminator_value_class_map:
295
+ _expected_class = cls.discriminator_value_class_map[_disc_value]
296
+ if _expected_class != 'OpenAIResponseToolMCP':
297
+ _should_skip_discriminator = True
298
+
299
+ if _should_skip_discriminator:
300
+ error_messages.append(f"Skipping OpenAIResponseToolMCP due to discriminator mismatch")
301
+ elif not isinstance(v, OpenAIResponseToolMCP):
302
+ # Try to construct from dict if it's a dict - this applies default values
303
+ if isinstance(v, dict):
304
+ try:
305
+ constructed = OpenAIResponseToolMCP.model_validate(v)
306
+ match += 1
307
+ # Return the constructed instance to use it instead of raw dict
308
+ return constructed
309
+ except (ValidationError, ValueError) as e:
310
+ error_messages.append(f"Error! Cannot construct `OpenAIResponseToolMCP` from dict: {str(e)}")
311
+ else:
312
+ error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseToolMCP`")
313
+ else:
314
+ match += 1
315
+ if match > 1:
316
+ # Special case: empty lists can match multiple List[...] schemas in oneOf
317
+ # This is common in streaming where content starts empty
318
+ # In this case, just accept the first match (they're functionally equivalent for empty lists)
319
+ if isinstance(v, list) and len(v) == 0:
320
+ return v
321
+ # more than 1 match
322
+ raise ValueError("Multiple matches found when setting `actual_instance` in OpenAIResponseTool with oneOf schemas: OpenAIResponseInputToolFileSearch, OpenAIResponseInputToolFunction, OpenAIResponseInputToolWebSearch, OpenAIResponseToolMCP. Details: " + ", ".join(error_messages))
323
+ elif match == 0:
324
+ # no match
325
+ raise ValueError("No match found when setting `actual_instance` in OpenAIResponseTool with oneOf schemas: OpenAIResponseInputToolFileSearch, OpenAIResponseInputToolFunction, OpenAIResponseInputToolWebSearch, OpenAIResponseToolMCP. Details: " + ", ".join(error_messages))
326
+ else:
327
+ return v
328
+
329
+ @classmethod
330
+ def from_dict(cls, obj: str | dict[str, Any]) -> Self:
331
+ # Handle primitives and lists directly - don't double-serialize them
332
+ if isinstance(obj, (str, int, float, bool, type(None), list)):
333
+ # For non-dict content, bypass from_json and use actual_instance_must_validate_oneof
334
+ instance = cls.model_construct()
335
+ instance.actual_instance = cls.actual_instance_must_validate_oneof(obj)
336
+ return instance
337
+ return cls.from_json(json.dumps(obj))
338
+
339
+ @classmethod
340
+ def from_json(cls, json_str: str) -> Self:
341
+ """Returns the object represented by the json string"""
342
+ instance = cls.model_construct()
343
+ error_messages = []
344
+ match = 0
345
+
346
+ # use oneOf discriminator to lookup the data type
347
+ _data_type = json.loads(json_str).get("type")
348
+ if not _data_type:
349
+ raise ValueError("Failed to lookup data type from the field `type` in the input.")
350
+
351
+ # check if data type is `OpenAIResponseInputToolFileSearch`
352
+ if _data_type == "file_search":
353
+ instance.actual_instance = OpenAIResponseInputToolFileSearch.from_json(json_str)
354
+ return instance
355
+
356
+ # check if data type is `OpenAIResponseInputToolFunction`
357
+ if _data_type == "function":
358
+ instance.actual_instance = OpenAIResponseInputToolFunction.from_json(json_str)
359
+ return instance
360
+
361
+ # check if data type is `OpenAIResponseToolMCP`
362
+ if _data_type == "mcp":
363
+ instance.actual_instance = OpenAIResponseToolMCP.from_json(json_str)
364
+ return instance
365
+
366
+ # check if data type is `OpenAIResponseInputToolWebSearch`
367
+ if _data_type == "web_search":
368
+ instance.actual_instance = OpenAIResponseInputToolWebSearch.from_json(json_str)
369
+ return instance
370
+
371
+ # check if data type is `OpenAIResponseInputToolWebSearch`
372
+ if _data_type == "web_search_2025_08_26":
373
+ instance.actual_instance = OpenAIResponseInputToolWebSearch.from_json(json_str)
374
+ return instance
375
+
376
+ # check if data type is `OpenAIResponseInputToolWebSearch`
377
+ if _data_type == "web_search_preview":
378
+ instance.actual_instance = OpenAIResponseInputToolWebSearch.from_json(json_str)
379
+ return instance
380
+
381
+ # check if data type is `OpenAIResponseInputToolWebSearch`
382
+ if _data_type == "web_search_preview_2025_03_11":
383
+ instance.actual_instance = OpenAIResponseInputToolWebSearch.from_json(json_str)
384
+ return instance
385
+
386
+ # check if data type is `ERRORUNKNOWN`
387
+ if _data_type == "":
388
+ instance.actual_instance = ERRORUNKNOWN.from_json(json_str)
389
+ return instance
390
+
391
+ # deserialize data into OpenAIResponseInputToolWebSearch
392
+ try:
393
+ instance.actual_instance = OpenAIResponseInputToolWebSearch.from_json(json_str)
394
+ match += 1
395
+ except (ValidationError, ValueError) as e:
396
+ error_messages.append(str(e))
397
+ # deserialize data into OpenAIResponseInputToolFileSearch
398
+ try:
399
+ instance.actual_instance = OpenAIResponseInputToolFileSearch.from_json(json_str)
400
+ match += 1
401
+ except (ValidationError, ValueError) as e:
402
+ error_messages.append(str(e))
403
+ # deserialize data into OpenAIResponseInputToolFunction
404
+ try:
405
+ instance.actual_instance = OpenAIResponseInputToolFunction.from_json(json_str)
406
+ match += 1
407
+ except (ValidationError, ValueError) as e:
408
+ error_messages.append(str(e))
409
+ # deserialize data into OpenAIResponseToolMCP
410
+ try:
411
+ instance.actual_instance = OpenAIResponseToolMCP.from_json(json_str)
412
+ match += 1
413
+ except (ValidationError, ValueError) as e:
414
+ error_messages.append(str(e))
415
+
416
+ if match > 1:
417
+ # Special case: empty lists can match multiple List[...] schemas in oneOf
418
+ # This is common in streaming where content starts empty
419
+ # In this case, just accept the first match (they're functionally equivalent for empty lists)
420
+ data = json.loads(json_str)
421
+ if isinstance(data, list) and len(data) == 0:
422
+ return instance # First match already set in instance
423
+ # more than 1 match
424
+ raise ValueError("Multiple matches found when deserializing the JSON string into OpenAIResponseTool with oneOf schemas: OpenAIResponseInputToolFileSearch, OpenAIResponseInputToolFunction, OpenAIResponseInputToolWebSearch, OpenAIResponseToolMCP. Details: " + ", ".join(error_messages))
425
+ elif match == 0:
426
+ # no match - try lenient fallback for streaming chunks
427
+ data = json.loads(json_str)
428
+
429
+ # Helper to remove None values recursively for streaming chunks
430
+ def remove_none_values(obj):
431
+ if isinstance(obj, dict):
432
+ return {k: remove_none_values(v) for k, v in obj.items() if v is not None}
433
+ elif isinstance(obj, list):
434
+ return [remove_none_values(item) for item in obj if item is not None]
435
+ return obj
436
+
437
+ # Helper to add default values for commonly missing required fields in streaming
438
+ def add_streaming_defaults(obj):
439
+ if isinstance(obj, dict):
440
+ result = dict(obj)
441
+ # Add empty string for finish_reason if missing (common in streaming chunks)
442
+ if 'choices' in result and isinstance(result['choices'], list):
443
+ for choice in result['choices']:
444
+ if isinstance(choice, dict) and 'finish_reason' not in choice:
445
+ choice['finish_reason'] = ''
446
+ return result
447
+ return obj
448
+
449
+ # Try each variant with None values removed and defaults added
450
+ try:
451
+ cleaned_data = remove_none_values(data)
452
+ cleaned_data = add_streaming_defaults(cleaned_data)
453
+ variant = OpenAIResponseInputToolWebSearch.model_validate(cleaned_data)
454
+ instance.actual_instance = variant
455
+ return instance
456
+ except Exception:
457
+ pass
458
+ try:
459
+ cleaned_data = remove_none_values(data)
460
+ cleaned_data = add_streaming_defaults(cleaned_data)
461
+ variant = OpenAIResponseInputToolFileSearch.model_validate(cleaned_data)
462
+ instance.actual_instance = variant
463
+ return instance
464
+ except Exception:
465
+ pass
466
+ try:
467
+ cleaned_data = remove_none_values(data)
468
+ cleaned_data = add_streaming_defaults(cleaned_data)
469
+ variant = OpenAIResponseInputToolFunction.model_validate(cleaned_data)
470
+ instance.actual_instance = variant
471
+ return instance
472
+ except Exception:
473
+ pass
474
+ try:
475
+ cleaned_data = remove_none_values(data)
476
+ cleaned_data = add_streaming_defaults(cleaned_data)
477
+ variant = OpenAIResponseToolMCP.model_validate(cleaned_data)
478
+ instance.actual_instance = variant
479
+ return instance
480
+ except Exception:
481
+ pass
482
+
483
+ # All variants failed
484
+ raise ValueError("No match found when deserializing the JSON string into OpenAIResponseTool with oneOf schemas: OpenAIResponseInputToolFileSearch, OpenAIResponseInputToolFunction, OpenAIResponseInputToolWebSearch, OpenAIResponseToolMCP. Details: " + ", ".join(error_messages))
485
+ else:
486
+ return instance
487
+
488
+ def to_dict(self) -> dict[str, Any] | OpenAIResponseInputToolFileSearch | OpenAIResponseInputToolFunction | OpenAIResponseInputToolWebSearch | OpenAIResponseToolMCP | None:
489
+ """Returns the dict representation of the actual instance"""
490
+ if self.actual_instance is None:
491
+ return None
492
+
493
+ # Handle lists specially - call to_dict() on each item if it has the method
494
+ if isinstance(self.actual_instance, list):
495
+ return [
496
+ item.to_dict() if hasattr(item, 'to_dict') and callable(item.to_dict)
497
+ else item
498
+ for item in self.actual_instance
499
+ ]
500
+ # Handle Pydantic models
501
+ elif hasattr(self.actual_instance, "to_dict") and callable(self.actual_instance.to_dict):
502
+ return self.actual_instance.to_dict()
503
+ # Handle other Pydantic models that don't have to_dict
504
+ elif hasattr(self.actual_instance, '__pydantic_serializer__'):
505
+ from pydantic_core import to_jsonable_python
506
+ return to_jsonable_python(
507
+ self.actual_instance,
508
+ by_alias=True,
509
+ exclude_none=True,
510
+ fallback=lambda x: x if isinstance(x, str | int | float | bool | type(None)) else str(x)
511
+ )
512
+ else:
513
+ # primitive type
514
+ return self.actual_instance
515
+
516
+