vellum-ai 0.9.15__py3-none-any.whl → 0.9.16rc2__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1112) hide show
  1. vellum/client/README.md +242 -0
  2. vellum/client/core/__init__.py +47 -0
  3. vellum/client/core/api_error.py +15 -0
  4. vellum/client/core/client_wrapper.py +59 -0
  5. vellum/client/core/datetime_utils.py +28 -0
  6. vellum/client/core/file.py +62 -0
  7. vellum/client/core/http_client.py +487 -0
  8. vellum/client/core/jsonable_encoder.py +101 -0
  9. vellum/client/core/pydantic_utilities.py +296 -0
  10. vellum/client/core/query_encoder.py +58 -0
  11. vellum/client/core/remove_none_from_dict.py +11 -0
  12. vellum/client/core/request_options.py +32 -0
  13. vellum/client/core/serialization.py +272 -0
  14. vellum/client/environment.py +17 -0
  15. vellum/client/errors/__init__.py +8 -0
  16. vellum/client/errors/bad_request_error.py +9 -0
  17. vellum/client/errors/forbidden_error.py +9 -0
  18. vellum/client/errors/internal_server_error.py +9 -0
  19. vellum/client/errors/not_found_error.py +9 -0
  20. vellum/client/resources/__init__.py +47 -0
  21. vellum/client/resources/ad_hoc/__init__.py +2 -0
  22. vellum/client/resources/ad_hoc/client.py +459 -0
  23. vellum/client/resources/container_images/__init__.py +2 -0
  24. vellum/client/resources/container_images/client.py +502 -0
  25. vellum/client/resources/deployments/__init__.py +5 -0
  26. vellum/client/resources/deployments/client.py +975 -0
  27. vellum/client/resources/deployments/types/__init__.py +6 -0
  28. vellum/client/resources/deployments/types/deployments_list_request_status.py +5 -0
  29. vellum/client/resources/deployments/types/list_deployment_release_tags_request_source.py +5 -0
  30. vellum/client/resources/document_indexes/__init__.py +5 -0
  31. vellum/client/resources/document_indexes/client.py +1154 -0
  32. vellum/client/resources/document_indexes/types/__init__.py +5 -0
  33. vellum/client/resources/document_indexes/types/document_indexes_list_request_status.py +5 -0
  34. vellum/client/resources/documents/__init__.py +2 -0
  35. vellum/client/resources/documents/client.py +781 -0
  36. vellum/client/resources/folder_entities/__init__.py +5 -0
  37. vellum/client/resources/folder_entities/client.py +333 -0
  38. vellum/client/resources/folder_entities/types/__init__.py +5 -0
  39. vellum/client/resources/folder_entities/types/folder_entities_list_request_entity_status.py +5 -0
  40. vellum/client/resources/metric_definitions/__init__.py +2 -0
  41. vellum/client/resources/metric_definitions/client.py +178 -0
  42. vellum/client/resources/sandboxes/__init__.py +2 -0
  43. vellum/client/resources/sandboxes/client.py +481 -0
  44. vellum/client/resources/test_suite_runs/__init__.py +2 -0
  45. vellum/client/resources/test_suite_runs/client.py +445 -0
  46. vellum/client/resources/test_suites/__init__.py +2 -0
  47. vellum/client/resources/test_suites/client.py +688 -0
  48. vellum/client/resources/workflow_deployments/__init__.py +5 -0
  49. vellum/client/resources/workflow_deployments/client.py +693 -0
  50. vellum/client/resources/workflow_deployments/types/__init__.py +6 -0
  51. vellum/client/resources/workflow_deployments/types/list_workflow_release_tags_request_source.py +5 -0
  52. vellum/client/resources/workflow_deployments/types/workflow_deployments_list_request_status.py +5 -0
  53. vellum/client/resources/workflow_sandboxes/__init__.py +2 -0
  54. vellum/client/resources/workflow_sandboxes/client.py +190 -0
  55. vellum/client/resources/workflows/__init__.py +5 -0
  56. vellum/client/resources/workflows/client.py +333 -0
  57. vellum/client/resources/workflows/types/__init__.py +5 -0
  58. vellum/client/resources/workflows/types/workflows_pull_request_format.py +5 -0
  59. vellum/client/resources/workspace_secrets/__init__.py +2 -0
  60. vellum/client/resources/workspace_secrets/client.py +266 -0
  61. vellum/client/types/__init__.py +979 -0
  62. vellum/client/types/ad_hoc_execute_prompt_event.py +14 -0
  63. vellum/client/types/ad_hoc_expand_meta.py +37 -0
  64. vellum/client/types/ad_hoc_fulfilled_prompt_execution_meta.py +27 -0
  65. vellum/client/types/ad_hoc_initiated_prompt_execution_meta.py +24 -0
  66. vellum/client/types/ad_hoc_rejected_prompt_execution_meta.py +25 -0
  67. vellum/client/types/ad_hoc_streaming_prompt_execution_meta.py +23 -0
  68. vellum/client/types/add_openai_api_key_enum.py +3 -0
  69. vellum/client/types/api_node_result.py +25 -0
  70. vellum/client/types/api_node_result_data.py +28 -0
  71. vellum/client/types/array_chat_message_content.py +25 -0
  72. vellum/client/types/array_chat_message_content_item.py +11 -0
  73. vellum/client/types/array_chat_message_content_item_request.py +14 -0
  74. vellum/client/types/array_chat_message_content_request.py +25 -0
  75. vellum/client/types/array_input.py +36 -0
  76. vellum/client/types/array_variable_value.py +27 -0
  77. vellum/client/types/array_variable_value_item.py +29 -0
  78. vellum/client/types/array_vellum_value.py +31 -0
  79. vellum/client/types/array_vellum_value_request.py +31 -0
  80. vellum/client/types/audio_chat_message_content.py +25 -0
  81. vellum/client/types/audio_chat_message_content_request.py +25 -0
  82. vellum/client/types/audio_variable_value.py +25 -0
  83. vellum/client/types/audio_vellum_value.py +25 -0
  84. vellum/client/types/audio_vellum_value_request.py +25 -0
  85. vellum/client/types/basic_vectorizer_intfloat_multilingual_e_5_large.py +24 -0
  86. vellum/client/types/basic_vectorizer_intfloat_multilingual_e_5_large_request.py +24 -0
  87. vellum/client/types/basic_vectorizer_sentence_transformers_multi_qa_mpnet_base_cos_v_1.py +26 -0
  88. vellum/client/types/basic_vectorizer_sentence_transformers_multi_qa_mpnet_base_cos_v_1_request.py +26 -0
  89. vellum/client/types/basic_vectorizer_sentence_transformers_multi_qa_mpnet_base_dot_v_1.py +26 -0
  90. vellum/client/types/basic_vectorizer_sentence_transformers_multi_qa_mpnet_base_dot_v_1_request.py +26 -0
  91. vellum/client/types/chat_history_input.py +30 -0
  92. vellum/client/types/chat_history_input_request.py +30 -0
  93. vellum/client/types/chat_history_variable_value.py +21 -0
  94. vellum/client/types/chat_history_vellum_value.py +25 -0
  95. vellum/client/types/chat_history_vellum_value_request.py +25 -0
  96. vellum/client/types/chat_message.py +27 -0
  97. vellum/client/types/chat_message_content.py +16 -0
  98. vellum/client/types/chat_message_content_request.py +16 -0
  99. vellum/client/types/chat_message_prompt_block.py +39 -0
  100. vellum/client/types/chat_message_request.py +27 -0
  101. vellum/client/types/chat_message_role.py +5 -0
  102. vellum/client/types/code_execution_node_array_result.py +28 -0
  103. vellum/client/types/code_execution_node_chat_history_result.py +22 -0
  104. vellum/client/types/code_execution_node_error_result.py +22 -0
  105. vellum/client/types/code_execution_node_function_call_result.py +22 -0
  106. vellum/client/types/code_execution_node_json_result.py +21 -0
  107. vellum/client/types/code_execution_node_number_result.py +21 -0
  108. vellum/client/types/code_execution_node_result.py +31 -0
  109. vellum/client/types/code_execution_node_result_data.py +27 -0
  110. vellum/client/types/code_execution_node_result_output.py +22 -0
  111. vellum/client/types/code_execution_node_search_results_result.py +22 -0
  112. vellum/client/types/code_execution_node_string_result.py +21 -0
  113. vellum/client/types/code_execution_package.py +20 -0
  114. vellum/client/types/code_execution_runtime.py +5 -0
  115. vellum/client/types/code_executor_input.py +24 -0
  116. vellum/client/types/code_executor_response.py +27 -0
  117. vellum/client/types/code_executor_secret_input.py +29 -0
  118. vellum/client/types/compile_prompt_deployment_expand_meta_request.py +32 -0
  119. vellum/client/types/compile_prompt_meta.py +25 -0
  120. vellum/client/types/components_schemas_pdf_search_result_meta_source.py +5 -0
  121. vellum/client/types/components_schemas_pdf_search_result_meta_source_request.py +5 -0
  122. vellum/client/types/condition_combinator.py +5 -0
  123. vellum/client/types/conditional_node_result.py +25 -0
  124. vellum/client/types/conditional_node_result_data.py +19 -0
  125. vellum/client/types/container_image_read.py +28 -0
  126. vellum/client/types/create_test_suite_test_case_request.py +48 -0
  127. vellum/client/types/deployment_provider_payload_response.py +22 -0
  128. vellum/client/types/deployment_provider_payload_response_payload.py +5 -0
  129. vellum/client/types/deployment_read.py +73 -0
  130. vellum/client/types/deployment_release_tag_deployment_history_item.py +21 -0
  131. vellum/client/types/deployment_release_tag_read.py +37 -0
  132. vellum/client/types/docker_service_token.py +21 -0
  133. vellum/client/types/document_document_to_document_index.py +39 -0
  134. vellum/client/types/document_index_chunking.py +8 -0
  135. vellum/client/types/document_index_chunking_request.py +10 -0
  136. vellum/client/types/document_index_indexing_config.py +22 -0
  137. vellum/client/types/document_index_indexing_config_request.py +22 -0
  138. vellum/client/types/document_index_read.py +52 -0
  139. vellum/client/types/document_processing_state.py +7 -0
  140. vellum/client/types/document_read.py +49 -0
  141. vellum/client/types/document_status.py +5 -0
  142. vellum/client/types/enriched_normalized_completion.py +59 -0
  143. vellum/client/types/entity_status.py +5 -0
  144. vellum/client/types/entity_visibility.py +5 -0
  145. vellum/client/types/environment_enum.py +5 -0
  146. vellum/client/types/ephemeral_prompt_cache_config.py +20 -0
  147. vellum/client/types/ephemeral_prompt_cache_config_type_enum.py +5 -0
  148. vellum/client/types/error_input.py +30 -0
  149. vellum/client/types/error_variable_value.py +21 -0
  150. vellum/client/types/error_vellum_value.py +25 -0
  151. vellum/client/types/error_vellum_value_request.py +25 -0
  152. vellum/client/types/execute_prompt_event.py +11 -0
  153. vellum/client/types/execute_prompt_response.py +7 -0
  154. vellum/client/types/execute_workflow_response.py +29 -0
  155. vellum/client/types/execute_workflow_workflow_result_event.py +9 -0
  156. vellum/client/types/execution_array_vellum_value.py +37 -0
  157. vellum/client/types/execution_chat_history_vellum_value.py +31 -0
  158. vellum/client/types/execution_error_vellum_value.py +31 -0
  159. vellum/client/types/execution_function_call_vellum_value.py +31 -0
  160. vellum/client/types/execution_json_vellum_value.py +30 -0
  161. vellum/client/types/execution_number_vellum_value.py +30 -0
  162. vellum/client/types/execution_search_results_vellum_value.py +31 -0
  163. vellum/client/types/execution_string_vellum_value.py +30 -0
  164. vellum/client/types/execution_vellum_value.py +22 -0
  165. vellum/client/types/external_test_case_execution.py +31 -0
  166. vellum/client/types/external_test_case_execution_request.py +31 -0
  167. vellum/client/types/finish_reason_enum.py +5 -0
  168. vellum/client/types/folder_entity.py +16 -0
  169. vellum/client/types/folder_entity_document_index.py +26 -0
  170. vellum/client/types/folder_entity_document_index_data.py +25 -0
  171. vellum/client/types/folder_entity_folder.py +26 -0
  172. vellum/client/types/folder_entity_folder_data.py +24 -0
  173. vellum/client/types/folder_entity_prompt_sandbox.py +26 -0
  174. vellum/client/types/folder_entity_prompt_sandbox_data.py +26 -0
  175. vellum/client/types/folder_entity_test_suite.py +26 -0
  176. vellum/client/types/folder_entity_test_suite_data.py +25 -0
  177. vellum/client/types/folder_entity_workflow_sandbox.py +26 -0
  178. vellum/client/types/folder_entity_workflow_sandbox_data.py +26 -0
  179. vellum/client/types/fulfilled_ad_hoc_execute_prompt_event.py +28 -0
  180. vellum/client/types/fulfilled_enum.py +5 -0
  181. vellum/client/types/fulfilled_execute_prompt_event.py +28 -0
  182. vellum/client/types/fulfilled_execute_prompt_response.py +37 -0
  183. vellum/client/types/fulfilled_execute_workflow_workflow_result_event.py +36 -0
  184. vellum/client/types/fulfilled_prompt_execution_meta.py +27 -0
  185. vellum/client/types/fulfilled_workflow_node_result_event.py +40 -0
  186. vellum/client/types/function_call.py +27 -0
  187. vellum/client/types/function_call_chat_message_content.py +25 -0
  188. vellum/client/types/function_call_chat_message_content_request.py +25 -0
  189. vellum/client/types/function_call_chat_message_content_value.py +25 -0
  190. vellum/client/types/function_call_chat_message_content_value_request.py +25 -0
  191. vellum/client/types/function_call_input.py +30 -0
  192. vellum/client/types/function_call_request.py +27 -0
  193. vellum/client/types/function_call_variable_value.py +21 -0
  194. vellum/client/types/function_call_vellum_value.py +25 -0
  195. vellum/client/types/function_call_vellum_value_request.py +25 -0
  196. vellum/client/types/function_definition.py +31 -0
  197. vellum/client/types/generate_options_request.py +26 -0
  198. vellum/client/types/generate_request.py +33 -0
  199. vellum/client/types/generate_response.py +38 -0
  200. vellum/client/types/generate_result.py +29 -0
  201. vellum/client/types/generate_result_data.py +23 -0
  202. vellum/client/types/generate_result_error.py +22 -0
  203. vellum/client/types/generate_stream_response.py +20 -0
  204. vellum/client/types/generate_stream_result.py +23 -0
  205. vellum/client/types/generate_stream_result_data.py +21 -0
  206. vellum/client/types/google_vertex_ai_vectorizer_config.py +20 -0
  207. vellum/client/types/google_vertex_ai_vectorizer_config_request.py +20 -0
  208. vellum/client/types/google_vertex_ai_vectorizer_text_embedding_004.py +21 -0
  209. vellum/client/types/google_vertex_ai_vectorizer_text_embedding_004_request.py +21 -0
  210. vellum/client/types/google_vertex_ai_vectorizer_text_multilingual_embedding_002.py +21 -0
  211. vellum/client/types/google_vertex_ai_vectorizer_text_multilingual_embedding_002_request.py +21 -0
  212. vellum/client/types/hkunlp_instructor_xl_vectorizer.py +25 -0
  213. vellum/client/types/hkunlp_instructor_xl_vectorizer_request.py +25 -0
  214. vellum/client/types/image_chat_message_content.py +25 -0
  215. vellum/client/types/image_chat_message_content_request.py +25 -0
  216. vellum/client/types/image_variable_value.py +25 -0
  217. vellum/client/types/image_vellum_value.py +25 -0
  218. vellum/client/types/image_vellum_value_request.py +25 -0
  219. vellum/client/types/indexing_config_vectorizer.py +30 -0
  220. vellum/client/types/indexing_config_vectorizer_request.py +30 -0
  221. vellum/client/types/indexing_state_enum.py +7 -0
  222. vellum/client/types/initiated_ad_hoc_execute_prompt_event.py +26 -0
  223. vellum/client/types/initiated_execute_prompt_event.py +26 -0
  224. vellum/client/types/initiated_prompt_execution_meta.py +26 -0
  225. vellum/client/types/initiated_workflow_node_result_event.py +39 -0
  226. vellum/client/types/instructor_vectorizer_config.py +25 -0
  227. vellum/client/types/instructor_vectorizer_config_request.py +25 -0
  228. vellum/client/types/iteration_state_enum.py +5 -0
  229. vellum/client/types/jinja_prompt_block.py +28 -0
  230. vellum/client/types/json_input.py +29 -0
  231. vellum/client/types/json_input_request.py +29 -0
  232. vellum/client/types/json_variable_value.py +20 -0
  233. vellum/client/types/json_vellum_value.py +24 -0
  234. vellum/client/types/json_vellum_value_request.py +24 -0
  235. vellum/client/types/logical_operator.py +29 -0
  236. vellum/client/types/logprobs_enum.py +5 -0
  237. vellum/client/types/map_node_result.py +25 -0
  238. vellum/client/types/map_node_result_data.py +21 -0
  239. vellum/client/types/merge_node_result.py +25 -0
  240. vellum/client/types/merge_node_result_data.py +19 -0
  241. vellum/client/types/metadata_filter_config_request.py +36 -0
  242. vellum/client/types/metadata_filter_rule_combinator.py +5 -0
  243. vellum/client/types/metadata_filter_rule_request.py +31 -0
  244. vellum/client/types/metadata_filters_request.py +7 -0
  245. vellum/client/types/metric_definition_execution.py +20 -0
  246. vellum/client/types/metric_definition_input.py +9 -0
  247. vellum/client/types/metric_node_result.py +23 -0
  248. vellum/client/types/ml_model_usage.py +25 -0
  249. vellum/client/types/named_scenario_input_chat_history_variable_value_request.py +26 -0
  250. vellum/client/types/named_scenario_input_json_variable_value_request.py +25 -0
  251. vellum/client/types/named_scenario_input_request.py +12 -0
  252. vellum/client/types/named_scenario_input_string_variable_value_request.py +25 -0
  253. vellum/client/types/named_test_case_array_variable_value.py +32 -0
  254. vellum/client/types/named_test_case_array_variable_value_request.py +34 -0
  255. vellum/client/types/named_test_case_chat_history_variable_value.py +26 -0
  256. vellum/client/types/named_test_case_chat_history_variable_value_request.py +26 -0
  257. vellum/client/types/named_test_case_error_variable_value.py +26 -0
  258. vellum/client/types/named_test_case_error_variable_value_request.py +26 -0
  259. vellum/client/types/named_test_case_function_call_variable_value.py +26 -0
  260. vellum/client/types/named_test_case_function_call_variable_value_request.py +26 -0
  261. vellum/client/types/named_test_case_json_variable_value.py +25 -0
  262. vellum/client/types/named_test_case_json_variable_value_request.py +25 -0
  263. vellum/client/types/named_test_case_number_variable_value.py +25 -0
  264. vellum/client/types/named_test_case_number_variable_value_request.py +25 -0
  265. vellum/client/types/named_test_case_search_results_variable_value.py +26 -0
  266. vellum/client/types/named_test_case_search_results_variable_value_request.py +26 -0
  267. vellum/client/types/named_test_case_string_variable_value.py +25 -0
  268. vellum/client/types/named_test_case_string_variable_value_request.py +25 -0
  269. vellum/client/types/named_test_case_variable_value.py +22 -0
  270. vellum/client/types/named_test_case_variable_value_request.py +22 -0
  271. vellum/client/types/node_input_compiled_array_value.py +29 -0
  272. vellum/client/types/node_input_compiled_chat_history_value.py +23 -0
  273. vellum/client/types/node_input_compiled_error_value.py +23 -0
  274. vellum/client/types/node_input_compiled_function_call_value.py +23 -0
  275. vellum/client/types/node_input_compiled_json_value.py +22 -0
  276. vellum/client/types/node_input_compiled_number_value.py +22 -0
  277. vellum/client/types/node_input_compiled_search_results_value.py +23 -0
  278. vellum/client/types/node_input_compiled_string_value.py +22 -0
  279. vellum/client/types/node_input_variable_compiled_value.py +22 -0
  280. vellum/client/types/node_output_compiled_array_value.py +34 -0
  281. vellum/client/types/node_output_compiled_chat_history_value.py +28 -0
  282. vellum/client/types/node_output_compiled_error_value.py +28 -0
  283. vellum/client/types/node_output_compiled_function_call_value.py +28 -0
  284. vellum/client/types/node_output_compiled_json_value.py +27 -0
  285. vellum/client/types/node_output_compiled_number_value.py +27 -0
  286. vellum/client/types/node_output_compiled_search_results_value.py +28 -0
  287. vellum/client/types/node_output_compiled_string_value.py +27 -0
  288. vellum/client/types/node_output_compiled_value.py +22 -0
  289. vellum/client/types/normalized_log_probs.py +21 -0
  290. vellum/client/types/normalized_token_log_probs.py +22 -0
  291. vellum/client/types/number_input.py +29 -0
  292. vellum/client/types/number_variable_value.py +20 -0
  293. vellum/client/types/number_vellum_value.py +24 -0
  294. vellum/client/types/number_vellum_value_request.py +24 -0
  295. vellum/client/types/open_ai_vectorizer_config.py +24 -0
  296. vellum/client/types/open_ai_vectorizer_config_request.py +24 -0
  297. vellum/client/types/open_ai_vectorizer_text_embedding_3_large.py +25 -0
  298. vellum/client/types/open_ai_vectorizer_text_embedding_3_large_request.py +25 -0
  299. vellum/client/types/open_ai_vectorizer_text_embedding_3_small.py +25 -0
  300. vellum/client/types/open_ai_vectorizer_text_embedding_3_small_request.py +25 -0
  301. vellum/client/types/open_ai_vectorizer_text_embedding_ada_002.py +25 -0
  302. vellum/client/types/open_ai_vectorizer_text_embedding_ada_002_request.py +25 -0
  303. vellum/client/types/paginated_container_image_read_list.py +23 -0
  304. vellum/client/types/paginated_deployment_release_tag_read_list.py +23 -0
  305. vellum/client/types/paginated_document_index_read_list.py +23 -0
  306. vellum/client/types/paginated_folder_entity_list.py +23 -0
  307. vellum/client/types/paginated_slim_deployment_read_list.py +29 -0
  308. vellum/client/types/paginated_slim_document_list.py +23 -0
  309. vellum/client/types/paginated_slim_workflow_deployment_list.py +29 -0
  310. vellum/client/types/paginated_test_suite_run_execution_list.py +29 -0
  311. vellum/client/types/paginated_test_suite_test_case_list.py +29 -0
  312. vellum/client/types/paginated_workflow_release_tag_read_list.py +23 -0
  313. vellum/client/types/pdf_search_result_meta_source.py +32 -0
  314. vellum/client/types/pdf_search_result_meta_source_request.py +32 -0
  315. vellum/client/types/plain_text_prompt_block.py +28 -0
  316. vellum/client/types/price.py +21 -0
  317. vellum/client/types/processing_failure_reason_enum.py +5 -0
  318. vellum/client/types/prompt_block.py +12 -0
  319. vellum/client/types/prompt_block_state.py +5 -0
  320. vellum/client/types/prompt_deployment_expand_meta_request.py +52 -0
  321. vellum/client/types/prompt_deployment_input_request.py +8 -0
  322. vellum/client/types/prompt_execution_meta.py +32 -0
  323. vellum/client/types/prompt_node_execution_meta.py +24 -0
  324. vellum/client/types/prompt_node_result.py +25 -0
  325. vellum/client/types/prompt_node_result_data.py +25 -0
  326. vellum/client/types/prompt_output.py +9 -0
  327. vellum/client/types/prompt_parameters.py +27 -0
  328. vellum/client/types/prompt_request_chat_history_input.py +26 -0
  329. vellum/client/types/prompt_request_input.py +8 -0
  330. vellum/client/types/prompt_request_json_input.py +25 -0
  331. vellum/client/types/prompt_request_string_input.py +25 -0
  332. vellum/client/types/prompt_settings.py +19 -0
  333. vellum/client/types/raw_prompt_execution_overrides_request.py +28 -0
  334. vellum/client/types/reducto_chunker_config.py +23 -0
  335. vellum/client/types/reducto_chunker_config_request.py +23 -0
  336. vellum/client/types/reducto_chunking.py +25 -0
  337. vellum/client/types/reducto_chunking_request.py +25 -0
  338. vellum/client/types/rejected_ad_hoc_execute_prompt_event.py +28 -0
  339. vellum/client/types/rejected_execute_prompt_event.py +28 -0
  340. vellum/client/types/rejected_execute_prompt_response.py +37 -0
  341. vellum/client/types/rejected_execute_workflow_workflow_result_event.py +28 -0
  342. vellum/client/types/rejected_prompt_execution_meta.py +25 -0
  343. vellum/client/types/rejected_workflow_node_result_event.py +39 -0
  344. vellum/client/types/release_tag_source.py +5 -0
  345. vellum/client/types/replace_test_suite_test_case_request.py +53 -0
  346. vellum/client/types/rich_text_child_block.py +7 -0
  347. vellum/client/types/rich_text_prompt_block.py +29 -0
  348. vellum/client/types/sandbox_scenario.py +33 -0
  349. vellum/client/types/scenario_input.py +10 -0
  350. vellum/client/types/scenario_input_chat_history_variable_value.py +26 -0
  351. vellum/client/types/scenario_input_json_variable_value.py +25 -0
  352. vellum/client/types/scenario_input_string_variable_value.py +25 -0
  353. vellum/client/types/search_filters_request.py +38 -0
  354. vellum/client/types/search_node_result.py +25 -0
  355. vellum/client/types/search_node_result_data.py +27 -0
  356. vellum/client/types/search_request_options_request.py +50 -0
  357. vellum/client/types/search_response.py +23 -0
  358. vellum/client/types/search_result.py +40 -0
  359. vellum/client/types/search_result_document.py +37 -0
  360. vellum/client/types/search_result_document_request.py +37 -0
  361. vellum/client/types/search_result_merging_request.py +22 -0
  362. vellum/client/types/search_result_meta.py +20 -0
  363. vellum/client/types/search_result_meta_request.py +20 -0
  364. vellum/client/types/search_result_request.py +40 -0
  365. vellum/client/types/search_results_input.py +30 -0
  366. vellum/client/types/search_results_variable_value.py +21 -0
  367. vellum/client/types/search_results_vellum_value.py +25 -0
  368. vellum/client/types/search_results_vellum_value_request.py +25 -0
  369. vellum/client/types/search_weights_request.py +27 -0
  370. vellum/client/types/secret_type_enum.py +5 -0
  371. vellum/client/types/sentence_chunker_config.py +24 -0
  372. vellum/client/types/sentence_chunker_config_request.py +24 -0
  373. vellum/client/types/sentence_chunking.py +25 -0
  374. vellum/client/types/sentence_chunking_request.py +25 -0
  375. vellum/client/types/slim_deployment_read.py +63 -0
  376. vellum/client/types/slim_document.py +70 -0
  377. vellum/client/types/slim_workflow_deployment.py +72 -0
  378. vellum/client/types/streaming_ad_hoc_execute_prompt_event.py +33 -0
  379. vellum/client/types/streaming_execute_prompt_event.py +33 -0
  380. vellum/client/types/streaming_prompt_execution_meta.py +23 -0
  381. vellum/client/types/streaming_workflow_node_result_event.py +40 -0
  382. vellum/client/types/string_chat_message_content.py +24 -0
  383. vellum/client/types/string_chat_message_content_request.py +24 -0
  384. vellum/client/types/string_input.py +29 -0
  385. vellum/client/types/string_input_request.py +29 -0
  386. vellum/client/types/string_variable_value.py +20 -0
  387. vellum/client/types/string_vellum_value.py +24 -0
  388. vellum/client/types/string_vellum_value_request.py +24 -0
  389. vellum/client/types/submit_completion_actual_request.py +48 -0
  390. vellum/client/types/submit_workflow_execution_actual_request.py +10 -0
  391. vellum/client/types/subworkflow_node_result.py +25 -0
  392. vellum/client/types/subworkflow_node_result_data.py +19 -0
  393. vellum/client/types/templating_node_array_result.py +28 -0
  394. vellum/client/types/templating_node_chat_history_result.py +22 -0
  395. vellum/client/types/templating_node_error_result.py +22 -0
  396. vellum/client/types/templating_node_function_call_result.py +22 -0
  397. vellum/client/types/templating_node_json_result.py +21 -0
  398. vellum/client/types/templating_node_number_result.py +21 -0
  399. vellum/client/types/templating_node_result.py +31 -0
  400. vellum/client/types/templating_node_result_data.py +26 -0
  401. vellum/client/types/templating_node_result_output.py +22 -0
  402. vellum/client/types/templating_node_search_results_result.py +22 -0
  403. vellum/client/types/templating_node_string_result.py +21 -0
  404. vellum/client/types/terminal_node_array_result.py +33 -0
  405. vellum/client/types/terminal_node_chat_history_result.py +27 -0
  406. vellum/client/types/terminal_node_error_result.py +27 -0
  407. vellum/client/types/terminal_node_function_call_result.py +27 -0
  408. vellum/client/types/terminal_node_json_result.py +26 -0
  409. vellum/client/types/terminal_node_number_result.py +26 -0
  410. vellum/client/types/terminal_node_result.py +31 -0
  411. vellum/client/types/terminal_node_result_data.py +26 -0
  412. vellum/client/types/terminal_node_result_output.py +22 -0
  413. vellum/client/types/terminal_node_search_results_result.py +27 -0
  414. vellum/client/types/terminal_node_string_result.py +26 -0
  415. vellum/client/types/test_case_array_variable_value.py +33 -0
  416. vellum/client/types/test_case_chat_history_variable_value.py +27 -0
  417. vellum/client/types/test_case_error_variable_value.py +27 -0
  418. vellum/client/types/test_case_function_call_variable_value.py +27 -0
  419. vellum/client/types/test_case_json_variable_value.py +26 -0
  420. vellum/client/types/test_case_number_variable_value.py +26 -0
  421. vellum/client/types/test_case_search_results_variable_value.py +27 -0
  422. vellum/client/types/test_case_string_variable_value.py +26 -0
  423. vellum/client/types/test_case_variable_value.py +22 -0
  424. vellum/client/types/test_suite_run_deployment_release_tag_exec_config.py +29 -0
  425. vellum/client/types/test_suite_run_deployment_release_tag_exec_config_data.py +27 -0
  426. vellum/client/types/test_suite_run_deployment_release_tag_exec_config_data_request.py +27 -0
  427. vellum/client/types/test_suite_run_deployment_release_tag_exec_config_request.py +31 -0
  428. vellum/client/types/test_suite_run_exec_config.py +10 -0
  429. vellum/client/types/test_suite_run_exec_config_request.py +12 -0
  430. vellum/client/types/test_suite_run_execution.py +30 -0
  431. vellum/client/types/test_suite_run_execution_array_output.py +33 -0
  432. vellum/client/types/test_suite_run_execution_chat_history_output.py +27 -0
  433. vellum/client/types/test_suite_run_execution_error_output.py +27 -0
  434. vellum/client/types/test_suite_run_execution_function_call_output.py +27 -0
  435. vellum/client/types/test_suite_run_execution_json_output.py +26 -0
  436. vellum/client/types/test_suite_run_execution_metric_definition.py +21 -0
  437. vellum/client/types/test_suite_run_execution_metric_result.py +24 -0
  438. vellum/client/types/test_suite_run_execution_number_output.py +26 -0
  439. vellum/client/types/test_suite_run_execution_output.py +22 -0
  440. vellum/client/types/test_suite_run_execution_search_results_output.py +27 -0
  441. vellum/client/types/test_suite_run_execution_string_output.py +26 -0
  442. vellum/client/types/test_suite_run_external_exec_config.py +36 -0
  443. vellum/client/types/test_suite_run_external_exec_config_data.py +29 -0
  444. vellum/client/types/test_suite_run_external_exec_config_data_request.py +31 -0
  445. vellum/client/types/test_suite_run_external_exec_config_request.py +38 -0
  446. vellum/client/types/test_suite_run_metric_error_output.py +26 -0
  447. vellum/client/types/test_suite_run_metric_json_output.py +25 -0
  448. vellum/client/types/test_suite_run_metric_number_output.py +25 -0
  449. vellum/client/types/test_suite_run_metric_output.py +14 -0
  450. vellum/client/types/test_suite_run_metric_string_output.py +25 -0
  451. vellum/client/types/test_suite_run_read.py +46 -0
  452. vellum/client/types/test_suite_run_state.py +5 -0
  453. vellum/client/types/test_suite_run_test_suite.py +21 -0
  454. vellum/client/types/test_suite_run_workflow_release_tag_exec_config.py +29 -0
  455. vellum/client/types/test_suite_run_workflow_release_tag_exec_config_data.py +27 -0
  456. vellum/client/types/test_suite_run_workflow_release_tag_exec_config_data_request.py +27 -0
  457. vellum/client/types/test_suite_run_workflow_release_tag_exec_config_request.py +31 -0
  458. vellum/client/types/test_suite_test_case.py +30 -0
  459. vellum/client/types/test_suite_test_case_bulk_operation_request.py +14 -0
  460. vellum/client/types/test_suite_test_case_bulk_result.py +14 -0
  461. vellum/client/types/test_suite_test_case_create_bulk_operation_request.py +38 -0
  462. vellum/client/types/test_suite_test_case_created_bulk_result.py +26 -0
  463. vellum/client/types/test_suite_test_case_created_bulk_result_data.py +23 -0
  464. vellum/client/types/test_suite_test_case_delete_bulk_operation_data_request.py +19 -0
  465. vellum/client/types/test_suite_test_case_delete_bulk_operation_request.py +33 -0
  466. vellum/client/types/test_suite_test_case_deleted_bulk_result.py +30 -0
  467. vellum/client/types/test_suite_test_case_deleted_bulk_result_data.py +23 -0
  468. vellum/client/types/test_suite_test_case_rejected_bulk_result.py +32 -0
  469. vellum/client/types/test_suite_test_case_replace_bulk_operation_request.py +38 -0
  470. vellum/client/types/test_suite_test_case_replaced_bulk_result.py +30 -0
  471. vellum/client/types/test_suite_test_case_replaced_bulk_result_data.py +23 -0
  472. vellum/client/types/test_suite_test_case_upsert_bulk_operation_request.py +38 -0
  473. vellum/client/types/token_overlapping_window_chunker_config.py +24 -0
  474. vellum/client/types/token_overlapping_window_chunker_config_request.py +24 -0
  475. vellum/client/types/token_overlapping_window_chunking.py +25 -0
  476. vellum/client/types/token_overlapping_window_chunking_request.py +25 -0
  477. vellum/client/types/unit_enum.py +5 -0
  478. vellum/client/types/upload_document_response.py +22 -0
  479. vellum/client/types/upsert_test_suite_test_case_request.py +49 -0
  480. vellum/client/types/variable_prompt_block.py +28 -0
  481. vellum/client/types/vellum_audio.py +24 -0
  482. vellum/client/types/vellum_audio_request.py +24 -0
  483. vellum/client/types/vellum_error.py +21 -0
  484. vellum/client/types/vellum_error_code_enum.py +15 -0
  485. vellum/client/types/vellum_error_request.py +21 -0
  486. vellum/client/types/vellum_image.py +20 -0
  487. vellum/client/types/vellum_image_request.py +20 -0
  488. vellum/client/types/vellum_value.py +29 -0
  489. vellum/client/types/vellum_value_logical_condition_group_request.py +38 -0
  490. vellum/client/types/vellum_value_logical_condition_request.py +34 -0
  491. vellum/client/types/vellum_value_logical_expression_request.py +12 -0
  492. vellum/client/types/vellum_value_request.py +29 -0
  493. vellum/client/types/vellum_variable.py +33 -0
  494. vellum/client/types/vellum_variable_extensions.py +23 -0
  495. vellum/client/types/vellum_variable_type.py +20 -0
  496. vellum/client/types/workflow_deployment_read.py +77 -0
  497. vellum/client/types/workflow_event_error.py +21 -0
  498. vellum/client/types/workflow_execution_actual_chat_history_request.py +49 -0
  499. vellum/client/types/workflow_execution_actual_json_request.py +48 -0
  500. vellum/client/types/workflow_execution_actual_string_request.py +48 -0
  501. vellum/client/types/workflow_execution_event_error_code.py +17 -0
  502. vellum/client/types/workflow_execution_event_type.py +5 -0
  503. vellum/client/types/workflow_execution_node_result_event.py +34 -0
  504. vellum/client/types/workflow_execution_workflow_result_event.py +36 -0
  505. vellum/client/types/workflow_expand_meta_request.py +22 -0
  506. vellum/client/types/workflow_node_result_data.py +28 -0
  507. vellum/client/types/workflow_node_result_event.py +14 -0
  508. vellum/client/types/workflow_node_result_event_state.py +7 -0
  509. vellum/client/types/workflow_output.py +24 -0
  510. vellum/client/types/workflow_output_array.py +37 -0
  511. vellum/client/types/workflow_output_chat_history.py +31 -0
  512. vellum/client/types/workflow_output_error.py +31 -0
  513. vellum/client/types/workflow_output_function_call.py +31 -0
  514. vellum/client/types/workflow_output_image.py +31 -0
  515. vellum/client/types/workflow_output_json.py +30 -0
  516. vellum/client/types/workflow_output_number.py +30 -0
  517. vellum/client/types/workflow_output_search_results.py +31 -0
  518. vellum/client/types/workflow_output_string.py +30 -0
  519. vellum/client/types/workflow_push_deployment_config_request.py +22 -0
  520. vellum/client/types/workflow_push_exec_config.py +3 -0
  521. vellum/client/types/workflow_push_response.py +20 -0
  522. vellum/client/types/workflow_release_tag_read.py +37 -0
  523. vellum/client/types/workflow_release_tag_workflow_deployment_history_item.py +28 -0
  524. vellum/client/types/workflow_request_chat_history_input_request.py +30 -0
  525. vellum/client/types/workflow_request_input_request.py +14 -0
  526. vellum/client/types/workflow_request_json_input_request.py +29 -0
  527. vellum/client/types/workflow_request_number_input_request.py +29 -0
  528. vellum/client/types/workflow_request_string_input_request.py +29 -0
  529. vellum/client/types/workflow_result_event.py +39 -0
  530. vellum/client/types/workflow_result_event_output_data.py +22 -0
  531. vellum/client/types/workflow_result_event_output_data_array.py +41 -0
  532. vellum/client/types/workflow_result_event_output_data_chat_history.py +35 -0
  533. vellum/client/types/workflow_result_event_output_data_error.py +35 -0
  534. vellum/client/types/workflow_result_event_output_data_function_call.py +35 -0
  535. vellum/client/types/workflow_result_event_output_data_json.py +34 -0
  536. vellum/client/types/workflow_result_event_output_data_number.py +34 -0
  537. vellum/client/types/workflow_result_event_output_data_search_results.py +35 -0
  538. vellum/client/types/workflow_result_event_output_data_string.py +37 -0
  539. vellum/client/types/workflow_stream_event.py +7 -0
  540. vellum/client/types/workspace_secret_read.py +25 -0
  541. vellum/core/__init__.py +2 -46
  542. vellum/core/api_error.py +2 -14
  543. vellum/core/client_wrapper.py +2 -58
  544. vellum/core/datetime_utils.py +2 -27
  545. vellum/core/file.py +2 -61
  546. vellum/core/http_client.py +2 -486
  547. vellum/core/jsonable_encoder.py +2 -100
  548. vellum/core/pydantic_utilities.py +2 -295
  549. vellum/core/query_encoder.py +2 -57
  550. vellum/core/remove_none_from_dict.py +2 -10
  551. vellum/core/request_options.py +2 -31
  552. vellum/core/serialization.py +2 -271
  553. vellum/environment.py +2 -16
  554. vellum/errors/__init__.py +2 -7
  555. vellum/errors/bad_request_error.py +2 -8
  556. vellum/errors/forbidden_error.py +2 -8
  557. vellum/errors/internal_server_error.py +2 -8
  558. vellum/errors/not_found_error.py +2 -8
  559. vellum/{lib/test_suites → evaluations}/resources.py +20 -51
  560. vellum/plugins/vellum_mypy.py +11 -0
  561. vellum/resources/__init__.py +2 -46
  562. vellum/resources/ad_hoc/__init__.py +2 -1
  563. vellum/resources/ad_hoc/client.py +2 -458
  564. vellum/resources/container_images/__init__.py +2 -1
  565. vellum/resources/container_images/client.py +2 -501
  566. vellum/resources/deployments/__init__.py +2 -4
  567. vellum/resources/deployments/client.py +2 -974
  568. vellum/resources/deployments/types/__init__.py +2 -5
  569. vellum/resources/deployments/types/deployments_list_request_status.py +2 -4
  570. vellum/resources/deployments/types/list_deployment_release_tags_request_source.py +2 -4
  571. vellum/resources/document_indexes/__init__.py +2 -4
  572. vellum/resources/document_indexes/client.py +2 -1153
  573. vellum/resources/document_indexes/types/__init__.py +2 -4
  574. vellum/resources/document_indexes/types/document_indexes_list_request_status.py +2 -4
  575. vellum/resources/documents/__init__.py +2 -1
  576. vellum/resources/documents/client.py +2 -780
  577. vellum/resources/folder_entities/__init__.py +2 -4
  578. vellum/resources/folder_entities/client.py +2 -332
  579. vellum/resources/folder_entities/types/__init__.py +2 -4
  580. vellum/resources/folder_entities/types/folder_entities_list_request_entity_status.py +2 -4
  581. vellum/resources/metric_definitions/__init__.py +2 -1
  582. vellum/resources/metric_definitions/client.py +2 -177
  583. vellum/resources/sandboxes/__init__.py +2 -1
  584. vellum/resources/sandboxes/client.py +2 -480
  585. vellum/resources/test_suite_runs/__init__.py +2 -1
  586. vellum/resources/test_suite_runs/client.py +2 -444
  587. vellum/resources/test_suites/__init__.py +2 -1
  588. vellum/resources/test_suites/client.py +2 -687
  589. vellum/resources/workflow_deployments/__init__.py +2 -4
  590. vellum/resources/workflow_deployments/client.py +2 -692
  591. vellum/resources/workflow_deployments/types/__init__.py +2 -5
  592. vellum/resources/workflow_deployments/types/list_workflow_release_tags_request_source.py +2 -4
  593. vellum/resources/workflow_deployments/types/workflow_deployments_list_request_status.py +2 -4
  594. vellum/resources/workflow_sandboxes/__init__.py +2 -1
  595. vellum/resources/workflow_sandboxes/client.py +2 -189
  596. vellum/resources/workflows/__init__.py +2 -4
  597. vellum/resources/workflows/client.py +2 -332
  598. vellum/resources/workflows/types/__init__.py +2 -4
  599. vellum/resources/workflows/types/workflows_pull_request_format.py +2 -4
  600. vellum/resources/workspace_secrets/__init__.py +2 -1
  601. vellum/resources/workspace_secrets/client.py +2 -265
  602. vellum/types/__init__.py +2 -978
  603. vellum/types/ad_hoc_execute_prompt_event.py +2 -13
  604. vellum/types/ad_hoc_expand_meta.py +2 -36
  605. vellum/types/ad_hoc_fulfilled_prompt_execution_meta.py +2 -26
  606. vellum/types/ad_hoc_initiated_prompt_execution_meta.py +2 -23
  607. vellum/types/ad_hoc_rejected_prompt_execution_meta.py +2 -24
  608. vellum/types/ad_hoc_streaming_prompt_execution_meta.py +2 -22
  609. vellum/types/add_openai_api_key_enum.py +2 -2
  610. vellum/types/api_node_result.py +2 -24
  611. vellum/types/api_node_result_data.py +2 -27
  612. vellum/types/array_chat_message_content.py +2 -24
  613. vellum/types/array_chat_message_content_item.py +2 -10
  614. vellum/types/array_chat_message_content_item_request.py +2 -13
  615. vellum/types/array_chat_message_content_request.py +2 -24
  616. vellum/types/array_input.py +2 -35
  617. vellum/types/array_variable_value.py +2 -26
  618. vellum/types/array_variable_value_item.py +2 -28
  619. vellum/types/array_vellum_value.py +2 -30
  620. vellum/types/array_vellum_value_request.py +2 -30
  621. vellum/types/audio_chat_message_content.py +2 -24
  622. vellum/types/audio_chat_message_content_request.py +2 -24
  623. vellum/types/audio_variable_value.py +2 -24
  624. vellum/types/audio_vellum_value.py +2 -24
  625. vellum/types/audio_vellum_value_request.py +2 -24
  626. vellum/types/basic_vectorizer_intfloat_multilingual_e_5_large.py +2 -23
  627. vellum/types/basic_vectorizer_intfloat_multilingual_e_5_large_request.py +2 -23
  628. vellum/types/basic_vectorizer_sentence_transformers_multi_qa_mpnet_base_cos_v_1.py +2 -25
  629. vellum/types/basic_vectorizer_sentence_transformers_multi_qa_mpnet_base_cos_v_1_request.py +2 -25
  630. vellum/types/basic_vectorizer_sentence_transformers_multi_qa_mpnet_base_dot_v_1.py +2 -25
  631. vellum/types/basic_vectorizer_sentence_transformers_multi_qa_mpnet_base_dot_v_1_request.py +2 -25
  632. vellum/types/chat_history_input.py +2 -29
  633. vellum/types/chat_history_input_request.py +2 -29
  634. vellum/types/chat_history_variable_value.py +2 -20
  635. vellum/types/chat_history_vellum_value.py +2 -24
  636. vellum/types/chat_history_vellum_value_request.py +2 -24
  637. vellum/types/chat_message.py +2 -26
  638. vellum/types/chat_message_content.py +2 -15
  639. vellum/types/chat_message_content_request.py +2 -15
  640. vellum/types/chat_message_prompt_block.py +2 -38
  641. vellum/types/chat_message_request.py +2 -26
  642. vellum/types/chat_message_role.py +2 -4
  643. vellum/types/code_execution_node_array_result.py +2 -27
  644. vellum/types/code_execution_node_chat_history_result.py +2 -21
  645. vellum/types/code_execution_node_error_result.py +2 -21
  646. vellum/types/code_execution_node_function_call_result.py +2 -21
  647. vellum/types/code_execution_node_json_result.py +2 -20
  648. vellum/types/code_execution_node_number_result.py +2 -20
  649. vellum/types/code_execution_node_result.py +2 -30
  650. vellum/types/code_execution_node_result_data.py +2 -26
  651. vellum/types/code_execution_node_result_output.py +2 -21
  652. vellum/types/code_execution_node_search_results_result.py +2 -21
  653. vellum/types/code_execution_node_string_result.py +2 -20
  654. vellum/types/code_execution_package.py +2 -19
  655. vellum/types/code_execution_runtime.py +2 -4
  656. vellum/types/code_executor_input.py +2 -23
  657. vellum/types/code_executor_response.py +2 -26
  658. vellum/types/code_executor_secret_input.py +2 -28
  659. vellum/types/compile_prompt_deployment_expand_meta_request.py +2 -31
  660. vellum/types/compile_prompt_meta.py +2 -24
  661. vellum/types/components_schemas_pdf_search_result_meta_source.py +2 -4
  662. vellum/types/components_schemas_pdf_search_result_meta_source_request.py +2 -4
  663. vellum/types/condition_combinator.py +2 -4
  664. vellum/types/conditional_node_result.py +2 -24
  665. vellum/types/conditional_node_result_data.py +2 -18
  666. vellum/types/container_image_read.py +2 -27
  667. vellum/types/create_test_suite_test_case_request.py +2 -47
  668. vellum/types/deployment_provider_payload_response.py +2 -21
  669. vellum/types/deployment_provider_payload_response_payload.py +2 -4
  670. vellum/types/deployment_read.py +2 -72
  671. vellum/types/deployment_release_tag_deployment_history_item.py +2 -20
  672. vellum/types/deployment_release_tag_read.py +2 -36
  673. vellum/types/docker_service_token.py +2 -20
  674. vellum/types/document_document_to_document_index.py +2 -38
  675. vellum/types/document_index_chunking.py +2 -7
  676. vellum/types/document_index_chunking_request.py +2 -9
  677. vellum/types/document_index_indexing_config.py +2 -21
  678. vellum/types/document_index_indexing_config_request.py +2 -21
  679. vellum/types/document_index_read.py +2 -51
  680. vellum/types/document_processing_state.py +2 -6
  681. vellum/types/document_read.py +2 -48
  682. vellum/types/document_status.py +2 -4
  683. vellum/types/enriched_normalized_completion.py +2 -58
  684. vellum/types/entity_status.py +2 -4
  685. vellum/types/entity_visibility.py +2 -4
  686. vellum/types/environment_enum.py +2 -4
  687. vellum/types/ephemeral_prompt_cache_config.py +2 -19
  688. vellum/types/ephemeral_prompt_cache_config_type_enum.py +2 -4
  689. vellum/types/error_input.py +2 -29
  690. vellum/types/error_variable_value.py +2 -20
  691. vellum/types/error_vellum_value.py +2 -24
  692. vellum/types/error_vellum_value_request.py +2 -24
  693. vellum/types/execute_prompt_event.py +2 -10
  694. vellum/types/execute_prompt_response.py +2 -6
  695. vellum/types/execute_workflow_response.py +2 -28
  696. vellum/types/execute_workflow_workflow_result_event.py +2 -8
  697. vellum/types/execution_array_vellum_value.py +2 -36
  698. vellum/types/execution_chat_history_vellum_value.py +2 -30
  699. vellum/types/execution_error_vellum_value.py +2 -30
  700. vellum/types/execution_function_call_vellum_value.py +2 -30
  701. vellum/types/execution_json_vellum_value.py +2 -29
  702. vellum/types/execution_number_vellum_value.py +2 -29
  703. vellum/types/execution_search_results_vellum_value.py +2 -30
  704. vellum/types/execution_string_vellum_value.py +2 -29
  705. vellum/types/execution_vellum_value.py +2 -21
  706. vellum/types/external_test_case_execution.py +2 -30
  707. vellum/types/external_test_case_execution_request.py +2 -30
  708. vellum/types/finish_reason_enum.py +2 -4
  709. vellum/types/folder_entity.py +2 -15
  710. vellum/types/folder_entity_document_index.py +2 -25
  711. vellum/types/folder_entity_document_index_data.py +2 -24
  712. vellum/types/folder_entity_folder.py +2 -25
  713. vellum/types/folder_entity_folder_data.py +2 -23
  714. vellum/types/folder_entity_prompt_sandbox.py +2 -25
  715. vellum/types/folder_entity_prompt_sandbox_data.py +2 -25
  716. vellum/types/folder_entity_test_suite.py +2 -25
  717. vellum/types/folder_entity_test_suite_data.py +2 -24
  718. vellum/types/folder_entity_workflow_sandbox.py +2 -25
  719. vellum/types/folder_entity_workflow_sandbox_data.py +2 -25
  720. vellum/types/fulfilled_ad_hoc_execute_prompt_event.py +2 -27
  721. vellum/types/fulfilled_enum.py +2 -4
  722. vellum/types/fulfilled_execute_prompt_event.py +2 -27
  723. vellum/types/fulfilled_execute_prompt_response.py +2 -36
  724. vellum/types/fulfilled_execute_workflow_workflow_result_event.py +2 -35
  725. vellum/types/fulfilled_prompt_execution_meta.py +2 -26
  726. vellum/types/fulfilled_workflow_node_result_event.py +2 -39
  727. vellum/types/function_call.py +2 -26
  728. vellum/types/function_call_chat_message_content.py +2 -24
  729. vellum/types/function_call_chat_message_content_request.py +2 -24
  730. vellum/types/function_call_chat_message_content_value.py +2 -24
  731. vellum/types/function_call_chat_message_content_value_request.py +2 -24
  732. vellum/types/function_call_input.py +2 -29
  733. vellum/types/function_call_request.py +2 -26
  734. vellum/types/function_call_variable_value.py +2 -20
  735. vellum/types/function_call_vellum_value.py +2 -24
  736. vellum/types/function_call_vellum_value_request.py +2 -24
  737. vellum/types/function_definition.py +2 -30
  738. vellum/types/generate_options_request.py +2 -25
  739. vellum/types/generate_request.py +2 -32
  740. vellum/types/generate_response.py +2 -24
  741. vellum/types/generate_result.py +2 -28
  742. vellum/types/generate_result_data.py +2 -22
  743. vellum/types/generate_result_error.py +2 -21
  744. vellum/types/generate_stream_response.py +2 -19
  745. vellum/types/generate_stream_result.py +2 -22
  746. vellum/types/generate_stream_result_data.py +2 -20
  747. vellum/types/google_vertex_ai_vectorizer_config.py +2 -19
  748. vellum/types/google_vertex_ai_vectorizer_config_request.py +2 -19
  749. vellum/types/google_vertex_ai_vectorizer_text_embedding_004.py +2 -20
  750. vellum/types/google_vertex_ai_vectorizer_text_embedding_004_request.py +2 -20
  751. vellum/types/google_vertex_ai_vectorizer_text_multilingual_embedding_002.py +2 -20
  752. vellum/types/google_vertex_ai_vectorizer_text_multilingual_embedding_002_request.py +2 -20
  753. vellum/types/hkunlp_instructor_xl_vectorizer.py +2 -24
  754. vellum/types/hkunlp_instructor_xl_vectorizer_request.py +2 -24
  755. vellum/types/image_chat_message_content.py +2 -24
  756. vellum/types/image_chat_message_content_request.py +2 -24
  757. vellum/types/image_variable_value.py +2 -24
  758. vellum/types/image_vellum_value.py +2 -24
  759. vellum/types/image_vellum_value_request.py +2 -24
  760. vellum/types/indexing_config_vectorizer.py +2 -29
  761. vellum/types/indexing_config_vectorizer_request.py +2 -29
  762. vellum/types/indexing_state_enum.py +2 -6
  763. vellum/types/initiated_ad_hoc_execute_prompt_event.py +2 -25
  764. vellum/types/initiated_execute_prompt_event.py +2 -25
  765. vellum/types/initiated_prompt_execution_meta.py +2 -25
  766. vellum/types/initiated_workflow_node_result_event.py +2 -38
  767. vellum/types/instructor_vectorizer_config.py +2 -24
  768. vellum/types/instructor_vectorizer_config_request.py +2 -24
  769. vellum/types/iteration_state_enum.py +2 -4
  770. vellum/types/jinja_prompt_block.py +2 -27
  771. vellum/types/json_input.py +2 -28
  772. vellum/types/json_input_request.py +2 -28
  773. vellum/types/json_variable_value.py +2 -19
  774. vellum/types/json_vellum_value.py +2 -23
  775. vellum/types/json_vellum_value_request.py +2 -23
  776. vellum/types/logical_operator.py +2 -28
  777. vellum/types/logprobs_enum.py +2 -4
  778. vellum/types/map_node_result.py +2 -24
  779. vellum/types/map_node_result_data.py +2 -20
  780. vellum/types/merge_node_result.py +2 -24
  781. vellum/types/merge_node_result_data.py +2 -18
  782. vellum/types/metadata_filter_config_request.py +2 -35
  783. vellum/types/metadata_filter_rule_combinator.py +2 -4
  784. vellum/types/metadata_filter_rule_request.py +2 -30
  785. vellum/types/metadata_filters_request.py +2 -6
  786. vellum/types/metric_definition_execution.py +2 -19
  787. vellum/types/metric_definition_input.py +2 -8
  788. vellum/types/metric_node_result.py +2 -22
  789. vellum/types/ml_model_usage.py +2 -24
  790. vellum/types/named_scenario_input_chat_history_variable_value_request.py +2 -25
  791. vellum/types/named_scenario_input_json_variable_value_request.py +2 -24
  792. vellum/types/named_scenario_input_request.py +2 -11
  793. vellum/types/named_scenario_input_string_variable_value_request.py +2 -24
  794. vellum/types/named_test_case_array_variable_value.py +2 -31
  795. vellum/types/named_test_case_array_variable_value_request.py +2 -33
  796. vellum/types/named_test_case_chat_history_variable_value.py +2 -25
  797. vellum/types/named_test_case_chat_history_variable_value_request.py +2 -25
  798. vellum/types/named_test_case_error_variable_value.py +2 -25
  799. vellum/types/named_test_case_error_variable_value_request.py +2 -25
  800. vellum/types/named_test_case_function_call_variable_value.py +2 -25
  801. vellum/types/named_test_case_function_call_variable_value_request.py +2 -25
  802. vellum/types/named_test_case_json_variable_value.py +2 -24
  803. vellum/types/named_test_case_json_variable_value_request.py +2 -24
  804. vellum/types/named_test_case_number_variable_value.py +2 -24
  805. vellum/types/named_test_case_number_variable_value_request.py +2 -24
  806. vellum/types/named_test_case_search_results_variable_value.py +2 -25
  807. vellum/types/named_test_case_search_results_variable_value_request.py +2 -25
  808. vellum/types/named_test_case_string_variable_value.py +2 -24
  809. vellum/types/named_test_case_string_variable_value_request.py +2 -24
  810. vellum/types/named_test_case_variable_value.py +2 -21
  811. vellum/types/named_test_case_variable_value_request.py +2 -21
  812. vellum/types/node_input_compiled_array_value.py +2 -28
  813. vellum/types/node_input_compiled_chat_history_value.py +2 -22
  814. vellum/types/node_input_compiled_error_value.py +2 -22
  815. vellum/types/node_input_compiled_function_call_value.py +2 -22
  816. vellum/types/node_input_compiled_json_value.py +2 -21
  817. vellum/types/node_input_compiled_number_value.py +2 -21
  818. vellum/types/node_input_compiled_search_results_value.py +2 -22
  819. vellum/types/node_input_compiled_string_value.py +2 -21
  820. vellum/types/node_input_variable_compiled_value.py +2 -21
  821. vellum/types/node_output_compiled_array_value.py +2 -33
  822. vellum/types/node_output_compiled_chat_history_value.py +2 -27
  823. vellum/types/node_output_compiled_error_value.py +2 -27
  824. vellum/types/node_output_compiled_function_call_value.py +2 -27
  825. vellum/types/node_output_compiled_json_value.py +2 -26
  826. vellum/types/node_output_compiled_number_value.py +2 -26
  827. vellum/types/node_output_compiled_search_results_value.py +2 -27
  828. vellum/types/node_output_compiled_string_value.py +2 -26
  829. vellum/types/node_output_compiled_value.py +2 -21
  830. vellum/types/normalized_log_probs.py +2 -20
  831. vellum/types/normalized_token_log_probs.py +2 -21
  832. vellum/types/number_input.py +2 -28
  833. vellum/types/number_variable_value.py +2 -19
  834. vellum/types/number_vellum_value.py +2 -23
  835. vellum/types/number_vellum_value_request.py +2 -23
  836. vellum/types/open_ai_vectorizer_config.py +2 -23
  837. vellum/types/open_ai_vectorizer_config_request.py +2 -23
  838. vellum/types/open_ai_vectorizer_text_embedding_3_large.py +2 -24
  839. vellum/types/open_ai_vectorizer_text_embedding_3_large_request.py +2 -24
  840. vellum/types/open_ai_vectorizer_text_embedding_3_small.py +2 -24
  841. vellum/types/open_ai_vectorizer_text_embedding_3_small_request.py +2 -24
  842. vellum/types/open_ai_vectorizer_text_embedding_ada_002.py +2 -24
  843. vellum/types/open_ai_vectorizer_text_embedding_ada_002_request.py +2 -24
  844. vellum/types/paginated_container_image_read_list.py +2 -22
  845. vellum/types/paginated_deployment_release_tag_read_list.py +2 -22
  846. vellum/types/paginated_document_index_read_list.py +2 -22
  847. vellum/types/paginated_folder_entity_list.py +2 -22
  848. vellum/types/paginated_slim_deployment_read_list.py +2 -28
  849. vellum/types/paginated_slim_document_list.py +2 -22
  850. vellum/types/paginated_slim_workflow_deployment_list.py +2 -28
  851. vellum/types/paginated_test_suite_run_execution_list.py +2 -28
  852. vellum/types/paginated_test_suite_test_case_list.py +2 -28
  853. vellum/types/paginated_workflow_release_tag_read_list.py +2 -22
  854. vellum/types/pdf_search_result_meta_source.py +2 -31
  855. vellum/types/pdf_search_result_meta_source_request.py +2 -31
  856. vellum/types/plain_text_prompt_block.py +2 -27
  857. vellum/types/price.py +2 -20
  858. vellum/types/processing_failure_reason_enum.py +2 -4
  859. vellum/types/prompt_block.py +2 -11
  860. vellum/types/prompt_block_state.py +2 -4
  861. vellum/types/prompt_deployment_expand_meta_request.py +2 -51
  862. vellum/types/prompt_deployment_input_request.py +2 -7
  863. vellum/types/prompt_execution_meta.py +2 -31
  864. vellum/types/prompt_node_execution_meta.py +2 -23
  865. vellum/types/prompt_node_result.py +2 -24
  866. vellum/types/prompt_node_result_data.py +2 -24
  867. vellum/types/prompt_output.py +2 -8
  868. vellum/types/prompt_parameters.py +2 -26
  869. vellum/types/prompt_request_chat_history_input.py +2 -25
  870. vellum/types/prompt_request_input.py +2 -7
  871. vellum/types/prompt_request_json_input.py +2 -24
  872. vellum/types/prompt_request_string_input.py +2 -24
  873. vellum/types/prompt_settings.py +2 -18
  874. vellum/types/raw_prompt_execution_overrides_request.py +2 -27
  875. vellum/types/reducto_chunker_config.py +2 -22
  876. vellum/types/reducto_chunker_config_request.py +2 -22
  877. vellum/types/reducto_chunking.py +2 -24
  878. vellum/types/reducto_chunking_request.py +2 -24
  879. vellum/types/rejected_ad_hoc_execute_prompt_event.py +2 -27
  880. vellum/types/rejected_execute_prompt_event.py +2 -27
  881. vellum/types/rejected_execute_prompt_response.py +2 -36
  882. vellum/types/rejected_execute_workflow_workflow_result_event.py +2 -27
  883. vellum/types/rejected_prompt_execution_meta.py +2 -24
  884. vellum/types/rejected_workflow_node_result_event.py +2 -38
  885. vellum/types/release_tag_source.py +2 -4
  886. vellum/types/replace_test_suite_test_case_request.py +2 -52
  887. vellum/types/rich_text_child_block.py +2 -6
  888. vellum/types/rich_text_prompt_block.py +2 -28
  889. vellum/types/sandbox_scenario.py +2 -32
  890. vellum/types/scenario_input.py +2 -9
  891. vellum/types/scenario_input_chat_history_variable_value.py +2 -25
  892. vellum/types/scenario_input_json_variable_value.py +2 -24
  893. vellum/types/scenario_input_string_variable_value.py +2 -24
  894. vellum/types/search_filters_request.py +2 -37
  895. vellum/types/search_node_result.py +2 -24
  896. vellum/types/search_node_result_data.py +2 -26
  897. vellum/types/search_request_options_request.py +2 -49
  898. vellum/types/search_response.py +2 -22
  899. vellum/types/search_result.py +2 -39
  900. vellum/types/search_result_document.py +2 -36
  901. vellum/types/search_result_document_request.py +2 -36
  902. vellum/types/search_result_merging_request.py +2 -21
  903. vellum/types/search_result_meta.py +2 -19
  904. vellum/types/search_result_meta_request.py +2 -19
  905. vellum/types/search_result_request.py +2 -39
  906. vellum/types/search_results_input.py +2 -29
  907. vellum/types/search_results_variable_value.py +2 -20
  908. vellum/types/search_results_vellum_value.py +2 -24
  909. vellum/types/search_results_vellum_value_request.py +2 -24
  910. vellum/types/search_weights_request.py +2 -26
  911. vellum/types/secret_type_enum.py +2 -4
  912. vellum/types/sentence_chunker_config.py +2 -23
  913. vellum/types/sentence_chunker_config_request.py +2 -23
  914. vellum/types/sentence_chunking.py +2 -24
  915. vellum/types/sentence_chunking_request.py +2 -24
  916. vellum/types/slim_deployment_read.py +2 -62
  917. vellum/types/slim_document.py +2 -69
  918. vellum/types/slim_workflow_deployment.py +2 -71
  919. vellum/types/streaming_ad_hoc_execute_prompt_event.py +2 -32
  920. vellum/types/streaming_execute_prompt_event.py +2 -32
  921. vellum/types/streaming_prompt_execution_meta.py +2 -22
  922. vellum/types/streaming_workflow_node_result_event.py +2 -39
  923. vellum/types/string_chat_message_content.py +2 -23
  924. vellum/types/string_chat_message_content_request.py +2 -23
  925. vellum/types/string_input.py +2 -28
  926. vellum/types/string_input_request.py +2 -28
  927. vellum/types/string_variable_value.py +2 -19
  928. vellum/types/string_vellum_value.py +2 -23
  929. vellum/types/string_vellum_value_request.py +2 -23
  930. vellum/types/submit_completion_actual_request.py +2 -47
  931. vellum/types/submit_workflow_execution_actual_request.py +2 -9
  932. vellum/types/subworkflow_node_result.py +2 -24
  933. vellum/types/subworkflow_node_result_data.py +2 -18
  934. vellum/types/templating_node_array_result.py +2 -27
  935. vellum/types/templating_node_chat_history_result.py +2 -21
  936. vellum/types/templating_node_error_result.py +2 -21
  937. vellum/types/templating_node_function_call_result.py +2 -21
  938. vellum/types/templating_node_json_result.py +2 -20
  939. vellum/types/templating_node_number_result.py +2 -20
  940. vellum/types/templating_node_result.py +2 -30
  941. vellum/types/templating_node_result_data.py +2 -25
  942. vellum/types/templating_node_result_output.py +2 -21
  943. vellum/types/templating_node_search_results_result.py +2 -21
  944. vellum/types/templating_node_string_result.py +2 -20
  945. vellum/types/terminal_node_array_result.py +2 -32
  946. vellum/types/terminal_node_chat_history_result.py +2 -26
  947. vellum/types/terminal_node_error_result.py +2 -26
  948. vellum/types/terminal_node_function_call_result.py +2 -26
  949. vellum/types/terminal_node_json_result.py +2 -25
  950. vellum/types/terminal_node_number_result.py +2 -25
  951. vellum/types/terminal_node_result.py +2 -30
  952. vellum/types/terminal_node_result_data.py +2 -25
  953. vellum/types/terminal_node_result_output.py +2 -21
  954. vellum/types/terminal_node_search_results_result.py +2 -26
  955. vellum/types/terminal_node_string_result.py +2 -25
  956. vellum/types/test_case_array_variable_value.py +2 -32
  957. vellum/types/test_case_chat_history_variable_value.py +2 -26
  958. vellum/types/test_case_error_variable_value.py +2 -26
  959. vellum/types/test_case_function_call_variable_value.py +2 -26
  960. vellum/types/test_case_json_variable_value.py +2 -25
  961. vellum/types/test_case_number_variable_value.py +2 -25
  962. vellum/types/test_case_search_results_variable_value.py +2 -26
  963. vellum/types/test_case_string_variable_value.py +2 -25
  964. vellum/types/test_case_variable_value.py +2 -21
  965. vellum/types/test_suite_run_deployment_release_tag_exec_config.py +2 -28
  966. vellum/types/test_suite_run_deployment_release_tag_exec_config_data.py +2 -26
  967. vellum/types/test_suite_run_deployment_release_tag_exec_config_data_request.py +2 -26
  968. vellum/types/test_suite_run_deployment_release_tag_exec_config_request.py +2 -30
  969. vellum/types/test_suite_run_exec_config.py +2 -9
  970. vellum/types/test_suite_run_exec_config_request.py +2 -11
  971. vellum/types/test_suite_run_execution.py +2 -29
  972. vellum/types/test_suite_run_execution_array_output.py +2 -32
  973. vellum/types/test_suite_run_execution_chat_history_output.py +2 -26
  974. vellum/types/test_suite_run_execution_error_output.py +2 -26
  975. vellum/types/test_suite_run_execution_function_call_output.py +2 -26
  976. vellum/types/test_suite_run_execution_json_output.py +2 -25
  977. vellum/types/test_suite_run_execution_metric_definition.py +2 -20
  978. vellum/types/test_suite_run_execution_metric_result.py +2 -23
  979. vellum/types/test_suite_run_execution_number_output.py +2 -25
  980. vellum/types/test_suite_run_execution_output.py +2 -21
  981. vellum/types/test_suite_run_execution_search_results_output.py +2 -26
  982. vellum/types/test_suite_run_execution_string_output.py +2 -25
  983. vellum/types/test_suite_run_external_exec_config.py +2 -35
  984. vellum/types/test_suite_run_external_exec_config_data.py +2 -28
  985. vellum/types/test_suite_run_external_exec_config_data_request.py +2 -30
  986. vellum/types/test_suite_run_external_exec_config_request.py +2 -37
  987. vellum/types/test_suite_run_metric_error_output.py +2 -25
  988. vellum/types/test_suite_run_metric_json_output.py +2 -24
  989. vellum/types/test_suite_run_metric_number_output.py +2 -24
  990. vellum/types/test_suite_run_metric_output.py +2 -13
  991. vellum/types/test_suite_run_metric_string_output.py +2 -24
  992. vellum/types/test_suite_run_read.py +2 -45
  993. vellum/types/test_suite_run_state.py +2 -4
  994. vellum/types/test_suite_run_test_suite.py +2 -20
  995. vellum/types/test_suite_run_workflow_release_tag_exec_config.py +2 -28
  996. vellum/types/test_suite_run_workflow_release_tag_exec_config_data.py +2 -26
  997. vellum/types/test_suite_run_workflow_release_tag_exec_config_data_request.py +2 -26
  998. vellum/types/test_suite_run_workflow_release_tag_exec_config_request.py +2 -30
  999. vellum/types/test_suite_test_case.py +2 -29
  1000. vellum/types/test_suite_test_case_bulk_operation_request.py +2 -13
  1001. vellum/types/test_suite_test_case_bulk_result.py +2 -13
  1002. vellum/types/test_suite_test_case_create_bulk_operation_request.py +2 -37
  1003. vellum/types/test_suite_test_case_created_bulk_result.py +2 -25
  1004. vellum/types/test_suite_test_case_created_bulk_result_data.py +2 -22
  1005. vellum/types/test_suite_test_case_delete_bulk_operation_data_request.py +2 -18
  1006. vellum/types/test_suite_test_case_delete_bulk_operation_request.py +2 -32
  1007. vellum/types/test_suite_test_case_deleted_bulk_result.py +2 -29
  1008. vellum/types/test_suite_test_case_deleted_bulk_result_data.py +2 -22
  1009. vellum/types/test_suite_test_case_rejected_bulk_result.py +2 -31
  1010. vellum/types/test_suite_test_case_replace_bulk_operation_request.py +2 -37
  1011. vellum/types/test_suite_test_case_replaced_bulk_result.py +2 -29
  1012. vellum/types/test_suite_test_case_replaced_bulk_result_data.py +2 -22
  1013. vellum/types/test_suite_test_case_upsert_bulk_operation_request.py +2 -37
  1014. vellum/types/token_overlapping_window_chunker_config.py +2 -23
  1015. vellum/types/token_overlapping_window_chunker_config_request.py +2 -23
  1016. vellum/types/token_overlapping_window_chunking.py +2 -24
  1017. vellum/types/token_overlapping_window_chunking_request.py +2 -24
  1018. vellum/types/unit_enum.py +2 -4
  1019. vellum/types/upload_document_response.py +2 -21
  1020. vellum/types/upsert_test_suite_test_case_request.py +2 -48
  1021. vellum/types/variable_prompt_block.py +2 -27
  1022. vellum/types/vellum_audio.py +2 -23
  1023. vellum/types/vellum_audio_request.py +2 -23
  1024. vellum/types/vellum_error.py +2 -20
  1025. vellum/types/vellum_error_code_enum.py +2 -14
  1026. vellum/types/vellum_error_request.py +2 -20
  1027. vellum/types/vellum_image.py +2 -19
  1028. vellum/types/vellum_image_request.py +2 -19
  1029. vellum/types/vellum_value.py +2 -28
  1030. vellum/types/vellum_value_logical_condition_group_request.py +2 -37
  1031. vellum/types/vellum_value_logical_condition_request.py +2 -33
  1032. vellum/types/vellum_value_logical_expression_request.py +2 -11
  1033. vellum/types/vellum_value_request.py +2 -28
  1034. vellum/types/vellum_variable.py +2 -32
  1035. vellum/types/vellum_variable_extensions.py +2 -22
  1036. vellum/types/vellum_variable_type.py +2 -19
  1037. vellum/types/workflow_deployment_read.py +2 -76
  1038. vellum/types/workflow_event_error.py +2 -20
  1039. vellum/types/workflow_execution_actual_chat_history_request.py +2 -48
  1040. vellum/types/workflow_execution_actual_json_request.py +2 -47
  1041. vellum/types/workflow_execution_actual_string_request.py +2 -47
  1042. vellum/types/workflow_execution_event_error_code.py +2 -16
  1043. vellum/types/workflow_execution_event_type.py +2 -4
  1044. vellum/types/workflow_execution_node_result_event.py +2 -33
  1045. vellum/types/workflow_execution_workflow_result_event.py +2 -35
  1046. vellum/types/workflow_expand_meta_request.py +2 -21
  1047. vellum/types/workflow_node_result_data.py +2 -27
  1048. vellum/types/workflow_node_result_event.py +2 -13
  1049. vellum/types/workflow_node_result_event_state.py +2 -6
  1050. vellum/types/workflow_output.py +2 -23
  1051. vellum/types/workflow_output_array.py +2 -36
  1052. vellum/types/workflow_output_chat_history.py +2 -30
  1053. vellum/types/workflow_output_error.py +2 -30
  1054. vellum/types/workflow_output_function_call.py +2 -30
  1055. vellum/types/workflow_output_image.py +2 -30
  1056. vellum/types/workflow_output_json.py +2 -29
  1057. vellum/types/workflow_output_number.py +2 -29
  1058. vellum/types/workflow_output_search_results.py +2 -30
  1059. vellum/types/workflow_output_string.py +2 -29
  1060. vellum/types/workflow_push_deployment_config_request.py +2 -21
  1061. vellum/types/workflow_push_exec_config.py +2 -2
  1062. vellum/types/workflow_push_response.py +2 -19
  1063. vellum/types/workflow_release_tag_read.py +2 -36
  1064. vellum/types/workflow_release_tag_workflow_deployment_history_item.py +2 -27
  1065. vellum/types/workflow_request_chat_history_input_request.py +2 -29
  1066. vellum/types/workflow_request_input_request.py +2 -13
  1067. vellum/types/workflow_request_json_input_request.py +2 -28
  1068. vellum/types/workflow_request_number_input_request.py +2 -28
  1069. vellum/types/workflow_request_string_input_request.py +2 -28
  1070. vellum/types/workflow_result_event.py +2 -38
  1071. vellum/types/workflow_result_event_output_data.py +2 -21
  1072. vellum/types/workflow_result_event_output_data_array.py +2 -40
  1073. vellum/types/workflow_result_event_output_data_chat_history.py +2 -34
  1074. vellum/types/workflow_result_event_output_data_error.py +2 -34
  1075. vellum/types/workflow_result_event_output_data_function_call.py +2 -34
  1076. vellum/types/workflow_result_event_output_data_json.py +2 -33
  1077. vellum/types/workflow_result_event_output_data_number.py +2 -33
  1078. vellum/types/workflow_result_event_output_data_search_results.py +2 -34
  1079. vellum/types/workflow_result_event_output_data_string.py +2 -36
  1080. vellum/types/workflow_stream_event.py +2 -6
  1081. vellum/types/workspace_secret_read.py +2 -24
  1082. {vellum_ai-0.9.15.dist-info → vellum_ai-0.9.16rc2.dist-info}/LICENSE +11 -3
  1083. vellum_ai-0.9.16rc2.dist-info/METADATA +119 -0
  1084. vellum_ai-0.9.16rc2.dist-info/RECORD +1101 -0
  1085. vellum_ai-0.9.16rc2.dist-info/entry_points.txt +3 -0
  1086. vellum_cli/__init__.py +0 -0
  1087. vellum_ee/__init__.py +0 -0
  1088. vellum/lib/__init__.py +0 -5
  1089. vellum/terraform/__init__.py +0 -28
  1090. vellum/terraform/_jsii/__init__.py +0 -27
  1091. vellum/terraform/_jsii/vellum-ai_vellum@0.0.0.jsii.tgz +0 -0
  1092. vellum/terraform/constraints.json +0 -4
  1093. vellum/terraform/data_vellum_document_index/__init__.py +0 -409
  1094. vellum/terraform/data_vellum_ml_model/__init__.py +0 -409
  1095. vellum/terraform/document_index/__init__.py +0 -490
  1096. vellum/terraform/ml_model/__init__.py +0 -806
  1097. vellum/terraform/provider/__init__.py +0 -282
  1098. vellum/terraform/py.typed +0 -1
  1099. vellum/terraform/versions.json +0 -3
  1100. vellum_ai-0.9.15.dist-info/METADATA +0 -139
  1101. vellum_ai-0.9.15.dist-info/RECORD +0 -569
  1102. /vellum/{client.py → client/__init__.py} +0 -0
  1103. /vellum/{lib/test_suites → evaluations}/__init__.py +0 -0
  1104. /vellum/{lib/test_suites → evaluations}/constants.py +0 -0
  1105. /vellum/{lib/test_suites → evaluations}/exceptions.py +0 -0
  1106. /vellum/{lib → evaluations}/utils/__init__.py +0 -0
  1107. /vellum/{lib → evaluations}/utils/env.py +0 -0
  1108. /vellum/{lib → evaluations}/utils/exceptions.py +0 -0
  1109. /vellum/{lib → evaluations}/utils/paginator.py +0 -0
  1110. /vellum/{lib → evaluations}/utils/typing.py +0 -0
  1111. /vellum/{lib → evaluations}/utils/uuid.py +0 -0
  1112. {vellum_ai-0.9.15.dist-info → vellum_ai-0.9.16rc2.dist-info}/WHEEL +0 -0
