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.
- ogx_client/__init__.py +1135 -0
- ogx_client/_exceptions.py +114 -0
- ogx_client/_types.py +312 -0
- ogx_client/_version.py +8 -0
- ogx_client/api/__init__.py +33 -0
- ogx_client/api/admin_api.py +1411 -0
- ogx_client/api/alpha_api.py +354 -0
- ogx_client/api/batches_api.py +1247 -0
- ogx_client/api/chat_api.py +352 -0
- ogx_client/api/chat_completions_api.py +1028 -0
- ogx_client/api/completions_api.py +440 -0
- ogx_client/api/connectors_api.py +1235 -0
- ogx_client/api/conversations_api.py +1288 -0
- ogx_client/api/embeddings_api.py +429 -0
- ogx_client/api/file_batches_api.py +1370 -0
- ogx_client/api/file_processors_api.py +442 -0
- ogx_client/api/files_api.py +1539 -0
- ogx_client/api/inference_api.py +429 -0
- ogx_client/api/input_items_api.py +472 -0
- ogx_client/api/inspect_api.py +617 -0
- ogx_client/api/interactions_api.py +430 -0
- ogx_client/api/items_api.py +1359 -0
- ogx_client/api/messages_api.py +2466 -0
- ogx_client/api/models_api.py +451 -0
- ogx_client/api/openai_api.py +481 -0
- ogx_client/api/prompts_api.py +1883 -0
- ogx_client/api/providers_api.py +636 -0
- ogx_client/api/responses_api.py +1876 -0
- ogx_client/api/routes_api.py +389 -0
- ogx_client/api/tools_api.py +389 -0
- ogx_client/api/vector_io_api.py +740 -0
- ogx_client/api/vector_stores_api.py +1936 -0
- ogx_client/api/vector_stores_files_api.py +2011 -0
- ogx_client/api/versions_api.py +386 -0
- ogx_client/api_client.py +833 -0
- ogx_client/api_response.py +21 -0
- ogx_client/async_api_client.py +203 -0
- ogx_client/async_api_response.py +134 -0
- ogx_client/async_stream.py +161 -0
- ogx_client/configuration.py +585 -0
- ogx_client/exceptions.py +253 -0
- ogx_client/lib/__init__.py +17 -0
- ogx_client/lib/_utils.py +26 -0
- ogx_client/lib/agents/__init__.py +5 -0
- ogx_client/lib/agents/agent.py +540 -0
- ogx_client/lib/agents/client_tool.py +258 -0
- ogx_client/lib/agents/event_logger.py +134 -0
- ogx_client/lib/agents/event_synthesizer.py +448 -0
- ogx_client/lib/agents/react/__init__.py +5 -0
- ogx_client/lib/agents/react/agent.py +94 -0
- ogx_client/lib/agents/react/prompts.py +151 -0
- ogx_client/lib/agents/react/tool_parser.py +59 -0
- ogx_client/lib/agents/tool_parser.py +42 -0
- ogx_client/lib/agents/turn_events.py +268 -0
- ogx_client/lib/agents/types.py +63 -0
- ogx_client/lib/cli/__init__.py +12 -0
- ogx_client/lib/cli/common/__init__.py +5 -0
- ogx_client/lib/cli/common/utils.py +54 -0
- ogx_client/lib/cli/configure.py +68 -0
- ogx_client/lib/cli/constants.py +14 -0
- ogx_client/lib/cli/datasets/__init__.py +9 -0
- ogx_client/lib/cli/datasets/datasets.py +22 -0
- ogx_client/lib/cli/datasets/list.py +32 -0
- ogx_client/lib/cli/datasets/register.py +78 -0
- ogx_client/lib/cli/datasets/unregister.py +20 -0
- ogx_client/lib/cli/eval/__init__.py +9 -0
- ogx_client/lib/cli/eval/eval.py +22 -0
- ogx_client/lib/cli/eval/run_benchmark.py +193 -0
- ogx_client/lib/cli/eval/run_scoring.py +116 -0
- ogx_client/lib/cli/eval/utils.py +59 -0
- ogx_client/lib/cli/eval_tasks/__init__.py +9 -0
- ogx_client/lib/cli/eval_tasks/eval_tasks.py +65 -0
- ogx_client/lib/cli/eval_tasks/list.py +35 -0
- ogx_client/lib/cli/inference/__init__.py +9 -0
- ogx_client/lib/cli/inference/inference.py +88 -0
- ogx_client/lib/cli/inspect/__init__.py +9 -0
- ogx_client/lib/cli/inspect/inspect.py +19 -0
- ogx_client/lib/cli/inspect/version.py +22 -0
- ogx_client/lib/cli/models/__init__.py +9 -0
- ogx_client/lib/cli/models/models.py +149 -0
- ogx_client/lib/cli/ogx_client.py +111 -0
- ogx_client/lib/cli/post_training/__init__.py +9 -0
- ogx_client/lib/cli/post_training/post_training.py +114 -0
- ogx_client/lib/cli/providers/__init__.py +9 -0
- ogx_client/lib/cli/providers/inspect.py +33 -0
- ogx_client/lib/cli/providers/list.py +32 -0
- ogx_client/lib/cli/providers/providers.py +21 -0
- ogx_client/lib/cli/scoring_functions/__init__.py +9 -0
- ogx_client/lib/cli/scoring_functions/list.py +38 -0
- ogx_client/lib/cli/scoring_functions/scoring_functions.py +62 -0
- ogx_client/lib/cli/toolgroups/__init__.py +9 -0
- ogx_client/lib/cli/toolgroups/toolgroups.py +129 -0
- ogx_client/lib/cli/vector_stores/__init__.py +9 -0
- ogx_client/lib/cli/vector_stores/vector_stores.py +138 -0
- ogx_client/lib/inference/__init__.py +5 -0
- ogx_client/lib/inference/event_logger.py +58 -0
- ogx_client/lib/inference/utils.py +21 -0
- ogx_client/lib/stream_printer.py +30 -0
- ogx_client/lib/tools/__init__.py +9 -0
- ogx_client/lib/tools/mcp_oauth.py +303 -0
- ogx_client/models/__init__.py +505 -0
- ogx_client/models/add_items_request.py +148 -0
- ogx_client/models/allowed_tools_config.py +145 -0
- ogx_client/models/allowed_tools_filter.py +141 -0
- ogx_client/models/anthropic_base64_image_source.py +140 -0
- ogx_client/models/anthropic_base64_image_source_anthropic_url_image_source.py +396 -0
- ogx_client/models/anthropic_count_tokens_request.py +170 -0
- ogx_client/models/anthropic_count_tokens_response.py +119 -0
- ogx_client/models/anthropic_create_message_request.py +217 -0
- ogx_client/models/anthropic_image_block.py +144 -0
- ogx_client/models/anthropic_list_models_response.py +163 -0
- ogx_client/models/anthropic_message.py +141 -0
- ogx_client/models/anthropic_message_response.py +187 -0
- ogx_client/models/anthropic_model_info.py +149 -0
- ogx_client/models/anthropic_text_block.py +131 -0
- ogx_client/models/anthropic_text_block5_variants.py +549 -0
- ogx_client/models/anthropic_text_block5_variants1.py +549 -0
- ogx_client/models/anthropic_text_block_anthropic_image_block.py +203 -0
- ogx_client/models/anthropic_thinking_block.py +138 -0
- ogx_client/models/anthropic_thinking_config.py +137 -0
- ogx_client/models/anthropic_tool_def.py +128 -0
- ogx_client/models/anthropic_tool_result_block_input.py +153 -0
- ogx_client/models/anthropic_tool_result_block_output.py +153 -0
- ogx_client/models/anthropic_tool_use_block.py +135 -0
- ogx_client/models/anthropic_url_image_source.py +131 -0
- ogx_client/models/anthropic_usage.py +135 -0
- ogx_client/models/api.py +59 -0
- ogx_client/models/approval_filter.py +148 -0
- ogx_client/models/array_type.py +129 -0
- ogx_client/models/batch.py +302 -0
- ogx_client/models/batch_error.py +158 -0
- ogx_client/models/batch_request_counts.py +136 -0
- ogx_client/models/batch_usage.py +166 -0
- ogx_client/models/bf16_quantization_config.py +129 -0
- ogx_client/models/boolean_type.py +129 -0
- ogx_client/models/cancel_batch_request.py +119 -0
- ogx_client/models/chat_completion_input_type.py +129 -0
- ogx_client/models/chat_completion_message.py +216 -0
- ogx_client/models/chat_completion_message_custom_tool_call.py +143 -0
- ogx_client/models/chat_completion_message_custom_tool_call_custom.py +121 -0
- ogx_client/models/chat_completion_message_function_call.py +121 -0
- ogx_client/models/chat_completion_message_list.py +165 -0
- ogx_client/models/chat_completion_message_tool_call.py +143 -0
- ogx_client/models/chat_completion_message_tool_call_chat_completion_message_custom_tool_call.py +203 -0
- ogx_client/models/chat_completion_message_tool_call_chat_completion_message_custom_tool_call1.py +206 -0
- ogx_client/models/chat_completion_message_tool_call_function.py +121 -0
- ogx_client/models/chunk.py +151 -0
- ogx_client/models/chunk_for_deletion.py +121 -0
- ogx_client/models/chunk_metadata.py +180 -0
- ogx_client/models/compact_response_request.py +239 -0
- ogx_client/models/comparison_filter.py +135 -0
- ogx_client/models/completion_input_type.py +129 -0
- ogx_client/models/compound_filter.py +128 -0
- ogx_client/models/connector.py +152 -0
- ogx_client/models/connector_input.py +131 -0
- ogx_client/models/connector_type.py +42 -0
- ogx_client/models/context_management.py +133 -0
- ogx_client/models/conversation.py +140 -0
- ogx_client/models/conversation_deleted_resource.py +133 -0
- ogx_client/models/conversation_item.py +855 -0
- ogx_client/models/conversation_item_create_request.py +148 -0
- ogx_client/models/conversation_item_deleted_resource.py +133 -0
- ogx_client/models/conversation_item_include.py +48 -0
- ogx_client/models/conversation_item_list.py +158 -0
- ogx_client/models/conversation_message.py +149 -0
- ogx_client/models/create_batch_request.py +144 -0
- ogx_client/models/create_conversation_request.py +159 -0
- ogx_client/models/create_message_batch_request.py +148 -0
- ogx_client/models/create_prompt_request.py +126 -0
- ogx_client/models/create_response_request.py +407 -0
- ogx_client/models/custom_tool_config.py +119 -0
- ogx_client/models/delete_chunks_request.py +132 -0
- ogx_client/models/delete_conversation_request.py +119 -0
- ogx_client/models/delete_file_request.py +119 -0
- ogx_client/models/delete_item_request.py +121 -0
- ogx_client/models/delete_prompt_request.py +119 -0
- ogx_client/models/dialog_type.py +129 -0
- ogx_client/models/embedded_chunk.py +157 -0
- ogx_client/models/embedded_chunk_input.py +157 -0
- ogx_client/models/embedded_chunk_output.py +157 -0
- ogx_client/models/embeddings_response.py +136 -0
- ogx_client/models/error.py +143 -0
- ogx_client/models/error_detail.py +313 -0
- ogx_client/models/errors.py +172 -0
- ogx_client/models/expires_after.py +129 -0
- ogx_client/models/fp8_quantization_config.py +129 -0
- ogx_client/models/function_tool_config.py +119 -0
- ogx_client/models/get_chat_completion_request.py +119 -0
- ogx_client/models/get_connector_request.py +119 -0
- ogx_client/models/get_connector_tool_request.py +121 -0
- ogx_client/models/get_conversation_request.py +119 -0
- ogx_client/models/get_model_request.py +119 -0
- ogx_client/models/get_model_v1_models_model_id_get200_response.py +414 -0
- ogx_client/models/get_prompt_request.py +126 -0
- ogx_client/models/google_create_interaction_request.py +213 -0
- ogx_client/models/google_function_call_content.py +153 -0
- ogx_client/models/google_function_call_output.py +153 -0
- ogx_client/models/google_function_declaration.py +146 -0
- ogx_client/models/google_function_response_content.py +160 -0
- ogx_client/models/google_generation_config.py +146 -0
- ogx_client/models/google_input_turn.py +141 -0
- ogx_client/models/google_interaction_response.py +199 -0
- ogx_client/models/google_list_models_response.py +147 -0
- ogx_client/models/google_model_info.py +123 -0
- ogx_client/models/google_text_content.py +131 -0
- ogx_client/models/google_text_content_google_function_call_content_google_function_response_content.py +218 -0
- ogx_client/models/google_text_output.py +131 -0
- ogx_client/models/google_text_output_google_function_call_output_google_thought_output.py +447 -0
- ogx_client/models/google_thought_output.py +149 -0
- ogx_client/models/google_tool.py +145 -0
- ogx_client/models/google_usage.py +136 -0
- ogx_client/models/grammar_response_format.py +131 -0
- ogx_client/models/greedy_sampling_strategy.py +129 -0
- ogx_client/models/greedy_sampling_strategy_top_p_sampling_strategy_top_k_sampling_strategy.py +447 -0
- ogx_client/models/health_info.py +120 -0
- ogx_client/models/health_status.py +44 -0
- ogx_client/models/image_content_item.py +144 -0
- ogx_client/models/image_content_item_input.py +144 -0
- ogx_client/models/image_content_item_input_text_content_item.py +396 -0
- ogx_client/models/image_content_item_output.py +144 -0
- ogx_client/models/image_content_item_output_text_content_item.py +396 -0
- ogx_client/models/image_content_item_text_content_item.py +396 -0
- ogx_client/models/image_delta.py +131 -0
- ogx_client/models/inline_provider_spec.py +183 -0
- ogx_client/models/input_tokens_details.py +132 -0
- ogx_client/models/insert_chunks_request.py +139 -0
- ogx_client/models/inspect_provider_request.py +119 -0
- ogx_client/models/int4_quantization_config.py +136 -0
- ogx_client/models/integer_number.py +207 -0
- ogx_client/models/interleaved_content.py +280 -0
- ogx_client/models/interleaved_content_item.py +396 -0
- ogx_client/models/job.py +122 -0
- ogx_client/models/job_status.py +46 -0
- ogx_client/models/json_schema_response_format.py +131 -0
- ogx_client/models/json_type.py +129 -0
- ogx_client/models/list_batches_request.py +126 -0
- ogx_client/models/list_batches_response.py +158 -0
- ogx_client/models/list_chat_completion_messages_request.py +142 -0
- ogx_client/models/list_chat_completions_request.py +147 -0
- ogx_client/models/list_connector_tools_request.py +119 -0
- ogx_client/models/list_connectors_response.py +147 -0
- ogx_client/models/list_files_request.py +147 -0
- ogx_client/models/list_items_request.py +158 -0
- ogx_client/models/list_message_batches_response.py +163 -0
- ogx_client/models/list_models_response.py +147 -0
- ogx_client/models/list_models_v1_models_get200_response.py +414 -0
- ogx_client/models/list_number_string.py +265 -0
- ogx_client/models/list_open_ai_chat_completion_response.py +165 -0
- ogx_client/models/list_open_ai_file_response.py +165 -0
- ogx_client/models/list_open_ai_response_input_item.py +159 -0
- ogx_client/models/list_open_ai_response_object.py +165 -0
- ogx_client/models/list_prompt_versions_request.py +119 -0
- ogx_client/models/list_prompts_response.py +147 -0
- ogx_client/models/list_providers_response.py +147 -0
- ogx_client/models/list_routes_request.py +134 -0
- ogx_client/models/list_routes_response.py +147 -0
- ogx_client/models/list_string_allowed_tools_filter.py +269 -0
- ogx_client/models/list_tool_defs_response.py +147 -0
- ogx_client/models/list_tool_groups_response.py +147 -0
- ogx_client/models/list_tools_request.py +124 -0
- ogx_client/models/list_tools_response.py +147 -0
- ogx_client/models/mcp_list_tools_tool.py +128 -0
- ogx_client/models/message_batch.py +187 -0
- ogx_client/models/message_batch_request_counts.py +127 -0
- ogx_client/models/message_batch_request_params.py +142 -0
- ogx_client/models/metric_in_response.py +141 -0
- ogx_client/models/model.py +171 -0
- ogx_client/models/model_type.py +44 -0
- ogx_client/models/number_type.py +129 -0
- ogx_client/models/object_type.py +129 -0
- ogx_client/models/open_ai_assistant_message_param.py +187 -0
- ogx_client/models/open_ai_assistant_message_param_input.py +187 -0
- ogx_client/models/open_ai_assistant_message_param_output.py +187 -0
- ogx_client/models/open_ai_attach_file_request.py +164 -0
- ogx_client/models/open_ai_chat_completion.py +173 -0
- ogx_client/models/open_ai_chat_completion_chunk.py +173 -0
- ogx_client/models/open_ai_chat_completion_content_part_image_param.py +144 -0
- ogx_client/models/open_ai_chat_completion_content_part_param.py +447 -0
- ogx_client/models/open_ai_chat_completion_content_part_text_param.py +131 -0
- ogx_client/models/open_ai_chat_completion_content_part_text_param_open_ai_chat_completion_content_part_image_param.py +203 -0
- 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
- ogx_client/models/open_ai_chat_completion_custom_tool_call_function.py +121 -0
- ogx_client/models/open_ai_chat_completion_request_with_extra_body.py +377 -0
- ogx_client/models/open_ai_chat_completion_response_message.py +180 -0
- ogx_client/models/open_ai_chat_completion_tool_call_function.py +121 -0
- ogx_client/models/open_ai_chat_completion_tool_choice.py +447 -0
- ogx_client/models/open_ai_chat_completion_tool_choice_allowed_tools.py +144 -0
- ogx_client/models/open_ai_chat_completion_tool_choice_custom_tool.py +144 -0
- ogx_client/models/open_ai_chat_completion_tool_choice_function_tool.py +144 -0
- ogx_client/models/open_ai_chat_completion_usage.py +154 -0
- ogx_client/models/open_ai_chat_completion_usage_completion_tokens_details.py +120 -0
- ogx_client/models/open_ai_chat_completion_usage_prompt_tokens_details.py +120 -0
- ogx_client/models/open_ai_choice.py +167 -0
- ogx_client/models/open_ai_choice_delta.py +163 -0
- ogx_client/models/open_ai_choice_logprobs.py +169 -0
- ogx_client/models/open_ai_chunk_choice.py +162 -0
- ogx_client/models/open_ai_chunk_choice_logprobs.py +169 -0
- ogx_client/models/open_ai_compacted_response.py +161 -0
- ogx_client/models/open_ai_completion.py +149 -0
- ogx_client/models/open_ai_completion_choice.py +154 -0
- ogx_client/models/open_ai_completion_logprobs.py +162 -0
- ogx_client/models/open_ai_completion_request_with_extra_body.py +273 -0
- ogx_client/models/open_ai_completion_with_input_messages.py +186 -0
- ogx_client/models/open_ai_create_vector_store_file_batch_request_with_extra_body.py +212 -0
- ogx_client/models/open_ai_create_vector_store_request_with_extra_body.py +198 -0
- ogx_client/models/open_ai_delete_response_object.py +133 -0
- ogx_client/models/open_ai_developer_message_param.py +151 -0
- ogx_client/models/open_ai_embedding_data.py +147 -0
- ogx_client/models/open_ai_embedding_usage.py +121 -0
- ogx_client/models/open_ai_embeddings_request_with_extra_body.py +164 -0
- ogx_client/models/open_ai_embeddings_response.py +160 -0
- ogx_client/models/open_ai_file.py +144 -0
- ogx_client/models/open_ai_file_delete_response.py +133 -0
- ogx_client/models/open_ai_file_file.py +138 -0
- ogx_client/models/open_ai_file_object.py +153 -0
- ogx_client/models/open_ai_file_purpose.py +50 -0
- ogx_client/models/open_ai_file_upload_purpose.py +47 -0
- ogx_client/models/open_ai_finish_reason.py +46 -0
- ogx_client/models/open_ai_image_url.py +136 -0
- ogx_client/models/open_ai_list_models_response.py +142 -0
- ogx_client/models/open_ai_message_param.py +549 -0
- ogx_client/models/open_ai_model.py +142 -0
- ogx_client/models/open_ai_response_annotation_citation.py +137 -0
- ogx_client/models/open_ai_response_annotation_container_file_citation.py +139 -0
- ogx_client/models/open_ai_response_annotation_file_citation.py +135 -0
- ogx_client/models/open_ai_response_annotation_file_citation4_variants.py +498 -0
- ogx_client/models/open_ai_response_annotation_file_path.py +133 -0
- ogx_client/models/open_ai_response_annotations.py +498 -0
- ogx_client/models/open_ai_response_compaction.py +138 -0
- ogx_client/models/open_ai_response_content_part.py +447 -0
- ogx_client/models/open_ai_response_content_part_output_text.py +162 -0
- 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
- ogx_client/models/open_ai_response_content_part_reasoning_summary.py +131 -0
- ogx_client/models/open_ai_response_content_part_reasoning_text.py +131 -0
- ogx_client/models/open_ai_response_content_part_refusal.py +131 -0
- ogx_client/models/open_ai_response_error.py +121 -0
- ogx_client/models/open_ai_response_format_json_object.py +129 -0
- ogx_client/models/open_ai_response_format_json_schema.py +144 -0
- ogx_client/models/open_ai_response_format_param.py +447 -0
- ogx_client/models/open_ai_response_format_text.py +129 -0
- ogx_client/models/open_ai_response_format_text_open_ai_response_format_json_schema_open_ai_response_format_json_object.py +453 -0
- ogx_client/models/open_ai_response_incomplete_details.py +119 -0
- ogx_client/models/open_ai_response_input.py +251 -0
- ogx_client/models/open_ai_response_input_function_tool_call_output.py +160 -0
- ogx_client/models/open_ai_response_input_function_tool_call_output_open_ai_response_mcp_approval_response_open_ai_response_compaction.py +233 -0
- ogx_client/models/open_ai_response_input_message_content.py +447 -0
- ogx_client/models/open_ai_response_input_message_content_file.py +157 -0
- ogx_client/models/open_ai_response_input_message_content_image.py +155 -0
- ogx_client/models/open_ai_response_input_message_content_text.py +131 -0
- 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
- ogx_client/models/open_ai_response_input_tool.py +516 -0
- ogx_client/models/open_ai_response_input_tool_choice.py +203 -0
- ogx_client/models/open_ai_response_input_tool_choice_allowed_tools.py +143 -0
- ogx_client/models/open_ai_response_input_tool_choice_allowed_tools6_variants.py +618 -0
- ogx_client/models/open_ai_response_input_tool_choice_custom_tool.py +131 -0
- ogx_client/models/open_ai_response_input_tool_choice_file_search.py +129 -0
- ogx_client/models/open_ai_response_input_tool_choice_function_tool.py +131 -0
- ogx_client/models/open_ai_response_input_tool_choice_mcp_tool.py +138 -0
- ogx_client/models/open_ai_response_input_tool_choice_mode.py +44 -0
- ogx_client/models/open_ai_response_input_tool_choice_mode1.py +209 -0
- ogx_client/models/open_ai_response_input_tool_choice_mode2.py +209 -0
- ogx_client/models/open_ai_response_input_tool_choice_web_search.py +129 -0
- ogx_client/models/open_ai_response_input_tool_file_search.py +166 -0
- ogx_client/models/open_ai_response_input_tool_function.py +152 -0
- ogx_client/models/open_ai_response_input_tool_mcp.py +194 -0
- ogx_client/models/open_ai_response_input_tool_web_search.py +147 -0
- ogx_client/models/open_ai_response_input_tool_web_search4_variants.py +516 -0
- ogx_client/models/open_ai_response_input_tool_web_search4_variants1.py +516 -0
- ogx_client/models/open_ai_response_mcp_approval_request.py +137 -0
- ogx_client/models/open_ai_response_mcp_approval_response.py +147 -0
- ogx_client/models/open_ai_response_message.py +167 -0
- ogx_client/models/open_ai_response_message11_variants.py +855 -0
- ogx_client/models/open_ai_response_message8_variants.py +702 -0
- ogx_client/models/open_ai_response_message_input.py +167 -0
- ogx_client/models/open_ai_response_message_input11_variants.py +855 -0
- ogx_client/models/open_ai_response_message_input8_variants.py +702 -0
- ogx_client/models/open_ai_response_message_output.py +167 -0
- ogx_client/models/open_ai_response_message_output11_variants.py +855 -0
- ogx_client/models/open_ai_response_message_output8_variants.py +702 -0
- ogx_client/models/open_ai_response_message_output_union.py +233 -0
- ogx_client/models/open_ai_response_object.py +412 -0
- ogx_client/models/open_ai_response_object_stream.py +2181 -0
- ogx_client/models/open_ai_response_object_stream_error.py +147 -0
- ogx_client/models/open_ai_response_object_stream_response_completed.py +146 -0
- ogx_client/models/open_ai_response_object_stream_response_content_part_added.py +154 -0
- ogx_client/models/open_ai_response_object_stream_response_content_part_done.py +154 -0
- ogx_client/models/open_ai_response_object_stream_response_created.py +146 -0
- ogx_client/models/open_ai_response_object_stream_response_failed.py +146 -0
- ogx_client/models/open_ai_response_object_stream_response_file_search_call_completed.py +135 -0
- ogx_client/models/open_ai_response_object_stream_response_file_search_call_in_progress.py +135 -0
- ogx_client/models/open_ai_response_object_stream_response_file_search_call_searching.py +135 -0
- ogx_client/models/open_ai_response_object_stream_response_function_call_arguments_delta.py +137 -0
- ogx_client/models/open_ai_response_object_stream_response_function_call_arguments_done.py +137 -0
- ogx_client/models/open_ai_response_object_stream_response_in_progress.py +146 -0
- ogx_client/models/open_ai_response_object_stream_response_incomplete.py +146 -0
- ogx_client/models/open_ai_response_object_stream_response_mcp_call_arguments_delta.py +137 -0
- ogx_client/models/open_ai_response_object_stream_response_mcp_call_arguments_done.py +137 -0
- ogx_client/models/open_ai_response_object_stream_response_mcp_call_completed.py +131 -0
- ogx_client/models/open_ai_response_object_stream_response_mcp_call_failed.py +131 -0
- ogx_client/models/open_ai_response_object_stream_response_mcp_call_in_progress.py +135 -0
- ogx_client/models/open_ai_response_object_stream_response_mcp_list_tools_completed.py +131 -0
- ogx_client/models/open_ai_response_object_stream_response_mcp_list_tools_failed.py +131 -0
- ogx_client/models/open_ai_response_object_stream_response_mcp_list_tools_in_progress.py +131 -0
- ogx_client/models/open_ai_response_object_stream_response_output_item_added.py +150 -0
- ogx_client/models/open_ai_response_object_stream_response_output_item_done.py +150 -0
- ogx_client/models/open_ai_response_object_stream_response_output_text_annotation_added.py +154 -0
- ogx_client/models/open_ai_response_object_stream_response_output_text_delta.py +157 -0
- ogx_client/models/open_ai_response_object_stream_response_output_text_done.py +139 -0
- ogx_client/models/open_ai_response_object_stream_response_reasoning_summary_part_added.py +152 -0
- ogx_client/models/open_ai_response_object_stream_response_reasoning_summary_part_done.py +152 -0
- ogx_client/models/open_ai_response_object_stream_response_reasoning_summary_text_delta.py +139 -0
- ogx_client/models/open_ai_response_object_stream_response_reasoning_summary_text_done.py +139 -0
- ogx_client/models/open_ai_response_object_stream_response_reasoning_text_delta.py +139 -0
- ogx_client/models/open_ai_response_object_stream_response_reasoning_text_done.py +139 -0
- ogx_client/models/open_ai_response_object_stream_response_refusal_delta.py +139 -0
- ogx_client/models/open_ai_response_object_stream_response_refusal_done.py +139 -0
- ogx_client/models/open_ai_response_object_stream_response_web_search_call_completed.py +135 -0
- ogx_client/models/open_ai_response_object_stream_response_web_search_call_in_progress.py +135 -0
- ogx_client/models/open_ai_response_object_stream_response_web_search_call_searching.py +135 -0
- ogx_client/models/open_ai_response_object_with_input.py +425 -0
- ogx_client/models/open_ai_response_output.py +702 -0
- ogx_client/models/open_ai_response_output_item.py +702 -0
- ogx_client/models/open_ai_response_output_message_content.py +396 -0
- ogx_client/models/open_ai_response_output_message_content_output_text.py +162 -0
- ogx_client/models/open_ai_response_output_message_content_output_text_input.py +162 -0
- ogx_client/models/open_ai_response_output_message_content_output_text_input_open_ai_response_content_part_refusal.py +396 -0
- ogx_client/models/open_ai_response_output_message_content_output_text_open_ai_response_content_part_refusal.py +396 -0
- ogx_client/models/open_ai_response_output_message_content_output_text_output.py +162 -0
- ogx_client/models/open_ai_response_output_message_content_output_text_output_open_ai_response_content_part_refusal.py +396 -0
- ogx_client/models/open_ai_response_output_message_file_search_tool_call.py +153 -0
- ogx_client/models/open_ai_response_output_message_file_search_tool_call_results.py +127 -0
- ogx_client/models/open_ai_response_output_message_function_tool_call.py +149 -0
- ogx_client/models/open_ai_response_output_message_mcp_call.py +151 -0
- ogx_client/models/open_ai_response_output_message_mcp_list_tools.py +146 -0
- ogx_client/models/open_ai_response_output_message_reasoning_content.py +131 -0
- ogx_client/models/open_ai_response_output_message_reasoning_item.py +179 -0
- ogx_client/models/open_ai_response_output_message_reasoning_summary.py +131 -0
- ogx_client/models/open_ai_response_output_message_web_search_tool_call.py +133 -0
- ogx_client/models/open_ai_response_prompt.py +151 -0
- ogx_client/models/open_ai_response_reasoning.py +168 -0
- ogx_client/models/open_ai_response_text.py +154 -0
- ogx_client/models/open_ai_response_text_format.py +157 -0
- ogx_client/models/open_ai_response_tool.py +516 -0
- ogx_client/models/open_ai_response_tool_mcp.py +151 -0
- ogx_client/models/open_ai_response_usage.py +153 -0
- ogx_client/models/open_ai_response_usage_input_tokens_details.py +119 -0
- ogx_client/models/open_ai_response_usage_output_tokens_details.py +119 -0
- ogx_client/models/open_ai_search_vector_store_request.py +171 -0
- ogx_client/models/open_ai_system_message_param.py +151 -0
- ogx_client/models/open_ai_token_log_prob.py +146 -0
- ogx_client/models/open_ai_tool_message_param.py +146 -0
- ogx_client/models/open_ai_top_log_prob.py +128 -0
- ogx_client/models/open_ai_update_vector_store_file_request.py +119 -0
- ogx_client/models/open_ai_update_vector_store_request.py +151 -0
- ogx_client/models/open_ai_user_message_param.py +151 -0
- ogx_client/models/open_ai_user_message_param_input.py +151 -0
- ogx_client/models/open_ai_user_message_param_input5_variants.py +549 -0
- ogx_client/models/open_ai_user_message_param_output.py +151 -0
- ogx_client/models/open_ai_user_message_param_output5_variants.py +549 -0
- ogx_client/models/open_aijson_schema.py +140 -0
- ogx_client/models/order.py +43 -0
- ogx_client/models/output_tokens_details.py +132 -0
- ogx_client/models/paginated_response.py +145 -0
- ogx_client/models/param_type.py +753 -0
- ogx_client/models/process_file_request.py +151 -0
- ogx_client/models/process_file_response.py +149 -0
- ogx_client/models/prompt.py +133 -0
- ogx_client/models/provider_info.py +127 -0
- ogx_client/models/provider_spec.py +169 -0
- ogx_client/models/query_chunks_request.py +141 -0
- ogx_client/models/query_chunks_response.py +149 -0
- ogx_client/models/register_model_request.py +155 -0
- ogx_client/models/remote_provider_spec.py +178 -0
- ogx_client/models/rerank_data.py +122 -0
- ogx_client/models/rerank_request.py +155 -0
- ogx_client/models/rerank_response.py +147 -0
- ogx_client/models/response_format.py +396 -0
- ogx_client/models/response_item_include.py +48 -0
- ogx_client/models/response_retrieve_item_v1_conversations_conversation_id_items_item_id_get.py +849 -0
- ogx_client/models/response_stream_options.py +119 -0
- ogx_client/models/response_truncation.py +43 -0
- ogx_client/models/retrieve_batch_request.py +119 -0
- ogx_client/models/retrieve_file_content_request.py +119 -0
- ogx_client/models/retrieve_file_request.py +119 -0
- ogx_client/models/retrieve_item_request.py +121 -0
- ogx_client/models/route_info.py +123 -0
- ogx_client/models/sampling_params.py +154 -0
- ogx_client/models/sampling_strategy.py +447 -0
- ogx_client/models/score_request.py +136 -0
- ogx_client/models/scoring_result.py +124 -0
- ogx_client/models/search_ranking_options.py +160 -0
- ogx_client/models/service_tier.py +45 -0
- ogx_client/models/set_default_version_body_request.py +119 -0
- ogx_client/models/set_default_version_request.py +121 -0
- ogx_client/models/string4_variants.py +415 -0
- ogx_client/models/string4_variants1.py +416 -0
- ogx_client/models/string_approval_filter.py +222 -0
- ogx_client/models/string_list_anthropic_text_block.py +272 -0
- ogx_client/models/string_list_anthropic_text_block1.py +272 -0
- ogx_client/models/string_list_anthropic_text_block_anthropic_image_block.py +266 -0
- ogx_client/models/string_list_google_input_turn.py +266 -0
- ogx_client/models/string_list_google_text_content_google_function_call_content_google_function_response_content.py +266 -0
- ogx_client/models/string_list_image_content_item_input_text_content_item.py +280 -0
- ogx_client/models/string_list_image_content_item_input_text_content_item1.py +280 -0
- ogx_client/models/string_list_image_content_item_output_text_content_item.py +280 -0
- ogx_client/models/string_list_image_content_item_text_content_item.py +286 -0
- ogx_client/models/string_list_image_content_item_text_content_item1.py +280 -0
- ogx_client/models/string_list_image_content_item_text_content_item2.py +286 -0
- ogx_client/models/string_list_image_content_item_text_content_item3.py +280 -0
- ogx_client/models/string_list_image_content_item_text_content_item4.py +280 -0
- ogx_client/models/string_list_image_content_item_text_content_item5.py +280 -0
- ogx_client/models/string_list_open_ai_chat_completion_content_part_text_param.py +272 -0
- ogx_client/models/string_list_open_ai_chat_completion_content_part_text_param1.py +266 -0
- ogx_client/models/string_list_open_ai_chat_completion_content_part_text_param2.py +266 -0
- ogx_client/models/string_list_open_ai_chat_completion_content_part_text_param3.py +266 -0
- ogx_client/models/string_list_open_ai_chat_completion_content_part_text_param4.py +272 -0
- 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
- 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
- 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
- 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
- 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
- ogx_client/models/string_list_open_ai_response_message_union_open_ai_response_input_function_tool_call_output.py +272 -0
- ogx_client/models/string_list_open_ai_response_message_union_open_ai_response_input_function_tool_call_output1.py +266 -0
- ogx_client/models/string_list_string.py +271 -0
- ogx_client/models/string_list_string1.py +265 -0
- ogx_client/models/string_list_string2.py +265 -0
- ogx_client/models/string_number_boolean.py +225 -0
- ogx_client/models/string_number_boolean1.py +224 -0
- ogx_client/models/string_object.py +271 -0
- ogx_client/models/string_object1.py +271 -0
- ogx_client/models/string_open_ai_chat_completion_content_part_text_param_open_ai_chat_completion_content_part_image_param.py +220 -0
- ogx_client/models/string_open_ai_chat_completion_content_part_text_param_open_ai_chat_completion_content_part_image_param1.py +220 -0
- ogx_client/models/string_type.py +129 -0
- ogx_client/models/system_message.py +144 -0
- ogx_client/models/text_content_item.py +131 -0
- ogx_client/models/text_delta.py +131 -0
- ogx_client/models/token_log_probs.py +119 -0
- ogx_client/models/tool_config.py +119 -0
- ogx_client/models/tool_def.py +154 -0
- ogx_client/models/tool_group.py +167 -0
- ogx_client/models/tool_group_input.py +148 -0
- ogx_client/models/tool_invocation_result.py +158 -0
- ogx_client/models/tool_response_message.py +146 -0
- ogx_client/models/top_k_sampling_strategy.py +132 -0
- ogx_client/models/top_p_sampling_strategy.py +134 -0
- ogx_client/models/union_type.py +129 -0
- ogx_client/models/unregister_model_request.py +119 -0
- ogx_client/models/update_conversation_request.py +119 -0
- ogx_client/models/update_prompt_body_request.py +130 -0
- ogx_client/models/update_prompt_request.py +132 -0
- ogx_client/models/upload_file_request.py +140 -0
- ogx_client/models/url.py +119 -0
- ogx_client/models/urlor_data.py +144 -0
- ogx_client/models/user_message.py +164 -0
- ogx_client/models/vector_store_chunking_strategy.py +453 -0
- ogx_client/models/vector_store_chunking_strategy_auto.py +129 -0
- ogx_client/models/vector_store_chunking_strategy_auto_vector_store_chunking_strategy_static_vector_store_chunking_strategy_contextual.py +453 -0
- ogx_client/models/vector_store_chunking_strategy_auto_vector_store_chunking_strategy_static_vector_store_chunking_strategy_contextual1.py +447 -0
- ogx_client/models/vector_store_chunking_strategy_contextual.py +144 -0
- ogx_client/models/vector_store_chunking_strategy_contextual_config.py +145 -0
- ogx_client/models/vector_store_chunking_strategy_static.py +144 -0
- ogx_client/models/vector_store_chunking_strategy_static_config.py +122 -0
- ogx_client/models/vector_store_content.py +162 -0
- ogx_client/models/vector_store_create_request.py +167 -0
- ogx_client/models/vector_store_delete_response.py +133 -0
- ogx_client/models/vector_store_expiration_after.py +129 -0
- ogx_client/models/vector_store_file_batch_file_entry.py +164 -0
- ogx_client/models/vector_store_file_batch_object.py +159 -0
- ogx_client/models/vector_store_file_content_response.py +151 -0
- ogx_client/models/vector_store_file_counts.py +127 -0
- ogx_client/models/vector_store_file_delete_response.py +133 -0
- ogx_client/models/vector_store_file_last_error.py +128 -0
- ogx_client/models/vector_store_file_object.py +206 -0
- ogx_client/models/vector_store_file_status.py +45 -0
- ogx_client/models/vector_store_files_list_in_batch_response.py +148 -0
- ogx_client/models/vector_store_list_files_response.py +148 -0
- ogx_client/models/vector_store_list_response.py +148 -0
- ogx_client/models/vector_store_modify_request.py +151 -0
- ogx_client/models/vector_store_object.py +202 -0
- ogx_client/models/vector_store_search_request.py +151 -0
- ogx_client/models/vector_store_search_response.py +161 -0
- ogx_client/models/vector_store_search_response_page.py +153 -0
- ogx_client/models/vector_store_status.py +44 -0
- ogx_client/models/version_info.py +119 -0
- ogx_client/ogx_client.py +309 -0
- ogx_client/py.typed +0 -0
- ogx_client/rest.py +255 -0
- ogx_client/stream.py +183 -0
- ogx_open_client/__init__.py +1167 -0
- ogx_open_client/_exceptions.py +114 -0
- ogx_open_client/_types.py +312 -0
- ogx_open_client/_version.py +8 -0
- ogx_open_client/api/__init__.py +33 -0
- ogx_open_client/api/admin_api.py +1411 -0
- ogx_open_client/api/alpha_api.py +354 -0
- ogx_open_client/api/batches_api.py +1247 -0
- ogx_open_client/api/chat_api.py +352 -0
- ogx_open_client/api/chat_completions_api.py +1028 -0
- ogx_open_client/api/completions_api.py +440 -0
- ogx_open_client/api/connectors_api.py +1235 -0
- ogx_open_client/api/conversations_api.py +1288 -0
- ogx_open_client/api/embeddings_api.py +429 -0
- ogx_open_client/api/file_batches_api.py +1370 -0
- ogx_open_client/api/file_processors_api.py +442 -0
- ogx_open_client/api/files_api.py +1539 -0
- ogx_open_client/api/inference_api.py +429 -0
- ogx_open_client/api/input_items_api.py +472 -0
- ogx_open_client/api/inspect_api.py +617 -0
- ogx_open_client/api/interactions_api.py +430 -0
- ogx_open_client/api/items_api.py +1359 -0
- ogx_open_client/api/messages_api.py +2466 -0
- ogx_open_client/api/models_api.py +451 -0
- ogx_open_client/api/openai_api.py +481 -0
- ogx_open_client/api/prompts_api.py +1883 -0
- ogx_open_client/api/providers_api.py +636 -0
- ogx_open_client/api/responses_api.py +1876 -0
- ogx_open_client/api/routes_api.py +389 -0
- ogx_open_client/api/tools_api.py +389 -0
- ogx_open_client/api/vector_io_api.py +740 -0
- ogx_open_client/api/vector_stores_api.py +1936 -0
- ogx_open_client/api/vector_stores_files_api.py +2011 -0
- ogx_open_client/api/versions_api.py +386 -0
- ogx_open_client/api_client.py +833 -0
- ogx_open_client/api_response.py +21 -0
- ogx_open_client/async_api_client.py +203 -0
- ogx_open_client/async_api_response.py +134 -0
- ogx_open_client/async_stream.py +161 -0
- ogx_open_client/configuration.py +585 -0
- ogx_open_client/exceptions.py +253 -0
- ogx_open_client/lib/__init__.py +17 -0
- ogx_open_client/lib/_utils.py +26 -0
- ogx_open_client/lib/agents/__init__.py +5 -0
- ogx_open_client/lib/agents/agent.py +540 -0
- ogx_open_client/lib/agents/client_tool.py +258 -0
- ogx_open_client/lib/agents/event_logger.py +134 -0
- ogx_open_client/lib/agents/event_synthesizer.py +448 -0
- ogx_open_client/lib/agents/react/__init__.py +5 -0
- ogx_open_client/lib/agents/react/agent.py +94 -0
- ogx_open_client/lib/agents/react/prompts.py +151 -0
- ogx_open_client/lib/agents/react/tool_parser.py +59 -0
- ogx_open_client/lib/agents/tool_parser.py +42 -0
- ogx_open_client/lib/agents/turn_events.py +268 -0
- ogx_open_client/lib/agents/types.py +63 -0
- ogx_open_client/lib/cli/__init__.py +12 -0
- ogx_open_client/lib/cli/common/__init__.py +5 -0
- ogx_open_client/lib/cli/common/utils.py +54 -0
- ogx_open_client/lib/cli/configure.py +68 -0
- ogx_open_client/lib/cli/constants.py +14 -0
- ogx_open_client/lib/cli/datasets/__init__.py +9 -0
- ogx_open_client/lib/cli/datasets/datasets.py +22 -0
- ogx_open_client/lib/cli/datasets/list.py +32 -0
- ogx_open_client/lib/cli/datasets/register.py +78 -0
- ogx_open_client/lib/cli/datasets/unregister.py +20 -0
- ogx_open_client/lib/cli/eval/__init__.py +9 -0
- ogx_open_client/lib/cli/eval/eval.py +22 -0
- ogx_open_client/lib/cli/eval/run_benchmark.py +193 -0
- ogx_open_client/lib/cli/eval/run_scoring.py +116 -0
- ogx_open_client/lib/cli/eval/utils.py +59 -0
- ogx_open_client/lib/cli/eval_tasks/__init__.py +9 -0
- ogx_open_client/lib/cli/eval_tasks/eval_tasks.py +65 -0
- ogx_open_client/lib/cli/eval_tasks/list.py +35 -0
- ogx_open_client/lib/cli/inference/__init__.py +9 -0
- ogx_open_client/lib/cli/inference/inference.py +88 -0
- ogx_open_client/lib/cli/inspect/__init__.py +9 -0
- ogx_open_client/lib/cli/inspect/inspect.py +19 -0
- ogx_open_client/lib/cli/inspect/version.py +22 -0
- ogx_open_client/lib/cli/models/__init__.py +9 -0
- ogx_open_client/lib/cli/models/models.py +149 -0
- ogx_open_client/lib/cli/ogx_client.py +111 -0
- ogx_open_client/lib/cli/post_training/__init__.py +9 -0
- ogx_open_client/lib/cli/post_training/post_training.py +114 -0
- ogx_open_client/lib/cli/providers/__init__.py +9 -0
- ogx_open_client/lib/cli/providers/inspect.py +33 -0
- ogx_open_client/lib/cli/providers/list.py +32 -0
- ogx_open_client/lib/cli/providers/providers.py +21 -0
- ogx_open_client/lib/cli/scoring_functions/__init__.py +9 -0
- ogx_open_client/lib/cli/scoring_functions/list.py +38 -0
- ogx_open_client/lib/cli/scoring_functions/scoring_functions.py +62 -0
- ogx_open_client/lib/cli/toolgroups/__init__.py +9 -0
- ogx_open_client/lib/cli/toolgroups/toolgroups.py +129 -0
- ogx_open_client/lib/cli/vector_stores/__init__.py +9 -0
- ogx_open_client/lib/cli/vector_stores/vector_stores.py +138 -0
- ogx_open_client/lib/inference/__init__.py +5 -0
- ogx_open_client/lib/inference/event_logger.py +58 -0
- ogx_open_client/lib/inference/utils.py +21 -0
- ogx_open_client/lib/stream_printer.py +30 -0
- ogx_open_client/lib/tools/__init__.py +9 -0
- ogx_open_client/lib/tools/mcp_oauth.py +303 -0
- ogx_open_client/models/__init__.py +521 -0
- ogx_open_client/models/add_items_request.py +148 -0
- ogx_open_client/models/allowed_tools_config.py +145 -0
- ogx_open_client/models/allowed_tools_filter.py +141 -0
- ogx_open_client/models/anthropic_base64_image_source.py +140 -0
- ogx_open_client/models/anthropic_base64_image_source_anthropic_url_image_source.py +396 -0
- ogx_open_client/models/anthropic_bash_tool.py +161 -0
- ogx_open_client/models/anthropic_cache_control.py +129 -0
- ogx_open_client/models/anthropic_count_tokens_request.py +170 -0
- ogx_open_client/models/anthropic_count_tokens_response.py +119 -0
- ogx_open_client/models/anthropic_create_message_request.py +217 -0
- ogx_open_client/models/anthropic_custom_tool_def.py +160 -0
- ogx_open_client/models/anthropic_custom_tool_def4_variants.py +510 -0
- ogx_open_client/models/anthropic_image_block.py +164 -0
- ogx_open_client/models/anthropic_list_models_response.py +163 -0
- ogx_open_client/models/anthropic_message.py +141 -0
- ogx_open_client/models/anthropic_message_response.py +187 -0
- ogx_open_client/models/anthropic_model_info.py +149 -0
- ogx_open_client/models/anthropic_redacted_thinking_block.py +131 -0
- ogx_open_client/models/anthropic_text_block.py +151 -0
- ogx_open_client/models/anthropic_text_block5_variants.py +549 -0
- ogx_open_client/models/anthropic_text_block5_variants1.py +549 -0
- ogx_open_client/models/anthropic_text_block6_variants.py +600 -0
- ogx_open_client/models/anthropic_text_block6_variants1.py +600 -0
- ogx_open_client/models/anthropic_text_block_anthropic_image_block.py +203 -0
- ogx_open_client/models/anthropic_text_editor_tool.py +155 -0
- ogx_open_client/models/anthropic_thinking_block.py +158 -0
- ogx_open_client/models/anthropic_thinking_config.py +137 -0
- ogx_open_client/models/anthropic_tool_def.py +128 -0
- ogx_open_client/models/anthropic_tool_result_block_input.py +173 -0
- ogx_open_client/models/anthropic_tool_result_block_output.py +173 -0
- ogx_open_client/models/anthropic_tool_use_block.py +155 -0
- ogx_open_client/models/anthropic_url_image_source.py +131 -0
- ogx_open_client/models/anthropic_usage.py +135 -0
- ogx_open_client/models/anthropic_web_search_tool.py +202 -0
- ogx_open_client/models/api.py +59 -0
- ogx_open_client/models/approval_filter.py +148 -0
- ogx_open_client/models/array_type.py +129 -0
- ogx_open_client/models/batch.py +302 -0
- ogx_open_client/models/batch_error.py +158 -0
- ogx_open_client/models/batch_request_counts.py +136 -0
- ogx_open_client/models/batch_usage.py +166 -0
- ogx_open_client/models/bf16_quantization_config.py +129 -0
- ogx_open_client/models/boolean_type.py +129 -0
- ogx_open_client/models/cancel_batch_request.py +119 -0
- ogx_open_client/models/chat_completion_input_type.py +129 -0
- ogx_open_client/models/chat_completion_message.py +216 -0
- ogx_open_client/models/chat_completion_message_custom_tool_call.py +143 -0
- ogx_open_client/models/chat_completion_message_custom_tool_call_custom.py +121 -0
- ogx_open_client/models/chat_completion_message_function_call.py +121 -0
- ogx_open_client/models/chat_completion_message_list.py +165 -0
- ogx_open_client/models/chat_completion_message_tool_call.py +143 -0
- ogx_open_client/models/chat_completion_message_tool_call_chat_completion_message_custom_tool_call.py +203 -0
- ogx_open_client/models/chat_completion_message_tool_call_chat_completion_message_custom_tool_call1.py +206 -0
- ogx_open_client/models/chat_completion_message_tool_call_function.py +121 -0
- ogx_open_client/models/chunk.py +151 -0
- ogx_open_client/models/chunk_for_deletion.py +121 -0
- ogx_open_client/models/chunk_metadata.py +180 -0
- ogx_open_client/models/compact_response_request.py +239 -0
- ogx_open_client/models/comparison_filter.py +135 -0
- ogx_open_client/models/completion_input_type.py +129 -0
- ogx_open_client/models/compound_filter.py +128 -0
- ogx_open_client/models/connector.py +152 -0
- ogx_open_client/models/connector_input.py +131 -0
- ogx_open_client/models/connector_type.py +42 -0
- ogx_open_client/models/context_management.py +133 -0
- ogx_open_client/models/conversation.py +140 -0
- ogx_open_client/models/conversation_deleted_resource.py +133 -0
- ogx_open_client/models/conversation_item.py +855 -0
- ogx_open_client/models/conversation_item_create_request.py +148 -0
- ogx_open_client/models/conversation_item_deleted_resource.py +133 -0
- ogx_open_client/models/conversation_item_include.py +48 -0
- ogx_open_client/models/conversation_item_list.py +158 -0
- ogx_open_client/models/conversation_message.py +149 -0
- ogx_open_client/models/create_batch_request.py +144 -0
- ogx_open_client/models/create_conversation_request.py +159 -0
- ogx_open_client/models/create_message_batch_request.py +148 -0
- ogx_open_client/models/create_prompt_request.py +126 -0
- ogx_open_client/models/create_response_request.py +402 -0
- ogx_open_client/models/custom_tool_config.py +119 -0
- ogx_open_client/models/delete_chunks_request.py +132 -0
- ogx_open_client/models/delete_conversation_request.py +119 -0
- ogx_open_client/models/delete_file_request.py +119 -0
- ogx_open_client/models/delete_item_request.py +121 -0
- ogx_open_client/models/delete_prompt_request.py +119 -0
- ogx_open_client/models/dialog_type.py +129 -0
- ogx_open_client/models/embedded_chunk.py +157 -0
- ogx_open_client/models/embedded_chunk_input.py +157 -0
- ogx_open_client/models/embedded_chunk_output.py +157 -0
- ogx_open_client/models/embeddings_response.py +136 -0
- ogx_open_client/models/error.py +143 -0
- ogx_open_client/models/error_detail.py +313 -0
- ogx_open_client/models/errors.py +172 -0
- ogx_open_client/models/expires_after.py +129 -0
- ogx_open_client/models/fp8_quantization_config.py +129 -0
- ogx_open_client/models/function_tool_config.py +119 -0
- ogx_open_client/models/get_chat_completion_request.py +119 -0
- ogx_open_client/models/get_connector_request.py +119 -0
- ogx_open_client/models/get_connector_tool_request.py +121 -0
- ogx_open_client/models/get_conversation_request.py +119 -0
- ogx_open_client/models/get_model_request.py +119 -0
- ogx_open_client/models/get_model_v1_models_model_id_get200_response.py +414 -0
- ogx_open_client/models/get_prompt_request.py +126 -0
- ogx_open_client/models/google_create_interaction_request.py +213 -0
- ogx_open_client/models/google_function_call_content.py +153 -0
- ogx_open_client/models/google_function_call_output.py +153 -0
- ogx_open_client/models/google_function_declaration.py +146 -0
- ogx_open_client/models/google_function_response_content.py +160 -0
- ogx_open_client/models/google_generation_config.py +146 -0
- ogx_open_client/models/google_input_turn.py +141 -0
- ogx_open_client/models/google_interaction_response.py +199 -0
- ogx_open_client/models/google_list_models_response.py +147 -0
- ogx_open_client/models/google_model_info.py +123 -0
- ogx_open_client/models/google_text_content.py +131 -0
- ogx_open_client/models/google_text_content_google_function_call_content_google_function_response_content.py +218 -0
- ogx_open_client/models/google_text_output.py +131 -0
- ogx_open_client/models/google_text_output_google_function_call_output_google_thought_output.py +447 -0
- ogx_open_client/models/google_thought_output.py +149 -0
- ogx_open_client/models/google_tool.py +145 -0
- ogx_open_client/models/google_usage.py +136 -0
- ogx_open_client/models/grammar_response_format.py +131 -0
- ogx_open_client/models/greedy_sampling_strategy.py +129 -0
- ogx_open_client/models/greedy_sampling_strategy_top_p_sampling_strategy_top_k_sampling_strategy.py +447 -0
- ogx_open_client/models/health_info.py +120 -0
- ogx_open_client/models/health_status.py +44 -0
- ogx_open_client/models/image_content_item.py +144 -0
- ogx_open_client/models/image_content_item_input.py +144 -0
- ogx_open_client/models/image_content_item_input_text_content_item.py +396 -0
- ogx_open_client/models/image_content_item_output.py +144 -0
- ogx_open_client/models/image_content_item_output_text_content_item.py +396 -0
- ogx_open_client/models/image_content_item_text_content_item.py +396 -0
- ogx_open_client/models/image_delta.py +131 -0
- ogx_open_client/models/inline_provider_spec.py +183 -0
- ogx_open_client/models/input_tokens_details.py +132 -0
- ogx_open_client/models/insert_chunks_request.py +139 -0
- ogx_open_client/models/inspect_provider_request.py +119 -0
- ogx_open_client/models/int4_quantization_config.py +136 -0
- ogx_open_client/models/integer_number.py +207 -0
- ogx_open_client/models/interleaved_content.py +280 -0
- ogx_open_client/models/interleaved_content_item.py +396 -0
- ogx_open_client/models/job.py +122 -0
- ogx_open_client/models/job_status.py +46 -0
- ogx_open_client/models/json_schema_response_format.py +131 -0
- ogx_open_client/models/json_type.py +129 -0
- ogx_open_client/models/list_batches_request.py +126 -0
- ogx_open_client/models/list_batches_response.py +158 -0
- ogx_open_client/models/list_chat_completion_messages_request.py +142 -0
- ogx_open_client/models/list_chat_completions_request.py +147 -0
- ogx_open_client/models/list_connector_tools_request.py +119 -0
- ogx_open_client/models/list_connectors_response.py +147 -0
- ogx_open_client/models/list_files_request.py +147 -0
- ogx_open_client/models/list_items_request.py +158 -0
- ogx_open_client/models/list_message_batches_response.py +163 -0
- ogx_open_client/models/list_models_response.py +147 -0
- ogx_open_client/models/list_models_v1_models_get200_response.py +414 -0
- ogx_open_client/models/list_number_string.py +265 -0
- ogx_open_client/models/list_open_ai_chat_completion_response.py +165 -0
- ogx_open_client/models/list_open_ai_file_response.py +165 -0
- ogx_open_client/models/list_open_ai_response_input_item.py +159 -0
- ogx_open_client/models/list_open_ai_response_object.py +165 -0
- ogx_open_client/models/list_prompt_versions_request.py +119 -0
- ogx_open_client/models/list_prompts_response.py +147 -0
- ogx_open_client/models/list_providers_response.py +147 -0
- ogx_open_client/models/list_routes_request.py +134 -0
- ogx_open_client/models/list_routes_response.py +147 -0
- ogx_open_client/models/list_string_allowed_tools_filter.py +269 -0
- ogx_open_client/models/list_tool_defs_response.py +147 -0
- ogx_open_client/models/list_tool_groups_response.py +147 -0
- ogx_open_client/models/list_tools_request.py +124 -0
- ogx_open_client/models/list_tools_response.py +147 -0
- ogx_open_client/models/mcp_list_tools_tool.py +128 -0
- ogx_open_client/models/message_batch.py +187 -0
- ogx_open_client/models/message_batch_request_counts.py +127 -0
- ogx_open_client/models/message_batch_request_params.py +142 -0
- ogx_open_client/models/metric_in_response.py +141 -0
- ogx_open_client/models/model.py +171 -0
- ogx_open_client/models/model_type.py +44 -0
- ogx_open_client/models/number_type.py +129 -0
- ogx_open_client/models/object_type.py +129 -0
- ogx_open_client/models/open_ai_assistant_message_param.py +187 -0
- ogx_open_client/models/open_ai_assistant_message_param_input.py +187 -0
- ogx_open_client/models/open_ai_assistant_message_param_output.py +187 -0
- ogx_open_client/models/open_ai_attach_file_request.py +164 -0
- ogx_open_client/models/open_ai_chat_completion.py +173 -0
- ogx_open_client/models/open_ai_chat_completion_chunk.py +173 -0
- ogx_open_client/models/open_ai_chat_completion_content_part_image_param.py +144 -0
- ogx_open_client/models/open_ai_chat_completion_content_part_param.py +447 -0
- ogx_open_client/models/open_ai_chat_completion_content_part_text_param.py +131 -0
- ogx_open_client/models/open_ai_chat_completion_content_part_text_param_open_ai_chat_completion_content_part_image_param.py +203 -0
- 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
- ogx_open_client/models/open_ai_chat_completion_custom_tool_call_function.py +121 -0
- ogx_open_client/models/open_ai_chat_completion_request_with_extra_body.py +377 -0
- ogx_open_client/models/open_ai_chat_completion_response_message.py +180 -0
- ogx_open_client/models/open_ai_chat_completion_tool_call_function.py +121 -0
- ogx_open_client/models/open_ai_chat_completion_tool_choice.py +447 -0
- ogx_open_client/models/open_ai_chat_completion_tool_choice_allowed_tools.py +144 -0
- ogx_open_client/models/open_ai_chat_completion_tool_choice_custom_tool.py +144 -0
- ogx_open_client/models/open_ai_chat_completion_tool_choice_function_tool.py +144 -0
- ogx_open_client/models/open_ai_chat_completion_usage.py +154 -0
- ogx_open_client/models/open_ai_chat_completion_usage_completion_tokens_details.py +120 -0
- ogx_open_client/models/open_ai_chat_completion_usage_prompt_tokens_details.py +120 -0
- ogx_open_client/models/open_ai_choice.py +167 -0
- ogx_open_client/models/open_ai_choice_delta.py +163 -0
- ogx_open_client/models/open_ai_choice_logprobs.py +169 -0
- ogx_open_client/models/open_ai_chunk_choice.py +162 -0
- ogx_open_client/models/open_ai_chunk_choice_logprobs.py +169 -0
- ogx_open_client/models/open_ai_compacted_response.py +161 -0
- ogx_open_client/models/open_ai_completion.py +149 -0
- ogx_open_client/models/open_ai_completion_choice.py +154 -0
- ogx_open_client/models/open_ai_completion_logprobs.py +162 -0
- ogx_open_client/models/open_ai_completion_request_with_extra_body.py +273 -0
- ogx_open_client/models/open_ai_completion_with_input_messages.py +186 -0
- ogx_open_client/models/open_ai_create_vector_store_file_batch_request_with_extra_body.py +212 -0
- ogx_open_client/models/open_ai_create_vector_store_request_with_extra_body.py +198 -0
- ogx_open_client/models/open_ai_delete_response_object.py +133 -0
- ogx_open_client/models/open_ai_developer_message_param.py +151 -0
- ogx_open_client/models/open_ai_embedding_data.py +147 -0
- ogx_open_client/models/open_ai_embedding_usage.py +121 -0
- ogx_open_client/models/open_ai_embeddings_request_with_extra_body.py +164 -0
- ogx_open_client/models/open_ai_embeddings_response.py +160 -0
- ogx_open_client/models/open_ai_file.py +144 -0
- ogx_open_client/models/open_ai_file_delete_response.py +133 -0
- ogx_open_client/models/open_ai_file_file.py +138 -0
- ogx_open_client/models/open_ai_file_object.py +153 -0
- ogx_open_client/models/open_ai_file_purpose.py +50 -0
- ogx_open_client/models/open_ai_file_upload_purpose.py +47 -0
- ogx_open_client/models/open_ai_finish_reason.py +46 -0
- ogx_open_client/models/open_ai_image_url.py +136 -0
- ogx_open_client/models/open_ai_list_models_response.py +142 -0
- ogx_open_client/models/open_ai_message_param.py +549 -0
- ogx_open_client/models/open_ai_model.py +142 -0
- ogx_open_client/models/open_ai_response_annotation_citation.py +137 -0
- ogx_open_client/models/open_ai_response_annotation_container_file_citation.py +139 -0
- ogx_open_client/models/open_ai_response_annotation_file_citation.py +135 -0
- ogx_open_client/models/open_ai_response_annotation_file_citation4_variants.py +498 -0
- ogx_open_client/models/open_ai_response_annotation_file_path.py +133 -0
- ogx_open_client/models/open_ai_response_annotations.py +498 -0
- ogx_open_client/models/open_ai_response_compaction.py +138 -0
- ogx_open_client/models/open_ai_response_content_part.py +447 -0
- ogx_open_client/models/open_ai_response_content_part_output_text.py +162 -0
- 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
- ogx_open_client/models/open_ai_response_content_part_reasoning_summary.py +131 -0
- ogx_open_client/models/open_ai_response_content_part_reasoning_text.py +131 -0
- ogx_open_client/models/open_ai_response_content_part_refusal.py +131 -0
- ogx_open_client/models/open_ai_response_error.py +121 -0
- ogx_open_client/models/open_ai_response_format_json_object.py +129 -0
- ogx_open_client/models/open_ai_response_format_json_schema.py +144 -0
- ogx_open_client/models/open_ai_response_format_param.py +447 -0
- ogx_open_client/models/open_ai_response_format_text.py +129 -0
- ogx_open_client/models/open_ai_response_format_text_open_ai_response_format_json_schema_open_ai_response_format_json_object.py +453 -0
- ogx_open_client/models/open_ai_response_incomplete_details.py +119 -0
- ogx_open_client/models/open_ai_response_input.py +251 -0
- ogx_open_client/models/open_ai_response_input_function_tool_call_output.py +160 -0
- 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
- ogx_open_client/models/open_ai_response_input_message_content.py +447 -0
- ogx_open_client/models/open_ai_response_input_message_content_file.py +157 -0
- ogx_open_client/models/open_ai_response_input_message_content_image.py +155 -0
- ogx_open_client/models/open_ai_response_input_message_content_text.py +131 -0
- 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
- ogx_open_client/models/open_ai_response_input_tool.py +516 -0
- ogx_open_client/models/open_ai_response_input_tool_choice.py +203 -0
- ogx_open_client/models/open_ai_response_input_tool_choice_allowed_tools.py +143 -0
- ogx_open_client/models/open_ai_response_input_tool_choice_allowed_tools6_variants.py +618 -0
- ogx_open_client/models/open_ai_response_input_tool_choice_custom_tool.py +131 -0
- ogx_open_client/models/open_ai_response_input_tool_choice_file_search.py +129 -0
- ogx_open_client/models/open_ai_response_input_tool_choice_function_tool.py +131 -0
- ogx_open_client/models/open_ai_response_input_tool_choice_mcp_tool.py +138 -0
- ogx_open_client/models/open_ai_response_input_tool_choice_mode.py +44 -0
- ogx_open_client/models/open_ai_response_input_tool_choice_mode1.py +209 -0
- ogx_open_client/models/open_ai_response_input_tool_choice_mode2.py +209 -0
- ogx_open_client/models/open_ai_response_input_tool_choice_web_search.py +129 -0
- ogx_open_client/models/open_ai_response_input_tool_file_search.py +166 -0
- ogx_open_client/models/open_ai_response_input_tool_function.py +152 -0
- ogx_open_client/models/open_ai_response_input_tool_mcp.py +194 -0
- ogx_open_client/models/open_ai_response_input_tool_web_search.py +186 -0
- ogx_open_client/models/open_ai_response_input_tool_web_search4_variants.py +516 -0
- ogx_open_client/models/open_ai_response_input_tool_web_search4_variants1.py +516 -0
- ogx_open_client/models/open_ai_response_mcp_approval_request.py +137 -0
- ogx_open_client/models/open_ai_response_mcp_approval_response.py +147 -0
- ogx_open_client/models/open_ai_response_message.py +167 -0
- ogx_open_client/models/open_ai_response_message11_variants.py +855 -0
- ogx_open_client/models/open_ai_response_message8_variants.py +702 -0
- ogx_open_client/models/open_ai_response_message_input.py +167 -0
- ogx_open_client/models/open_ai_response_message_input11_variants.py +855 -0
- ogx_open_client/models/open_ai_response_message_input8_variants.py +702 -0
- ogx_open_client/models/open_ai_response_message_output.py +167 -0
- ogx_open_client/models/open_ai_response_message_output11_variants.py +855 -0
- ogx_open_client/models/open_ai_response_message_output8_variants.py +702 -0
- ogx_open_client/models/open_ai_response_message_output_union.py +233 -0
- ogx_open_client/models/open_ai_response_object.py +407 -0
- ogx_open_client/models/open_ai_response_object_stream.py +2181 -0
- ogx_open_client/models/open_ai_response_object_stream_error.py +147 -0
- ogx_open_client/models/open_ai_response_object_stream_response_completed.py +146 -0
- ogx_open_client/models/open_ai_response_object_stream_response_content_part_added.py +154 -0
- ogx_open_client/models/open_ai_response_object_stream_response_content_part_done.py +154 -0
- ogx_open_client/models/open_ai_response_object_stream_response_created.py +146 -0
- ogx_open_client/models/open_ai_response_object_stream_response_failed.py +146 -0
- ogx_open_client/models/open_ai_response_object_stream_response_file_search_call_completed.py +135 -0
- ogx_open_client/models/open_ai_response_object_stream_response_file_search_call_in_progress.py +135 -0
- ogx_open_client/models/open_ai_response_object_stream_response_file_search_call_searching.py +135 -0
- ogx_open_client/models/open_ai_response_object_stream_response_function_call_arguments_delta.py +137 -0
- ogx_open_client/models/open_ai_response_object_stream_response_function_call_arguments_done.py +137 -0
- ogx_open_client/models/open_ai_response_object_stream_response_in_progress.py +146 -0
- ogx_open_client/models/open_ai_response_object_stream_response_incomplete.py +146 -0
- ogx_open_client/models/open_ai_response_object_stream_response_mcp_call_arguments_delta.py +137 -0
- ogx_open_client/models/open_ai_response_object_stream_response_mcp_call_arguments_done.py +137 -0
- ogx_open_client/models/open_ai_response_object_stream_response_mcp_call_completed.py +131 -0
- ogx_open_client/models/open_ai_response_object_stream_response_mcp_call_failed.py +131 -0
- ogx_open_client/models/open_ai_response_object_stream_response_mcp_call_in_progress.py +135 -0
- ogx_open_client/models/open_ai_response_object_stream_response_mcp_list_tools_completed.py +131 -0
- ogx_open_client/models/open_ai_response_object_stream_response_mcp_list_tools_failed.py +131 -0
- ogx_open_client/models/open_ai_response_object_stream_response_mcp_list_tools_in_progress.py +131 -0
- ogx_open_client/models/open_ai_response_object_stream_response_output_item_added.py +150 -0
- ogx_open_client/models/open_ai_response_object_stream_response_output_item_done.py +150 -0
- ogx_open_client/models/open_ai_response_object_stream_response_output_text_annotation_added.py +154 -0
- ogx_open_client/models/open_ai_response_object_stream_response_output_text_delta.py +157 -0
- ogx_open_client/models/open_ai_response_object_stream_response_output_text_done.py +139 -0
- ogx_open_client/models/open_ai_response_object_stream_response_reasoning_summary_part_added.py +152 -0
- ogx_open_client/models/open_ai_response_object_stream_response_reasoning_summary_part_done.py +152 -0
- ogx_open_client/models/open_ai_response_object_stream_response_reasoning_summary_text_delta.py +139 -0
- ogx_open_client/models/open_ai_response_object_stream_response_reasoning_summary_text_done.py +139 -0
- ogx_open_client/models/open_ai_response_object_stream_response_reasoning_text_delta.py +139 -0
- ogx_open_client/models/open_ai_response_object_stream_response_reasoning_text_done.py +139 -0
- ogx_open_client/models/open_ai_response_object_stream_response_refusal_delta.py +139 -0
- ogx_open_client/models/open_ai_response_object_stream_response_refusal_done.py +139 -0
- ogx_open_client/models/open_ai_response_object_stream_response_web_search_call_completed.py +135 -0
- ogx_open_client/models/open_ai_response_object_stream_response_web_search_call_in_progress.py +135 -0
- ogx_open_client/models/open_ai_response_object_stream_response_web_search_call_searching.py +135 -0
- ogx_open_client/models/open_ai_response_object_with_input.py +425 -0
- ogx_open_client/models/open_ai_response_output.py +702 -0
- ogx_open_client/models/open_ai_response_output_item.py +702 -0
- ogx_open_client/models/open_ai_response_output_message_content.py +396 -0
- ogx_open_client/models/open_ai_response_output_message_content_output_text.py +162 -0
- ogx_open_client/models/open_ai_response_output_message_content_output_text_input.py +162 -0
- ogx_open_client/models/open_ai_response_output_message_content_output_text_input_open_ai_response_content_part_refusal.py +396 -0
- ogx_open_client/models/open_ai_response_output_message_content_output_text_open_ai_response_content_part_refusal.py +396 -0
- ogx_open_client/models/open_ai_response_output_message_content_output_text_output.py +162 -0
- ogx_open_client/models/open_ai_response_output_message_content_output_text_output_open_ai_response_content_part_refusal.py +396 -0
- ogx_open_client/models/open_ai_response_output_message_file_search_tool_call.py +153 -0
- ogx_open_client/models/open_ai_response_output_message_file_search_tool_call_results.py +127 -0
- ogx_open_client/models/open_ai_response_output_message_function_tool_call.py +149 -0
- ogx_open_client/models/open_ai_response_output_message_mcp_call.py +151 -0
- ogx_open_client/models/open_ai_response_output_message_mcp_list_tools.py +146 -0
- ogx_open_client/models/open_ai_response_output_message_reasoning_content.py +131 -0
- ogx_open_client/models/open_ai_response_output_message_reasoning_item.py +179 -0
- ogx_open_client/models/open_ai_response_output_message_reasoning_summary.py +131 -0
- ogx_open_client/models/open_ai_response_output_message_web_search_tool_call.py +153 -0
- ogx_open_client/models/open_ai_response_output_message_web_search_tool_call_input.py +153 -0
- ogx_open_client/models/open_ai_response_output_message_web_search_tool_call_output.py +153 -0
- ogx_open_client/models/open_ai_response_prompt.py +151 -0
- ogx_open_client/models/open_ai_response_reasoning.py +168 -0
- ogx_open_client/models/open_ai_response_text.py +154 -0
- ogx_open_client/models/open_ai_response_text_format.py +157 -0
- ogx_open_client/models/open_ai_response_tool.py +516 -0
- ogx_open_client/models/open_ai_response_tool_mcp.py +151 -0
- ogx_open_client/models/open_ai_response_usage.py +153 -0
- ogx_open_client/models/open_ai_response_usage_input_tokens_details.py +119 -0
- ogx_open_client/models/open_ai_response_usage_output_tokens_details.py +119 -0
- ogx_open_client/models/open_ai_search_vector_store_request.py +171 -0
- ogx_open_client/models/open_ai_system_message_param.py +151 -0
- ogx_open_client/models/open_ai_token_log_prob.py +146 -0
- ogx_open_client/models/open_ai_tool_message_param.py +146 -0
- ogx_open_client/models/open_ai_top_log_prob.py +128 -0
- ogx_open_client/models/open_ai_update_vector_store_file_request.py +119 -0
- ogx_open_client/models/open_ai_update_vector_store_request.py +151 -0
- ogx_open_client/models/open_ai_user_message_param.py +151 -0
- ogx_open_client/models/open_ai_user_message_param_input.py +151 -0
- ogx_open_client/models/open_ai_user_message_param_input5_variants.py +549 -0
- ogx_open_client/models/open_ai_user_message_param_output.py +151 -0
- ogx_open_client/models/open_ai_user_message_param_output5_variants.py +549 -0
- ogx_open_client/models/open_aijson_schema.py +140 -0
- ogx_open_client/models/order.py +43 -0
- ogx_open_client/models/output_tokens_details.py +132 -0
- ogx_open_client/models/paginated_response.py +145 -0
- ogx_open_client/models/param_type.py +753 -0
- ogx_open_client/models/process_file_request.py +151 -0
- ogx_open_client/models/process_file_response.py +149 -0
- ogx_open_client/models/prompt.py +133 -0
- ogx_open_client/models/provider_info.py +127 -0
- ogx_open_client/models/provider_spec.py +169 -0
- ogx_open_client/models/query_chunks_request.py +141 -0
- ogx_open_client/models/query_chunks_response.py +149 -0
- ogx_open_client/models/register_model_request.py +155 -0
- ogx_open_client/models/remote_provider_spec.py +178 -0
- ogx_open_client/models/rerank_data.py +122 -0
- ogx_open_client/models/rerank_request.py +155 -0
- ogx_open_client/models/rerank_response.py +147 -0
- ogx_open_client/models/response_format.py +396 -0
- ogx_open_client/models/response_item_include.py +48 -0
- ogx_open_client/models/response_retrieve_item_v1_conversations_conversation_id_items_item_id_get.py +849 -0
- ogx_open_client/models/response_stream_options.py +119 -0
- ogx_open_client/models/response_truncation.py +43 -0
- ogx_open_client/models/retrieve_batch_request.py +119 -0
- ogx_open_client/models/retrieve_file_content_request.py +119 -0
- ogx_open_client/models/retrieve_file_request.py +119 -0
- ogx_open_client/models/retrieve_item_request.py +121 -0
- ogx_open_client/models/route_info.py +123 -0
- ogx_open_client/models/sampling_params.py +154 -0
- ogx_open_client/models/sampling_strategy.py +447 -0
- ogx_open_client/models/score_request.py +136 -0
- ogx_open_client/models/scoring_result.py +124 -0
- ogx_open_client/models/search_ranking_options.py +160 -0
- ogx_open_client/models/service_tier.py +45 -0
- ogx_open_client/models/set_default_version_body_request.py +119 -0
- ogx_open_client/models/set_default_version_request.py +121 -0
- ogx_open_client/models/string4_variants.py +415 -0
- ogx_open_client/models/string4_variants1.py +416 -0
- ogx_open_client/models/string_approval_filter.py +222 -0
- ogx_open_client/models/string_list_anthropic_text_block.py +272 -0
- ogx_open_client/models/string_list_anthropic_text_block1.py +272 -0
- ogx_open_client/models/string_list_anthropic_text_block_anthropic_image_block.py +266 -0
- ogx_open_client/models/string_list_google_input_turn.py +266 -0
- ogx_open_client/models/string_list_google_text_content_google_function_call_content_google_function_response_content.py +266 -0
- ogx_open_client/models/string_list_image_content_item_input_text_content_item.py +280 -0
- ogx_open_client/models/string_list_image_content_item_input_text_content_item1.py +280 -0
- ogx_open_client/models/string_list_image_content_item_output_text_content_item.py +280 -0
- ogx_open_client/models/string_list_image_content_item_text_content_item.py +286 -0
- ogx_open_client/models/string_list_image_content_item_text_content_item1.py +280 -0
- ogx_open_client/models/string_list_image_content_item_text_content_item2.py +286 -0
- ogx_open_client/models/string_list_image_content_item_text_content_item3.py +280 -0
- ogx_open_client/models/string_list_image_content_item_text_content_item4.py +280 -0
- ogx_open_client/models/string_list_image_content_item_text_content_item5.py +280 -0
- ogx_open_client/models/string_list_open_ai_chat_completion_content_part_text_param.py +272 -0
- ogx_open_client/models/string_list_open_ai_chat_completion_content_part_text_param1.py +266 -0
- ogx_open_client/models/string_list_open_ai_chat_completion_content_part_text_param2.py +266 -0
- ogx_open_client/models/string_list_open_ai_chat_completion_content_part_text_param3.py +266 -0
- ogx_open_client/models/string_list_open_ai_chat_completion_content_part_text_param4.py +272 -0
- 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
- 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
- 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
- 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
- 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
- ogx_open_client/models/string_list_open_ai_response_message_union_open_ai_response_input_function_tool_call_output.py +272 -0
- ogx_open_client/models/string_list_open_ai_response_message_union_open_ai_response_input_function_tool_call_output1.py +266 -0
- ogx_open_client/models/string_list_string.py +271 -0
- ogx_open_client/models/string_list_string1.py +265 -0
- ogx_open_client/models/string_list_string2.py +265 -0
- ogx_open_client/models/string_number_boolean.py +225 -0
- ogx_open_client/models/string_number_boolean1.py +224 -0
- ogx_open_client/models/string_object.py +271 -0
- ogx_open_client/models/string_object1.py +271 -0
- ogx_open_client/models/string_open_ai_chat_completion_content_part_text_param_open_ai_chat_completion_content_part_image_param.py +220 -0
- ogx_open_client/models/string_open_ai_chat_completion_content_part_text_param_open_ai_chat_completion_content_part_image_param1.py +220 -0
- ogx_open_client/models/string_type.py +129 -0
- ogx_open_client/models/system_message.py +144 -0
- ogx_open_client/models/text_content_item.py +131 -0
- ogx_open_client/models/text_delta.py +131 -0
- ogx_open_client/models/token_log_probs.py +119 -0
- ogx_open_client/models/tool_config.py +119 -0
- ogx_open_client/models/tool_def.py +154 -0
- ogx_open_client/models/tool_group.py +167 -0
- ogx_open_client/models/tool_group_input.py +148 -0
- ogx_open_client/models/tool_invocation_result.py +158 -0
- ogx_open_client/models/tool_response_message.py +146 -0
- ogx_open_client/models/top_k_sampling_strategy.py +132 -0
- ogx_open_client/models/top_p_sampling_strategy.py +134 -0
- ogx_open_client/models/union_type.py +129 -0
- ogx_open_client/models/unregister_model_request.py +119 -0
- ogx_open_client/models/update_conversation_request.py +119 -0
- ogx_open_client/models/update_prompt_body_request.py +130 -0
- ogx_open_client/models/update_prompt_request.py +132 -0
- ogx_open_client/models/upload_file_request.py +140 -0
- ogx_open_client/models/url.py +119 -0
- ogx_open_client/models/urlor_data.py +144 -0
- ogx_open_client/models/user_message.py +164 -0
- ogx_open_client/models/vector_store_chunking_strategy.py +453 -0
- ogx_open_client/models/vector_store_chunking_strategy_auto.py +129 -0
- ogx_open_client/models/vector_store_chunking_strategy_auto_vector_store_chunking_strategy_static_vector_store_chunking_strategy_contextual.py +453 -0
- ogx_open_client/models/vector_store_chunking_strategy_auto_vector_store_chunking_strategy_static_vector_store_chunking_strategy_contextual1.py +447 -0
- ogx_open_client/models/vector_store_chunking_strategy_contextual.py +144 -0
- ogx_open_client/models/vector_store_chunking_strategy_contextual_config.py +145 -0
- ogx_open_client/models/vector_store_chunking_strategy_static.py +144 -0
- ogx_open_client/models/vector_store_chunking_strategy_static_config.py +122 -0
- ogx_open_client/models/vector_store_content.py +162 -0
- ogx_open_client/models/vector_store_create_request.py +167 -0
- ogx_open_client/models/vector_store_delete_response.py +133 -0
- ogx_open_client/models/vector_store_expiration_after.py +129 -0
- ogx_open_client/models/vector_store_file_batch_file_entry.py +164 -0
- ogx_open_client/models/vector_store_file_batch_object.py +159 -0
- ogx_open_client/models/vector_store_file_content_response.py +151 -0
- ogx_open_client/models/vector_store_file_counts.py +127 -0
- ogx_open_client/models/vector_store_file_delete_response.py +133 -0
- ogx_open_client/models/vector_store_file_last_error.py +128 -0
- ogx_open_client/models/vector_store_file_object.py +206 -0
- ogx_open_client/models/vector_store_file_status.py +45 -0
- ogx_open_client/models/vector_store_files_list_in_batch_response.py +148 -0
- ogx_open_client/models/vector_store_list_files_response.py +148 -0
- ogx_open_client/models/vector_store_list_response.py +148 -0
- ogx_open_client/models/vector_store_modify_request.py +151 -0
- ogx_open_client/models/vector_store_object.py +202 -0
- ogx_open_client/models/vector_store_search_request.py +151 -0
- ogx_open_client/models/vector_store_search_response.py +161 -0
- ogx_open_client/models/vector_store_search_response_page.py +153 -0
- ogx_open_client/models/vector_store_status.py +44 -0
- ogx_open_client/models/version_info.py +119 -0
- ogx_open_client/models/web_search_action_find.py +133 -0
- ogx_open_client/models/web_search_action_open_page.py +136 -0
- ogx_open_client/models/web_search_action_search.py +156 -0
- ogx_open_client/models/web_search_action_search_web_search_action_open_page_web_search_action_find.py +224 -0
- ogx_open_client/models/web_search_action_search_web_search_action_open_page_web_search_action_find1.py +224 -0
- ogx_open_client/models/web_search_filters.py +141 -0
- ogx_open_client/models/web_search_source.py +131 -0
- ogx_open_client/models/web_search_user_location.py +157 -0
- ogx_open_client/ogx_client.py +309 -0
- ogx_open_client/py.typed +0 -0
- ogx_open_client/rest.py +255 -0
- ogx_open_client/stream.py +183 -0
- ogx_open_client-1.0.3.dev0.dist-info/METADATA +723 -0
- ogx_open_client-1.0.3.dev0.dist-info/RECORD +1199 -0
- ogx_open_client-1.0.3.dev0.dist-info/WHEEL +5 -0
- ogx_open_client-1.0.3.dev0.dist-info/top_level.txt +2 -0
|
@@ -0,0 +1,2181 @@
|
|
|
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_object_stream_error import OpenAIResponseObjectStreamError
|
|
28
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_completed import OpenAIResponseObjectStreamResponseCompleted
|
|
29
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_content_part_added import OpenAIResponseObjectStreamResponseContentPartAdded
|
|
30
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_content_part_done import OpenAIResponseObjectStreamResponseContentPartDone
|
|
31
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_created import OpenAIResponseObjectStreamResponseCreated
|
|
32
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_failed import OpenAIResponseObjectStreamResponseFailed
|
|
33
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_file_search_call_completed import OpenAIResponseObjectStreamResponseFileSearchCallCompleted
|
|
34
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_file_search_call_in_progress import OpenAIResponseObjectStreamResponseFileSearchCallInProgress
|
|
35
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_file_search_call_searching import OpenAIResponseObjectStreamResponseFileSearchCallSearching
|
|
36
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_function_call_arguments_delta import OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta
|
|
37
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_function_call_arguments_done import OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone
|
|
38
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_in_progress import OpenAIResponseObjectStreamResponseInProgress
|
|
39
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_incomplete import OpenAIResponseObjectStreamResponseIncomplete
|
|
40
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_mcp_call_arguments_delta import OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta
|
|
41
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_mcp_call_arguments_done import OpenAIResponseObjectStreamResponseMcpCallArgumentsDone
|
|
42
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_mcp_call_completed import OpenAIResponseObjectStreamResponseMcpCallCompleted
|
|
43
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_mcp_call_failed import OpenAIResponseObjectStreamResponseMcpCallFailed
|
|
44
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_mcp_call_in_progress import OpenAIResponseObjectStreamResponseMcpCallInProgress
|
|
45
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_mcp_list_tools_completed import OpenAIResponseObjectStreamResponseMcpListToolsCompleted
|
|
46
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_mcp_list_tools_failed import OpenAIResponseObjectStreamResponseMcpListToolsFailed
|
|
47
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_mcp_list_tools_in_progress import OpenAIResponseObjectStreamResponseMcpListToolsInProgress
|
|
48
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_output_item_added import OpenAIResponseObjectStreamResponseOutputItemAdded
|
|
49
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_output_item_done import OpenAIResponseObjectStreamResponseOutputItemDone
|
|
50
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_output_text_annotation_added import OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded
|
|
51
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_output_text_delta import OpenAIResponseObjectStreamResponseOutputTextDelta
|
|
52
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_output_text_done import OpenAIResponseObjectStreamResponseOutputTextDone
|
|
53
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_reasoning_summary_part_added import OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded
|
|
54
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_reasoning_summary_part_done import OpenAIResponseObjectStreamResponseReasoningSummaryPartDone
|
|
55
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_reasoning_summary_text_delta import OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta
|
|
56
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_reasoning_summary_text_done import OpenAIResponseObjectStreamResponseReasoningSummaryTextDone
|
|
57
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_reasoning_text_delta import OpenAIResponseObjectStreamResponseReasoningTextDelta
|
|
58
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_reasoning_text_done import OpenAIResponseObjectStreamResponseReasoningTextDone
|
|
59
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_refusal_delta import OpenAIResponseObjectStreamResponseRefusalDelta
|
|
60
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_refusal_done import OpenAIResponseObjectStreamResponseRefusalDone
|
|
61
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_web_search_call_completed import OpenAIResponseObjectStreamResponseWebSearchCallCompleted
|
|
62
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_web_search_call_in_progress import OpenAIResponseObjectStreamResponseWebSearchCallInProgress
|
|
63
|
+
from ogx_open_client.models.open_ai_response_object_stream_response_web_search_call_searching import OpenAIResponseObjectStreamResponseWebSearchCallSearching
|
|
64
|
+
from pydantic import StrictStr, Field, model_serializer
|
|
65
|
+
from typing import Any, ClassVar
|
|
66
|
+
from typing_extensions import Literal, Self
|
|
67
|
+
from ogx_open_client.lib._utils import pascal_to_snake_case
|
|
68
|
+
|
|
69
|
+
OPENAIRESPONSEOBJECTSTREAM_ONE_OF_SCHEMAS = ["OpenAIResponseObjectStreamError", "OpenAIResponseObjectStreamResponseCompleted", "OpenAIResponseObjectStreamResponseContentPartAdded", "OpenAIResponseObjectStreamResponseContentPartDone", "OpenAIResponseObjectStreamResponseCreated", "OpenAIResponseObjectStreamResponseFailed", "OpenAIResponseObjectStreamResponseFileSearchCallCompleted", "OpenAIResponseObjectStreamResponseFileSearchCallInProgress", "OpenAIResponseObjectStreamResponseFileSearchCallSearching", "OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta", "OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone", "OpenAIResponseObjectStreamResponseInProgress", "OpenAIResponseObjectStreamResponseIncomplete", "OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta", "OpenAIResponseObjectStreamResponseMcpCallArgumentsDone", "OpenAIResponseObjectStreamResponseMcpCallCompleted", "OpenAIResponseObjectStreamResponseMcpCallFailed", "OpenAIResponseObjectStreamResponseMcpCallInProgress", "OpenAIResponseObjectStreamResponseMcpListToolsCompleted", "OpenAIResponseObjectStreamResponseMcpListToolsFailed", "OpenAIResponseObjectStreamResponseMcpListToolsInProgress", "OpenAIResponseObjectStreamResponseOutputItemAdded", "OpenAIResponseObjectStreamResponseOutputItemDone", "OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded", "OpenAIResponseObjectStreamResponseOutputTextDelta", "OpenAIResponseObjectStreamResponseOutputTextDone", "OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded", "OpenAIResponseObjectStreamResponseReasoningSummaryPartDone", "OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta", "OpenAIResponseObjectStreamResponseReasoningSummaryTextDone", "OpenAIResponseObjectStreamResponseReasoningTextDelta", "OpenAIResponseObjectStreamResponseReasoningTextDone", "OpenAIResponseObjectStreamResponseRefusalDelta", "OpenAIResponseObjectStreamResponseRefusalDone", "OpenAIResponseObjectStreamResponseWebSearchCallCompleted", "OpenAIResponseObjectStreamResponseWebSearchCallInProgress", "OpenAIResponseObjectStreamResponseWebSearchCallSearching"]
|
|
70
|
+
|
|
71
|
+
class OpenAIResponseObjectStream(BaseModel):
|
|
72
|
+
"""
|
|
73
|
+
OpenAIResponseObjectStream
|
|
74
|
+
"""
|
|
75
|
+
# data type: OpenAIResponseObjectStreamResponseCreated
|
|
76
|
+
oneof_schema_1_validator: Optional[OpenAIResponseObjectStreamResponseCreated] = None
|
|
77
|
+
# data type: OpenAIResponseObjectStreamResponseInProgress
|
|
78
|
+
oneof_schema_2_validator: Optional[OpenAIResponseObjectStreamResponseInProgress] = None
|
|
79
|
+
# data type: OpenAIResponseObjectStreamResponseOutputItemAdded
|
|
80
|
+
oneof_schema_3_validator: Optional[OpenAIResponseObjectStreamResponseOutputItemAdded] = None
|
|
81
|
+
# data type: OpenAIResponseObjectStreamResponseOutputItemDone
|
|
82
|
+
oneof_schema_4_validator: Optional[OpenAIResponseObjectStreamResponseOutputItemDone] = None
|
|
83
|
+
# data type: OpenAIResponseObjectStreamResponseOutputTextDelta
|
|
84
|
+
oneof_schema_5_validator: Optional[OpenAIResponseObjectStreamResponseOutputTextDelta] = None
|
|
85
|
+
# data type: OpenAIResponseObjectStreamResponseOutputTextDone
|
|
86
|
+
oneof_schema_6_validator: Optional[OpenAIResponseObjectStreamResponseOutputTextDone] = None
|
|
87
|
+
# data type: OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta
|
|
88
|
+
oneof_schema_7_validator: Optional[OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta] = None
|
|
89
|
+
# data type: OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone
|
|
90
|
+
oneof_schema_8_validator: Optional[OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone] = None
|
|
91
|
+
# data type: OpenAIResponseObjectStreamResponseWebSearchCallInProgress
|
|
92
|
+
oneof_schema_9_validator: Optional[OpenAIResponseObjectStreamResponseWebSearchCallInProgress] = None
|
|
93
|
+
# data type: OpenAIResponseObjectStreamResponseWebSearchCallSearching
|
|
94
|
+
oneof_schema_10_validator: Optional[OpenAIResponseObjectStreamResponseWebSearchCallSearching] = None
|
|
95
|
+
# data type: OpenAIResponseObjectStreamResponseWebSearchCallCompleted
|
|
96
|
+
oneof_schema_11_validator: Optional[OpenAIResponseObjectStreamResponseWebSearchCallCompleted] = None
|
|
97
|
+
# data type: OpenAIResponseObjectStreamResponseMcpListToolsInProgress
|
|
98
|
+
oneof_schema_12_validator: Optional[OpenAIResponseObjectStreamResponseMcpListToolsInProgress] = None
|
|
99
|
+
# data type: OpenAIResponseObjectStreamResponseMcpListToolsFailed
|
|
100
|
+
oneof_schema_13_validator: Optional[OpenAIResponseObjectStreamResponseMcpListToolsFailed] = None
|
|
101
|
+
# data type: OpenAIResponseObjectStreamResponseMcpListToolsCompleted
|
|
102
|
+
oneof_schema_14_validator: Optional[OpenAIResponseObjectStreamResponseMcpListToolsCompleted] = None
|
|
103
|
+
# data type: OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta
|
|
104
|
+
oneof_schema_15_validator: Optional[OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta] = None
|
|
105
|
+
# data type: OpenAIResponseObjectStreamResponseMcpCallArgumentsDone
|
|
106
|
+
oneof_schema_16_validator: Optional[OpenAIResponseObjectStreamResponseMcpCallArgumentsDone] = None
|
|
107
|
+
# data type: OpenAIResponseObjectStreamResponseMcpCallInProgress
|
|
108
|
+
oneof_schema_17_validator: Optional[OpenAIResponseObjectStreamResponseMcpCallInProgress] = None
|
|
109
|
+
# data type: OpenAIResponseObjectStreamResponseMcpCallFailed
|
|
110
|
+
oneof_schema_18_validator: Optional[OpenAIResponseObjectStreamResponseMcpCallFailed] = None
|
|
111
|
+
# data type: OpenAIResponseObjectStreamResponseMcpCallCompleted
|
|
112
|
+
oneof_schema_19_validator: Optional[OpenAIResponseObjectStreamResponseMcpCallCompleted] = None
|
|
113
|
+
# data type: OpenAIResponseObjectStreamResponseContentPartAdded
|
|
114
|
+
oneof_schema_20_validator: Optional[OpenAIResponseObjectStreamResponseContentPartAdded] = None
|
|
115
|
+
# data type: OpenAIResponseObjectStreamResponseContentPartDone
|
|
116
|
+
oneof_schema_21_validator: Optional[OpenAIResponseObjectStreamResponseContentPartDone] = None
|
|
117
|
+
# data type: OpenAIResponseObjectStreamResponseReasoningTextDelta
|
|
118
|
+
oneof_schema_22_validator: Optional[OpenAIResponseObjectStreamResponseReasoningTextDelta] = None
|
|
119
|
+
# data type: OpenAIResponseObjectStreamResponseReasoningTextDone
|
|
120
|
+
oneof_schema_23_validator: Optional[OpenAIResponseObjectStreamResponseReasoningTextDone] = None
|
|
121
|
+
# data type: OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded
|
|
122
|
+
oneof_schema_24_validator: Optional[OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded] = None
|
|
123
|
+
# data type: OpenAIResponseObjectStreamResponseReasoningSummaryPartDone
|
|
124
|
+
oneof_schema_25_validator: Optional[OpenAIResponseObjectStreamResponseReasoningSummaryPartDone] = None
|
|
125
|
+
# data type: OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta
|
|
126
|
+
oneof_schema_26_validator: Optional[OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta] = None
|
|
127
|
+
# data type: OpenAIResponseObjectStreamResponseReasoningSummaryTextDone
|
|
128
|
+
oneof_schema_27_validator: Optional[OpenAIResponseObjectStreamResponseReasoningSummaryTextDone] = None
|
|
129
|
+
# data type: OpenAIResponseObjectStreamResponseRefusalDelta
|
|
130
|
+
oneof_schema_28_validator: Optional[OpenAIResponseObjectStreamResponseRefusalDelta] = None
|
|
131
|
+
# data type: OpenAIResponseObjectStreamResponseRefusalDone
|
|
132
|
+
oneof_schema_29_validator: Optional[OpenAIResponseObjectStreamResponseRefusalDone] = None
|
|
133
|
+
# data type: OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded
|
|
134
|
+
oneof_schema_30_validator: Optional[OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded] = None
|
|
135
|
+
# data type: OpenAIResponseObjectStreamResponseFileSearchCallInProgress
|
|
136
|
+
oneof_schema_31_validator: Optional[OpenAIResponseObjectStreamResponseFileSearchCallInProgress] = None
|
|
137
|
+
# data type: OpenAIResponseObjectStreamResponseFileSearchCallSearching
|
|
138
|
+
oneof_schema_32_validator: Optional[OpenAIResponseObjectStreamResponseFileSearchCallSearching] = None
|
|
139
|
+
# data type: OpenAIResponseObjectStreamResponseFileSearchCallCompleted
|
|
140
|
+
oneof_schema_33_validator: Optional[OpenAIResponseObjectStreamResponseFileSearchCallCompleted] = None
|
|
141
|
+
# data type: OpenAIResponseObjectStreamResponseIncomplete
|
|
142
|
+
oneof_schema_34_validator: Optional[OpenAIResponseObjectStreamResponseIncomplete] = None
|
|
143
|
+
# data type: OpenAIResponseObjectStreamResponseFailed
|
|
144
|
+
oneof_schema_35_validator: Optional[OpenAIResponseObjectStreamResponseFailed] = None
|
|
145
|
+
# data type: OpenAIResponseObjectStreamResponseCompleted
|
|
146
|
+
oneof_schema_36_validator: Optional[OpenAIResponseObjectStreamResponseCompleted] = None
|
|
147
|
+
# data type: OpenAIResponseObjectStreamError
|
|
148
|
+
oneof_schema_37_validator: Optional[OpenAIResponseObjectStreamError] = None
|
|
149
|
+
actual_instance: OpenAIResponseObjectStreamError | OpenAIResponseObjectStreamResponseCompleted | OpenAIResponseObjectStreamResponseContentPartAdded | OpenAIResponseObjectStreamResponseContentPartDone | OpenAIResponseObjectStreamResponseCreated | OpenAIResponseObjectStreamResponseFailed | OpenAIResponseObjectStreamResponseFileSearchCallCompleted | OpenAIResponseObjectStreamResponseFileSearchCallInProgress | OpenAIResponseObjectStreamResponseFileSearchCallSearching | OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta | OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone | OpenAIResponseObjectStreamResponseInProgress | OpenAIResponseObjectStreamResponseIncomplete | OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta | OpenAIResponseObjectStreamResponseMcpCallArgumentsDone | OpenAIResponseObjectStreamResponseMcpCallCompleted | OpenAIResponseObjectStreamResponseMcpCallFailed | OpenAIResponseObjectStreamResponseMcpCallInProgress | OpenAIResponseObjectStreamResponseMcpListToolsCompleted | OpenAIResponseObjectStreamResponseMcpListToolsFailed | OpenAIResponseObjectStreamResponseMcpListToolsInProgress | OpenAIResponseObjectStreamResponseOutputItemAdded | OpenAIResponseObjectStreamResponseOutputItemDone | OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded | OpenAIResponseObjectStreamResponseOutputTextDelta | OpenAIResponseObjectStreamResponseOutputTextDone | OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded | OpenAIResponseObjectStreamResponseReasoningSummaryPartDone | OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta | OpenAIResponseObjectStreamResponseReasoningSummaryTextDone | OpenAIResponseObjectStreamResponseReasoningTextDelta | OpenAIResponseObjectStreamResponseReasoningTextDone | OpenAIResponseObjectStreamResponseRefusalDelta | OpenAIResponseObjectStreamResponseRefusalDone | OpenAIResponseObjectStreamResponseWebSearchCallCompleted | OpenAIResponseObjectStreamResponseWebSearchCallInProgress | OpenAIResponseObjectStreamResponseWebSearchCallSearching | None = None
|
|
150
|
+
one_of_schemas: ClassVar[set[str]] = { "OpenAIResponseObjectStreamError", "OpenAIResponseObjectStreamResponseCompleted", "OpenAIResponseObjectStreamResponseContentPartAdded", "OpenAIResponseObjectStreamResponseContentPartDone", "OpenAIResponseObjectStreamResponseCreated", "OpenAIResponseObjectStreamResponseFailed", "OpenAIResponseObjectStreamResponseFileSearchCallCompleted", "OpenAIResponseObjectStreamResponseFileSearchCallInProgress", "OpenAIResponseObjectStreamResponseFileSearchCallSearching", "OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta", "OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone", "OpenAIResponseObjectStreamResponseInProgress", "OpenAIResponseObjectStreamResponseIncomplete", "OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta", "OpenAIResponseObjectStreamResponseMcpCallArgumentsDone", "OpenAIResponseObjectStreamResponseMcpCallCompleted", "OpenAIResponseObjectStreamResponseMcpCallFailed", "OpenAIResponseObjectStreamResponseMcpCallInProgress", "OpenAIResponseObjectStreamResponseMcpListToolsCompleted", "OpenAIResponseObjectStreamResponseMcpListToolsFailed", "OpenAIResponseObjectStreamResponseMcpListToolsInProgress", "OpenAIResponseObjectStreamResponseOutputItemAdded", "OpenAIResponseObjectStreamResponseOutputItemDone", "OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded", "OpenAIResponseObjectStreamResponseOutputTextDelta", "OpenAIResponseObjectStreamResponseOutputTextDone", "OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded", "OpenAIResponseObjectStreamResponseReasoningSummaryPartDone", "OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta", "OpenAIResponseObjectStreamResponseReasoningSummaryTextDone", "OpenAIResponseObjectStreamResponseReasoningTextDelta", "OpenAIResponseObjectStreamResponseReasoningTextDone", "OpenAIResponseObjectStreamResponseRefusalDelta", "OpenAIResponseObjectStreamResponseRefusalDone", "OpenAIResponseObjectStreamResponseWebSearchCallCompleted", "OpenAIResponseObjectStreamResponseWebSearchCallInProgress", "OpenAIResponseObjectStreamResponseWebSearchCallSearching" }
|
|
151
|
+
|
|
152
|
+
model_config = ConfigDict(
|
|
153
|
+
validate_assignment=True,
|
|
154
|
+
protected_namespaces=(),
|
|
155
|
+
)
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
discriminator_value_class_map: ClassVar[dict[str, str]] = {
|
|
159
|
+
'error': 'OpenAIResponseObjectStreamError',
|
|
160
|
+
'response.completed': 'OpenAIResponseObjectStreamResponseCompleted',
|
|
161
|
+
'response.content_part.added': 'OpenAIResponseObjectStreamResponseContentPartAdded',
|
|
162
|
+
'response.content_part.done': 'OpenAIResponseObjectStreamResponseContentPartDone',
|
|
163
|
+
'response.created': 'OpenAIResponseObjectStreamResponseCreated',
|
|
164
|
+
'response.failed': 'OpenAIResponseObjectStreamResponseFailed',
|
|
165
|
+
'response.file_search_call.completed': 'OpenAIResponseObjectStreamResponseFileSearchCallCompleted',
|
|
166
|
+
'response.file_search_call.in_progress': 'OpenAIResponseObjectStreamResponseFileSearchCallInProgress',
|
|
167
|
+
'response.file_search_call.searching': 'OpenAIResponseObjectStreamResponseFileSearchCallSearching',
|
|
168
|
+
'response.function_call_arguments.delta': 'OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta',
|
|
169
|
+
'response.function_call_arguments.done': 'OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone',
|
|
170
|
+
'response.in_progress': 'OpenAIResponseObjectStreamResponseInProgress',
|
|
171
|
+
'response.incomplete': 'OpenAIResponseObjectStreamResponseIncomplete',
|
|
172
|
+
'response.mcp_call.arguments.delta': 'OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta',
|
|
173
|
+
'response.mcp_call.arguments.done': 'OpenAIResponseObjectStreamResponseMcpCallArgumentsDone',
|
|
174
|
+
'response.mcp_call.completed': 'OpenAIResponseObjectStreamResponseMcpCallCompleted',
|
|
175
|
+
'response.mcp_call.failed': 'OpenAIResponseObjectStreamResponseMcpCallFailed',
|
|
176
|
+
'response.mcp_call.in_progress': 'OpenAIResponseObjectStreamResponseMcpCallInProgress',
|
|
177
|
+
'response.mcp_list_tools.completed': 'OpenAIResponseObjectStreamResponseMcpListToolsCompleted',
|
|
178
|
+
'response.mcp_list_tools.failed': 'OpenAIResponseObjectStreamResponseMcpListToolsFailed',
|
|
179
|
+
'response.mcp_list_tools.in_progress': 'OpenAIResponseObjectStreamResponseMcpListToolsInProgress',
|
|
180
|
+
'response.output_item.added': 'OpenAIResponseObjectStreamResponseOutputItemAdded',
|
|
181
|
+
'response.output_item.done': 'OpenAIResponseObjectStreamResponseOutputItemDone',
|
|
182
|
+
'response.output_text.annotation.added': 'OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded',
|
|
183
|
+
'response.output_text.delta': 'OpenAIResponseObjectStreamResponseOutputTextDelta',
|
|
184
|
+
'response.output_text.done': 'OpenAIResponseObjectStreamResponseOutputTextDone',
|
|
185
|
+
'response.reasoning_summary_part.added': 'OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded',
|
|
186
|
+
'response.reasoning_summary_part.done': 'OpenAIResponseObjectStreamResponseReasoningSummaryPartDone',
|
|
187
|
+
'response.reasoning_summary_text.delta': 'OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta',
|
|
188
|
+
'response.reasoning_summary_text.done': 'OpenAIResponseObjectStreamResponseReasoningSummaryTextDone',
|
|
189
|
+
'response.reasoning_text.delta': 'OpenAIResponseObjectStreamResponseReasoningTextDelta',
|
|
190
|
+
'response.reasoning_text.done': 'OpenAIResponseObjectStreamResponseReasoningTextDone',
|
|
191
|
+
'response.refusal.delta': 'OpenAIResponseObjectStreamResponseRefusalDelta',
|
|
192
|
+
'response.refusal.done': 'OpenAIResponseObjectStreamResponseRefusalDone',
|
|
193
|
+
'response.web_search_call.completed': 'OpenAIResponseObjectStreamResponseWebSearchCallCompleted',
|
|
194
|
+
'response.web_search_call.in_progress': 'OpenAIResponseObjectStreamResponseWebSearchCallInProgress',
|
|
195
|
+
'response.web_search_call.searching': 'OpenAIResponseObjectStreamResponseWebSearchCallSearching',
|
|
196
|
+
'': 'ERRORUNKNOWN'
|
|
197
|
+
}
|
|
198
|
+
discriminator_property_name: ClassVar[str] = 'type'
|
|
199
|
+
|
|
200
|
+
def __init__(self, *args, **kwargs) -> None:
|
|
201
|
+
if args:
|
|
202
|
+
if len(args) > 1:
|
|
203
|
+
raise ValueError("If a position argument is used, only 1 is allowed to set `actual_instance`")
|
|
204
|
+
if kwargs:
|
|
205
|
+
raise ValueError("If a position argument is used, keyword arguments cannot be used.")
|
|
206
|
+
|
|
207
|
+
# Preprocess the value to handle lists of dicts
|
|
208
|
+
value = args[0]
|
|
209
|
+
if isinstance(value, list):
|
|
210
|
+
# Try to construct model instances from dicts in the list
|
|
211
|
+
# This ensures default values are applied
|
|
212
|
+
from pydantic import ValidationError as PydanticValidationError
|
|
213
|
+
validated = None
|
|
214
|
+
if validated is not None:
|
|
215
|
+
value = validated
|
|
216
|
+
|
|
217
|
+
super().__init__(actual_instance=value)
|
|
218
|
+
else:
|
|
219
|
+
super().__init__(**kwargs)
|
|
220
|
+
|
|
221
|
+
def __getattr__(self, name: str):
|
|
222
|
+
"""Proxy attribute access to actual_instance for transparency."""
|
|
223
|
+
# Avoid infinite recursion for private attributes and model fields
|
|
224
|
+
if name.startswith('_') or name in ('actual_instance', 'one_of_schemas', 'model_config', 'model_fields'):
|
|
225
|
+
raise AttributeError(f"'{type(self).__name__}' object has no attribute '{name}'")
|
|
226
|
+
|
|
227
|
+
actual = super().__getattribute__('actual_instance')
|
|
228
|
+
if actual is None:
|
|
229
|
+
raise AttributeError(f"'{type(self).__name__}' object has no attribute '{name}' (actual_instance is None)")
|
|
230
|
+
|
|
231
|
+
return getattr(actual, name)
|
|
232
|
+
|
|
233
|
+
def __iter__(self):
|
|
234
|
+
"""Iterate over items if actual_instance is iterable."""
|
|
235
|
+
if hasattr(self.actual_instance, '__iter__'):
|
|
236
|
+
return iter(self.actual_instance)
|
|
237
|
+
raise TypeError(f"'{type(self.actual_instance).__name__}' object is not iterable")
|
|
238
|
+
|
|
239
|
+
def __getitem__(self, index):
|
|
240
|
+
"""Get item by index if actual_instance supports indexing."""
|
|
241
|
+
if hasattr(self.actual_instance, '__getitem__'):
|
|
242
|
+
return self.actual_instance[index]
|
|
243
|
+
raise TypeError(f"'{type(self.actual_instance).__name__}' object is not subscriptable")
|
|
244
|
+
|
|
245
|
+
def __len__(self):
|
|
246
|
+
"""Get length if actual_instance supports len()."""
|
|
247
|
+
if hasattr(self.actual_instance, '__len__'):
|
|
248
|
+
return len(self.actual_instance)
|
|
249
|
+
raise TypeError(f"object of type '{type(self.actual_instance).__name__}' has no len()")
|
|
250
|
+
|
|
251
|
+
def __bool__(self):
|
|
252
|
+
"""Handle truthiness checks - wrapper is truthy if actual_instance is not None."""
|
|
253
|
+
return self.actual_instance is not None
|
|
254
|
+
|
|
255
|
+
def __eq__(self, other):
|
|
256
|
+
"""Handle equality comparisons transparently."""
|
|
257
|
+
if hasattr(self, 'actual_instance') and self.actual_instance is not None:
|
|
258
|
+
other_value = other.actual_instance if hasattr(other, 'actual_instance') else other
|
|
259
|
+
return self.actual_instance == other_value
|
|
260
|
+
return super().__eq__(other)
|
|
261
|
+
|
|
262
|
+
def __hash__(self):
|
|
263
|
+
"""Handle hashing - use actual_instance's hash if available."""
|
|
264
|
+
if hasattr(self, 'actual_instance') and self.actual_instance is not None:
|
|
265
|
+
try:
|
|
266
|
+
return hash(self.actual_instance)
|
|
267
|
+
except TypeError:
|
|
268
|
+
return id(self)
|
|
269
|
+
return super().__hash__()
|
|
270
|
+
|
|
271
|
+
def __repr__(self):
|
|
272
|
+
"""Return repr of actual_instance for debugging."""
|
|
273
|
+
if hasattr(self, 'actual_instance') and self.actual_instance is not None:
|
|
274
|
+
return repr(self.actual_instance)
|
|
275
|
+
return super().__repr__()
|
|
276
|
+
|
|
277
|
+
def to_json(self) -> str:
|
|
278
|
+
"""Returns the JSON representation of the actual instance"""
|
|
279
|
+
if self.actual_instance is None:
|
|
280
|
+
return "null"
|
|
281
|
+
|
|
282
|
+
if hasattr(self.actual_instance, "to_json") and callable(self.actual_instance.to_json):
|
|
283
|
+
return self.actual_instance.to_json()
|
|
284
|
+
else:
|
|
285
|
+
return json.dumps(self.actual_instance)
|
|
286
|
+
|
|
287
|
+
def to_str(self) -> str:
|
|
288
|
+
"""Returns the string representation of the actual instance"""
|
|
289
|
+
return pprint.pformat(self.model_dump())
|
|
290
|
+
|
|
291
|
+
@model_serializer(mode='wrap')
|
|
292
|
+
def serialize_model(self, serializer):
|
|
293
|
+
"""Custom serializer that delegates to actual_instance for proper JSON serialization."""
|
|
294
|
+
# If actual_instance is None, serialize the wrapper normally
|
|
295
|
+
if not hasattr(self, 'actual_instance') or self.actual_instance is None:
|
|
296
|
+
return serializer(self)
|
|
297
|
+
|
|
298
|
+
# If actual_instance is a Pydantic model, serialize it using the default serializer
|
|
299
|
+
# This ensures nested models are also serialized correctly
|
|
300
|
+
if hasattr(self.actual_instance, '__pydantic_serializer__'):
|
|
301
|
+
# Use Pydantic's serializer infrastructure to ensure proper serialization
|
|
302
|
+
from pydantic_core import to_jsonable_python
|
|
303
|
+
return to_jsonable_python(
|
|
304
|
+
self.actual_instance,
|
|
305
|
+
by_alias=True,
|
|
306
|
+
exclude_none=True,
|
|
307
|
+
fallback=lambda x: x if isinstance(x, str | int | float | bool | type(None)) else str(x)
|
|
308
|
+
)
|
|
309
|
+
# If it's a list of Pydantic models, serialize each one
|
|
310
|
+
elif isinstance(self.actual_instance, list):
|
|
311
|
+
from pydantic_core import to_jsonable_python
|
|
312
|
+
return [
|
|
313
|
+
to_jsonable_python(
|
|
314
|
+
item,
|
|
315
|
+
by_alias=True,
|
|
316
|
+
exclude_none=True,
|
|
317
|
+
fallback=lambda x: x if isinstance(x, str | int | float | bool | type(None)) else str(x)
|
|
318
|
+
)
|
|
319
|
+
if hasattr(item, '__pydantic_serializer__')
|
|
320
|
+
else item
|
|
321
|
+
for item in self.actual_instance
|
|
322
|
+
]
|
|
323
|
+
# Otherwise return as-is (primitives, dicts, etc.)
|
|
324
|
+
else:
|
|
325
|
+
return self.actual_instance
|
|
326
|
+
|
|
327
|
+
@field_validator('actual_instance')
|
|
328
|
+
def actual_instance_must_validate_oneof(cls, v):
|
|
329
|
+
instance = OpenAIResponseObjectStream.model_construct()
|
|
330
|
+
error_messages = []
|
|
331
|
+
match = 0
|
|
332
|
+
# validate data type: OpenAIResponseObjectStreamResponseCreated
|
|
333
|
+
# Check if we should skip this variant based on discriminator
|
|
334
|
+
_should_skip_discriminator = False
|
|
335
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
336
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
337
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
338
|
+
_disc_value = v.get('type')
|
|
339
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
340
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
341
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseCreated':
|
|
342
|
+
_should_skip_discriminator = True
|
|
343
|
+
|
|
344
|
+
if _should_skip_discriminator:
|
|
345
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseCreated due to discriminator mismatch")
|
|
346
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseCreated):
|
|
347
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
348
|
+
if isinstance(v, dict):
|
|
349
|
+
try:
|
|
350
|
+
constructed = OpenAIResponseObjectStreamResponseCreated.model_validate(v)
|
|
351
|
+
match += 1
|
|
352
|
+
# Return the constructed instance to use it instead of raw dict
|
|
353
|
+
return constructed
|
|
354
|
+
except (ValidationError, ValueError) as e:
|
|
355
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseCreated` from dict: {str(e)}")
|
|
356
|
+
else:
|
|
357
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseCreated`")
|
|
358
|
+
else:
|
|
359
|
+
match += 1
|
|
360
|
+
# validate data type: OpenAIResponseObjectStreamResponseInProgress
|
|
361
|
+
# Check if we should skip this variant based on discriminator
|
|
362
|
+
_should_skip_discriminator = False
|
|
363
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
364
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
365
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
366
|
+
_disc_value = v.get('type')
|
|
367
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
368
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
369
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseInProgress':
|
|
370
|
+
_should_skip_discriminator = True
|
|
371
|
+
|
|
372
|
+
if _should_skip_discriminator:
|
|
373
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseInProgress due to discriminator mismatch")
|
|
374
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseInProgress):
|
|
375
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
376
|
+
if isinstance(v, dict):
|
|
377
|
+
try:
|
|
378
|
+
constructed = OpenAIResponseObjectStreamResponseInProgress.model_validate(v)
|
|
379
|
+
match += 1
|
|
380
|
+
# Return the constructed instance to use it instead of raw dict
|
|
381
|
+
return constructed
|
|
382
|
+
except (ValidationError, ValueError) as e:
|
|
383
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseInProgress` from dict: {str(e)}")
|
|
384
|
+
else:
|
|
385
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseInProgress`")
|
|
386
|
+
else:
|
|
387
|
+
match += 1
|
|
388
|
+
# validate data type: OpenAIResponseObjectStreamResponseOutputItemAdded
|
|
389
|
+
# Check if we should skip this variant based on discriminator
|
|
390
|
+
_should_skip_discriminator = False
|
|
391
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
392
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
393
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
394
|
+
_disc_value = v.get('type')
|
|
395
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
396
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
397
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseOutputItemAdded':
|
|
398
|
+
_should_skip_discriminator = True
|
|
399
|
+
|
|
400
|
+
if _should_skip_discriminator:
|
|
401
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseOutputItemAdded due to discriminator mismatch")
|
|
402
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseOutputItemAdded):
|
|
403
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
404
|
+
if isinstance(v, dict):
|
|
405
|
+
try:
|
|
406
|
+
constructed = OpenAIResponseObjectStreamResponseOutputItemAdded.model_validate(v)
|
|
407
|
+
match += 1
|
|
408
|
+
# Return the constructed instance to use it instead of raw dict
|
|
409
|
+
return constructed
|
|
410
|
+
except (ValidationError, ValueError) as e:
|
|
411
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseOutputItemAdded` from dict: {str(e)}")
|
|
412
|
+
else:
|
|
413
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseOutputItemAdded`")
|
|
414
|
+
else:
|
|
415
|
+
match += 1
|
|
416
|
+
# validate data type: OpenAIResponseObjectStreamResponseOutputItemDone
|
|
417
|
+
# Check if we should skip this variant based on discriminator
|
|
418
|
+
_should_skip_discriminator = False
|
|
419
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
420
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
421
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
422
|
+
_disc_value = v.get('type')
|
|
423
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
424
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
425
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseOutputItemDone':
|
|
426
|
+
_should_skip_discriminator = True
|
|
427
|
+
|
|
428
|
+
if _should_skip_discriminator:
|
|
429
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseOutputItemDone due to discriminator mismatch")
|
|
430
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseOutputItemDone):
|
|
431
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
432
|
+
if isinstance(v, dict):
|
|
433
|
+
try:
|
|
434
|
+
constructed = OpenAIResponseObjectStreamResponseOutputItemDone.model_validate(v)
|
|
435
|
+
match += 1
|
|
436
|
+
# Return the constructed instance to use it instead of raw dict
|
|
437
|
+
return constructed
|
|
438
|
+
except (ValidationError, ValueError) as e:
|
|
439
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseOutputItemDone` from dict: {str(e)}")
|
|
440
|
+
else:
|
|
441
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseOutputItemDone`")
|
|
442
|
+
else:
|
|
443
|
+
match += 1
|
|
444
|
+
# validate data type: OpenAIResponseObjectStreamResponseOutputTextDelta
|
|
445
|
+
# Check if we should skip this variant based on discriminator
|
|
446
|
+
_should_skip_discriminator = False
|
|
447
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
448
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
449
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
450
|
+
_disc_value = v.get('type')
|
|
451
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
452
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
453
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseOutputTextDelta':
|
|
454
|
+
_should_skip_discriminator = True
|
|
455
|
+
|
|
456
|
+
if _should_skip_discriminator:
|
|
457
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseOutputTextDelta due to discriminator mismatch")
|
|
458
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseOutputTextDelta):
|
|
459
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
460
|
+
if isinstance(v, dict):
|
|
461
|
+
try:
|
|
462
|
+
constructed = OpenAIResponseObjectStreamResponseOutputTextDelta.model_validate(v)
|
|
463
|
+
match += 1
|
|
464
|
+
# Return the constructed instance to use it instead of raw dict
|
|
465
|
+
return constructed
|
|
466
|
+
except (ValidationError, ValueError) as e:
|
|
467
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseOutputTextDelta` from dict: {str(e)}")
|
|
468
|
+
else:
|
|
469
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseOutputTextDelta`")
|
|
470
|
+
else:
|
|
471
|
+
match += 1
|
|
472
|
+
# validate data type: OpenAIResponseObjectStreamResponseOutputTextDone
|
|
473
|
+
# Check if we should skip this variant based on discriminator
|
|
474
|
+
_should_skip_discriminator = False
|
|
475
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
476
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
477
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
478
|
+
_disc_value = v.get('type')
|
|
479
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
480
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
481
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseOutputTextDone':
|
|
482
|
+
_should_skip_discriminator = True
|
|
483
|
+
|
|
484
|
+
if _should_skip_discriminator:
|
|
485
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseOutputTextDone due to discriminator mismatch")
|
|
486
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseOutputTextDone):
|
|
487
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
488
|
+
if isinstance(v, dict):
|
|
489
|
+
try:
|
|
490
|
+
constructed = OpenAIResponseObjectStreamResponseOutputTextDone.model_validate(v)
|
|
491
|
+
match += 1
|
|
492
|
+
# Return the constructed instance to use it instead of raw dict
|
|
493
|
+
return constructed
|
|
494
|
+
except (ValidationError, ValueError) as e:
|
|
495
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseOutputTextDone` from dict: {str(e)}")
|
|
496
|
+
else:
|
|
497
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseOutputTextDone`")
|
|
498
|
+
else:
|
|
499
|
+
match += 1
|
|
500
|
+
# validate data type: OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta
|
|
501
|
+
# Check if we should skip this variant based on discriminator
|
|
502
|
+
_should_skip_discriminator = False
|
|
503
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
504
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
505
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
506
|
+
_disc_value = v.get('type')
|
|
507
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
508
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
509
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta':
|
|
510
|
+
_should_skip_discriminator = True
|
|
511
|
+
|
|
512
|
+
if _should_skip_discriminator:
|
|
513
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta due to discriminator mismatch")
|
|
514
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta):
|
|
515
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
516
|
+
if isinstance(v, dict):
|
|
517
|
+
try:
|
|
518
|
+
constructed = OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta.model_validate(v)
|
|
519
|
+
match += 1
|
|
520
|
+
# Return the constructed instance to use it instead of raw dict
|
|
521
|
+
return constructed
|
|
522
|
+
except (ValidationError, ValueError) as e:
|
|
523
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta` from dict: {str(e)}")
|
|
524
|
+
else:
|
|
525
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta`")
|
|
526
|
+
else:
|
|
527
|
+
match += 1
|
|
528
|
+
# validate data type: OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone
|
|
529
|
+
# Check if we should skip this variant based on discriminator
|
|
530
|
+
_should_skip_discriminator = False
|
|
531
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
532
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
533
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
534
|
+
_disc_value = v.get('type')
|
|
535
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
536
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
537
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone':
|
|
538
|
+
_should_skip_discriminator = True
|
|
539
|
+
|
|
540
|
+
if _should_skip_discriminator:
|
|
541
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone due to discriminator mismatch")
|
|
542
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone):
|
|
543
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
544
|
+
if isinstance(v, dict):
|
|
545
|
+
try:
|
|
546
|
+
constructed = OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone.model_validate(v)
|
|
547
|
+
match += 1
|
|
548
|
+
# Return the constructed instance to use it instead of raw dict
|
|
549
|
+
return constructed
|
|
550
|
+
except (ValidationError, ValueError) as e:
|
|
551
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone` from dict: {str(e)}")
|
|
552
|
+
else:
|
|
553
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone`")
|
|
554
|
+
else:
|
|
555
|
+
match += 1
|
|
556
|
+
# validate data type: OpenAIResponseObjectStreamResponseWebSearchCallInProgress
|
|
557
|
+
# Check if we should skip this variant based on discriminator
|
|
558
|
+
_should_skip_discriminator = False
|
|
559
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
560
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
561
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
562
|
+
_disc_value = v.get('type')
|
|
563
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
564
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
565
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseWebSearchCallInProgress':
|
|
566
|
+
_should_skip_discriminator = True
|
|
567
|
+
|
|
568
|
+
if _should_skip_discriminator:
|
|
569
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseWebSearchCallInProgress due to discriminator mismatch")
|
|
570
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseWebSearchCallInProgress):
|
|
571
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
572
|
+
if isinstance(v, dict):
|
|
573
|
+
try:
|
|
574
|
+
constructed = OpenAIResponseObjectStreamResponseWebSearchCallInProgress.model_validate(v)
|
|
575
|
+
match += 1
|
|
576
|
+
# Return the constructed instance to use it instead of raw dict
|
|
577
|
+
return constructed
|
|
578
|
+
except (ValidationError, ValueError) as e:
|
|
579
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseWebSearchCallInProgress` from dict: {str(e)}")
|
|
580
|
+
else:
|
|
581
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseWebSearchCallInProgress`")
|
|
582
|
+
else:
|
|
583
|
+
match += 1
|
|
584
|
+
# validate data type: OpenAIResponseObjectStreamResponseWebSearchCallSearching
|
|
585
|
+
# Check if we should skip this variant based on discriminator
|
|
586
|
+
_should_skip_discriminator = False
|
|
587
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
588
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
589
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
590
|
+
_disc_value = v.get('type')
|
|
591
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
592
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
593
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseWebSearchCallSearching':
|
|
594
|
+
_should_skip_discriminator = True
|
|
595
|
+
|
|
596
|
+
if _should_skip_discriminator:
|
|
597
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseWebSearchCallSearching due to discriminator mismatch")
|
|
598
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseWebSearchCallSearching):
|
|
599
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
600
|
+
if isinstance(v, dict):
|
|
601
|
+
try:
|
|
602
|
+
constructed = OpenAIResponseObjectStreamResponseWebSearchCallSearching.model_validate(v)
|
|
603
|
+
match += 1
|
|
604
|
+
# Return the constructed instance to use it instead of raw dict
|
|
605
|
+
return constructed
|
|
606
|
+
except (ValidationError, ValueError) as e:
|
|
607
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseWebSearchCallSearching` from dict: {str(e)}")
|
|
608
|
+
else:
|
|
609
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseWebSearchCallSearching`")
|
|
610
|
+
else:
|
|
611
|
+
match += 1
|
|
612
|
+
# validate data type: OpenAIResponseObjectStreamResponseWebSearchCallCompleted
|
|
613
|
+
# Check if we should skip this variant based on discriminator
|
|
614
|
+
_should_skip_discriminator = False
|
|
615
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
616
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
617
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
618
|
+
_disc_value = v.get('type')
|
|
619
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
620
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
621
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseWebSearchCallCompleted':
|
|
622
|
+
_should_skip_discriminator = True
|
|
623
|
+
|
|
624
|
+
if _should_skip_discriminator:
|
|
625
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseWebSearchCallCompleted due to discriminator mismatch")
|
|
626
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseWebSearchCallCompleted):
|
|
627
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
628
|
+
if isinstance(v, dict):
|
|
629
|
+
try:
|
|
630
|
+
constructed = OpenAIResponseObjectStreamResponseWebSearchCallCompleted.model_validate(v)
|
|
631
|
+
match += 1
|
|
632
|
+
# Return the constructed instance to use it instead of raw dict
|
|
633
|
+
return constructed
|
|
634
|
+
except (ValidationError, ValueError) as e:
|
|
635
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseWebSearchCallCompleted` from dict: {str(e)}")
|
|
636
|
+
else:
|
|
637
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseWebSearchCallCompleted`")
|
|
638
|
+
else:
|
|
639
|
+
match += 1
|
|
640
|
+
# validate data type: OpenAIResponseObjectStreamResponseMcpListToolsInProgress
|
|
641
|
+
# Check if we should skip this variant based on discriminator
|
|
642
|
+
_should_skip_discriminator = False
|
|
643
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
644
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
645
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
646
|
+
_disc_value = v.get('type')
|
|
647
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
648
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
649
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseMcpListToolsInProgress':
|
|
650
|
+
_should_skip_discriminator = True
|
|
651
|
+
|
|
652
|
+
if _should_skip_discriminator:
|
|
653
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseMcpListToolsInProgress due to discriminator mismatch")
|
|
654
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseMcpListToolsInProgress):
|
|
655
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
656
|
+
if isinstance(v, dict):
|
|
657
|
+
try:
|
|
658
|
+
constructed = OpenAIResponseObjectStreamResponseMcpListToolsInProgress.model_validate(v)
|
|
659
|
+
match += 1
|
|
660
|
+
# Return the constructed instance to use it instead of raw dict
|
|
661
|
+
return constructed
|
|
662
|
+
except (ValidationError, ValueError) as e:
|
|
663
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseMcpListToolsInProgress` from dict: {str(e)}")
|
|
664
|
+
else:
|
|
665
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseMcpListToolsInProgress`")
|
|
666
|
+
else:
|
|
667
|
+
match += 1
|
|
668
|
+
# validate data type: OpenAIResponseObjectStreamResponseMcpListToolsFailed
|
|
669
|
+
# Check if we should skip this variant based on discriminator
|
|
670
|
+
_should_skip_discriminator = False
|
|
671
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
672
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
673
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
674
|
+
_disc_value = v.get('type')
|
|
675
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
676
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
677
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseMcpListToolsFailed':
|
|
678
|
+
_should_skip_discriminator = True
|
|
679
|
+
|
|
680
|
+
if _should_skip_discriminator:
|
|
681
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseMcpListToolsFailed due to discriminator mismatch")
|
|
682
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseMcpListToolsFailed):
|
|
683
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
684
|
+
if isinstance(v, dict):
|
|
685
|
+
try:
|
|
686
|
+
constructed = OpenAIResponseObjectStreamResponseMcpListToolsFailed.model_validate(v)
|
|
687
|
+
match += 1
|
|
688
|
+
# Return the constructed instance to use it instead of raw dict
|
|
689
|
+
return constructed
|
|
690
|
+
except (ValidationError, ValueError) as e:
|
|
691
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseMcpListToolsFailed` from dict: {str(e)}")
|
|
692
|
+
else:
|
|
693
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseMcpListToolsFailed`")
|
|
694
|
+
else:
|
|
695
|
+
match += 1
|
|
696
|
+
# validate data type: OpenAIResponseObjectStreamResponseMcpListToolsCompleted
|
|
697
|
+
# Check if we should skip this variant based on discriminator
|
|
698
|
+
_should_skip_discriminator = False
|
|
699
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
700
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
701
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
702
|
+
_disc_value = v.get('type')
|
|
703
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
704
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
705
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseMcpListToolsCompleted':
|
|
706
|
+
_should_skip_discriminator = True
|
|
707
|
+
|
|
708
|
+
if _should_skip_discriminator:
|
|
709
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseMcpListToolsCompleted due to discriminator mismatch")
|
|
710
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseMcpListToolsCompleted):
|
|
711
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
712
|
+
if isinstance(v, dict):
|
|
713
|
+
try:
|
|
714
|
+
constructed = OpenAIResponseObjectStreamResponseMcpListToolsCompleted.model_validate(v)
|
|
715
|
+
match += 1
|
|
716
|
+
# Return the constructed instance to use it instead of raw dict
|
|
717
|
+
return constructed
|
|
718
|
+
except (ValidationError, ValueError) as e:
|
|
719
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseMcpListToolsCompleted` from dict: {str(e)}")
|
|
720
|
+
else:
|
|
721
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseMcpListToolsCompleted`")
|
|
722
|
+
else:
|
|
723
|
+
match += 1
|
|
724
|
+
# validate data type: OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta
|
|
725
|
+
# Check if we should skip this variant based on discriminator
|
|
726
|
+
_should_skip_discriminator = False
|
|
727
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
728
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
729
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
730
|
+
_disc_value = v.get('type')
|
|
731
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
732
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
733
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta':
|
|
734
|
+
_should_skip_discriminator = True
|
|
735
|
+
|
|
736
|
+
if _should_skip_discriminator:
|
|
737
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta due to discriminator mismatch")
|
|
738
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta):
|
|
739
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
740
|
+
if isinstance(v, dict):
|
|
741
|
+
try:
|
|
742
|
+
constructed = OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta.model_validate(v)
|
|
743
|
+
match += 1
|
|
744
|
+
# Return the constructed instance to use it instead of raw dict
|
|
745
|
+
return constructed
|
|
746
|
+
except (ValidationError, ValueError) as e:
|
|
747
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta` from dict: {str(e)}")
|
|
748
|
+
else:
|
|
749
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta`")
|
|
750
|
+
else:
|
|
751
|
+
match += 1
|
|
752
|
+
# validate data type: OpenAIResponseObjectStreamResponseMcpCallArgumentsDone
|
|
753
|
+
# Check if we should skip this variant based on discriminator
|
|
754
|
+
_should_skip_discriminator = False
|
|
755
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
756
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
757
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
758
|
+
_disc_value = v.get('type')
|
|
759
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
760
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
761
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseMcpCallArgumentsDone':
|
|
762
|
+
_should_skip_discriminator = True
|
|
763
|
+
|
|
764
|
+
if _should_skip_discriminator:
|
|
765
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseMcpCallArgumentsDone due to discriminator mismatch")
|
|
766
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseMcpCallArgumentsDone):
|
|
767
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
768
|
+
if isinstance(v, dict):
|
|
769
|
+
try:
|
|
770
|
+
constructed = OpenAIResponseObjectStreamResponseMcpCallArgumentsDone.model_validate(v)
|
|
771
|
+
match += 1
|
|
772
|
+
# Return the constructed instance to use it instead of raw dict
|
|
773
|
+
return constructed
|
|
774
|
+
except (ValidationError, ValueError) as e:
|
|
775
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseMcpCallArgumentsDone` from dict: {str(e)}")
|
|
776
|
+
else:
|
|
777
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseMcpCallArgumentsDone`")
|
|
778
|
+
else:
|
|
779
|
+
match += 1
|
|
780
|
+
# validate data type: OpenAIResponseObjectStreamResponseMcpCallInProgress
|
|
781
|
+
# Check if we should skip this variant based on discriminator
|
|
782
|
+
_should_skip_discriminator = False
|
|
783
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
784
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
785
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
786
|
+
_disc_value = v.get('type')
|
|
787
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
788
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
789
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseMcpCallInProgress':
|
|
790
|
+
_should_skip_discriminator = True
|
|
791
|
+
|
|
792
|
+
if _should_skip_discriminator:
|
|
793
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseMcpCallInProgress due to discriminator mismatch")
|
|
794
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseMcpCallInProgress):
|
|
795
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
796
|
+
if isinstance(v, dict):
|
|
797
|
+
try:
|
|
798
|
+
constructed = OpenAIResponseObjectStreamResponseMcpCallInProgress.model_validate(v)
|
|
799
|
+
match += 1
|
|
800
|
+
# Return the constructed instance to use it instead of raw dict
|
|
801
|
+
return constructed
|
|
802
|
+
except (ValidationError, ValueError) as e:
|
|
803
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseMcpCallInProgress` from dict: {str(e)}")
|
|
804
|
+
else:
|
|
805
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseMcpCallInProgress`")
|
|
806
|
+
else:
|
|
807
|
+
match += 1
|
|
808
|
+
# validate data type: OpenAIResponseObjectStreamResponseMcpCallFailed
|
|
809
|
+
# Check if we should skip this variant based on discriminator
|
|
810
|
+
_should_skip_discriminator = False
|
|
811
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
812
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
813
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
814
|
+
_disc_value = v.get('type')
|
|
815
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
816
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
817
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseMcpCallFailed':
|
|
818
|
+
_should_skip_discriminator = True
|
|
819
|
+
|
|
820
|
+
if _should_skip_discriminator:
|
|
821
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseMcpCallFailed due to discriminator mismatch")
|
|
822
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseMcpCallFailed):
|
|
823
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
824
|
+
if isinstance(v, dict):
|
|
825
|
+
try:
|
|
826
|
+
constructed = OpenAIResponseObjectStreamResponseMcpCallFailed.model_validate(v)
|
|
827
|
+
match += 1
|
|
828
|
+
# Return the constructed instance to use it instead of raw dict
|
|
829
|
+
return constructed
|
|
830
|
+
except (ValidationError, ValueError) as e:
|
|
831
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseMcpCallFailed` from dict: {str(e)}")
|
|
832
|
+
else:
|
|
833
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseMcpCallFailed`")
|
|
834
|
+
else:
|
|
835
|
+
match += 1
|
|
836
|
+
# validate data type: OpenAIResponseObjectStreamResponseMcpCallCompleted
|
|
837
|
+
# Check if we should skip this variant based on discriminator
|
|
838
|
+
_should_skip_discriminator = False
|
|
839
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
840
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
841
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
842
|
+
_disc_value = v.get('type')
|
|
843
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
844
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
845
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseMcpCallCompleted':
|
|
846
|
+
_should_skip_discriminator = True
|
|
847
|
+
|
|
848
|
+
if _should_skip_discriminator:
|
|
849
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseMcpCallCompleted due to discriminator mismatch")
|
|
850
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseMcpCallCompleted):
|
|
851
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
852
|
+
if isinstance(v, dict):
|
|
853
|
+
try:
|
|
854
|
+
constructed = OpenAIResponseObjectStreamResponseMcpCallCompleted.model_validate(v)
|
|
855
|
+
match += 1
|
|
856
|
+
# Return the constructed instance to use it instead of raw dict
|
|
857
|
+
return constructed
|
|
858
|
+
except (ValidationError, ValueError) as e:
|
|
859
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseMcpCallCompleted` from dict: {str(e)}")
|
|
860
|
+
else:
|
|
861
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseMcpCallCompleted`")
|
|
862
|
+
else:
|
|
863
|
+
match += 1
|
|
864
|
+
# validate data type: OpenAIResponseObjectStreamResponseContentPartAdded
|
|
865
|
+
# Check if we should skip this variant based on discriminator
|
|
866
|
+
_should_skip_discriminator = False
|
|
867
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
868
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
869
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
870
|
+
_disc_value = v.get('type')
|
|
871
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
872
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
873
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseContentPartAdded':
|
|
874
|
+
_should_skip_discriminator = True
|
|
875
|
+
|
|
876
|
+
if _should_skip_discriminator:
|
|
877
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseContentPartAdded due to discriminator mismatch")
|
|
878
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseContentPartAdded):
|
|
879
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
880
|
+
if isinstance(v, dict):
|
|
881
|
+
try:
|
|
882
|
+
constructed = OpenAIResponseObjectStreamResponseContentPartAdded.model_validate(v)
|
|
883
|
+
match += 1
|
|
884
|
+
# Return the constructed instance to use it instead of raw dict
|
|
885
|
+
return constructed
|
|
886
|
+
except (ValidationError, ValueError) as e:
|
|
887
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseContentPartAdded` from dict: {str(e)}")
|
|
888
|
+
else:
|
|
889
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseContentPartAdded`")
|
|
890
|
+
else:
|
|
891
|
+
match += 1
|
|
892
|
+
# validate data type: OpenAIResponseObjectStreamResponseContentPartDone
|
|
893
|
+
# Check if we should skip this variant based on discriminator
|
|
894
|
+
_should_skip_discriminator = False
|
|
895
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
896
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
897
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
898
|
+
_disc_value = v.get('type')
|
|
899
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
900
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
901
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseContentPartDone':
|
|
902
|
+
_should_skip_discriminator = True
|
|
903
|
+
|
|
904
|
+
if _should_skip_discriminator:
|
|
905
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseContentPartDone due to discriminator mismatch")
|
|
906
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseContentPartDone):
|
|
907
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
908
|
+
if isinstance(v, dict):
|
|
909
|
+
try:
|
|
910
|
+
constructed = OpenAIResponseObjectStreamResponseContentPartDone.model_validate(v)
|
|
911
|
+
match += 1
|
|
912
|
+
# Return the constructed instance to use it instead of raw dict
|
|
913
|
+
return constructed
|
|
914
|
+
except (ValidationError, ValueError) as e:
|
|
915
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseContentPartDone` from dict: {str(e)}")
|
|
916
|
+
else:
|
|
917
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseContentPartDone`")
|
|
918
|
+
else:
|
|
919
|
+
match += 1
|
|
920
|
+
# validate data type: OpenAIResponseObjectStreamResponseReasoningTextDelta
|
|
921
|
+
# Check if we should skip this variant based on discriminator
|
|
922
|
+
_should_skip_discriminator = False
|
|
923
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
924
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
925
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
926
|
+
_disc_value = v.get('type')
|
|
927
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
928
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
929
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseReasoningTextDelta':
|
|
930
|
+
_should_skip_discriminator = True
|
|
931
|
+
|
|
932
|
+
if _should_skip_discriminator:
|
|
933
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseReasoningTextDelta due to discriminator mismatch")
|
|
934
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseReasoningTextDelta):
|
|
935
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
936
|
+
if isinstance(v, dict):
|
|
937
|
+
try:
|
|
938
|
+
constructed = OpenAIResponseObjectStreamResponseReasoningTextDelta.model_validate(v)
|
|
939
|
+
match += 1
|
|
940
|
+
# Return the constructed instance to use it instead of raw dict
|
|
941
|
+
return constructed
|
|
942
|
+
except (ValidationError, ValueError) as e:
|
|
943
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseReasoningTextDelta` from dict: {str(e)}")
|
|
944
|
+
else:
|
|
945
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseReasoningTextDelta`")
|
|
946
|
+
else:
|
|
947
|
+
match += 1
|
|
948
|
+
# validate data type: OpenAIResponseObjectStreamResponseReasoningTextDone
|
|
949
|
+
# Check if we should skip this variant based on discriminator
|
|
950
|
+
_should_skip_discriminator = False
|
|
951
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
952
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
953
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
954
|
+
_disc_value = v.get('type')
|
|
955
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
956
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
957
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseReasoningTextDone':
|
|
958
|
+
_should_skip_discriminator = True
|
|
959
|
+
|
|
960
|
+
if _should_skip_discriminator:
|
|
961
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseReasoningTextDone due to discriminator mismatch")
|
|
962
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseReasoningTextDone):
|
|
963
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
964
|
+
if isinstance(v, dict):
|
|
965
|
+
try:
|
|
966
|
+
constructed = OpenAIResponseObjectStreamResponseReasoningTextDone.model_validate(v)
|
|
967
|
+
match += 1
|
|
968
|
+
# Return the constructed instance to use it instead of raw dict
|
|
969
|
+
return constructed
|
|
970
|
+
except (ValidationError, ValueError) as e:
|
|
971
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseReasoningTextDone` from dict: {str(e)}")
|
|
972
|
+
else:
|
|
973
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseReasoningTextDone`")
|
|
974
|
+
else:
|
|
975
|
+
match += 1
|
|
976
|
+
# validate data type: OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded
|
|
977
|
+
# Check if we should skip this variant based on discriminator
|
|
978
|
+
_should_skip_discriminator = False
|
|
979
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
980
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
981
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
982
|
+
_disc_value = v.get('type')
|
|
983
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
984
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
985
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded':
|
|
986
|
+
_should_skip_discriminator = True
|
|
987
|
+
|
|
988
|
+
if _should_skip_discriminator:
|
|
989
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded due to discriminator mismatch")
|
|
990
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded):
|
|
991
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
992
|
+
if isinstance(v, dict):
|
|
993
|
+
try:
|
|
994
|
+
constructed = OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded.model_validate(v)
|
|
995
|
+
match += 1
|
|
996
|
+
# Return the constructed instance to use it instead of raw dict
|
|
997
|
+
return constructed
|
|
998
|
+
except (ValidationError, ValueError) as e:
|
|
999
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded` from dict: {str(e)}")
|
|
1000
|
+
else:
|
|
1001
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded`")
|
|
1002
|
+
else:
|
|
1003
|
+
match += 1
|
|
1004
|
+
# validate data type: OpenAIResponseObjectStreamResponseReasoningSummaryPartDone
|
|
1005
|
+
# Check if we should skip this variant based on discriminator
|
|
1006
|
+
_should_skip_discriminator = False
|
|
1007
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
1008
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
1009
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
1010
|
+
_disc_value = v.get('type')
|
|
1011
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
1012
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
1013
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseReasoningSummaryPartDone':
|
|
1014
|
+
_should_skip_discriminator = True
|
|
1015
|
+
|
|
1016
|
+
if _should_skip_discriminator:
|
|
1017
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseReasoningSummaryPartDone due to discriminator mismatch")
|
|
1018
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseReasoningSummaryPartDone):
|
|
1019
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
1020
|
+
if isinstance(v, dict):
|
|
1021
|
+
try:
|
|
1022
|
+
constructed = OpenAIResponseObjectStreamResponseReasoningSummaryPartDone.model_validate(v)
|
|
1023
|
+
match += 1
|
|
1024
|
+
# Return the constructed instance to use it instead of raw dict
|
|
1025
|
+
return constructed
|
|
1026
|
+
except (ValidationError, ValueError) as e:
|
|
1027
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseReasoningSummaryPartDone` from dict: {str(e)}")
|
|
1028
|
+
else:
|
|
1029
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseReasoningSummaryPartDone`")
|
|
1030
|
+
else:
|
|
1031
|
+
match += 1
|
|
1032
|
+
# validate data type: OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta
|
|
1033
|
+
# Check if we should skip this variant based on discriminator
|
|
1034
|
+
_should_skip_discriminator = False
|
|
1035
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
1036
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
1037
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
1038
|
+
_disc_value = v.get('type')
|
|
1039
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
1040
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
1041
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta':
|
|
1042
|
+
_should_skip_discriminator = True
|
|
1043
|
+
|
|
1044
|
+
if _should_skip_discriminator:
|
|
1045
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta due to discriminator mismatch")
|
|
1046
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta):
|
|
1047
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
1048
|
+
if isinstance(v, dict):
|
|
1049
|
+
try:
|
|
1050
|
+
constructed = OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta.model_validate(v)
|
|
1051
|
+
match += 1
|
|
1052
|
+
# Return the constructed instance to use it instead of raw dict
|
|
1053
|
+
return constructed
|
|
1054
|
+
except (ValidationError, ValueError) as e:
|
|
1055
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta` from dict: {str(e)}")
|
|
1056
|
+
else:
|
|
1057
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta`")
|
|
1058
|
+
else:
|
|
1059
|
+
match += 1
|
|
1060
|
+
# validate data type: OpenAIResponseObjectStreamResponseReasoningSummaryTextDone
|
|
1061
|
+
# Check if we should skip this variant based on discriminator
|
|
1062
|
+
_should_skip_discriminator = False
|
|
1063
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
1064
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
1065
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
1066
|
+
_disc_value = v.get('type')
|
|
1067
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
1068
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
1069
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseReasoningSummaryTextDone':
|
|
1070
|
+
_should_skip_discriminator = True
|
|
1071
|
+
|
|
1072
|
+
if _should_skip_discriminator:
|
|
1073
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseReasoningSummaryTextDone due to discriminator mismatch")
|
|
1074
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseReasoningSummaryTextDone):
|
|
1075
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
1076
|
+
if isinstance(v, dict):
|
|
1077
|
+
try:
|
|
1078
|
+
constructed = OpenAIResponseObjectStreamResponseReasoningSummaryTextDone.model_validate(v)
|
|
1079
|
+
match += 1
|
|
1080
|
+
# Return the constructed instance to use it instead of raw dict
|
|
1081
|
+
return constructed
|
|
1082
|
+
except (ValidationError, ValueError) as e:
|
|
1083
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseReasoningSummaryTextDone` from dict: {str(e)}")
|
|
1084
|
+
else:
|
|
1085
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseReasoningSummaryTextDone`")
|
|
1086
|
+
else:
|
|
1087
|
+
match += 1
|
|
1088
|
+
# validate data type: OpenAIResponseObjectStreamResponseRefusalDelta
|
|
1089
|
+
# Check if we should skip this variant based on discriminator
|
|
1090
|
+
_should_skip_discriminator = False
|
|
1091
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
1092
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
1093
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
1094
|
+
_disc_value = v.get('type')
|
|
1095
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
1096
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
1097
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseRefusalDelta':
|
|
1098
|
+
_should_skip_discriminator = True
|
|
1099
|
+
|
|
1100
|
+
if _should_skip_discriminator:
|
|
1101
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseRefusalDelta due to discriminator mismatch")
|
|
1102
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseRefusalDelta):
|
|
1103
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
1104
|
+
if isinstance(v, dict):
|
|
1105
|
+
try:
|
|
1106
|
+
constructed = OpenAIResponseObjectStreamResponseRefusalDelta.model_validate(v)
|
|
1107
|
+
match += 1
|
|
1108
|
+
# Return the constructed instance to use it instead of raw dict
|
|
1109
|
+
return constructed
|
|
1110
|
+
except (ValidationError, ValueError) as e:
|
|
1111
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseRefusalDelta` from dict: {str(e)}")
|
|
1112
|
+
else:
|
|
1113
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseRefusalDelta`")
|
|
1114
|
+
else:
|
|
1115
|
+
match += 1
|
|
1116
|
+
# validate data type: OpenAIResponseObjectStreamResponseRefusalDone
|
|
1117
|
+
# Check if we should skip this variant based on discriminator
|
|
1118
|
+
_should_skip_discriminator = False
|
|
1119
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
1120
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
1121
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
1122
|
+
_disc_value = v.get('type')
|
|
1123
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
1124
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
1125
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseRefusalDone':
|
|
1126
|
+
_should_skip_discriminator = True
|
|
1127
|
+
|
|
1128
|
+
if _should_skip_discriminator:
|
|
1129
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseRefusalDone due to discriminator mismatch")
|
|
1130
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseRefusalDone):
|
|
1131
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
1132
|
+
if isinstance(v, dict):
|
|
1133
|
+
try:
|
|
1134
|
+
constructed = OpenAIResponseObjectStreamResponseRefusalDone.model_validate(v)
|
|
1135
|
+
match += 1
|
|
1136
|
+
# Return the constructed instance to use it instead of raw dict
|
|
1137
|
+
return constructed
|
|
1138
|
+
except (ValidationError, ValueError) as e:
|
|
1139
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseRefusalDone` from dict: {str(e)}")
|
|
1140
|
+
else:
|
|
1141
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseRefusalDone`")
|
|
1142
|
+
else:
|
|
1143
|
+
match += 1
|
|
1144
|
+
# validate data type: OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded
|
|
1145
|
+
# Check if we should skip this variant based on discriminator
|
|
1146
|
+
_should_skip_discriminator = False
|
|
1147
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
1148
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
1149
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
1150
|
+
_disc_value = v.get('type')
|
|
1151
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
1152
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
1153
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded':
|
|
1154
|
+
_should_skip_discriminator = True
|
|
1155
|
+
|
|
1156
|
+
if _should_skip_discriminator:
|
|
1157
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded due to discriminator mismatch")
|
|
1158
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded):
|
|
1159
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
1160
|
+
if isinstance(v, dict):
|
|
1161
|
+
try:
|
|
1162
|
+
constructed = OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded.model_validate(v)
|
|
1163
|
+
match += 1
|
|
1164
|
+
# Return the constructed instance to use it instead of raw dict
|
|
1165
|
+
return constructed
|
|
1166
|
+
except (ValidationError, ValueError) as e:
|
|
1167
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded` from dict: {str(e)}")
|
|
1168
|
+
else:
|
|
1169
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded`")
|
|
1170
|
+
else:
|
|
1171
|
+
match += 1
|
|
1172
|
+
# validate data type: OpenAIResponseObjectStreamResponseFileSearchCallInProgress
|
|
1173
|
+
# Check if we should skip this variant based on discriminator
|
|
1174
|
+
_should_skip_discriminator = False
|
|
1175
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
1176
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
1177
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
1178
|
+
_disc_value = v.get('type')
|
|
1179
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
1180
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
1181
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseFileSearchCallInProgress':
|
|
1182
|
+
_should_skip_discriminator = True
|
|
1183
|
+
|
|
1184
|
+
if _should_skip_discriminator:
|
|
1185
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseFileSearchCallInProgress due to discriminator mismatch")
|
|
1186
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseFileSearchCallInProgress):
|
|
1187
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
1188
|
+
if isinstance(v, dict):
|
|
1189
|
+
try:
|
|
1190
|
+
constructed = OpenAIResponseObjectStreamResponseFileSearchCallInProgress.model_validate(v)
|
|
1191
|
+
match += 1
|
|
1192
|
+
# Return the constructed instance to use it instead of raw dict
|
|
1193
|
+
return constructed
|
|
1194
|
+
except (ValidationError, ValueError) as e:
|
|
1195
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseFileSearchCallInProgress` from dict: {str(e)}")
|
|
1196
|
+
else:
|
|
1197
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseFileSearchCallInProgress`")
|
|
1198
|
+
else:
|
|
1199
|
+
match += 1
|
|
1200
|
+
# validate data type: OpenAIResponseObjectStreamResponseFileSearchCallSearching
|
|
1201
|
+
# Check if we should skip this variant based on discriminator
|
|
1202
|
+
_should_skip_discriminator = False
|
|
1203
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
1204
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
1205
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
1206
|
+
_disc_value = v.get('type')
|
|
1207
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
1208
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
1209
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseFileSearchCallSearching':
|
|
1210
|
+
_should_skip_discriminator = True
|
|
1211
|
+
|
|
1212
|
+
if _should_skip_discriminator:
|
|
1213
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseFileSearchCallSearching due to discriminator mismatch")
|
|
1214
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseFileSearchCallSearching):
|
|
1215
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
1216
|
+
if isinstance(v, dict):
|
|
1217
|
+
try:
|
|
1218
|
+
constructed = OpenAIResponseObjectStreamResponseFileSearchCallSearching.model_validate(v)
|
|
1219
|
+
match += 1
|
|
1220
|
+
# Return the constructed instance to use it instead of raw dict
|
|
1221
|
+
return constructed
|
|
1222
|
+
except (ValidationError, ValueError) as e:
|
|
1223
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseFileSearchCallSearching` from dict: {str(e)}")
|
|
1224
|
+
else:
|
|
1225
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseFileSearchCallSearching`")
|
|
1226
|
+
else:
|
|
1227
|
+
match += 1
|
|
1228
|
+
# validate data type: OpenAIResponseObjectStreamResponseFileSearchCallCompleted
|
|
1229
|
+
# Check if we should skip this variant based on discriminator
|
|
1230
|
+
_should_skip_discriminator = False
|
|
1231
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
1232
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
1233
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
1234
|
+
_disc_value = v.get('type')
|
|
1235
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
1236
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
1237
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseFileSearchCallCompleted':
|
|
1238
|
+
_should_skip_discriminator = True
|
|
1239
|
+
|
|
1240
|
+
if _should_skip_discriminator:
|
|
1241
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseFileSearchCallCompleted due to discriminator mismatch")
|
|
1242
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseFileSearchCallCompleted):
|
|
1243
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
1244
|
+
if isinstance(v, dict):
|
|
1245
|
+
try:
|
|
1246
|
+
constructed = OpenAIResponseObjectStreamResponseFileSearchCallCompleted.model_validate(v)
|
|
1247
|
+
match += 1
|
|
1248
|
+
# Return the constructed instance to use it instead of raw dict
|
|
1249
|
+
return constructed
|
|
1250
|
+
except (ValidationError, ValueError) as e:
|
|
1251
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseFileSearchCallCompleted` from dict: {str(e)}")
|
|
1252
|
+
else:
|
|
1253
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseFileSearchCallCompleted`")
|
|
1254
|
+
else:
|
|
1255
|
+
match += 1
|
|
1256
|
+
# validate data type: OpenAIResponseObjectStreamResponseIncomplete
|
|
1257
|
+
# Check if we should skip this variant based on discriminator
|
|
1258
|
+
_should_skip_discriminator = False
|
|
1259
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
1260
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
1261
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
1262
|
+
_disc_value = v.get('type')
|
|
1263
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
1264
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
1265
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseIncomplete':
|
|
1266
|
+
_should_skip_discriminator = True
|
|
1267
|
+
|
|
1268
|
+
if _should_skip_discriminator:
|
|
1269
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseIncomplete due to discriminator mismatch")
|
|
1270
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseIncomplete):
|
|
1271
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
1272
|
+
if isinstance(v, dict):
|
|
1273
|
+
try:
|
|
1274
|
+
constructed = OpenAIResponseObjectStreamResponseIncomplete.model_validate(v)
|
|
1275
|
+
match += 1
|
|
1276
|
+
# Return the constructed instance to use it instead of raw dict
|
|
1277
|
+
return constructed
|
|
1278
|
+
except (ValidationError, ValueError) as e:
|
|
1279
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseIncomplete` from dict: {str(e)}")
|
|
1280
|
+
else:
|
|
1281
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseIncomplete`")
|
|
1282
|
+
else:
|
|
1283
|
+
match += 1
|
|
1284
|
+
# validate data type: OpenAIResponseObjectStreamResponseFailed
|
|
1285
|
+
# Check if we should skip this variant based on discriminator
|
|
1286
|
+
_should_skip_discriminator = False
|
|
1287
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
1288
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
1289
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
1290
|
+
_disc_value = v.get('type')
|
|
1291
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
1292
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
1293
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseFailed':
|
|
1294
|
+
_should_skip_discriminator = True
|
|
1295
|
+
|
|
1296
|
+
if _should_skip_discriminator:
|
|
1297
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseFailed due to discriminator mismatch")
|
|
1298
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseFailed):
|
|
1299
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
1300
|
+
if isinstance(v, dict):
|
|
1301
|
+
try:
|
|
1302
|
+
constructed = OpenAIResponseObjectStreamResponseFailed.model_validate(v)
|
|
1303
|
+
match += 1
|
|
1304
|
+
# Return the constructed instance to use it instead of raw dict
|
|
1305
|
+
return constructed
|
|
1306
|
+
except (ValidationError, ValueError) as e:
|
|
1307
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseFailed` from dict: {str(e)}")
|
|
1308
|
+
else:
|
|
1309
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseFailed`")
|
|
1310
|
+
else:
|
|
1311
|
+
match += 1
|
|
1312
|
+
# validate data type: OpenAIResponseObjectStreamResponseCompleted
|
|
1313
|
+
# Check if we should skip this variant based on discriminator
|
|
1314
|
+
_should_skip_discriminator = False
|
|
1315
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
1316
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
1317
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
1318
|
+
_disc_value = v.get('type')
|
|
1319
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
1320
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
1321
|
+
if _expected_class != 'OpenAIResponseObjectStreamResponseCompleted':
|
|
1322
|
+
_should_skip_discriminator = True
|
|
1323
|
+
|
|
1324
|
+
if _should_skip_discriminator:
|
|
1325
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamResponseCompleted due to discriminator mismatch")
|
|
1326
|
+
elif not isinstance(v, OpenAIResponseObjectStreamResponseCompleted):
|
|
1327
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
1328
|
+
if isinstance(v, dict):
|
|
1329
|
+
try:
|
|
1330
|
+
constructed = OpenAIResponseObjectStreamResponseCompleted.model_validate(v)
|
|
1331
|
+
match += 1
|
|
1332
|
+
# Return the constructed instance to use it instead of raw dict
|
|
1333
|
+
return constructed
|
|
1334
|
+
except (ValidationError, ValueError) as e:
|
|
1335
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamResponseCompleted` from dict: {str(e)}")
|
|
1336
|
+
else:
|
|
1337
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamResponseCompleted`")
|
|
1338
|
+
else:
|
|
1339
|
+
match += 1
|
|
1340
|
+
# validate data type: OpenAIResponseObjectStreamError
|
|
1341
|
+
# Check if we should skip this variant based on discriminator
|
|
1342
|
+
_should_skip_discriminator = False
|
|
1343
|
+
if isinstance(v, dict) and hasattr(cls, 'discriminator_value_class_map'):
|
|
1344
|
+
_disc_value = v.get(cls.discriminator_property_name)
|
|
1345
|
+
if _disc_value is None and cls.discriminator_property_name != 'type':
|
|
1346
|
+
_disc_value = v.get('type')
|
|
1347
|
+
if _disc_value and _disc_value in cls.discriminator_value_class_map:
|
|
1348
|
+
_expected_class = cls.discriminator_value_class_map[_disc_value]
|
|
1349
|
+
if _expected_class != 'OpenAIResponseObjectStreamError':
|
|
1350
|
+
_should_skip_discriminator = True
|
|
1351
|
+
|
|
1352
|
+
if _should_skip_discriminator:
|
|
1353
|
+
error_messages.append(f"Skipping OpenAIResponseObjectStreamError due to discriminator mismatch")
|
|
1354
|
+
elif not isinstance(v, OpenAIResponseObjectStreamError):
|
|
1355
|
+
# Try to construct from dict if it's a dict - this applies default values
|
|
1356
|
+
if isinstance(v, dict):
|
|
1357
|
+
try:
|
|
1358
|
+
constructed = OpenAIResponseObjectStreamError.model_validate(v)
|
|
1359
|
+
match += 1
|
|
1360
|
+
# Return the constructed instance to use it instead of raw dict
|
|
1361
|
+
return constructed
|
|
1362
|
+
except (ValidationError, ValueError) as e:
|
|
1363
|
+
error_messages.append(f"Error! Cannot construct `OpenAIResponseObjectStreamError` from dict: {str(e)}")
|
|
1364
|
+
else:
|
|
1365
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `OpenAIResponseObjectStreamError`")
|
|
1366
|
+
else:
|
|
1367
|
+
match += 1
|
|
1368
|
+
if match > 1:
|
|
1369
|
+
# Special case: empty lists can match multiple List[...] schemas in oneOf
|
|
1370
|
+
# This is common in streaming where content starts empty
|
|
1371
|
+
# In this case, just accept the first match (they're functionally equivalent for empty lists)
|
|
1372
|
+
if isinstance(v, list) and len(v) == 0:
|
|
1373
|
+
return v
|
|
1374
|
+
# more than 1 match
|
|
1375
|
+
raise ValueError("Multiple matches found when setting `actual_instance` in OpenAIResponseObjectStream with oneOf schemas: OpenAIResponseObjectStreamError, OpenAIResponseObjectStreamResponseCompleted, OpenAIResponseObjectStreamResponseContentPartAdded, OpenAIResponseObjectStreamResponseContentPartDone, OpenAIResponseObjectStreamResponseCreated, OpenAIResponseObjectStreamResponseFailed, OpenAIResponseObjectStreamResponseFileSearchCallCompleted, OpenAIResponseObjectStreamResponseFileSearchCallInProgress, OpenAIResponseObjectStreamResponseFileSearchCallSearching, OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta, OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone, OpenAIResponseObjectStreamResponseInProgress, OpenAIResponseObjectStreamResponseIncomplete, OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta, OpenAIResponseObjectStreamResponseMcpCallArgumentsDone, OpenAIResponseObjectStreamResponseMcpCallCompleted, OpenAIResponseObjectStreamResponseMcpCallFailed, OpenAIResponseObjectStreamResponseMcpCallInProgress, OpenAIResponseObjectStreamResponseMcpListToolsCompleted, OpenAIResponseObjectStreamResponseMcpListToolsFailed, OpenAIResponseObjectStreamResponseMcpListToolsInProgress, OpenAIResponseObjectStreamResponseOutputItemAdded, OpenAIResponseObjectStreamResponseOutputItemDone, OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded, OpenAIResponseObjectStreamResponseOutputTextDelta, OpenAIResponseObjectStreamResponseOutputTextDone, OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded, OpenAIResponseObjectStreamResponseReasoningSummaryPartDone, OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta, OpenAIResponseObjectStreamResponseReasoningSummaryTextDone, OpenAIResponseObjectStreamResponseReasoningTextDelta, OpenAIResponseObjectStreamResponseReasoningTextDone, OpenAIResponseObjectStreamResponseRefusalDelta, OpenAIResponseObjectStreamResponseRefusalDone, OpenAIResponseObjectStreamResponseWebSearchCallCompleted, OpenAIResponseObjectStreamResponseWebSearchCallInProgress, OpenAIResponseObjectStreamResponseWebSearchCallSearching. Details: " + ", ".join(error_messages))
|
|
1376
|
+
elif match == 0:
|
|
1377
|
+
# no match
|
|
1378
|
+
raise ValueError("No match found when setting `actual_instance` in OpenAIResponseObjectStream with oneOf schemas: OpenAIResponseObjectStreamError, OpenAIResponseObjectStreamResponseCompleted, OpenAIResponseObjectStreamResponseContentPartAdded, OpenAIResponseObjectStreamResponseContentPartDone, OpenAIResponseObjectStreamResponseCreated, OpenAIResponseObjectStreamResponseFailed, OpenAIResponseObjectStreamResponseFileSearchCallCompleted, OpenAIResponseObjectStreamResponseFileSearchCallInProgress, OpenAIResponseObjectStreamResponseFileSearchCallSearching, OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta, OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone, OpenAIResponseObjectStreamResponseInProgress, OpenAIResponseObjectStreamResponseIncomplete, OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta, OpenAIResponseObjectStreamResponseMcpCallArgumentsDone, OpenAIResponseObjectStreamResponseMcpCallCompleted, OpenAIResponseObjectStreamResponseMcpCallFailed, OpenAIResponseObjectStreamResponseMcpCallInProgress, OpenAIResponseObjectStreamResponseMcpListToolsCompleted, OpenAIResponseObjectStreamResponseMcpListToolsFailed, OpenAIResponseObjectStreamResponseMcpListToolsInProgress, OpenAIResponseObjectStreamResponseOutputItemAdded, OpenAIResponseObjectStreamResponseOutputItemDone, OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded, OpenAIResponseObjectStreamResponseOutputTextDelta, OpenAIResponseObjectStreamResponseOutputTextDone, OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded, OpenAIResponseObjectStreamResponseReasoningSummaryPartDone, OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta, OpenAIResponseObjectStreamResponseReasoningSummaryTextDone, OpenAIResponseObjectStreamResponseReasoningTextDelta, OpenAIResponseObjectStreamResponseReasoningTextDone, OpenAIResponseObjectStreamResponseRefusalDelta, OpenAIResponseObjectStreamResponseRefusalDone, OpenAIResponseObjectStreamResponseWebSearchCallCompleted, OpenAIResponseObjectStreamResponseWebSearchCallInProgress, OpenAIResponseObjectStreamResponseWebSearchCallSearching. Details: " + ", ".join(error_messages))
|
|
1379
|
+
else:
|
|
1380
|
+
return v
|
|
1381
|
+
|
|
1382
|
+
@classmethod
|
|
1383
|
+
def from_dict(cls, obj: str | dict[str, Any]) -> Self:
|
|
1384
|
+
# Handle primitives and lists directly - don't double-serialize them
|
|
1385
|
+
if isinstance(obj, (str, int, float, bool, type(None), list)):
|
|
1386
|
+
# For non-dict content, bypass from_json and use actual_instance_must_validate_oneof
|
|
1387
|
+
instance = cls.model_construct()
|
|
1388
|
+
instance.actual_instance = cls.actual_instance_must_validate_oneof(obj)
|
|
1389
|
+
return instance
|
|
1390
|
+
return cls.from_json(json.dumps(obj))
|
|
1391
|
+
|
|
1392
|
+
@classmethod
|
|
1393
|
+
def from_json(cls, json_str: str) -> Self:
|
|
1394
|
+
"""Returns the object represented by the json string"""
|
|
1395
|
+
instance = cls.model_construct()
|
|
1396
|
+
error_messages = []
|
|
1397
|
+
match = 0
|
|
1398
|
+
|
|
1399
|
+
# use oneOf discriminator to lookup the data type
|
|
1400
|
+
_data_type = json.loads(json_str).get("type")
|
|
1401
|
+
if not _data_type:
|
|
1402
|
+
raise ValueError("Failed to lookup data type from the field `type` in the input.")
|
|
1403
|
+
|
|
1404
|
+
# check if data type is `OpenAIResponseObjectStreamError`
|
|
1405
|
+
if _data_type == "error":
|
|
1406
|
+
instance.actual_instance = OpenAIResponseObjectStreamError.from_json(json_str)
|
|
1407
|
+
return instance
|
|
1408
|
+
|
|
1409
|
+
# check if data type is `OpenAIResponseObjectStreamResponseCompleted`
|
|
1410
|
+
if _data_type == "response.completed":
|
|
1411
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseCompleted.from_json(json_str)
|
|
1412
|
+
return instance
|
|
1413
|
+
|
|
1414
|
+
# check if data type is `OpenAIResponseObjectStreamResponseContentPartAdded`
|
|
1415
|
+
if _data_type == "response.content_part.added":
|
|
1416
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseContentPartAdded.from_json(json_str)
|
|
1417
|
+
return instance
|
|
1418
|
+
|
|
1419
|
+
# check if data type is `OpenAIResponseObjectStreamResponseContentPartDone`
|
|
1420
|
+
if _data_type == "response.content_part.done":
|
|
1421
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseContentPartDone.from_json(json_str)
|
|
1422
|
+
return instance
|
|
1423
|
+
|
|
1424
|
+
# check if data type is `OpenAIResponseObjectStreamResponseCreated`
|
|
1425
|
+
if _data_type == "response.created":
|
|
1426
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseCreated.from_json(json_str)
|
|
1427
|
+
return instance
|
|
1428
|
+
|
|
1429
|
+
# check if data type is `OpenAIResponseObjectStreamResponseFailed`
|
|
1430
|
+
if _data_type == "response.failed":
|
|
1431
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseFailed.from_json(json_str)
|
|
1432
|
+
return instance
|
|
1433
|
+
|
|
1434
|
+
# check if data type is `OpenAIResponseObjectStreamResponseFileSearchCallCompleted`
|
|
1435
|
+
if _data_type == "response.file_search_call.completed":
|
|
1436
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseFileSearchCallCompleted.from_json(json_str)
|
|
1437
|
+
return instance
|
|
1438
|
+
|
|
1439
|
+
# check if data type is `OpenAIResponseObjectStreamResponseFileSearchCallInProgress`
|
|
1440
|
+
if _data_type == "response.file_search_call.in_progress":
|
|
1441
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseFileSearchCallInProgress.from_json(json_str)
|
|
1442
|
+
return instance
|
|
1443
|
+
|
|
1444
|
+
# check if data type is `OpenAIResponseObjectStreamResponseFileSearchCallSearching`
|
|
1445
|
+
if _data_type == "response.file_search_call.searching":
|
|
1446
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseFileSearchCallSearching.from_json(json_str)
|
|
1447
|
+
return instance
|
|
1448
|
+
|
|
1449
|
+
# check if data type is `OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta`
|
|
1450
|
+
if _data_type == "response.function_call_arguments.delta":
|
|
1451
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta.from_json(json_str)
|
|
1452
|
+
return instance
|
|
1453
|
+
|
|
1454
|
+
# check if data type is `OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone`
|
|
1455
|
+
if _data_type == "response.function_call_arguments.done":
|
|
1456
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone.from_json(json_str)
|
|
1457
|
+
return instance
|
|
1458
|
+
|
|
1459
|
+
# check if data type is `OpenAIResponseObjectStreamResponseInProgress`
|
|
1460
|
+
if _data_type == "response.in_progress":
|
|
1461
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseInProgress.from_json(json_str)
|
|
1462
|
+
return instance
|
|
1463
|
+
|
|
1464
|
+
# check if data type is `OpenAIResponseObjectStreamResponseIncomplete`
|
|
1465
|
+
if _data_type == "response.incomplete":
|
|
1466
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseIncomplete.from_json(json_str)
|
|
1467
|
+
return instance
|
|
1468
|
+
|
|
1469
|
+
# check if data type is `OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta`
|
|
1470
|
+
if _data_type == "response.mcp_call.arguments.delta":
|
|
1471
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta.from_json(json_str)
|
|
1472
|
+
return instance
|
|
1473
|
+
|
|
1474
|
+
# check if data type is `OpenAIResponseObjectStreamResponseMcpCallArgumentsDone`
|
|
1475
|
+
if _data_type == "response.mcp_call.arguments.done":
|
|
1476
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseMcpCallArgumentsDone.from_json(json_str)
|
|
1477
|
+
return instance
|
|
1478
|
+
|
|
1479
|
+
# check if data type is `OpenAIResponseObjectStreamResponseMcpCallCompleted`
|
|
1480
|
+
if _data_type == "response.mcp_call.completed":
|
|
1481
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseMcpCallCompleted.from_json(json_str)
|
|
1482
|
+
return instance
|
|
1483
|
+
|
|
1484
|
+
# check if data type is `OpenAIResponseObjectStreamResponseMcpCallFailed`
|
|
1485
|
+
if _data_type == "response.mcp_call.failed":
|
|
1486
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseMcpCallFailed.from_json(json_str)
|
|
1487
|
+
return instance
|
|
1488
|
+
|
|
1489
|
+
# check if data type is `OpenAIResponseObjectStreamResponseMcpCallInProgress`
|
|
1490
|
+
if _data_type == "response.mcp_call.in_progress":
|
|
1491
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseMcpCallInProgress.from_json(json_str)
|
|
1492
|
+
return instance
|
|
1493
|
+
|
|
1494
|
+
# check if data type is `OpenAIResponseObjectStreamResponseMcpListToolsCompleted`
|
|
1495
|
+
if _data_type == "response.mcp_list_tools.completed":
|
|
1496
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseMcpListToolsCompleted.from_json(json_str)
|
|
1497
|
+
return instance
|
|
1498
|
+
|
|
1499
|
+
# check if data type is `OpenAIResponseObjectStreamResponseMcpListToolsFailed`
|
|
1500
|
+
if _data_type == "response.mcp_list_tools.failed":
|
|
1501
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseMcpListToolsFailed.from_json(json_str)
|
|
1502
|
+
return instance
|
|
1503
|
+
|
|
1504
|
+
# check if data type is `OpenAIResponseObjectStreamResponseMcpListToolsInProgress`
|
|
1505
|
+
if _data_type == "response.mcp_list_tools.in_progress":
|
|
1506
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseMcpListToolsInProgress.from_json(json_str)
|
|
1507
|
+
return instance
|
|
1508
|
+
|
|
1509
|
+
# check if data type is `OpenAIResponseObjectStreamResponseOutputItemAdded`
|
|
1510
|
+
if _data_type == "response.output_item.added":
|
|
1511
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseOutputItemAdded.from_json(json_str)
|
|
1512
|
+
return instance
|
|
1513
|
+
|
|
1514
|
+
# check if data type is `OpenAIResponseObjectStreamResponseOutputItemDone`
|
|
1515
|
+
if _data_type == "response.output_item.done":
|
|
1516
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseOutputItemDone.from_json(json_str)
|
|
1517
|
+
return instance
|
|
1518
|
+
|
|
1519
|
+
# check if data type is `OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded`
|
|
1520
|
+
if _data_type == "response.output_text.annotation.added":
|
|
1521
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded.from_json(json_str)
|
|
1522
|
+
return instance
|
|
1523
|
+
|
|
1524
|
+
# check if data type is `OpenAIResponseObjectStreamResponseOutputTextDelta`
|
|
1525
|
+
if _data_type == "response.output_text.delta":
|
|
1526
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseOutputTextDelta.from_json(json_str)
|
|
1527
|
+
return instance
|
|
1528
|
+
|
|
1529
|
+
# check if data type is `OpenAIResponseObjectStreamResponseOutputTextDone`
|
|
1530
|
+
if _data_type == "response.output_text.done":
|
|
1531
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseOutputTextDone.from_json(json_str)
|
|
1532
|
+
return instance
|
|
1533
|
+
|
|
1534
|
+
# check if data type is `OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded`
|
|
1535
|
+
if _data_type == "response.reasoning_summary_part.added":
|
|
1536
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded.from_json(json_str)
|
|
1537
|
+
return instance
|
|
1538
|
+
|
|
1539
|
+
# check if data type is `OpenAIResponseObjectStreamResponseReasoningSummaryPartDone`
|
|
1540
|
+
if _data_type == "response.reasoning_summary_part.done":
|
|
1541
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseReasoningSummaryPartDone.from_json(json_str)
|
|
1542
|
+
return instance
|
|
1543
|
+
|
|
1544
|
+
# check if data type is `OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta`
|
|
1545
|
+
if _data_type == "response.reasoning_summary_text.delta":
|
|
1546
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta.from_json(json_str)
|
|
1547
|
+
return instance
|
|
1548
|
+
|
|
1549
|
+
# check if data type is `OpenAIResponseObjectStreamResponseReasoningSummaryTextDone`
|
|
1550
|
+
if _data_type == "response.reasoning_summary_text.done":
|
|
1551
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseReasoningSummaryTextDone.from_json(json_str)
|
|
1552
|
+
return instance
|
|
1553
|
+
|
|
1554
|
+
# check if data type is `OpenAIResponseObjectStreamResponseReasoningTextDelta`
|
|
1555
|
+
if _data_type == "response.reasoning_text.delta":
|
|
1556
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseReasoningTextDelta.from_json(json_str)
|
|
1557
|
+
return instance
|
|
1558
|
+
|
|
1559
|
+
# check if data type is `OpenAIResponseObjectStreamResponseReasoningTextDone`
|
|
1560
|
+
if _data_type == "response.reasoning_text.done":
|
|
1561
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseReasoningTextDone.from_json(json_str)
|
|
1562
|
+
return instance
|
|
1563
|
+
|
|
1564
|
+
# check if data type is `OpenAIResponseObjectStreamResponseRefusalDelta`
|
|
1565
|
+
if _data_type == "response.refusal.delta":
|
|
1566
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseRefusalDelta.from_json(json_str)
|
|
1567
|
+
return instance
|
|
1568
|
+
|
|
1569
|
+
# check if data type is `OpenAIResponseObjectStreamResponseRefusalDone`
|
|
1570
|
+
if _data_type == "response.refusal.done":
|
|
1571
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseRefusalDone.from_json(json_str)
|
|
1572
|
+
return instance
|
|
1573
|
+
|
|
1574
|
+
# check if data type is `OpenAIResponseObjectStreamResponseWebSearchCallCompleted`
|
|
1575
|
+
if _data_type == "response.web_search_call.completed":
|
|
1576
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseWebSearchCallCompleted.from_json(json_str)
|
|
1577
|
+
return instance
|
|
1578
|
+
|
|
1579
|
+
# check if data type is `OpenAIResponseObjectStreamResponseWebSearchCallInProgress`
|
|
1580
|
+
if _data_type == "response.web_search_call.in_progress":
|
|
1581
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseWebSearchCallInProgress.from_json(json_str)
|
|
1582
|
+
return instance
|
|
1583
|
+
|
|
1584
|
+
# check if data type is `OpenAIResponseObjectStreamResponseWebSearchCallSearching`
|
|
1585
|
+
if _data_type == "response.web_search_call.searching":
|
|
1586
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseWebSearchCallSearching.from_json(json_str)
|
|
1587
|
+
return instance
|
|
1588
|
+
|
|
1589
|
+
# check if data type is `ERRORUNKNOWN`
|
|
1590
|
+
if _data_type == "":
|
|
1591
|
+
instance.actual_instance = ERRORUNKNOWN.from_json(json_str)
|
|
1592
|
+
return instance
|
|
1593
|
+
|
|
1594
|
+
# deserialize data into OpenAIResponseObjectStreamResponseCreated
|
|
1595
|
+
try:
|
|
1596
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseCreated.from_json(json_str)
|
|
1597
|
+
match += 1
|
|
1598
|
+
except (ValidationError, ValueError) as e:
|
|
1599
|
+
error_messages.append(str(e))
|
|
1600
|
+
# deserialize data into OpenAIResponseObjectStreamResponseInProgress
|
|
1601
|
+
try:
|
|
1602
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseInProgress.from_json(json_str)
|
|
1603
|
+
match += 1
|
|
1604
|
+
except (ValidationError, ValueError) as e:
|
|
1605
|
+
error_messages.append(str(e))
|
|
1606
|
+
# deserialize data into OpenAIResponseObjectStreamResponseOutputItemAdded
|
|
1607
|
+
try:
|
|
1608
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseOutputItemAdded.from_json(json_str)
|
|
1609
|
+
match += 1
|
|
1610
|
+
except (ValidationError, ValueError) as e:
|
|
1611
|
+
error_messages.append(str(e))
|
|
1612
|
+
# deserialize data into OpenAIResponseObjectStreamResponseOutputItemDone
|
|
1613
|
+
try:
|
|
1614
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseOutputItemDone.from_json(json_str)
|
|
1615
|
+
match += 1
|
|
1616
|
+
except (ValidationError, ValueError) as e:
|
|
1617
|
+
error_messages.append(str(e))
|
|
1618
|
+
# deserialize data into OpenAIResponseObjectStreamResponseOutputTextDelta
|
|
1619
|
+
try:
|
|
1620
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseOutputTextDelta.from_json(json_str)
|
|
1621
|
+
match += 1
|
|
1622
|
+
except (ValidationError, ValueError) as e:
|
|
1623
|
+
error_messages.append(str(e))
|
|
1624
|
+
# deserialize data into OpenAIResponseObjectStreamResponseOutputTextDone
|
|
1625
|
+
try:
|
|
1626
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseOutputTextDone.from_json(json_str)
|
|
1627
|
+
match += 1
|
|
1628
|
+
except (ValidationError, ValueError) as e:
|
|
1629
|
+
error_messages.append(str(e))
|
|
1630
|
+
# deserialize data into OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta
|
|
1631
|
+
try:
|
|
1632
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta.from_json(json_str)
|
|
1633
|
+
match += 1
|
|
1634
|
+
except (ValidationError, ValueError) as e:
|
|
1635
|
+
error_messages.append(str(e))
|
|
1636
|
+
# deserialize data into OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone
|
|
1637
|
+
try:
|
|
1638
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone.from_json(json_str)
|
|
1639
|
+
match += 1
|
|
1640
|
+
except (ValidationError, ValueError) as e:
|
|
1641
|
+
error_messages.append(str(e))
|
|
1642
|
+
# deserialize data into OpenAIResponseObjectStreamResponseWebSearchCallInProgress
|
|
1643
|
+
try:
|
|
1644
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseWebSearchCallInProgress.from_json(json_str)
|
|
1645
|
+
match += 1
|
|
1646
|
+
except (ValidationError, ValueError) as e:
|
|
1647
|
+
error_messages.append(str(e))
|
|
1648
|
+
# deserialize data into OpenAIResponseObjectStreamResponseWebSearchCallSearching
|
|
1649
|
+
try:
|
|
1650
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseWebSearchCallSearching.from_json(json_str)
|
|
1651
|
+
match += 1
|
|
1652
|
+
except (ValidationError, ValueError) as e:
|
|
1653
|
+
error_messages.append(str(e))
|
|
1654
|
+
# deserialize data into OpenAIResponseObjectStreamResponseWebSearchCallCompleted
|
|
1655
|
+
try:
|
|
1656
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseWebSearchCallCompleted.from_json(json_str)
|
|
1657
|
+
match += 1
|
|
1658
|
+
except (ValidationError, ValueError) as e:
|
|
1659
|
+
error_messages.append(str(e))
|
|
1660
|
+
# deserialize data into OpenAIResponseObjectStreamResponseMcpListToolsInProgress
|
|
1661
|
+
try:
|
|
1662
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseMcpListToolsInProgress.from_json(json_str)
|
|
1663
|
+
match += 1
|
|
1664
|
+
except (ValidationError, ValueError) as e:
|
|
1665
|
+
error_messages.append(str(e))
|
|
1666
|
+
# deserialize data into OpenAIResponseObjectStreamResponseMcpListToolsFailed
|
|
1667
|
+
try:
|
|
1668
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseMcpListToolsFailed.from_json(json_str)
|
|
1669
|
+
match += 1
|
|
1670
|
+
except (ValidationError, ValueError) as e:
|
|
1671
|
+
error_messages.append(str(e))
|
|
1672
|
+
# deserialize data into OpenAIResponseObjectStreamResponseMcpListToolsCompleted
|
|
1673
|
+
try:
|
|
1674
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseMcpListToolsCompleted.from_json(json_str)
|
|
1675
|
+
match += 1
|
|
1676
|
+
except (ValidationError, ValueError) as e:
|
|
1677
|
+
error_messages.append(str(e))
|
|
1678
|
+
# deserialize data into OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta
|
|
1679
|
+
try:
|
|
1680
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta.from_json(json_str)
|
|
1681
|
+
match += 1
|
|
1682
|
+
except (ValidationError, ValueError) as e:
|
|
1683
|
+
error_messages.append(str(e))
|
|
1684
|
+
# deserialize data into OpenAIResponseObjectStreamResponseMcpCallArgumentsDone
|
|
1685
|
+
try:
|
|
1686
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseMcpCallArgumentsDone.from_json(json_str)
|
|
1687
|
+
match += 1
|
|
1688
|
+
except (ValidationError, ValueError) as e:
|
|
1689
|
+
error_messages.append(str(e))
|
|
1690
|
+
# deserialize data into OpenAIResponseObjectStreamResponseMcpCallInProgress
|
|
1691
|
+
try:
|
|
1692
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseMcpCallInProgress.from_json(json_str)
|
|
1693
|
+
match += 1
|
|
1694
|
+
except (ValidationError, ValueError) as e:
|
|
1695
|
+
error_messages.append(str(e))
|
|
1696
|
+
# deserialize data into OpenAIResponseObjectStreamResponseMcpCallFailed
|
|
1697
|
+
try:
|
|
1698
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseMcpCallFailed.from_json(json_str)
|
|
1699
|
+
match += 1
|
|
1700
|
+
except (ValidationError, ValueError) as e:
|
|
1701
|
+
error_messages.append(str(e))
|
|
1702
|
+
# deserialize data into OpenAIResponseObjectStreamResponseMcpCallCompleted
|
|
1703
|
+
try:
|
|
1704
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseMcpCallCompleted.from_json(json_str)
|
|
1705
|
+
match += 1
|
|
1706
|
+
except (ValidationError, ValueError) as e:
|
|
1707
|
+
error_messages.append(str(e))
|
|
1708
|
+
# deserialize data into OpenAIResponseObjectStreamResponseContentPartAdded
|
|
1709
|
+
try:
|
|
1710
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseContentPartAdded.from_json(json_str)
|
|
1711
|
+
match += 1
|
|
1712
|
+
except (ValidationError, ValueError) as e:
|
|
1713
|
+
error_messages.append(str(e))
|
|
1714
|
+
# deserialize data into OpenAIResponseObjectStreamResponseContentPartDone
|
|
1715
|
+
try:
|
|
1716
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseContentPartDone.from_json(json_str)
|
|
1717
|
+
match += 1
|
|
1718
|
+
except (ValidationError, ValueError) as e:
|
|
1719
|
+
error_messages.append(str(e))
|
|
1720
|
+
# deserialize data into OpenAIResponseObjectStreamResponseReasoningTextDelta
|
|
1721
|
+
try:
|
|
1722
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseReasoningTextDelta.from_json(json_str)
|
|
1723
|
+
match += 1
|
|
1724
|
+
except (ValidationError, ValueError) as e:
|
|
1725
|
+
error_messages.append(str(e))
|
|
1726
|
+
# deserialize data into OpenAIResponseObjectStreamResponseReasoningTextDone
|
|
1727
|
+
try:
|
|
1728
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseReasoningTextDone.from_json(json_str)
|
|
1729
|
+
match += 1
|
|
1730
|
+
except (ValidationError, ValueError) as e:
|
|
1731
|
+
error_messages.append(str(e))
|
|
1732
|
+
# deserialize data into OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded
|
|
1733
|
+
try:
|
|
1734
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded.from_json(json_str)
|
|
1735
|
+
match += 1
|
|
1736
|
+
except (ValidationError, ValueError) as e:
|
|
1737
|
+
error_messages.append(str(e))
|
|
1738
|
+
# deserialize data into OpenAIResponseObjectStreamResponseReasoningSummaryPartDone
|
|
1739
|
+
try:
|
|
1740
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseReasoningSummaryPartDone.from_json(json_str)
|
|
1741
|
+
match += 1
|
|
1742
|
+
except (ValidationError, ValueError) as e:
|
|
1743
|
+
error_messages.append(str(e))
|
|
1744
|
+
# deserialize data into OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta
|
|
1745
|
+
try:
|
|
1746
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta.from_json(json_str)
|
|
1747
|
+
match += 1
|
|
1748
|
+
except (ValidationError, ValueError) as e:
|
|
1749
|
+
error_messages.append(str(e))
|
|
1750
|
+
# deserialize data into OpenAIResponseObjectStreamResponseReasoningSummaryTextDone
|
|
1751
|
+
try:
|
|
1752
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseReasoningSummaryTextDone.from_json(json_str)
|
|
1753
|
+
match += 1
|
|
1754
|
+
except (ValidationError, ValueError) as e:
|
|
1755
|
+
error_messages.append(str(e))
|
|
1756
|
+
# deserialize data into OpenAIResponseObjectStreamResponseRefusalDelta
|
|
1757
|
+
try:
|
|
1758
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseRefusalDelta.from_json(json_str)
|
|
1759
|
+
match += 1
|
|
1760
|
+
except (ValidationError, ValueError) as e:
|
|
1761
|
+
error_messages.append(str(e))
|
|
1762
|
+
# deserialize data into OpenAIResponseObjectStreamResponseRefusalDone
|
|
1763
|
+
try:
|
|
1764
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseRefusalDone.from_json(json_str)
|
|
1765
|
+
match += 1
|
|
1766
|
+
except (ValidationError, ValueError) as e:
|
|
1767
|
+
error_messages.append(str(e))
|
|
1768
|
+
# deserialize data into OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded
|
|
1769
|
+
try:
|
|
1770
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded.from_json(json_str)
|
|
1771
|
+
match += 1
|
|
1772
|
+
except (ValidationError, ValueError) as e:
|
|
1773
|
+
error_messages.append(str(e))
|
|
1774
|
+
# deserialize data into OpenAIResponseObjectStreamResponseFileSearchCallInProgress
|
|
1775
|
+
try:
|
|
1776
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseFileSearchCallInProgress.from_json(json_str)
|
|
1777
|
+
match += 1
|
|
1778
|
+
except (ValidationError, ValueError) as e:
|
|
1779
|
+
error_messages.append(str(e))
|
|
1780
|
+
# deserialize data into OpenAIResponseObjectStreamResponseFileSearchCallSearching
|
|
1781
|
+
try:
|
|
1782
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseFileSearchCallSearching.from_json(json_str)
|
|
1783
|
+
match += 1
|
|
1784
|
+
except (ValidationError, ValueError) as e:
|
|
1785
|
+
error_messages.append(str(e))
|
|
1786
|
+
# deserialize data into OpenAIResponseObjectStreamResponseFileSearchCallCompleted
|
|
1787
|
+
try:
|
|
1788
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseFileSearchCallCompleted.from_json(json_str)
|
|
1789
|
+
match += 1
|
|
1790
|
+
except (ValidationError, ValueError) as e:
|
|
1791
|
+
error_messages.append(str(e))
|
|
1792
|
+
# deserialize data into OpenAIResponseObjectStreamResponseIncomplete
|
|
1793
|
+
try:
|
|
1794
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseIncomplete.from_json(json_str)
|
|
1795
|
+
match += 1
|
|
1796
|
+
except (ValidationError, ValueError) as e:
|
|
1797
|
+
error_messages.append(str(e))
|
|
1798
|
+
# deserialize data into OpenAIResponseObjectStreamResponseFailed
|
|
1799
|
+
try:
|
|
1800
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseFailed.from_json(json_str)
|
|
1801
|
+
match += 1
|
|
1802
|
+
except (ValidationError, ValueError) as e:
|
|
1803
|
+
error_messages.append(str(e))
|
|
1804
|
+
# deserialize data into OpenAIResponseObjectStreamResponseCompleted
|
|
1805
|
+
try:
|
|
1806
|
+
instance.actual_instance = OpenAIResponseObjectStreamResponseCompleted.from_json(json_str)
|
|
1807
|
+
match += 1
|
|
1808
|
+
except (ValidationError, ValueError) as e:
|
|
1809
|
+
error_messages.append(str(e))
|
|
1810
|
+
# deserialize data into OpenAIResponseObjectStreamError
|
|
1811
|
+
try:
|
|
1812
|
+
instance.actual_instance = OpenAIResponseObjectStreamError.from_json(json_str)
|
|
1813
|
+
match += 1
|
|
1814
|
+
except (ValidationError, ValueError) as e:
|
|
1815
|
+
error_messages.append(str(e))
|
|
1816
|
+
|
|
1817
|
+
if match > 1:
|
|
1818
|
+
# Special case: empty lists can match multiple List[...] schemas in oneOf
|
|
1819
|
+
# This is common in streaming where content starts empty
|
|
1820
|
+
# In this case, just accept the first match (they're functionally equivalent for empty lists)
|
|
1821
|
+
data = json.loads(json_str)
|
|
1822
|
+
if isinstance(data, list) and len(data) == 0:
|
|
1823
|
+
return instance # First match already set in instance
|
|
1824
|
+
# more than 1 match
|
|
1825
|
+
raise ValueError("Multiple matches found when deserializing the JSON string into OpenAIResponseObjectStream with oneOf schemas: OpenAIResponseObjectStreamError, OpenAIResponseObjectStreamResponseCompleted, OpenAIResponseObjectStreamResponseContentPartAdded, OpenAIResponseObjectStreamResponseContentPartDone, OpenAIResponseObjectStreamResponseCreated, OpenAIResponseObjectStreamResponseFailed, OpenAIResponseObjectStreamResponseFileSearchCallCompleted, OpenAIResponseObjectStreamResponseFileSearchCallInProgress, OpenAIResponseObjectStreamResponseFileSearchCallSearching, OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta, OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone, OpenAIResponseObjectStreamResponseInProgress, OpenAIResponseObjectStreamResponseIncomplete, OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta, OpenAIResponseObjectStreamResponseMcpCallArgumentsDone, OpenAIResponseObjectStreamResponseMcpCallCompleted, OpenAIResponseObjectStreamResponseMcpCallFailed, OpenAIResponseObjectStreamResponseMcpCallInProgress, OpenAIResponseObjectStreamResponseMcpListToolsCompleted, OpenAIResponseObjectStreamResponseMcpListToolsFailed, OpenAIResponseObjectStreamResponseMcpListToolsInProgress, OpenAIResponseObjectStreamResponseOutputItemAdded, OpenAIResponseObjectStreamResponseOutputItemDone, OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded, OpenAIResponseObjectStreamResponseOutputTextDelta, OpenAIResponseObjectStreamResponseOutputTextDone, OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded, OpenAIResponseObjectStreamResponseReasoningSummaryPartDone, OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta, OpenAIResponseObjectStreamResponseReasoningSummaryTextDone, OpenAIResponseObjectStreamResponseReasoningTextDelta, OpenAIResponseObjectStreamResponseReasoningTextDone, OpenAIResponseObjectStreamResponseRefusalDelta, OpenAIResponseObjectStreamResponseRefusalDone, OpenAIResponseObjectStreamResponseWebSearchCallCompleted, OpenAIResponseObjectStreamResponseWebSearchCallInProgress, OpenAIResponseObjectStreamResponseWebSearchCallSearching. Details: " + ", ".join(error_messages))
|
|
1826
|
+
elif match == 0:
|
|
1827
|
+
# no match - try lenient fallback for streaming chunks
|
|
1828
|
+
data = json.loads(json_str)
|
|
1829
|
+
|
|
1830
|
+
# Helper to remove None values recursively for streaming chunks
|
|
1831
|
+
def remove_none_values(obj):
|
|
1832
|
+
if isinstance(obj, dict):
|
|
1833
|
+
return {k: remove_none_values(v) for k, v in obj.items() if v is not None}
|
|
1834
|
+
elif isinstance(obj, list):
|
|
1835
|
+
return [remove_none_values(item) for item in obj if item is not None]
|
|
1836
|
+
return obj
|
|
1837
|
+
|
|
1838
|
+
# Helper to add default values for commonly missing required fields in streaming
|
|
1839
|
+
def add_streaming_defaults(obj):
|
|
1840
|
+
if isinstance(obj, dict):
|
|
1841
|
+
result = dict(obj)
|
|
1842
|
+
# Add empty string for finish_reason if missing (common in streaming chunks)
|
|
1843
|
+
if 'choices' in result and isinstance(result['choices'], list):
|
|
1844
|
+
for choice in result['choices']:
|
|
1845
|
+
if isinstance(choice, dict) and 'finish_reason' not in choice:
|
|
1846
|
+
choice['finish_reason'] = ''
|
|
1847
|
+
return result
|
|
1848
|
+
return obj
|
|
1849
|
+
|
|
1850
|
+
# Try each variant with None values removed and defaults added
|
|
1851
|
+
try:
|
|
1852
|
+
cleaned_data = remove_none_values(data)
|
|
1853
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
1854
|
+
variant = OpenAIResponseObjectStreamResponseCreated.model_validate(cleaned_data)
|
|
1855
|
+
instance.actual_instance = variant
|
|
1856
|
+
return instance
|
|
1857
|
+
except Exception:
|
|
1858
|
+
pass
|
|
1859
|
+
try:
|
|
1860
|
+
cleaned_data = remove_none_values(data)
|
|
1861
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
1862
|
+
variant = OpenAIResponseObjectStreamResponseInProgress.model_validate(cleaned_data)
|
|
1863
|
+
instance.actual_instance = variant
|
|
1864
|
+
return instance
|
|
1865
|
+
except Exception:
|
|
1866
|
+
pass
|
|
1867
|
+
try:
|
|
1868
|
+
cleaned_data = remove_none_values(data)
|
|
1869
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
1870
|
+
variant = OpenAIResponseObjectStreamResponseOutputItemAdded.model_validate(cleaned_data)
|
|
1871
|
+
instance.actual_instance = variant
|
|
1872
|
+
return instance
|
|
1873
|
+
except Exception:
|
|
1874
|
+
pass
|
|
1875
|
+
try:
|
|
1876
|
+
cleaned_data = remove_none_values(data)
|
|
1877
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
1878
|
+
variant = OpenAIResponseObjectStreamResponseOutputItemDone.model_validate(cleaned_data)
|
|
1879
|
+
instance.actual_instance = variant
|
|
1880
|
+
return instance
|
|
1881
|
+
except Exception:
|
|
1882
|
+
pass
|
|
1883
|
+
try:
|
|
1884
|
+
cleaned_data = remove_none_values(data)
|
|
1885
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
1886
|
+
variant = OpenAIResponseObjectStreamResponseOutputTextDelta.model_validate(cleaned_data)
|
|
1887
|
+
instance.actual_instance = variant
|
|
1888
|
+
return instance
|
|
1889
|
+
except Exception:
|
|
1890
|
+
pass
|
|
1891
|
+
try:
|
|
1892
|
+
cleaned_data = remove_none_values(data)
|
|
1893
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
1894
|
+
variant = OpenAIResponseObjectStreamResponseOutputTextDone.model_validate(cleaned_data)
|
|
1895
|
+
instance.actual_instance = variant
|
|
1896
|
+
return instance
|
|
1897
|
+
except Exception:
|
|
1898
|
+
pass
|
|
1899
|
+
try:
|
|
1900
|
+
cleaned_data = remove_none_values(data)
|
|
1901
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
1902
|
+
variant = OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta.model_validate(cleaned_data)
|
|
1903
|
+
instance.actual_instance = variant
|
|
1904
|
+
return instance
|
|
1905
|
+
except Exception:
|
|
1906
|
+
pass
|
|
1907
|
+
try:
|
|
1908
|
+
cleaned_data = remove_none_values(data)
|
|
1909
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
1910
|
+
variant = OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone.model_validate(cleaned_data)
|
|
1911
|
+
instance.actual_instance = variant
|
|
1912
|
+
return instance
|
|
1913
|
+
except Exception:
|
|
1914
|
+
pass
|
|
1915
|
+
try:
|
|
1916
|
+
cleaned_data = remove_none_values(data)
|
|
1917
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
1918
|
+
variant = OpenAIResponseObjectStreamResponseWebSearchCallInProgress.model_validate(cleaned_data)
|
|
1919
|
+
instance.actual_instance = variant
|
|
1920
|
+
return instance
|
|
1921
|
+
except Exception:
|
|
1922
|
+
pass
|
|
1923
|
+
try:
|
|
1924
|
+
cleaned_data = remove_none_values(data)
|
|
1925
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
1926
|
+
variant = OpenAIResponseObjectStreamResponseWebSearchCallSearching.model_validate(cleaned_data)
|
|
1927
|
+
instance.actual_instance = variant
|
|
1928
|
+
return instance
|
|
1929
|
+
except Exception:
|
|
1930
|
+
pass
|
|
1931
|
+
try:
|
|
1932
|
+
cleaned_data = remove_none_values(data)
|
|
1933
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
1934
|
+
variant = OpenAIResponseObjectStreamResponseWebSearchCallCompleted.model_validate(cleaned_data)
|
|
1935
|
+
instance.actual_instance = variant
|
|
1936
|
+
return instance
|
|
1937
|
+
except Exception:
|
|
1938
|
+
pass
|
|
1939
|
+
try:
|
|
1940
|
+
cleaned_data = remove_none_values(data)
|
|
1941
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
1942
|
+
variant = OpenAIResponseObjectStreamResponseMcpListToolsInProgress.model_validate(cleaned_data)
|
|
1943
|
+
instance.actual_instance = variant
|
|
1944
|
+
return instance
|
|
1945
|
+
except Exception:
|
|
1946
|
+
pass
|
|
1947
|
+
try:
|
|
1948
|
+
cleaned_data = remove_none_values(data)
|
|
1949
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
1950
|
+
variant = OpenAIResponseObjectStreamResponseMcpListToolsFailed.model_validate(cleaned_data)
|
|
1951
|
+
instance.actual_instance = variant
|
|
1952
|
+
return instance
|
|
1953
|
+
except Exception:
|
|
1954
|
+
pass
|
|
1955
|
+
try:
|
|
1956
|
+
cleaned_data = remove_none_values(data)
|
|
1957
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
1958
|
+
variant = OpenAIResponseObjectStreamResponseMcpListToolsCompleted.model_validate(cleaned_data)
|
|
1959
|
+
instance.actual_instance = variant
|
|
1960
|
+
return instance
|
|
1961
|
+
except Exception:
|
|
1962
|
+
pass
|
|
1963
|
+
try:
|
|
1964
|
+
cleaned_data = remove_none_values(data)
|
|
1965
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
1966
|
+
variant = OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta.model_validate(cleaned_data)
|
|
1967
|
+
instance.actual_instance = variant
|
|
1968
|
+
return instance
|
|
1969
|
+
except Exception:
|
|
1970
|
+
pass
|
|
1971
|
+
try:
|
|
1972
|
+
cleaned_data = remove_none_values(data)
|
|
1973
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
1974
|
+
variant = OpenAIResponseObjectStreamResponseMcpCallArgumentsDone.model_validate(cleaned_data)
|
|
1975
|
+
instance.actual_instance = variant
|
|
1976
|
+
return instance
|
|
1977
|
+
except Exception:
|
|
1978
|
+
pass
|
|
1979
|
+
try:
|
|
1980
|
+
cleaned_data = remove_none_values(data)
|
|
1981
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
1982
|
+
variant = OpenAIResponseObjectStreamResponseMcpCallInProgress.model_validate(cleaned_data)
|
|
1983
|
+
instance.actual_instance = variant
|
|
1984
|
+
return instance
|
|
1985
|
+
except Exception:
|
|
1986
|
+
pass
|
|
1987
|
+
try:
|
|
1988
|
+
cleaned_data = remove_none_values(data)
|
|
1989
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
1990
|
+
variant = OpenAIResponseObjectStreamResponseMcpCallFailed.model_validate(cleaned_data)
|
|
1991
|
+
instance.actual_instance = variant
|
|
1992
|
+
return instance
|
|
1993
|
+
except Exception:
|
|
1994
|
+
pass
|
|
1995
|
+
try:
|
|
1996
|
+
cleaned_data = remove_none_values(data)
|
|
1997
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
1998
|
+
variant = OpenAIResponseObjectStreamResponseMcpCallCompleted.model_validate(cleaned_data)
|
|
1999
|
+
instance.actual_instance = variant
|
|
2000
|
+
return instance
|
|
2001
|
+
except Exception:
|
|
2002
|
+
pass
|
|
2003
|
+
try:
|
|
2004
|
+
cleaned_data = remove_none_values(data)
|
|
2005
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
2006
|
+
variant = OpenAIResponseObjectStreamResponseContentPartAdded.model_validate(cleaned_data)
|
|
2007
|
+
instance.actual_instance = variant
|
|
2008
|
+
return instance
|
|
2009
|
+
except Exception:
|
|
2010
|
+
pass
|
|
2011
|
+
try:
|
|
2012
|
+
cleaned_data = remove_none_values(data)
|
|
2013
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
2014
|
+
variant = OpenAIResponseObjectStreamResponseContentPartDone.model_validate(cleaned_data)
|
|
2015
|
+
instance.actual_instance = variant
|
|
2016
|
+
return instance
|
|
2017
|
+
except Exception:
|
|
2018
|
+
pass
|
|
2019
|
+
try:
|
|
2020
|
+
cleaned_data = remove_none_values(data)
|
|
2021
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
2022
|
+
variant = OpenAIResponseObjectStreamResponseReasoningTextDelta.model_validate(cleaned_data)
|
|
2023
|
+
instance.actual_instance = variant
|
|
2024
|
+
return instance
|
|
2025
|
+
except Exception:
|
|
2026
|
+
pass
|
|
2027
|
+
try:
|
|
2028
|
+
cleaned_data = remove_none_values(data)
|
|
2029
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
2030
|
+
variant = OpenAIResponseObjectStreamResponseReasoningTextDone.model_validate(cleaned_data)
|
|
2031
|
+
instance.actual_instance = variant
|
|
2032
|
+
return instance
|
|
2033
|
+
except Exception:
|
|
2034
|
+
pass
|
|
2035
|
+
try:
|
|
2036
|
+
cleaned_data = remove_none_values(data)
|
|
2037
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
2038
|
+
variant = OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded.model_validate(cleaned_data)
|
|
2039
|
+
instance.actual_instance = variant
|
|
2040
|
+
return instance
|
|
2041
|
+
except Exception:
|
|
2042
|
+
pass
|
|
2043
|
+
try:
|
|
2044
|
+
cleaned_data = remove_none_values(data)
|
|
2045
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
2046
|
+
variant = OpenAIResponseObjectStreamResponseReasoningSummaryPartDone.model_validate(cleaned_data)
|
|
2047
|
+
instance.actual_instance = variant
|
|
2048
|
+
return instance
|
|
2049
|
+
except Exception:
|
|
2050
|
+
pass
|
|
2051
|
+
try:
|
|
2052
|
+
cleaned_data = remove_none_values(data)
|
|
2053
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
2054
|
+
variant = OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta.model_validate(cleaned_data)
|
|
2055
|
+
instance.actual_instance = variant
|
|
2056
|
+
return instance
|
|
2057
|
+
except Exception:
|
|
2058
|
+
pass
|
|
2059
|
+
try:
|
|
2060
|
+
cleaned_data = remove_none_values(data)
|
|
2061
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
2062
|
+
variant = OpenAIResponseObjectStreamResponseReasoningSummaryTextDone.model_validate(cleaned_data)
|
|
2063
|
+
instance.actual_instance = variant
|
|
2064
|
+
return instance
|
|
2065
|
+
except Exception:
|
|
2066
|
+
pass
|
|
2067
|
+
try:
|
|
2068
|
+
cleaned_data = remove_none_values(data)
|
|
2069
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
2070
|
+
variant = OpenAIResponseObjectStreamResponseRefusalDelta.model_validate(cleaned_data)
|
|
2071
|
+
instance.actual_instance = variant
|
|
2072
|
+
return instance
|
|
2073
|
+
except Exception:
|
|
2074
|
+
pass
|
|
2075
|
+
try:
|
|
2076
|
+
cleaned_data = remove_none_values(data)
|
|
2077
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
2078
|
+
variant = OpenAIResponseObjectStreamResponseRefusalDone.model_validate(cleaned_data)
|
|
2079
|
+
instance.actual_instance = variant
|
|
2080
|
+
return instance
|
|
2081
|
+
except Exception:
|
|
2082
|
+
pass
|
|
2083
|
+
try:
|
|
2084
|
+
cleaned_data = remove_none_values(data)
|
|
2085
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
2086
|
+
variant = OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded.model_validate(cleaned_data)
|
|
2087
|
+
instance.actual_instance = variant
|
|
2088
|
+
return instance
|
|
2089
|
+
except Exception:
|
|
2090
|
+
pass
|
|
2091
|
+
try:
|
|
2092
|
+
cleaned_data = remove_none_values(data)
|
|
2093
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
2094
|
+
variant = OpenAIResponseObjectStreamResponseFileSearchCallInProgress.model_validate(cleaned_data)
|
|
2095
|
+
instance.actual_instance = variant
|
|
2096
|
+
return instance
|
|
2097
|
+
except Exception:
|
|
2098
|
+
pass
|
|
2099
|
+
try:
|
|
2100
|
+
cleaned_data = remove_none_values(data)
|
|
2101
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
2102
|
+
variant = OpenAIResponseObjectStreamResponseFileSearchCallSearching.model_validate(cleaned_data)
|
|
2103
|
+
instance.actual_instance = variant
|
|
2104
|
+
return instance
|
|
2105
|
+
except Exception:
|
|
2106
|
+
pass
|
|
2107
|
+
try:
|
|
2108
|
+
cleaned_data = remove_none_values(data)
|
|
2109
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
2110
|
+
variant = OpenAIResponseObjectStreamResponseFileSearchCallCompleted.model_validate(cleaned_data)
|
|
2111
|
+
instance.actual_instance = variant
|
|
2112
|
+
return instance
|
|
2113
|
+
except Exception:
|
|
2114
|
+
pass
|
|
2115
|
+
try:
|
|
2116
|
+
cleaned_data = remove_none_values(data)
|
|
2117
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
2118
|
+
variant = OpenAIResponseObjectStreamResponseIncomplete.model_validate(cleaned_data)
|
|
2119
|
+
instance.actual_instance = variant
|
|
2120
|
+
return instance
|
|
2121
|
+
except Exception:
|
|
2122
|
+
pass
|
|
2123
|
+
try:
|
|
2124
|
+
cleaned_data = remove_none_values(data)
|
|
2125
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
2126
|
+
variant = OpenAIResponseObjectStreamResponseFailed.model_validate(cleaned_data)
|
|
2127
|
+
instance.actual_instance = variant
|
|
2128
|
+
return instance
|
|
2129
|
+
except Exception:
|
|
2130
|
+
pass
|
|
2131
|
+
try:
|
|
2132
|
+
cleaned_data = remove_none_values(data)
|
|
2133
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
2134
|
+
variant = OpenAIResponseObjectStreamResponseCompleted.model_validate(cleaned_data)
|
|
2135
|
+
instance.actual_instance = variant
|
|
2136
|
+
return instance
|
|
2137
|
+
except Exception:
|
|
2138
|
+
pass
|
|
2139
|
+
try:
|
|
2140
|
+
cleaned_data = remove_none_values(data)
|
|
2141
|
+
cleaned_data = add_streaming_defaults(cleaned_data)
|
|
2142
|
+
variant = OpenAIResponseObjectStreamError.model_validate(cleaned_data)
|
|
2143
|
+
instance.actual_instance = variant
|
|
2144
|
+
return instance
|
|
2145
|
+
except Exception:
|
|
2146
|
+
pass
|
|
2147
|
+
|
|
2148
|
+
# All variants failed
|
|
2149
|
+
raise ValueError("No match found when deserializing the JSON string into OpenAIResponseObjectStream with oneOf schemas: OpenAIResponseObjectStreamError, OpenAIResponseObjectStreamResponseCompleted, OpenAIResponseObjectStreamResponseContentPartAdded, OpenAIResponseObjectStreamResponseContentPartDone, OpenAIResponseObjectStreamResponseCreated, OpenAIResponseObjectStreamResponseFailed, OpenAIResponseObjectStreamResponseFileSearchCallCompleted, OpenAIResponseObjectStreamResponseFileSearchCallInProgress, OpenAIResponseObjectStreamResponseFileSearchCallSearching, OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta, OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone, OpenAIResponseObjectStreamResponseInProgress, OpenAIResponseObjectStreamResponseIncomplete, OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta, OpenAIResponseObjectStreamResponseMcpCallArgumentsDone, OpenAIResponseObjectStreamResponseMcpCallCompleted, OpenAIResponseObjectStreamResponseMcpCallFailed, OpenAIResponseObjectStreamResponseMcpCallInProgress, OpenAIResponseObjectStreamResponseMcpListToolsCompleted, OpenAIResponseObjectStreamResponseMcpListToolsFailed, OpenAIResponseObjectStreamResponseMcpListToolsInProgress, OpenAIResponseObjectStreamResponseOutputItemAdded, OpenAIResponseObjectStreamResponseOutputItemDone, OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded, OpenAIResponseObjectStreamResponseOutputTextDelta, OpenAIResponseObjectStreamResponseOutputTextDone, OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded, OpenAIResponseObjectStreamResponseReasoningSummaryPartDone, OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta, OpenAIResponseObjectStreamResponseReasoningSummaryTextDone, OpenAIResponseObjectStreamResponseReasoningTextDelta, OpenAIResponseObjectStreamResponseReasoningTextDone, OpenAIResponseObjectStreamResponseRefusalDelta, OpenAIResponseObjectStreamResponseRefusalDone, OpenAIResponseObjectStreamResponseWebSearchCallCompleted, OpenAIResponseObjectStreamResponseWebSearchCallInProgress, OpenAIResponseObjectStreamResponseWebSearchCallSearching. Details: " + ", ".join(error_messages))
|
|
2150
|
+
else:
|
|
2151
|
+
return instance
|
|
2152
|
+
|
|
2153
|
+
def to_dict(self) -> dict[str, Any] | OpenAIResponseObjectStreamError | OpenAIResponseObjectStreamResponseCompleted | OpenAIResponseObjectStreamResponseContentPartAdded | OpenAIResponseObjectStreamResponseContentPartDone | OpenAIResponseObjectStreamResponseCreated | OpenAIResponseObjectStreamResponseFailed | OpenAIResponseObjectStreamResponseFileSearchCallCompleted | OpenAIResponseObjectStreamResponseFileSearchCallInProgress | OpenAIResponseObjectStreamResponseFileSearchCallSearching | OpenAIResponseObjectStreamResponseFunctionCallArgumentsDelta | OpenAIResponseObjectStreamResponseFunctionCallArgumentsDone | OpenAIResponseObjectStreamResponseInProgress | OpenAIResponseObjectStreamResponseIncomplete | OpenAIResponseObjectStreamResponseMcpCallArgumentsDelta | OpenAIResponseObjectStreamResponseMcpCallArgumentsDone | OpenAIResponseObjectStreamResponseMcpCallCompleted | OpenAIResponseObjectStreamResponseMcpCallFailed | OpenAIResponseObjectStreamResponseMcpCallInProgress | OpenAIResponseObjectStreamResponseMcpListToolsCompleted | OpenAIResponseObjectStreamResponseMcpListToolsFailed | OpenAIResponseObjectStreamResponseMcpListToolsInProgress | OpenAIResponseObjectStreamResponseOutputItemAdded | OpenAIResponseObjectStreamResponseOutputItemDone | OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded | OpenAIResponseObjectStreamResponseOutputTextDelta | OpenAIResponseObjectStreamResponseOutputTextDone | OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded | OpenAIResponseObjectStreamResponseReasoningSummaryPartDone | OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta | OpenAIResponseObjectStreamResponseReasoningSummaryTextDone | OpenAIResponseObjectStreamResponseReasoningTextDelta | OpenAIResponseObjectStreamResponseReasoningTextDone | OpenAIResponseObjectStreamResponseRefusalDelta | OpenAIResponseObjectStreamResponseRefusalDone | OpenAIResponseObjectStreamResponseWebSearchCallCompleted | OpenAIResponseObjectStreamResponseWebSearchCallInProgress | OpenAIResponseObjectStreamResponseWebSearchCallSearching | None:
|
|
2154
|
+
"""Returns the dict representation of the actual instance"""
|
|
2155
|
+
if self.actual_instance is None:
|
|
2156
|
+
return None
|
|
2157
|
+
|
|
2158
|
+
# Handle lists specially - call to_dict() on each item if it has the method
|
|
2159
|
+
if isinstance(self.actual_instance, list):
|
|
2160
|
+
return [
|
|
2161
|
+
item.to_dict() if hasattr(item, 'to_dict') and callable(item.to_dict)
|
|
2162
|
+
else item
|
|
2163
|
+
for item in self.actual_instance
|
|
2164
|
+
]
|
|
2165
|
+
# Handle Pydantic models
|
|
2166
|
+
elif hasattr(self.actual_instance, "to_dict") and callable(self.actual_instance.to_dict):
|
|
2167
|
+
return self.actual_instance.to_dict()
|
|
2168
|
+
# Handle other Pydantic models that don't have to_dict
|
|
2169
|
+
elif hasattr(self.actual_instance, '__pydantic_serializer__'):
|
|
2170
|
+
from pydantic_core import to_jsonable_python
|
|
2171
|
+
return to_jsonable_python(
|
|
2172
|
+
self.actual_instance,
|
|
2173
|
+
by_alias=True,
|
|
2174
|
+
exclude_none=True,
|
|
2175
|
+
fallback=lambda x: x if isinstance(x, str | int | float | bool | type(None)) else str(x)
|
|
2176
|
+
)
|
|
2177
|
+
else:
|
|
2178
|
+
# primitive type
|
|
2179
|
+
return self.actual_instance
|
|
2180
|
+
|
|
2181
|
+
|