@@ -0,0 +1,487 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import asyncio
4
+ import email.utils
5
+ import json
6
+ import re
7
+ import time
8
+ import typing
9
+ import urllib.parse
10
+ from contextlib import asynccontextmanager, contextmanager
11
+ from random import random
12
+
13
+ import httpx
14
+
15
+ from .file import File, convert_file_dict_to_httpx_tuples
16
+ from .jsonable_encoder import jsonable_encoder
17
+ from .query_encoder import encode_query
18
+ from .remove_none_from_dict import remove_none_from_dict
19
+ from .request_options import RequestOptions
20
+
21
+ INITIAL_RETRY_DELAY_SECONDS = 0.5
22
+ MAX_RETRY_DELAY_SECONDS = 10
23
+ MAX_RETRY_DELAY_SECONDS_FROM_HEADER = 30
24
+
25
+
26
+ def _parse_retry_after(response_headers: httpx.Headers) -> typing.Optional[float]:
27
+ """
28
+ This function parses the `Retry-After` header in a HTTP response and returns the number of seconds to wait.
29
+
30
+ Inspired by the urllib3 retry implementation.
31
+ """
32
+ retry_after_ms = response_headers.get("retry-after-ms")
33
+ if retry_after_ms is not None:
34
+ try:
35
+ return int(retry_after_ms) / 1000 if retry_after_ms > 0 else 0
36
+ except Exception:
37
+ pass
38
+
39
+ retry_after = response_headers.get("retry-after")
40
+ if retry_after is None:
41
+ return None
42
+
43
+ # Attempt to parse the header as an int.
44
+ if re.match(r"^\s*[0-9]+\s*$", retry_after):
45
+ seconds = float(retry_after)
46
+ # Fallback to parsing it as a date.
47
+ else:
48
+ retry_date_tuple = email.utils.parsedate_tz(retry_after)
49
+ if retry_date_tuple is None:
50
+ return None
51
+ if retry_date_tuple[9] is None: # Python 2
52
+ # Assume UTC if no timezone was specified
53
+ # On Python2.7, parsedate_tz returns None for a timezone offset
54
+ # instead of 0 if no timezone is given, where mktime_tz treats
55
+ # a None timezone offset as local time.
56
+ retry_date_tuple = retry_date_tuple[:9] + (0,) + retry_date_tuple[10:]
57
+
58
+ retry_date = email.utils.mktime_tz(retry_date_tuple)
59
+ seconds = retry_date - time.time()
60
+
61
+ if seconds < 0:
62
+ seconds = 0
63
+
64
+ return seconds
65
+
66
+
67
+ def _retry_timeout(response: httpx.Response, retries: int) -> float:
68
+ """
69
+ Determine the amount of time to wait before retrying a request.
70
+ This function begins by trying to parse a retry-after header from the response, and then proceeds to use exponential backoff
71
+ with a jitter to determine the number of seconds to wait.
72
+ """
73
+
74
+ # If the API asks us to wait a certain amount of time (and it's a reasonable amount), just do what it says.
75
+ retry_after = _parse_retry_after(response.headers)
76
+ if retry_after is not None and retry_after <= MAX_RETRY_DELAY_SECONDS_FROM_HEADER:
77
+ return retry_after
78
+
79
+ # Apply exponential backoff, capped at MAX_RETRY_DELAY_SECONDS.
80
+ retry_delay = min(INITIAL_RETRY_DELAY_SECONDS * pow(2.0, retries), MAX_RETRY_DELAY_SECONDS)
81
+
82
+ # Add a randomness / jitter to the retry delay to avoid overwhelming the server with retries.
83
+ timeout = retry_delay * (1 - 0.25 * random())
84
+ return timeout if timeout >= 0 else 0
85
+
86
+
87
+ def _should_retry(response: httpx.Response) -> bool:
88
+ retriable_400s = [429, 408, 409]
89
+ return response.status_code >= 500 or response.status_code in retriable_400s
90
+
91
+
92
+ def remove_omit_from_dict(
93
+ original: typing.Dict[str, typing.Optional[typing.Any]],
94
+ omit: typing.Optional[typing.Any],
95
+ ) -> typing.Dict[str, typing.Any]:
96
+ if omit is None:
97
+ return original
98
+ new: typing.Dict[str, typing.Any] = {}
99
+ for key, value in original.items():
100
+ if value is not omit:
101
+ new[key] = value
102
+ return new
103
+
104
+
105
+ def maybe_filter_request_body(
106
+ data: typing.Optional[typing.Any],
107
+ request_options: typing.Optional[RequestOptions],
108
+ omit: typing.Optional[typing.Any],
109
+ ) -> typing.Optional[typing.Any]:
110
+ if data is None:
111
+ return (
112
+ jsonable_encoder(request_options.get("additional_body_parameters", {})) or {}
113
+ if request_options is not None
114
+ else None
115
+ )
116
+ elif not isinstance(data, typing.Mapping):
117
+ data_content = jsonable_encoder(data)
118
+ else:
119
+ data_content = {
120
+ **(jsonable_encoder(remove_omit_from_dict(data, omit))), # type: ignore
121
+ **(
122
+ jsonable_encoder(request_options.get("additional_body_parameters", {})) or {}
123
+ if request_options is not None
124
+ else {}
125
+ ),
126
+ }
127
+ return data_content
128
+
129
+
130
+ # Abstracted out for testing purposes
131
+ def get_request_body(
132
+ *,
133
+ json: typing.Optional[typing.Any],
134
+ data: typing.Optional[typing.Any],
135
+ request_options: typing.Optional[RequestOptions],
136
+ omit: typing.Optional[typing.Any],
137
+ ) -> typing.Tuple[typing.Optional[typing.Any], typing.Optional[typing.Any]]:
138
+ json_body = None
139
+ data_body = None
140
+ if data is not None:
141
+ data_body = maybe_filter_request_body(data, request_options, omit)
142
+ else:
143
+ # If both data and json are None, we send json data in the event extra properties are specified
144
+ json_body = maybe_filter_request_body(json, request_options, omit)
145
+
146
+ # If you have an empty JSON body, you should just send None
147
+ return (json_body if json_body != {} else None), data_body if data_body != {} else None
148
+
149
+
150
+ class HttpClient:
151
+ def __init__(
152
+ self,
153
+ *,
154
+ httpx_client: httpx.Client,
155
+ base_timeout: typing.Callable[[], typing.Optional[float]],
156
+ base_headers: typing.Callable[[], typing.Dict[str, str]],
157
+ base_url: typing.Optional[typing.Callable[[], str]] = None,
158
+ ):
159
+ self.base_url = base_url
160
+ self.base_timeout = base_timeout
161
+ self.base_headers = base_headers
162
+ self.httpx_client = httpx_client
163
+
164
+ def get_base_url(self, maybe_base_url: typing.Optional[str]) -> str:
165
+ base_url = maybe_base_url
166
+ if self.base_url is not None and base_url is None:
167
+ base_url = self.base_url()
168
+
169
+ if base_url is None:
170
+ raise ValueError("A base_url is required to make this request, please provide one and try again.")
171
+ return base_url
172
+
173
+ def request(
174
+ self,
175
+ path: typing.Optional[str] = None,
176
+ *,
177
+ method: str,
178
+ base_url: typing.Optional[str] = None,
179
+ params: typing.Optional[typing.Dict[str, typing.Any]] = None,
180
+ json: typing.Optional[typing.Any] = None,
181
+ data: typing.Optional[typing.Any] = None,
182
+ content: typing.Optional[typing.Union[bytes, typing.Iterator[bytes], typing.AsyncIterator[bytes]]] = None,
183
+ files: typing.Optional[typing.Dict[str, typing.Optional[typing.Union[File, typing.List[File]]]]] = None,
184
+ headers: typing.Optional[typing.Dict[str, typing.Any]] = None,
185
+ request_options: typing.Optional[RequestOptions] = None,
186
+ retries: int = 0,
187
+ omit: typing.Optional[typing.Any] = None,
188
+ ) -> httpx.Response:
189
+ base_url = self.get_base_url(base_url)
190
+ timeout = (
191
+ request_options.get("timeout_in_seconds")
192
+ if request_options is not None and request_options.get("timeout_in_seconds") is not None
193
+ else self.base_timeout()
194
+ )
195
+
196
+ json_body, data_body = get_request_body(json=json, data=data, request_options=request_options, omit=omit)
197
+
198
+ response = self.httpx_client.request(
199
+ method=method,
200
+ url=urllib.parse.urljoin(f"{base_url}/", path),
201
+ headers=jsonable_encoder(
202
+ remove_none_from_dict(
203
+ {
204
+ **self.base_headers(),
205
+ **(headers if headers is not None else {}),
206
+ **(request_options.get("additional_headers", {}) or {} if request_options is not None else {}),
207
+ }
208
+ )
209
+ ),
210
+ params=encode_query(
211
+ jsonable_encoder(
212
+ remove_none_from_dict(
213
+ remove_omit_from_dict(
214
+ {
215
+ **(params if params is not None else {}),
216
+ **(
217
+ request_options.get("additional_query_parameters", {}) or {}
218
+ if request_options is not None
219
+ else {}
220
+ ),
221
+ },
222
+ omit,
223
+ )
224
+ )
225
+ )
226
+ ),
227
+ json=json_body,
228
+ data=data_body,
229
+ content=content,
230
+ files=convert_file_dict_to_httpx_tuples(remove_none_from_dict(files))
231
+ if (files is not None and files is not omit)
232
+ else None,
233
+ timeout=timeout,
234
+ )
235
+
236
+ max_retries: int = request_options.get("max_retries", 0) if request_options is not None else 0
237
+ if _should_retry(response=response):
238
+ if max_retries > retries:
239
+ time.sleep(_retry_timeout(response=response, retries=retries))
240
+ return self.request(
241
+ path=path,
242
+ method=method,
243
+ base_url=base_url,
244
+ params=params,
245
+ json=json,
246
+ content=content,
247
+ files=files,
248
+ headers=headers,
249
+ request_options=request_options,
250
+ retries=retries + 1,
251
+ omit=omit,
252
+ )
253
+
254
+ return response
255
+
256
+ @contextmanager
257
+ def stream(
258
+ self,
259
+ path: typing.Optional[str] = None,
260
+ *,
261
+ method: str,
262
+ base_url: typing.Optional[str] = None,
263
+ params: typing.Optional[typing.Dict[str, typing.Any]] = None,
264
+ json: typing.Optional[typing.Any] = None,
265
+ data: typing.Optional[typing.Any] = None,
266
+ content: typing.Optional[typing.Union[bytes, typing.Iterator[bytes], typing.AsyncIterator[bytes]]] = None,
267
+ files: typing.Optional[typing.Dict[str, typing.Optional[typing.Union[File, typing.List[File]]]]] = None,
268
+ headers: typing.Optional[typing.Dict[str, typing.Any]] = None,
269
+ request_options: typing.Optional[RequestOptions] = None,
270
+ retries: int = 0,
271
+ omit: typing.Optional[typing.Any] = None,
272
+ ) -> typing.Iterator[httpx.Response]:
273
+ base_url = self.get_base_url(base_url)
274
+ timeout = (
275
+ request_options.get("timeout_in_seconds")
276
+ if request_options is not None and request_options.get("timeout_in_seconds") is not None
277
+ else self.base_timeout()
278
+ )
279
+
280
+ json_body, data_body = get_request_body(json=json, data=data, request_options=request_options, omit=omit)
281
+
282
+ with self.httpx_client.stream(
283
+ method=method,
284
+ url=urllib.parse.urljoin(f"{base_url}/", path),
285
+ headers=jsonable_encoder(
286
+ remove_none_from_dict(
287
+ {
288
+ **self.base_headers(),
289
+ **(headers if headers is not None else {}),
290
+ **(request_options.get("additional_headers", {}) if request_options is not None else {}),
291
+ }
292
+ )
293
+ ),
294
+ params=encode_query(
295
+ jsonable_encoder(
296
+ remove_none_from_dict(
297
+ remove_omit_from_dict(
298
+ {
299
+ **(params if params is not None else {}),
300
+ **(
301
+ request_options.get("additional_query_parameters", {})
302
+ if request_options is not None
303
+ else {}
304
+ ),
305
+ },
306
+ omit,
307
+ )
308
+ )
309
+ )
310
+ ),
311
+ json=json_body,
312
+ data=data_body,
313
+ content=content,
314
+ files=convert_file_dict_to_httpx_tuples(remove_none_from_dict(files))
315
+ if (files is not None and files is not omit)
316
+ else None,
317
+ timeout=timeout,
318
+ ) as stream:
319
+ yield stream
320
+
321
+
322
+ class AsyncHttpClient:
323
+ def __init__(
324
+ self,
325
+ *,
326
+ httpx_client: httpx.AsyncClient,
327
+ base_timeout: typing.Callable[[], typing.Optional[float]],
328
+ base_headers: typing.Callable[[], typing.Dict[str, str]],
329
+ base_url: typing.Optional[typing.Callable[[], str]] = None,
330
+ ):
331
+ self.base_url = base_url
332
+ self.base_timeout = base_timeout
333
+ self.base_headers = base_headers
334
+ self.httpx_client = httpx_client
335
+
336
+ def get_base_url(self, maybe_base_url: typing.Optional[str]) -> str:
337
+ base_url = maybe_base_url
338
+ if self.base_url is not None and base_url is None:
339
+ base_url = self.base_url()
340
+
341
+ if base_url is None:
342
+ raise ValueError("A base_url is required to make this request, please provide one and try again.")
343
+ return base_url
344
+
345
+ async def request(
346
+ self,
347
+ path: typing.Optional[str] = None,
348
+ *,
349
+ method: str,
350
+ base_url: typing.Optional[str] = None,
351
+ params: typing.Optional[typing.Dict[str, typing.Any]] = None,
352
+ json: typing.Optional[typing.Any] = None,
353
+ data: typing.Optional[typing.Any] = None,
354
+ content: typing.Optional[typing.Union[bytes, typing.Iterator[bytes], typing.AsyncIterator[bytes]]] = None,
355
+ files: typing.Optional[typing.Dict[str, typing.Optional[typing.Union[File, typing.List[File]]]]] = None,
356
+ headers: typing.Optional[typing.Dict[str, typing.Any]] = None,
357
+ request_options: typing.Optional[RequestOptions] = None,
358
+ retries: int = 0,
359
+ omit: typing.Optional[typing.Any] = None,
360
+ ) -> httpx.Response:
361
+ base_url = self.get_base_url(base_url)
362
+ timeout = (
363
+ request_options.get("timeout_in_seconds")
364
+ if request_options is not None and request_options.get("timeout_in_seconds") is not None
365
+ else self.base_timeout()
366
+ )
367
+
368
+ json_body, data_body = get_request_body(json=json, data=data, request_options=request_options, omit=omit)
369
+
370
+ # Add the input to each of these and do None-safety checks
371
+ response = await self.httpx_client.request(
372
+ method=method,
373
+ url=urllib.parse.urljoin(f"{base_url}/", path),
374
+ headers=jsonable_encoder(
375
+ remove_none_from_dict(
376
+ {
377
+ **self.base_headers(),
378
+ **(headers if headers is not None else {}),
379
+ **(request_options.get("additional_headers", {}) or {} if request_options is not None else {}),
380
+ }
381
+ )
382
+ ),
383
+ params=encode_query(
384
+ jsonable_encoder(
385
+ remove_none_from_dict(
386
+ remove_omit_from_dict(
387
+ {
388
+ **(params if params is not None else {}),
389
+ **(
390
+ request_options.get("additional_query_parameters", {}) or {}
391
+ if request_options is not None
392
+ else {}
393
+ ),
394
+ },
395
+ omit,
396
+ )
397
+ )
398
+ )
399
+ ),
400
+ json=json_body,
401
+ data=data_body,
402
+ content=content,
403
+ files=convert_file_dict_to_httpx_tuples(remove_none_from_dict(files)) if files is not None else None,
404
+ timeout=timeout,
405
+ )
406
+
407
+ max_retries: int = request_options.get("max_retries", 0) if request_options is not None else 0
408
+ if _should_retry(response=response):
409
+ if max_retries > retries:
410
+ await asyncio.sleep(_retry_timeout(response=response, retries=retries))
411
+ return await self.request(
412
+ path=path,
413
+ method=method,
414
+ base_url=base_url,
415
+ params=params,
416
+ json=json,
417
+ content=content,
418
+ files=files,
419
+ headers=headers,
420
+ request_options=request_options,
421
+ retries=retries + 1,
422
+ omit=omit,
423
+ )
424
+ return response
425
+
426
+ @asynccontextmanager
427
+ async def stream(
428
+ self,
429
+ path: typing.Optional[str] = None,
430
+ *,
431
+ method: str,
432
+ base_url: typing.Optional[str] = None,
433
+ params: typing.Optional[typing.Dict[str, typing.Any]] = None,
434
+ json: typing.Optional[typing.Any] = None,
435
+ data: typing.Optional[typing.Any] = None,
436
+ content: typing.Optional[typing.Union[bytes, typing.Iterator[bytes], typing.AsyncIterator[bytes]]] = None,
437
+ files: typing.Optional[typing.Dict[str, typing.Optional[typing.Union[File, typing.List[File]]]]] = None,
438
+ headers: typing.Optional[typing.Dict[str, typing.Any]] = None,
439
+ request_options: typing.Optional[RequestOptions] = None,
440
+ retries: int = 0,
441
+ omit: typing.Optional[typing.Any] = None,
442
+ ) -> typing.AsyncIterator[httpx.Response]:
443
+ base_url = self.get_base_url(base_url)
444
+ timeout = (
445
+ request_options.get("timeout_in_seconds")
446
+ if request_options is not None and request_options.get("timeout_in_seconds") is not None
447
+ else self.base_timeout()
448
+ )
449
+
450
+ json_body, data_body = get_request_body(json=json, data=data, request_options=request_options, omit=omit)
451
+
452
+ async with self.httpx_client.stream(
453
+ method=method,
454
+ url=urllib.parse.urljoin(f"{base_url}/", path),
455
+ headers=jsonable_encoder(
456
+ remove_none_from_dict(
457
+ {
458
+ **self.base_headers(),
459
+ **(headers if headers is not None else {}),
460
+ **(request_options.get("additional_headers", {}) if request_options is not None else {}),
461
+ }
462
+ )
463
+ ),
464
+ params=encode_query(
465
+ jsonable_encoder(
466
+ remove_none_from_dict(
467
+ remove_omit_from_dict(
468
+ {
469
+ **(params if params is not None else {}),
470
+ **(
471
+ request_options.get("additional_query_parameters", {})
472
+ if request_options is not None
473
+ else {}
474
+ ),
475
+ },
476
+ omit=omit,
477
+ )
478
+ )
479
+ )
480
+ ),
481
+ json=json_body,
482
+ data=data_body,
483
+ content=content,
484
+ files=convert_file_dict_to_httpx_tuples(remove_none_from_dict(files)) if files is not None else None,
485
+ timeout=timeout,
486
+ ) as stream:
487
+ yield stream
@@ -0,0 +1,101 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ """
4
+ jsonable_encoder converts a Python object to a JSON-friendly dict
5
+ (e.g. datetimes to strings, Pydantic models to dicts).
6
+
7
+ Taken from FastAPI, and made a bit simpler
8
+ https://github.com/tiangolo/fastapi/blob/master/fastapi/encoders.py
9
+ """
10
+
11
+ import base64
12
+ import dataclasses
13
+ import datetime as dt
14
+ from enum import Enum
15
+ from pathlib import PurePath
16
+ from types import GeneratorType
17
+ from typing import Any, Callable, Dict, List, Optional, Set, Union
18
+
19
+ import pydantic
20
+
21
+ from .datetime_utils import serialize_datetime
22
+ from .pydantic_utilities import (
23
+ IS_PYDANTIC_V2,
24
+ encode_by_type,
25
+ to_jsonable_with_fallback,
26
+ )
27
+
28
+ SetIntStr = Set[Union[int, str]]
29
+ DictIntStrAny = Dict[Union[int, str], Any]
30
+
31
+
32
+ def jsonable_encoder(obj: Any, custom_encoder: Optional[Dict[Any, Callable[[Any], Any]]] = None) -> Any:
33
+ custom_encoder = custom_encoder or {}
34
+ if custom_encoder:
35
+ if type(obj) in custom_encoder:
36
+ return custom_encoder[type(obj)](obj)
37
+ else:
38
+ for encoder_type, encoder_instance in custom_encoder.items():
39
+ if isinstance(obj, encoder_type):
40
+ return encoder_instance(obj)
41
+ if isinstance(obj, pydantic.BaseModel):
42
+ if IS_PYDANTIC_V2:
43
+ encoder = getattr(obj.model_config, "json_encoders", {}) # type: ignore # Pydantic v2
44
+ else:
45
+ encoder = getattr(obj.__config__, "json_encoders", {}) # type: ignore # Pydantic v1
46
+ if custom_encoder:
47
+ encoder.update(custom_encoder)
48
+ obj_dict = obj.dict(by_alias=True)
49
+ if "__root__" in obj_dict:
50
+ obj_dict = obj_dict["__root__"]
51
+ if "root" in obj_dict:
52
+ obj_dict = obj_dict["root"]
53
+ return jsonable_encoder(obj_dict, custom_encoder=encoder)
54
+ if dataclasses.is_dataclass(obj):
55
+ obj_dict = dataclasses.asdict(obj) # type: ignore
56
+ return jsonable_encoder(obj_dict, custom_encoder=custom_encoder)
57
+ if isinstance(obj, bytes):
58
+ return base64.b64encode(obj).decode("utf-8")
59
+ if isinstance(obj, Enum):
60
+ return obj.value
61
+ if isinstance(obj, PurePath):
62
+ return str(obj)
63
+ if isinstance(obj, (str, int, float, type(None))):
64
+ return obj
65
+ if isinstance(obj, dt.datetime):
66
+ return serialize_datetime(obj)
67
+ if isinstance(obj, dt.date):
68
+ return str(obj)
69
+ if isinstance(obj, dict):
70
+ encoded_dict = {}
71
+ allowed_keys = set(obj.keys())
72
+ for key, value in obj.items():
73
+ if key in allowed_keys:
74
+ encoded_key = jsonable_encoder(key, custom_encoder=custom_encoder)
75
+ encoded_value = jsonable_encoder(value, custom_encoder=custom_encoder)
76
+ encoded_dict[encoded_key] = encoded_value
77
+ return encoded_dict
78
+ if isinstance(obj, (list, set, frozenset, GeneratorType, tuple)):
79
+ encoded_list = []
80
+ for item in obj:
81
+ encoded_list.append(jsonable_encoder(item, custom_encoder=custom_encoder))
82
+ return encoded_list
83
+
84
+ def fallback_serializer(o: Any) -> Any:
85
+ attempt_encode = encode_by_type(o)
86
+ if attempt_encode is not None:
87
+ return attempt_encode
88
+
89
+ try:
90
+ data = dict(o)
91
+ except Exception as e:
92
+ errors: List[Exception] = []
93
+ errors.append(e)
94
+ try:
95
+ data = vars(o)
96
+ except Exception as e:
97
+ errors.append(e)
98
+ raise ValueError(errors) from e
99
+ return jsonable_encoder(data, custom_encoder=custom_encoder)
100
+
101
+ return to_jsonable_with_fallback(obj, fallback_serializer)