vellum-ai 0.14.41__py3-none-any.whl → 1.11.2__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.

Potentially problematic release.


This version of vellum-ai might be problematic. Click here for more details.

Files changed (1326) hide show
  1. vellum/__init__.py +281 -8
  2. vellum/client/README.md +70 -17
  3. vellum/client/__init__.py +598 -1371
  4. vellum/client/core/__init__.py +5 -0
  5. vellum/client/core/api_error.py +13 -5
  6. vellum/client/core/client_wrapper.py +31 -5
  7. vellum/client/core/file.py +13 -8
  8. vellum/client/core/force_multipart.py +16 -0
  9. vellum/client/core/http_client.py +76 -20
  10. vellum/client/core/http_response.py +55 -0
  11. vellum/client/core/jsonable_encoder.py +0 -1
  12. vellum/client/core/pydantic_utilities.py +95 -119
  13. vellum/client/core/request_options.py +3 -0
  14. vellum/client/core/serialization.py +7 -3
  15. vellum/client/errors/__init__.py +14 -1
  16. vellum/client/errors/bad_request_error.py +4 -3
  17. vellum/client/errors/forbidden_error.py +4 -3
  18. vellum/client/errors/internal_server_error.py +4 -3
  19. vellum/client/errors/misdirected_request_error.py +11 -0
  20. vellum/client/errors/not_found_error.py +4 -3
  21. vellum/client/errors/too_many_requests_error.py +11 -0
  22. vellum/client/errors/unauthorized_error.py +11 -0
  23. vellum/client/raw_client.py +2725 -0
  24. vellum/client/reference.md +2489 -1038
  25. vellum/client/resources/__init__.py +16 -2
  26. vellum/client/resources/ad_hoc/__init__.py +2 -0
  27. vellum/client/resources/ad_hoc/client.py +173 -365
  28. vellum/client/resources/ad_hoc/raw_client.py +569 -0
  29. vellum/client/resources/container_images/__init__.py +2 -0
  30. vellum/client/resources/container_images/client.py +72 -185
  31. vellum/client/resources/container_images/raw_client.py +407 -0
  32. vellum/client/resources/deployments/__init__.py +2 -0
  33. vellum/client/resources/deployments/client.py +211 -424
  34. vellum/client/resources/deployments/raw_client.py +1002 -0
  35. vellum/client/resources/deployments/types/__init__.py +2 -0
  36. vellum/client/resources/document_indexes/__init__.py +2 -0
  37. vellum/client/resources/document_indexes/client.py +131 -365
  38. vellum/client/resources/document_indexes/raw_client.py +866 -0
  39. vellum/client/resources/document_indexes/types/__init__.py +2 -0
  40. vellum/client/resources/documents/__init__.py +2 -0
  41. vellum/client/resources/documents/client.py +93 -325
  42. vellum/client/resources/documents/raw_client.py +662 -0
  43. vellum/client/resources/{release_reviews → environments}/__init__.py +2 -0
  44. vellum/client/resources/environments/client.py +106 -0
  45. vellum/client/resources/environments/raw_client.py +95 -0
  46. vellum/client/resources/events/__init__.py +4 -0
  47. vellum/client/resources/events/client.py +201 -0
  48. vellum/client/resources/events/raw_client.py +211 -0
  49. vellum/client/resources/folder_entities/__init__.py +2 -0
  50. vellum/client/resources/folder_entities/client.py +56 -89
  51. vellum/client/resources/folder_entities/raw_client.py +276 -0
  52. vellum/client/resources/folder_entities/types/__init__.py +2 -0
  53. vellum/client/resources/integration_auth_configs/__init__.py +4 -0
  54. vellum/client/resources/integration_auth_configs/client.py +186 -0
  55. vellum/client/resources/integration_auth_configs/raw_client.py +171 -0
  56. vellum/client/resources/integration_providers/__init__.py +4 -0
  57. vellum/client/resources/integration_providers/client.py +299 -0
  58. vellum/client/resources/integration_providers/raw_client.py +275 -0
  59. vellum/client/resources/integrations/__init__.py +4 -0
  60. vellum/client/resources/integrations/client.py +466 -0
  61. vellum/client/resources/integrations/raw_client.py +557 -0
  62. vellum/client/resources/metric_definitions/__init__.py +2 -0
  63. vellum/client/resources/metric_definitions/client.py +60 -100
  64. vellum/client/resources/metric_definitions/raw_client.py +224 -0
  65. vellum/client/resources/ml_models/__init__.py +2 -0
  66. vellum/client/resources/ml_models/client.py +37 -46
  67. vellum/client/resources/ml_models/raw_client.py +102 -0
  68. vellum/client/resources/organizations/__init__.py +2 -0
  69. vellum/client/resources/organizations/client.py +37 -45
  70. vellum/client/resources/organizations/raw_client.py +95 -0
  71. vellum/client/resources/prompts/__init__.py +2 -0
  72. vellum/client/resources/prompts/client.py +210 -95
  73. vellum/client/resources/prompts/raw_client.py +353 -0
  74. vellum/client/resources/sandboxes/__init__.py +2 -0
  75. vellum/client/resources/sandboxes/client.py +69 -147
  76. vellum/client/resources/sandboxes/raw_client.py +392 -0
  77. vellum/client/resources/test_suite_runs/__init__.py +2 -0
  78. vellum/client/resources/test_suite_runs/client.py +65 -151
  79. vellum/client/resources/test_suite_runs/raw_client.py +354 -0
  80. vellum/client/resources/test_suites/__init__.py +2 -0
  81. vellum/client/resources/test_suites/client.py +162 -266
  82. vellum/client/resources/test_suites/raw_client.py +530 -0
  83. vellum/client/resources/uploaded_files/__init__.py +4 -0
  84. vellum/client/resources/uploaded_files/client.py +230 -0
  85. vellum/client/resources/uploaded_files/raw_client.py +316 -0
  86. vellum/client/resources/workflow_deployments/__init__.py +2 -0
  87. vellum/client/resources/workflow_deployments/client.py +312 -355
  88. vellum/client/resources/workflow_deployments/raw_client.py +1059 -0
  89. vellum/client/resources/workflow_deployments/types/__init__.py +2 -0
  90. vellum/client/resources/workflow_executions/__init__.py +4 -0
  91. vellum/client/resources/workflow_executions/client.py +140 -0
  92. vellum/client/resources/workflow_executions/raw_client.py +173 -0
  93. vellum/client/resources/workflow_sandboxes/__init__.py +2 -0
  94. vellum/client/resources/workflow_sandboxes/client.py +58 -117
  95. vellum/client/resources/workflow_sandboxes/raw_client.py +291 -0
  96. vellum/client/resources/workflow_sandboxes/types/__init__.py +2 -0
  97. vellum/client/resources/workflows/__init__.py +2 -0
  98. vellum/client/resources/workflows/client.py +258 -141
  99. vellum/client/resources/workflows/raw_client.py +547 -0
  100. vellum/client/resources/workspace_secrets/__init__.py +2 -0
  101. vellum/client/resources/workspace_secrets/client.py +43 -94
  102. vellum/client/resources/workspace_secrets/raw_client.py +219 -0
  103. vellum/client/resources/workspaces/__init__.py +2 -0
  104. vellum/client/resources/workspaces/client.py +37 -45
  105. vellum/client/resources/workspaces/raw_client.py +95 -0
  106. vellum/client/tests/__init__.py +0 -0
  107. vellum/client/tests/test_utils.py +34 -0
  108. vellum/client/types/__init__.py +254 -4
  109. vellum/client/types/ad_hoc_execute_prompt_event.py +3 -2
  110. vellum/client/types/ad_hoc_expand_meta.py +2 -2
  111. vellum/client/types/ad_hoc_fulfilled_prompt_execution_meta.py +3 -3
  112. vellum/client/types/ad_hoc_initiated_prompt_execution_meta.py +2 -2
  113. vellum/client/types/ad_hoc_rejected_prompt_execution_meta.py +3 -3
  114. vellum/client/types/ad_hoc_streaming_prompt_execution_meta.py +2 -2
  115. vellum/client/types/api_actor_type_enum.py +7 -0
  116. vellum/client/types/api_node_result.py +3 -3
  117. vellum/client/types/api_node_result_data.py +4 -4
  118. vellum/client/types/api_request_parent_context.py +18 -17
  119. vellum/client/types/api_version_enum.py +1 -1
  120. vellum/client/types/array_chat_message_content.py +3 -3
  121. vellum/client/types/array_chat_message_content_item.py +7 -4
  122. vellum/client/types/array_chat_message_content_item_request.py +7 -4
  123. vellum/client/types/array_chat_message_content_request.py +3 -3
  124. vellum/client/types/array_input.py +9 -8
  125. vellum/client/types/array_vellum_value.py +4 -4
  126. vellum/client/types/array_vellum_value_request.py +4 -4
  127. vellum/client/types/audio_chat_message_content.py +3 -3
  128. vellum/client/types/audio_chat_message_content_request.py +3 -3
  129. vellum/client/types/audio_input.py +30 -0
  130. vellum/client/types/audio_input_request.py +30 -0
  131. vellum/client/types/audio_prompt_block.py +4 -4
  132. vellum/client/types/audio_vellum_value.py +3 -3
  133. vellum/client/types/audio_vellum_value_request.py +3 -3
  134. vellum/client/types/auth_type_enum.py +5 -0
  135. vellum/client/types/base_output.py +4 -4
  136. vellum/client/types/basic_vectorizer_intfloat_multilingual_e_5_large.py +2 -2
  137. vellum/client/types/basic_vectorizer_intfloat_multilingual_e_5_large_request.py +2 -2
  138. vellum/client/types/basic_vectorizer_sentence_transformers_multi_qa_mpnet_base_cos_v_1.py +2 -2
  139. vellum/client/types/basic_vectorizer_sentence_transformers_multi_qa_mpnet_base_cos_v_1_request.py +2 -2
  140. vellum/client/types/basic_vectorizer_sentence_transformers_multi_qa_mpnet_base_dot_v_1.py +2 -2
  141. vellum/client/types/basic_vectorizer_sentence_transformers_multi_qa_mpnet_base_dot_v_1_request.py +2 -2
  142. vellum/client/types/build_status_enum.py +5 -0
  143. vellum/client/types/chat_history_input.py +3 -3
  144. vellum/client/types/chat_history_input_request.py +3 -3
  145. vellum/client/types/chat_history_vellum_value.py +3 -3
  146. vellum/client/types/chat_history_vellum_value_request.py +3 -3
  147. vellum/client/types/chat_message.py +4 -4
  148. vellum/client/types/chat_message_content.py +7 -4
  149. vellum/client/types/chat_message_content_request.py +7 -4
  150. vellum/client/types/chat_message_prompt_block.py +7 -7
  151. vellum/client/types/chat_message_request.py +4 -4
  152. vellum/client/types/code_execution_node_array_result.py +8 -7
  153. vellum/client/types/code_execution_node_chat_history_result.py +3 -3
  154. vellum/client/types/code_execution_node_error_result.py +3 -3
  155. vellum/client/types/code_execution_node_function_call_result.py +3 -3
  156. vellum/client/types/code_execution_node_json_result.py +2 -2
  157. vellum/client/types/code_execution_node_number_result.py +2 -2
  158. vellum/client/types/code_execution_node_result.py +7 -6
  159. vellum/client/types/code_execution_node_result_data.py +7 -6
  160. vellum/client/types/code_execution_node_result_output.py +6 -5
  161. vellum/client/types/code_execution_node_search_results_result.py +3 -3
  162. vellum/client/types/code_execution_node_string_result.py +2 -2
  163. vellum/client/types/code_execution_package.py +3 -2
  164. vellum/client/types/code_executor_input.py +15 -6
  165. vellum/client/types/code_executor_response.py +8 -7
  166. vellum/client/types/code_executor_secret_input.py +3 -3
  167. vellum/client/types/code_resource_definition.py +3 -3
  168. vellum/client/types/compile_prompt_deployment_expand_meta_request.py +2 -2
  169. vellum/client/types/compile_prompt_meta.py +2 -2
  170. vellum/client/types/components_schemas_composio_execute_tool_request.py +5 -0
  171. vellum/client/types/components_schemas_composio_execute_tool_response.py +5 -0
  172. vellum/client/types/components_schemas_composio_integration_exec_config.py +5 -0
  173. vellum/client/types/components_schemas_composio_tool_definition.py +5 -0
  174. vellum/client/types/components_schemas_prompt_version_build_config_sandbox.py +5 -0
  175. vellum/client/types/components_schemas_slim_composio_tool_definition.py +5 -0
  176. vellum/client/types/composio_execute_tool_request.py +24 -0
  177. vellum/client/types/composio_execute_tool_response.py +24 -0
  178. vellum/client/types/composio_integration_exec_config.py +21 -0
  179. vellum/client/types/composio_tool_definition.py +30 -0
  180. vellum/client/types/conditional_node_result.py +3 -3
  181. vellum/client/types/conditional_node_result_data.py +2 -2
  182. vellum/client/types/container_image_build_config.py +21 -0
  183. vellum/client/types/container_image_container_image_tag.py +2 -2
  184. vellum/client/types/container_image_read.py +8 -4
  185. vellum/client/types/create_test_suite_test_case_request.py +6 -5
  186. vellum/client/types/create_workflow_event_request.py +7 -0
  187. vellum/client/types/dataset_row_push_request.py +20 -0
  188. vellum/client/types/delimiter_chunker_config.py +20 -0
  189. vellum/client/types/delimiter_chunker_config_request.py +20 -0
  190. vellum/client/types/delimiter_chunking.py +21 -0
  191. vellum/client/types/delimiter_chunking_request.py +21 -0
  192. vellum/client/types/deployment_history_item.py +7 -6
  193. vellum/client/types/deployment_provider_payload_response.py +4 -4
  194. vellum/client/types/deployment_read.py +14 -13
  195. vellum/client/types/deployment_release_tag_deployment_history_item.py +2 -2
  196. vellum/client/types/deployment_release_tag_read.py +4 -4
  197. vellum/client/types/deprecated_prompt_request_input.py +8 -0
  198. vellum/client/types/docker_service_token.py +2 -2
  199. vellum/client/types/document_chat_message_content.py +3 -3
  200. vellum/client/types/document_chat_message_content_request.py +3 -3
  201. vellum/client/types/document_document_to_document_index.py +9 -4
  202. vellum/client/types/document_index_chunking.py +5 -1
  203. vellum/client/types/document_index_chunking_request.py +3 -1
  204. vellum/client/types/document_index_indexing_config.py +4 -4
  205. vellum/client/types/document_index_indexing_config_request.py +4 -4
  206. vellum/client/types/document_index_read.py +4 -4
  207. vellum/client/types/document_input.py +30 -0
  208. vellum/client/types/document_input_request.py +30 -0
  209. vellum/client/types/document_prompt_block.py +4 -4
  210. vellum/client/types/document_read.py +9 -5
  211. vellum/client/types/document_vellum_value.py +3 -3
  212. vellum/client/types/document_vellum_value_request.py +3 -3
  213. vellum/client/types/enriched_normalized_completion.py +3 -3
  214. vellum/client/types/environment_display_config.py +19 -0
  215. vellum/client/types/environment_read.py +23 -0
  216. vellum/client/types/ephemeral_prompt_cache_config.py +3 -3
  217. vellum/client/types/error_detail_response.py +22 -0
  218. vellum/client/types/error_input.py +3 -3
  219. vellum/client/types/error_vellum_value.py +3 -3
  220. vellum/client/types/error_vellum_value_request.py +3 -3
  221. vellum/client/types/event_create_response.py +31 -0
  222. vellum/client/types/execute_api_request_bearer_token.py +1 -0
  223. vellum/client/types/execute_api_request_body.py +3 -1
  224. vellum/client/types/execute_api_request_headers_value.py +1 -0
  225. vellum/client/types/execute_api_response.py +6 -7
  226. vellum/client/types/execute_api_response_json.py +7 -0
  227. vellum/client/types/execute_prompt_event.py +3 -2
  228. vellum/client/types/execute_prompt_response.py +1 -0
  229. vellum/client/types/execute_workflow_async_response.py +26 -0
  230. vellum/client/types/execute_workflow_response.py +7 -6
  231. vellum/client/types/execute_workflow_workflow_result_event.py +1 -0
  232. vellum/client/types/execution_array_vellum_value.py +9 -8
  233. vellum/client/types/execution_audio_vellum_value.py +31 -0
  234. vellum/client/types/execution_chat_history_vellum_value.py +3 -3
  235. vellum/client/types/execution_document_vellum_value.py +31 -0
  236. vellum/client/types/execution_error_vellum_value.py +3 -3
  237. vellum/client/types/execution_function_call_vellum_value.py +3 -3
  238. vellum/client/types/execution_image_vellum_value.py +31 -0
  239. vellum/client/types/execution_json_vellum_value.py +3 -3
  240. vellum/client/types/execution_number_vellum_value.py +3 -3
  241. vellum/client/types/execution_search_results_vellum_value.py +3 -3
  242. vellum/client/types/execution_string_vellum_value.py +3 -3
  243. vellum/client/types/execution_thinking_vellum_value.py +31 -0
  244. vellum/client/types/execution_vellum_value.py +16 -5
  245. vellum/client/types/execution_video_vellum_value.py +31 -0
  246. vellum/client/types/external_input_descriptor.py +3 -3
  247. vellum/client/types/external_parent_context.py +38 -0
  248. vellum/client/types/external_test_case_execution.py +7 -6
  249. vellum/client/types/external_test_case_execution_request.py +7 -6
  250. vellum/client/types/fast_embed_vectorizer_baai_bge_small_en_v_15.py +23 -0
  251. vellum/client/types/fast_embed_vectorizer_baai_bge_small_en_v_15_request.py +23 -0
  252. vellum/client/types/folder_entity.py +5 -2
  253. vellum/client/types/folder_entity_dataset.py +26 -0
  254. vellum/client/types/folder_entity_dataset_data.py +25 -0
  255. vellum/client/types/folder_entity_document_index.py +3 -3
  256. vellum/client/types/folder_entity_document_index_data.py +5 -3
  257. vellum/client/types/folder_entity_folder.py +3 -3
  258. vellum/client/types/folder_entity_folder_data.py +2 -2
  259. vellum/client/types/folder_entity_prompt_sandbox.py +3 -3
  260. vellum/client/types/folder_entity_prompt_sandbox_data.py +4 -3
  261. vellum/client/types/folder_entity_test_suite.py +3 -3
  262. vellum/client/types/folder_entity_test_suite_data.py +3 -3
  263. vellum/client/types/folder_entity_workflow_sandbox.py +3 -3
  264. vellum/client/types/folder_entity_workflow_sandbox_data.py +6 -3
  265. vellum/client/types/fulfilled_ad_hoc_execute_prompt_event.py +4 -4
  266. vellum/client/types/fulfilled_execute_prompt_event.py +4 -4
  267. vellum/client/types/fulfilled_execute_prompt_response.py +3 -3
  268. vellum/client/types/fulfilled_execute_workflow_workflow_result_event.py +8 -9
  269. vellum/client/types/fulfilled_prompt_execution_meta.py +3 -3
  270. vellum/client/types/fulfilled_workflow_node_result_event.py +9 -8
  271. vellum/client/types/function_call.py +2 -2
  272. vellum/client/types/function_call_chat_message_content.py +3 -3
  273. vellum/client/types/function_call_chat_message_content_request.py +3 -3
  274. vellum/client/types/function_call_chat_message_content_value.py +2 -2
  275. vellum/client/types/function_call_chat_message_content_value_request.py +2 -2
  276. vellum/client/types/function_call_input.py +3 -3
  277. vellum/client/types/function_call_prompt_block.py +4 -4
  278. vellum/client/types/function_call_request.py +2 -2
  279. vellum/client/types/function_call_vellum_value.py +3 -3
  280. vellum/client/types/function_call_vellum_value_request.py +3 -3
  281. vellum/client/types/function_definition.py +9 -4
  282. vellum/client/types/generate_options_request.py +3 -3
  283. vellum/client/types/generate_request.py +2 -2
  284. vellum/client/types/generate_response.py +3 -3
  285. vellum/client/types/generate_result.py +3 -3
  286. vellum/client/types/generate_result_data.py +3 -3
  287. vellum/client/types/generate_result_error.py +3 -3
  288. vellum/client/types/generate_stream_response.py +3 -3
  289. vellum/client/types/generate_stream_result.py +4 -4
  290. vellum/client/types/generate_stream_result_data.py +3 -3
  291. vellum/client/types/google_vertex_ai_vectorizer_config.py +2 -2
  292. vellum/client/types/google_vertex_ai_vectorizer_config_request.py +2 -2
  293. vellum/client/types/google_vertex_ai_vectorizer_gemini_embedding_001.py +21 -0
  294. vellum/client/types/google_vertex_ai_vectorizer_gemini_embedding_001_request.py +21 -0
  295. vellum/client/types/google_vertex_ai_vectorizer_text_embedding_004.py +3 -3
  296. vellum/client/types/google_vertex_ai_vectorizer_text_embedding_004_request.py +3 -3
  297. vellum/client/types/google_vertex_ai_vectorizer_text_multilingual_embedding_002.py +3 -3
  298. vellum/client/types/google_vertex_ai_vectorizer_text_multilingual_embedding_002_request.py +3 -3
  299. vellum/client/types/hkunlp_instructor_xl_vectorizer.py +3 -3
  300. vellum/client/types/hkunlp_instructor_xl_vectorizer_request.py +3 -3
  301. vellum/client/types/image_chat_message_content.py +3 -3
  302. vellum/client/types/image_chat_message_content_request.py +3 -3
  303. vellum/client/types/image_input.py +30 -0
  304. vellum/client/types/image_input_request.py +30 -0
  305. vellum/client/types/image_prompt_block.py +4 -4
  306. vellum/client/types/image_vellum_value.py +3 -3
  307. vellum/client/types/image_vellum_value_request.py +3 -3
  308. vellum/client/types/indexing_config_vectorizer.py +11 -4
  309. vellum/client/types/indexing_config_vectorizer_request.py +11 -4
  310. vellum/client/types/initiated_ad_hoc_execute_prompt_event.py +3 -3
  311. vellum/client/types/initiated_execute_prompt_event.py +3 -3
  312. vellum/client/types/initiated_prompt_execution_meta.py +2 -2
  313. vellum/client/types/initiated_workflow_node_result_event.py +9 -8
  314. vellum/client/types/instructor_vectorizer_config.py +2 -2
  315. vellum/client/types/instructor_vectorizer_config_request.py +2 -2
  316. vellum/client/types/integration.py +27 -0
  317. vellum/client/types/integration_auth_config_integration.py +23 -0
  318. vellum/client/types/integration_auth_config_integration_credential.py +19 -0
  319. vellum/client/types/integration_credential_access_type.py +5 -0
  320. vellum/client/types/integration_name.py +85 -0
  321. vellum/client/types/integration_provider.py +5 -0
  322. vellum/client/types/integration_read.py +30 -0
  323. vellum/client/types/integration_trigger_context.py +39 -0
  324. vellum/client/types/invoked_port.py +2 -2
  325. vellum/client/types/jinja_prompt_block.py +4 -4
  326. vellum/client/types/json_input.py +3 -3
  327. vellum/client/types/json_input_request.py +3 -3
  328. vellum/client/types/json_vellum_value.py +2 -2
  329. vellum/client/types/json_vellum_value_request.py +2 -2
  330. vellum/client/types/logical_operator.py +4 -0
  331. vellum/client/types/map_node_result.py +3 -3
  332. vellum/client/types/map_node_result_data.py +3 -3
  333. vellum/client/types/merge_node_result.py +3 -3
  334. vellum/client/types/merge_node_result_data.py +2 -2
  335. vellum/client/types/metadata_filter_config_request.py +9 -8
  336. vellum/client/types/metadata_filter_rule_request.py +5 -5
  337. vellum/client/types/metadata_filters_request.py +1 -0
  338. vellum/client/types/metric_definition_execution.py +7 -6
  339. vellum/client/types/metric_definition_history_item.py +7 -6
  340. vellum/client/types/metric_definition_input.py +3 -2
  341. vellum/client/types/metric_node_result.py +2 -2
  342. vellum/client/types/ml_model_read.py +6 -3
  343. vellum/client/types/ml_model_usage.py +2 -2
  344. vellum/client/types/ml_model_usage_wrapper.py +4 -4
  345. vellum/client/types/named_scenario_input_audio_variable_value_request.py +22 -0
  346. vellum/client/types/named_scenario_input_chat_history_variable_value_request.py +3 -3
  347. vellum/client/types/named_scenario_input_document_variable_value_request.py +22 -0
  348. vellum/client/types/named_scenario_input_image_variable_value_request.py +22 -0
  349. vellum/client/types/named_scenario_input_json_variable_value_request.py +2 -2
  350. vellum/client/types/named_scenario_input_request.py +11 -2
  351. vellum/client/types/named_scenario_input_string_variable_value_request.py +2 -2
  352. vellum/client/types/named_scenario_input_video_variable_value_request.py +22 -0
  353. vellum/client/types/named_test_case_array_variable_value.py +8 -7
  354. vellum/client/types/named_test_case_array_variable_value_request.py +8 -9
  355. vellum/client/types/named_test_case_audio_variable_value.py +26 -0
  356. vellum/client/types/named_test_case_audio_variable_value_request.py +26 -0
  357. vellum/client/types/named_test_case_chat_history_variable_value.py +3 -3
  358. vellum/client/types/named_test_case_chat_history_variable_value_request.py +3 -3
  359. vellum/client/types/named_test_case_document_variable_value.py +22 -0
  360. vellum/client/types/named_test_case_document_variable_value_request.py +22 -0
  361. vellum/client/types/named_test_case_error_variable_value.py +3 -3
  362. vellum/client/types/named_test_case_error_variable_value_request.py +3 -3
  363. vellum/client/types/named_test_case_function_call_variable_value.py +3 -3
  364. vellum/client/types/named_test_case_function_call_variable_value_request.py +3 -3
  365. vellum/client/types/named_test_case_image_variable_value.py +22 -0
  366. vellum/client/types/named_test_case_image_variable_value_request.py +22 -0
  367. vellum/client/types/named_test_case_json_variable_value.py +2 -2
  368. vellum/client/types/named_test_case_json_variable_value_request.py +2 -2
  369. vellum/client/types/named_test_case_number_variable_value.py +2 -2
  370. vellum/client/types/named_test_case_number_variable_value_request.py +2 -2
  371. vellum/client/types/named_test_case_search_results_variable_value.py +3 -3
  372. vellum/client/types/named_test_case_search_results_variable_value_request.py +3 -3
  373. vellum/client/types/named_test_case_string_variable_value.py +2 -2
  374. vellum/client/types/named_test_case_string_variable_value_request.py +2 -2
  375. vellum/client/types/named_test_case_variable_value.py +14 -5
  376. vellum/client/types/named_test_case_variable_value_request.py +14 -5
  377. vellum/client/types/named_test_case_video_variable_value.py +22 -0
  378. vellum/client/types/named_test_case_video_variable_value_request.py +22 -0
  379. vellum/client/types/node_execution_fulfilled_body.py +4 -4
  380. vellum/client/types/node_execution_fulfilled_event.py +21 -23
  381. vellum/client/types/node_execution_initiated_body.py +3 -3
  382. vellum/client/types/node_execution_initiated_event.py +21 -23
  383. vellum/client/types/node_execution_paused_body.py +3 -3
  384. vellum/client/types/node_execution_paused_event.py +21 -23
  385. vellum/client/types/node_execution_rejected_body.py +5 -4
  386. vellum/client/types/node_execution_rejected_event.py +21 -23
  387. vellum/client/types/node_execution_resumed_body.py +3 -3
  388. vellum/client/types/node_execution_resumed_event.py +21 -23
  389. vellum/client/types/node_execution_span.py +20 -20
  390. vellum/client/types/node_execution_span_attributes.py +4 -2
  391. vellum/client/types/node_execution_streaming_body.py +4 -4
  392. vellum/client/types/node_execution_streaming_event.py +21 -23
  393. vellum/client/types/node_input_compiled_array_value.py +8 -7
  394. vellum/client/types/node_input_compiled_audio_value.py +23 -0
  395. vellum/client/types/node_input_compiled_chat_history_value.py +3 -3
  396. vellum/client/types/node_input_compiled_document_value.py +23 -0
  397. vellum/client/types/node_input_compiled_error_value.py +3 -3
  398. vellum/client/types/node_input_compiled_function_call_value.py +3 -3
  399. vellum/client/types/node_input_compiled_image_value.py +23 -0
  400. vellum/client/types/node_input_compiled_json_value.py +2 -2
  401. vellum/client/types/node_input_compiled_number_value.py +2 -2
  402. vellum/client/types/node_input_compiled_search_results_value.py +3 -3
  403. vellum/client/types/node_input_compiled_secret_value.py +3 -3
  404. vellum/client/types/node_input_compiled_string_value.py +2 -2
  405. vellum/client/types/node_input_compiled_video_value.py +23 -0
  406. vellum/client/types/node_input_variable_compiled_value.py +14 -5
  407. vellum/client/types/node_output_compiled_array_value.py +9 -8
  408. vellum/client/types/node_output_compiled_chat_history_value.py +3 -3
  409. vellum/client/types/node_output_compiled_error_value.py +3 -3
  410. vellum/client/types/node_output_compiled_function_call_value.py +3 -3
  411. vellum/client/types/node_output_compiled_json_value.py +3 -3
  412. vellum/client/types/node_output_compiled_number_value.py +3 -3
  413. vellum/client/types/node_output_compiled_search_results_value.py +3 -3
  414. vellum/client/types/node_output_compiled_string_value.py +3 -3
  415. vellum/client/types/node_output_compiled_thinking_value.py +28 -0
  416. vellum/client/types/node_output_compiled_value.py +8 -5
  417. vellum/client/types/node_parent_context.py +15 -18
  418. vellum/client/types/normalized_log_probs.py +3 -3
  419. vellum/client/types/normalized_token_log_probs.py +2 -2
  420. vellum/client/types/number_input.py +3 -3
  421. vellum/client/types/number_vellum_value.py +2 -2
  422. vellum/client/types/number_vellum_value_request.py +2 -2
  423. vellum/client/types/open_ai_vectorizer_config.py +3 -3
  424. vellum/client/types/open_ai_vectorizer_config_request.py +3 -3
  425. vellum/client/types/open_ai_vectorizer_text_embedding_3_large.py +3 -3
  426. vellum/client/types/open_ai_vectorizer_text_embedding_3_large_request.py +3 -3
  427. vellum/client/types/open_ai_vectorizer_text_embedding_3_small.py +3 -3
  428. vellum/client/types/open_ai_vectorizer_text_embedding_3_small_request.py +3 -3
  429. vellum/client/types/open_ai_vectorizer_text_embedding_ada_002.py +3 -3
  430. vellum/client/types/open_ai_vectorizer_text_embedding_ada_002_request.py +3 -3
  431. vellum/client/types/organization_read.py +6 -3
  432. vellum/client/types/paginated_container_image_read_list.py +3 -3
  433. vellum/client/types/paginated_deployment_release_tag_read_list.py +3 -3
  434. vellum/client/types/paginated_document_index_read_list.py +3 -3
  435. vellum/client/types/paginated_folder_entity_list.py +3 -3
  436. vellum/client/types/paginated_slim_deployment_read_list.py +7 -6
  437. vellum/client/types/paginated_slim_document_list.py +3 -3
  438. vellum/client/types/paginated_slim_integration_auth_config_read_list.py +23 -0
  439. vellum/client/types/paginated_slim_integration_read_list.py +23 -0
  440. vellum/client/types/paginated_slim_tool_definition_list.py +23 -0
  441. vellum/client/types/paginated_slim_workflow_deployment_list.py +7 -6
  442. vellum/client/types/paginated_test_suite_run_execution_list.py +7 -6
  443. vellum/client/types/paginated_test_suite_test_case_list.py +7 -6
  444. vellum/client/types/paginated_workflow_deployment_release_list.py +30 -0
  445. vellum/client/types/paginated_workflow_release_tag_read_list.py +3 -3
  446. vellum/client/types/paginated_workflow_sandbox_example_list.py +3 -3
  447. vellum/client/types/parent_context.py +21 -11
  448. vellum/client/types/pdf_search_result_meta_source.py +2 -2
  449. vellum/client/types/pdf_search_result_meta_source_request.py +2 -2
  450. vellum/client/types/plain_text_prompt_block.py +4 -4
  451. vellum/client/types/price.py +3 -3
  452. vellum/client/types/private_vectorizer.py +23 -0
  453. vellum/client/types/private_vectorizer_request.py +23 -0
  454. vellum/client/types/processing_failure_reason_enum.py +3 -1
  455. vellum/client/types/prompt_block.py +9 -6
  456. vellum/client/types/prompt_deployment_expand_meta_request.py +2 -2
  457. vellum/client/types/prompt_deployment_input_request.py +16 -3
  458. vellum/client/types/prompt_deployment_parent_context.py +14 -17
  459. vellum/client/types/prompt_deployment_release.py +6 -6
  460. vellum/client/types/prompt_deployment_release_prompt_deployment.py +2 -2
  461. vellum/client/types/prompt_deployment_release_prompt_version.py +7 -2
  462. vellum/client/types/prompt_exec_config.py +12 -12
  463. vellum/client/types/prompt_execution_meta.py +3 -3
  464. vellum/client/types/prompt_node_execution_meta.py +3 -3
  465. vellum/client/types/prompt_node_result.py +3 -3
  466. vellum/client/types/prompt_node_result_data.py +3 -3
  467. vellum/client/types/prompt_output.py +7 -3
  468. vellum/client/types/prompt_parameters.py +2 -2
  469. vellum/client/types/prompt_push_response.py +20 -0
  470. vellum/client/types/prompt_request_audio_input.py +26 -0
  471. vellum/client/types/prompt_request_chat_history_input.py +3 -3
  472. vellum/client/types/prompt_request_document_input.py +26 -0
  473. vellum/client/types/prompt_request_image_input.py +26 -0
  474. vellum/client/types/prompt_request_input.py +16 -3
  475. vellum/client/types/prompt_request_json_input.py +3 -3
  476. vellum/client/types/prompt_request_string_input.py +3 -3
  477. vellum/client/types/prompt_request_video_input.py +26 -0
  478. vellum/client/types/prompt_settings.py +3 -2
  479. vellum/client/types/prompt_version_build_config_sandbox.py +22 -0
  480. vellum/client/types/raw_prompt_execution_overrides_request.py +2 -2
  481. vellum/client/types/reducto_chunker_config.py +2 -2
  482. vellum/client/types/reducto_chunker_config_request.py +2 -2
  483. vellum/client/types/reducto_chunking.py +3 -3
  484. vellum/client/types/reducto_chunking_request.py +3 -3
  485. vellum/client/types/rejected_ad_hoc_execute_prompt_event.py +4 -4
  486. vellum/client/types/rejected_execute_prompt_event.py +4 -4
  487. vellum/client/types/rejected_execute_prompt_response.py +3 -3
  488. vellum/client/types/rejected_execute_workflow_workflow_result_event.py +4 -4
  489. vellum/client/types/rejected_prompt_execution_meta.py +3 -3
  490. vellum/client/types/rejected_workflow_node_result_event.py +9 -8
  491. vellum/client/types/release_created_by.py +2 -2
  492. vellum/client/types/release_environment.py +2 -2
  493. vellum/client/types/release_release_tag.py +3 -3
  494. vellum/client/types/release_review_reviewer.py +2 -2
  495. vellum/client/types/release_tag_release.py +2 -2
  496. vellum/client/types/replace_test_suite_test_case_request.py +6 -5
  497. vellum/client/types/rich_text_child_block.py +2 -1
  498. vellum/client/types/rich_text_prompt_block.py +4 -4
  499. vellum/client/types/sandbox_scenario.py +3 -3
  500. vellum/client/types/scenario_input.py +14 -3
  501. vellum/client/types/scenario_input_audio_variable_value.py +22 -0
  502. vellum/client/types/scenario_input_chat_history_variable_value.py +3 -3
  503. vellum/client/types/scenario_input_document_variable_value.py +22 -0
  504. vellum/client/types/scenario_input_image_variable_value.py +22 -0
  505. vellum/client/types/scenario_input_json_variable_value.py +2 -2
  506. vellum/client/types/scenario_input_string_variable_value.py +2 -2
  507. vellum/client/types/scenario_input_video_variable_value.py +22 -0
  508. vellum/client/types/scheduled_trigger_context.py +39 -0
  509. vellum/client/types/search_filters_request.py +8 -9
  510. vellum/client/types/search_node_result.py +3 -3
  511. vellum/client/types/search_node_result_data.py +3 -3
  512. vellum/client/types/search_request_options_request.py +10 -11
  513. vellum/client/types/search_response.py +3 -3
  514. vellum/client/types/search_result.py +3 -3
  515. vellum/client/types/search_result_document.py +2 -2
  516. vellum/client/types/search_result_document_request.py +2 -2
  517. vellum/client/types/search_result_merging_request.py +2 -2
  518. vellum/client/types/search_result_meta.py +3 -3
  519. vellum/client/types/search_result_meta_request.py +3 -3
  520. vellum/client/types/search_result_request.py +3 -3
  521. vellum/client/types/search_results_input.py +3 -3
  522. vellum/client/types/search_results_vellum_value.py +3 -3
  523. vellum/client/types/search_results_vellum_value_request.py +3 -3
  524. vellum/client/types/search_weights_request.py +2 -2
  525. vellum/client/types/secret_type_enum.py +3 -1
  526. vellum/client/types/sentence_chunker_config.py +2 -2
  527. vellum/client/types/sentence_chunker_config_request.py +2 -2
  528. vellum/client/types/sentence_chunking.py +3 -3
  529. vellum/client/types/sentence_chunking_request.py +3 -3
  530. vellum/client/types/slim_composio_tool_definition.py +24 -0
  531. vellum/client/types/slim_deployment_read.py +12 -11
  532. vellum/client/types/slim_document.py +6 -5
  533. vellum/client/types/slim_document_document_to_document_index.py +9 -4
  534. vellum/client/types/slim_integration_auth_config_read.py +36 -0
  535. vellum/client/types/slim_integration_read.py +25 -0
  536. vellum/client/types/slim_release_review.py +4 -4
  537. vellum/client/types/slim_workflow_deployment.py +13 -12
  538. vellum/client/types/slim_workflow_execution_read.py +21 -24
  539. vellum/client/types/span_link.py +16 -19
  540. vellum/client/types/span_link_type_enum.py +1 -1
  541. vellum/client/types/streaming_ad_hoc_execute_prompt_event.py +4 -4
  542. vellum/client/types/streaming_execute_prompt_event.py +3 -3
  543. vellum/client/types/streaming_prompt_execution_meta.py +2 -2
  544. vellum/client/types/streaming_workflow_node_result_event.py +9 -8
  545. vellum/client/types/string_chat_message_content.py +2 -2
  546. vellum/client/types/string_chat_message_content_request.py +2 -2
  547. vellum/client/types/string_input.py +3 -3
  548. vellum/client/types/string_input_request.py +3 -3
  549. vellum/client/types/string_vellum_value.py +2 -2
  550. vellum/client/types/string_vellum_value_request.py +2 -2
  551. vellum/client/types/submit_completion_actual_request.py +3 -3
  552. vellum/client/types/submit_workflow_execution_actual_request.py +3 -2
  553. vellum/client/types/subworkflow_node_result.py +3 -3
  554. vellum/client/types/subworkflow_node_result_data.py +2 -2
  555. vellum/client/types/templating_node_array_result.py +8 -7
  556. vellum/client/types/templating_node_chat_history_result.py +3 -3
  557. vellum/client/types/templating_node_error_result.py +3 -3
  558. vellum/client/types/templating_node_function_call_result.py +3 -3
  559. vellum/client/types/templating_node_json_result.py +2 -2
  560. vellum/client/types/templating_node_number_result.py +2 -2
  561. vellum/client/types/templating_node_result.py +7 -6
  562. vellum/client/types/templating_node_result_data.py +7 -6
  563. vellum/client/types/templating_node_result_output.py +6 -5
  564. vellum/client/types/templating_node_search_results_result.py +3 -3
  565. vellum/client/types/templating_node_string_result.py +2 -2
  566. vellum/client/types/terminal_node_array_result.py +8 -7
  567. vellum/client/types/terminal_node_chat_history_result.py +2 -2
  568. vellum/client/types/terminal_node_error_result.py +2 -2
  569. vellum/client/types/terminal_node_function_call_result.py +2 -2
  570. vellum/client/types/terminal_node_json_result.py +2 -2
  571. vellum/client/types/terminal_node_number_result.py +2 -2
  572. vellum/client/types/terminal_node_result.py +7 -6
  573. vellum/client/types/terminal_node_result_data.py +7 -6
  574. vellum/client/types/terminal_node_result_output.py +6 -5
  575. vellum/client/types/terminal_node_search_results_result.py +2 -2
  576. vellum/client/types/terminal_node_string_result.py +2 -2
  577. vellum/client/types/test_case_array_variable_value.py +8 -7
  578. vellum/client/types/test_case_audio_variable_value.py +27 -0
  579. vellum/client/types/test_case_chat_history_variable_value.py +3 -3
  580. vellum/client/types/test_case_document_variable_value.py +27 -0
  581. vellum/client/types/test_case_error_variable_value.py +3 -3
  582. vellum/client/types/test_case_function_call_variable_value.py +3 -3
  583. vellum/client/types/test_case_image_variable_value.py +27 -0
  584. vellum/client/types/test_case_json_variable_value.py +2 -2
  585. vellum/client/types/test_case_number_variable_value.py +2 -2
  586. vellum/client/types/test_case_search_results_variable_value.py +3 -3
  587. vellum/client/types/test_case_string_variable_value.py +2 -2
  588. vellum/client/types/test_case_variable_value.py +14 -5
  589. vellum/client/types/test_case_video_variable_value.py +27 -0
  590. vellum/client/types/test_suite_run_deployment_release_tag_exec_config.py +3 -3
  591. vellum/client/types/test_suite_run_deployment_release_tag_exec_config_data.py +3 -3
  592. vellum/client/types/test_suite_run_deployment_release_tag_exec_config_data_request.py +3 -3
  593. vellum/client/types/test_suite_run_deployment_release_tag_exec_config_request.py +3 -3
  594. vellum/client/types/test_suite_run_exec_config.py +2 -1
  595. vellum/client/types/test_suite_run_exec_config_request.py +2 -1
  596. vellum/client/types/test_suite_run_execution.py +8 -7
  597. vellum/client/types/test_suite_run_execution_array_output.py +8 -7
  598. vellum/client/types/test_suite_run_execution_chat_history_output.py +3 -3
  599. vellum/client/types/test_suite_run_execution_error_output.py +3 -3
  600. vellum/client/types/test_suite_run_execution_function_call_output.py +3 -3
  601. vellum/client/types/test_suite_run_execution_json_output.py +2 -2
  602. vellum/client/types/test_suite_run_execution_metric_definition.py +2 -2
  603. vellum/client/types/test_suite_run_execution_metric_result.py +8 -7
  604. vellum/client/types/test_suite_run_execution_number_output.py +2 -2
  605. vellum/client/types/test_suite_run_execution_output.py +6 -5
  606. vellum/client/types/test_suite_run_execution_search_results_output.py +3 -3
  607. vellum/client/types/test_suite_run_execution_string_output.py +2 -2
  608. vellum/client/types/test_suite_run_external_exec_config.py +7 -6
  609. vellum/client/types/test_suite_run_external_exec_config_data.py +7 -6
  610. vellum/client/types/test_suite_run_external_exec_config_data_request.py +7 -8
  611. vellum/client/types/test_suite_run_external_exec_config_request.py +7 -8
  612. vellum/client/types/test_suite_run_metric_array_output.py +8 -7
  613. vellum/client/types/test_suite_run_metric_error_output.py +3 -3
  614. vellum/client/types/test_suite_run_metric_json_output.py +2 -2
  615. vellum/client/types/test_suite_run_metric_number_output.py +2 -2
  616. vellum/client/types/test_suite_run_metric_output.py +5 -4
  617. vellum/client/types/test_suite_run_metric_string_output.py +2 -2
  618. vellum/client/types/test_suite_run_progress.py +2 -2
  619. vellum/client/types/test_suite_run_prompt_sandbox_exec_config_data_request.py +3 -3
  620. vellum/client/types/test_suite_run_prompt_sandbox_exec_config_request.py +3 -3
  621. vellum/client/types/test_suite_run_prompt_sandbox_history_item_exec_config.py +3 -3
  622. vellum/client/types/test_suite_run_prompt_sandbox_history_item_exec_config_data.py +3 -3
  623. vellum/client/types/test_suite_run_prompt_sandbox_history_item_exec_config_data_request.py +3 -3
  624. vellum/client/types/test_suite_run_prompt_sandbox_history_item_exec_config_request.py +3 -3
  625. vellum/client/types/test_suite_run_read.py +9 -8
  626. vellum/client/types/test_suite_run_test_suite.py +2 -2
  627. vellum/client/types/test_suite_run_workflow_release_tag_exec_config.py +3 -3
  628. vellum/client/types/test_suite_run_workflow_release_tag_exec_config_data.py +3 -3
  629. vellum/client/types/test_suite_run_workflow_release_tag_exec_config_data_request.py +3 -3
  630. vellum/client/types/test_suite_run_workflow_release_tag_exec_config_request.py +3 -3
  631. vellum/client/types/test_suite_run_workflow_sandbox_exec_config_data_request.py +3 -3
  632. vellum/client/types/test_suite_run_workflow_sandbox_exec_config_request.py +3 -3
  633. vellum/client/types/test_suite_run_workflow_sandbox_history_item_exec_config.py +3 -3
  634. vellum/client/types/test_suite_run_workflow_sandbox_history_item_exec_config_data.py +3 -3
  635. vellum/client/types/test_suite_run_workflow_sandbox_history_item_exec_config_data_request.py +3 -3
  636. vellum/client/types/test_suite_run_workflow_sandbox_history_item_exec_config_request.py +3 -3
  637. vellum/client/types/test_suite_test_case.py +7 -6
  638. vellum/client/types/test_suite_test_case_bulk_operation_request.py +2 -1
  639. vellum/client/types/test_suite_test_case_bulk_result.py +2 -1
  640. vellum/client/types/test_suite_test_case_create_bulk_operation_request.py +7 -8
  641. vellum/client/types/test_suite_test_case_created_bulk_result.py +3 -3
  642. vellum/client/types/test_suite_test_case_created_bulk_result_data.py +2 -2
  643. vellum/client/types/test_suite_test_case_delete_bulk_operation_data_request.py +2 -2
  644. vellum/client/types/test_suite_test_case_delete_bulk_operation_request.py +3 -3
  645. vellum/client/types/test_suite_test_case_deleted_bulk_result.py +3 -3
  646. vellum/client/types/test_suite_test_case_deleted_bulk_result_data.py +2 -2
  647. vellum/client/types/test_suite_test_case_rejected_bulk_result.py +2 -2
  648. vellum/client/types/test_suite_test_case_replace_bulk_operation_request.py +7 -8
  649. vellum/client/types/test_suite_test_case_replaced_bulk_result.py +3 -3
  650. vellum/client/types/test_suite_test_case_replaced_bulk_result_data.py +2 -2
  651. vellum/client/types/test_suite_test_case_upsert_bulk_operation_request.py +7 -8
  652. vellum/client/types/thinking_vellum_value.py +25 -0
  653. vellum/client/types/thinking_vellum_value_request.py +25 -0
  654. vellum/client/types/token_overlapping_window_chunker_config.py +2 -2
  655. vellum/client/types/token_overlapping_window_chunker_config_request.py +2 -2
  656. vellum/client/types/token_overlapping_window_chunking.py +3 -3
  657. vellum/client/types/token_overlapping_window_chunking_request.py +3 -3
  658. vellum/client/types/update_active_workspace_response.py +32 -0
  659. vellum/client/types/upload_document_response.py +3 -3
  660. vellum/client/types/uploaded_file_read.py +27 -0
  661. vellum/client/types/upsert_test_suite_test_case_request.py +6 -5
  662. vellum/client/types/variable_prompt_block.py +11 -4
  663. vellum/client/types/vellum_audio.py +5 -4
  664. vellum/client/types/vellum_audio_request.py +3 -3
  665. vellum/client/types/vellum_code_resource_definition.py +7 -2
  666. vellum/client/types/vellum_document.py +9 -4
  667. vellum/client/types/vellum_document_request.py +7 -3
  668. vellum/client/types/vellum_error.py +5 -4
  669. vellum/client/types/vellum_error_code_enum.py +6 -0
  670. vellum/client/types/vellum_error_request.py +5 -4
  671. vellum/client/types/vellum_image.py +9 -4
  672. vellum/client/types/vellum_image_request.py +7 -3
  673. vellum/client/types/vellum_node_execution_event.py +4 -3
  674. vellum/client/types/vellum_sdk_error.py +4 -3
  675. vellum/client/types/vellum_sdk_error_code_enum.py +5 -0
  676. vellum/client/types/vellum_secret.py +2 -2
  677. vellum/client/types/vellum_span.py +2 -1
  678. vellum/client/types/vellum_value.py +13 -8
  679. vellum/client/types/vellum_value_logical_condition_group_request.py +6 -9
  680. vellum/client/types/vellum_value_logical_condition_request.py +10 -9
  681. vellum/client/types/vellum_value_logical_expression_request.py +2 -1
  682. vellum/client/types/vellum_value_request.py +13 -8
  683. vellum/client/types/vellum_variable.py +10 -9
  684. vellum/client/types/vellum_variable_extensions.py +3 -2
  685. vellum/client/types/vellum_variable_type.py +3 -1
  686. vellum/client/types/vellum_video.py +25 -0
  687. vellum/client/types/vellum_video_request.py +24 -0
  688. vellum/client/types/vellum_workflow_execution_event.py +4 -3
  689. vellum/client/types/video_chat_message_content.py +25 -0
  690. vellum/client/types/video_chat_message_content_request.py +25 -0
  691. vellum/client/types/video_input.py +30 -0
  692. vellum/client/types/video_input_request.py +30 -0
  693. vellum/client/types/video_prompt_block.py +29 -0
  694. vellum/client/types/video_vellum_value.py +25 -0
  695. vellum/client/types/video_vellum_value_request.py +25 -0
  696. vellum/client/types/workflow_deployment_display_data.py +27 -0
  697. vellum/client/types/workflow_deployment_event_executions_response.py +17 -34
  698. vellum/client/types/workflow_deployment_history_item.py +7 -6
  699. vellum/client/types/workflow_deployment_parent_context.py +14 -17
  700. vellum/client/types/workflow_deployment_read.py +19 -12
  701. vellum/client/types/workflow_deployment_release.py +10 -9
  702. vellum/client/types/workflow_deployment_release_workflow_deployment.py +2 -2
  703. vellum/client/types/workflow_deployment_release_workflow_version.py +7 -6
  704. vellum/client/types/workflow_display_icon.py +24 -0
  705. vellum/client/types/workflow_error.py +1 -0
  706. vellum/client/types/workflow_event.py +37 -0
  707. vellum/client/types/workflow_event_error.py +5 -3
  708. vellum/client/types/workflow_event_execution_read.py +23 -29
  709. vellum/client/types/workflow_execution_actual.py +8 -7
  710. vellum/client/types/workflow_execution_actual_chat_history_request.py +2 -2
  711. vellum/client/types/workflow_execution_actual_json_request.py +2 -2
  712. vellum/client/types/workflow_execution_actual_string_request.py +2 -2
  713. vellum/client/types/workflow_execution_detail.py +51 -0
  714. vellum/client/types/workflow_execution_event_error_code.py +5 -0
  715. vellum/client/types/workflow_execution_fulfilled_body.py +5 -3
  716. vellum/client/types/workflow_execution_fulfilled_event.py +21 -23
  717. vellum/client/types/workflow_execution_initiated_body.py +3 -12
  718. vellum/client/types/workflow_execution_initiated_event.py +21 -27
  719. vellum/client/types/workflow_execution_node_result_event.py +7 -6
  720. vellum/client/types/workflow_execution_paused_body.py +4 -4
  721. vellum/client/types/workflow_execution_paused_event.py +21 -23
  722. vellum/client/types/workflow_execution_rejected_body.py +5 -4
  723. vellum/client/types/workflow_execution_rejected_event.py +21 -23
  724. vellum/client/types/workflow_execution_resumed_body.py +3 -3
  725. vellum/client/types/workflow_execution_resumed_event.py +21 -23
  726. vellum/client/types/workflow_execution_snapshotted_body.py +4 -3
  727. vellum/client/types/workflow_execution_snapshotted_event.py +21 -25
  728. vellum/client/types/workflow_execution_span.py +19 -23
  729. vellum/client/types/workflow_execution_span_attributes.py +3 -2
  730. vellum/client/types/workflow_execution_streaming_body.py +4 -4
  731. vellum/client/types/workflow_execution_streaming_event.py +21 -23
  732. vellum/client/types/workflow_execution_usage_calculation_error.py +21 -0
  733. vellum/client/types/workflow_execution_usage_calculation_error_code_enum.py +7 -0
  734. vellum/client/types/workflow_execution_usage_calculation_fulfilled_body.py +3 -3
  735. vellum/client/types/workflow_execution_usage_result.py +24 -0
  736. vellum/client/types/workflow_execution_view_online_eval_metric_result.py +7 -8
  737. vellum/client/types/workflow_execution_workflow_result_event.py +7 -6
  738. vellum/client/types/workflow_expand_meta_request.py +2 -2
  739. vellum/client/types/workflow_initialization_error.py +2 -2
  740. vellum/client/types/workflow_input.py +31 -0
  741. vellum/client/types/workflow_node_result_data.py +8 -7
  742. vellum/client/types/workflow_node_result_event.py +3 -2
  743. vellum/client/types/workflow_output.py +12 -5
  744. vellum/client/types/workflow_output_array.py +9 -8
  745. vellum/client/types/workflow_output_audio.py +31 -0
  746. vellum/client/types/workflow_output_chat_history.py +3 -3
  747. vellum/client/types/workflow_output_document.py +31 -0
  748. vellum/client/types/workflow_output_error.py +3 -3
  749. vellum/client/types/workflow_output_function_call.py +3 -3
  750. vellum/client/types/workflow_output_image.py +3 -3
  751. vellum/client/types/workflow_output_json.py +3 -3
  752. vellum/client/types/workflow_output_number.py +3 -3
  753. vellum/client/types/workflow_output_search_results.py +3 -3
  754. vellum/client/types/workflow_output_string.py +3 -3
  755. vellum/client/types/workflow_output_video.py +31 -0
  756. vellum/client/types/workflow_parent_context.py +15 -18
  757. vellum/client/types/workflow_push_deployment_config_request.py +3 -2
  758. vellum/client/types/workflow_push_response.py +2 -2
  759. vellum/client/types/workflow_release_tag_read.py +4 -4
  760. vellum/client/types/workflow_release_tag_workflow_deployment_history_item.py +2 -2
  761. vellum/client/types/workflow_request_audio_input_request.py +30 -0
  762. vellum/client/types/workflow_request_chat_history_input_request.py +3 -3
  763. vellum/client/types/workflow_request_document_input_request.py +30 -0
  764. vellum/client/types/workflow_request_image_input_request.py +30 -0
  765. vellum/client/types/workflow_request_input_request.py +11 -2
  766. vellum/client/types/workflow_request_json_input_request.py +3 -3
  767. vellum/client/types/workflow_request_number_input_request.py +3 -3
  768. vellum/client/types/workflow_request_string_input_request.py +3 -3
  769. vellum/client/types/workflow_request_video_input_request.py +30 -0
  770. vellum/client/types/workflow_resolved_state.py +31 -0
  771. vellum/client/types/workflow_result_event.py +11 -10
  772. vellum/client/types/workflow_result_event_output_data.py +7 -6
  773. vellum/client/types/workflow_result_event_output_data_array.py +9 -8
  774. vellum/client/types/workflow_result_event_output_data_chat_history.py +3 -3
  775. vellum/client/types/workflow_result_event_output_data_error.py +3 -3
  776. vellum/client/types/workflow_result_event_output_data_function_call.py +3 -3
  777. vellum/client/types/workflow_result_event_output_data_json.py +3 -3
  778. vellum/client/types/workflow_result_event_output_data_number.py +3 -3
  779. vellum/client/types/workflow_result_event_output_data_search_results.py +3 -3
  780. vellum/client/types/workflow_result_event_output_data_string.py +3 -3
  781. vellum/client/types/workflow_result_event_state.py +7 -0
  782. vellum/client/types/workflow_sandbox_display_data.py +27 -0
  783. vellum/client/types/workflow_sandbox_example.py +4 -2
  784. vellum/client/types/workflow_sandbox_parent_context.py +14 -17
  785. vellum/client/types/workflow_stream_event.py +2 -1
  786. vellum/client/types/workspace_display_config.py +19 -0
  787. vellum/client/types/workspace_read.py +5 -3
  788. vellum/client/types/workspace_secret_read.py +3 -3
  789. vellum/client/utils.py +24 -0
  790. vellum/{types/node_event_display_context.py → core/force_multipart.py} +1 -1
  791. vellum/core/http_response.py +3 -0
  792. vellum/errors/misdirected_request_error.py +3 -0
  793. vellum/errors/too_many_requests_error.py +3 -0
  794. vellum/errors/unauthorized_error.py +3 -0
  795. vellum/evaluations/resources.py +5 -5
  796. vellum/plugins/pydantic.py +14 -3
  797. vellum/plugins/tests/__init__.py +0 -0
  798. vellum/plugins/tests/test_pydantic.py +30 -0
  799. vellum/plugins/vellum_mypy.py +31 -23
  800. vellum/prompts/__init__.py +3 -0
  801. vellum/prompts/blocks/__init__.py +3 -0
  802. vellum/prompts/blocks/compilation.py +29 -11
  803. vellum/prompts/blocks/helpers.py +31 -0
  804. vellum/prompts/blocks/tests/test_compilation.py +64 -0
  805. vellum/raw_client.py +3 -0
  806. vellum/resources/ad_hoc/raw_client.py +3 -0
  807. vellum/resources/container_images/raw_client.py +3 -0
  808. vellum/resources/deployments/raw_client.py +3 -0
  809. vellum/resources/document_indexes/raw_client.py +3 -0
  810. vellum/resources/documents/raw_client.py +3 -0
  811. vellum/resources/{release_reviews → environments}/__init__.py +1 -1
  812. vellum/resources/{release_reviews → environments}/client.py +1 -1
  813. vellum/resources/environments/raw_client.py +3 -0
  814. vellum/resources/events/__init__.py +3 -0
  815. vellum/resources/events/client.py +3 -0
  816. vellum/resources/events/raw_client.py +3 -0
  817. vellum/{types/workflow_event_display_context.py → resources/folder_entities/raw_client.py} +1 -1
  818. vellum/resources/integration_auth_configs/__init__.py +3 -0
  819. vellum/resources/integration_auth_configs/client.py +3 -0
  820. vellum/resources/integration_auth_configs/raw_client.py +3 -0
  821. vellum/resources/integration_providers/__init__.py +3 -0
  822. vellum/resources/integration_providers/client.py +3 -0
  823. vellum/resources/integration_providers/raw_client.py +3 -0
  824. vellum/resources/integrations/__init__.py +3 -0
  825. vellum/resources/integrations/client.py +3 -0
  826. vellum/resources/integrations/raw_client.py +3 -0
  827. vellum/resources/metric_definitions/raw_client.py +3 -0
  828. vellum/resources/ml_models/raw_client.py +3 -0
  829. vellum/resources/organizations/raw_client.py +3 -0
  830. vellum/resources/prompts/raw_client.py +3 -0
  831. vellum/resources/sandboxes/raw_client.py +3 -0
  832. vellum/resources/test_suite_runs/raw_client.py +3 -0
  833. vellum/resources/test_suites/raw_client.py +3 -0
  834. vellum/resources/uploaded_files/__init__.py +3 -0
  835. vellum/resources/uploaded_files/client.py +3 -0
  836. vellum/resources/uploaded_files/raw_client.py +3 -0
  837. vellum/resources/workflow_deployments/raw_client.py +3 -0
  838. vellum/resources/workflow_executions/__init__.py +3 -0
  839. vellum/resources/workflow_executions/client.py +3 -0
  840. vellum/resources/workflow_executions/raw_client.py +3 -0
  841. vellum/resources/workflow_sandboxes/raw_client.py +3 -0
  842. vellum/resources/workflows/raw_client.py +3 -0
  843. vellum/resources/workspace_secrets/raw_client.py +3 -0
  844. vellum/resources/workspaces/raw_client.py +3 -0
  845. vellum/types/api_actor_type_enum.py +3 -0
  846. vellum/types/audio_input.py +3 -0
  847. vellum/types/audio_input_request.py +3 -0
  848. vellum/types/auth_type_enum.py +3 -0
  849. vellum/types/build_status_enum.py +3 -0
  850. vellum/types/components_schemas_composio_execute_tool_request.py +3 -0
  851. vellum/types/components_schemas_composio_execute_tool_response.py +3 -0
  852. vellum/types/components_schemas_composio_integration_exec_config.py +3 -0
  853. vellum/types/components_schemas_composio_tool_definition.py +3 -0
  854. vellum/types/components_schemas_prompt_version_build_config_sandbox.py +3 -0
  855. vellum/types/components_schemas_slim_composio_tool_definition.py +3 -0
  856. vellum/types/composio_execute_tool_request.py +3 -0
  857. vellum/types/composio_execute_tool_response.py +3 -0
  858. vellum/types/composio_integration_exec_config.py +3 -0
  859. vellum/types/composio_tool_definition.py +3 -0
  860. vellum/types/container_image_build_config.py +3 -0
  861. vellum/types/create_workflow_event_request.py +3 -0
  862. vellum/types/dataset_row_push_request.py +3 -0
  863. vellum/types/delimiter_chunker_config.py +3 -0
  864. vellum/types/delimiter_chunker_config_request.py +3 -0
  865. vellum/types/delimiter_chunking.py +3 -0
  866. vellum/types/delimiter_chunking_request.py +3 -0
  867. vellum/types/deprecated_prompt_request_input.py +3 -0
  868. vellum/types/document_input.py +3 -0
  869. vellum/types/document_input_request.py +3 -0
  870. vellum/types/environment_display_config.py +3 -0
  871. vellum/types/environment_read.py +3 -0
  872. vellum/types/error_detail_response.py +3 -0
  873. vellum/types/event_create_response.py +3 -0
  874. vellum/types/execute_api_response_json.py +3 -0
  875. vellum/types/execute_workflow_async_response.py +3 -0
  876. vellum/types/execution_audio_vellum_value.py +3 -0
  877. vellum/types/execution_document_vellum_value.py +3 -0
  878. vellum/types/execution_image_vellum_value.py +3 -0
  879. vellum/types/execution_thinking_vellum_value.py +3 -0
  880. vellum/types/execution_video_vellum_value.py +3 -0
  881. vellum/types/external_parent_context.py +3 -0
  882. vellum/types/fast_embed_vectorizer_baai_bge_small_en_v_15.py +3 -0
  883. vellum/types/fast_embed_vectorizer_baai_bge_small_en_v_15_request.py +3 -0
  884. vellum/types/folder_entity_dataset.py +3 -0
  885. vellum/types/folder_entity_dataset_data.py +3 -0
  886. vellum/types/google_vertex_ai_vectorizer_gemini_embedding_001.py +3 -0
  887. vellum/types/google_vertex_ai_vectorizer_gemini_embedding_001_request.py +3 -0
  888. vellum/types/image_input.py +3 -0
  889. vellum/types/image_input_request.py +3 -0
  890. vellum/types/integration.py +3 -0
  891. vellum/types/integration_auth_config_integration.py +3 -0
  892. vellum/types/integration_auth_config_integration_credential.py +3 -0
  893. vellum/types/integration_credential_access_type.py +3 -0
  894. vellum/types/integration_name.py +3 -0
  895. vellum/types/integration_provider.py +3 -0
  896. vellum/types/integration_read.py +3 -0
  897. vellum/types/integration_trigger_context.py +3 -0
  898. vellum/types/named_scenario_input_audio_variable_value_request.py +3 -0
  899. vellum/types/named_scenario_input_document_variable_value_request.py +3 -0
  900. vellum/types/named_scenario_input_image_variable_value_request.py +3 -0
  901. vellum/types/named_scenario_input_video_variable_value_request.py +3 -0
  902. vellum/types/named_test_case_audio_variable_value.py +3 -0
  903. vellum/types/named_test_case_audio_variable_value_request.py +3 -0
  904. vellum/types/named_test_case_document_variable_value.py +3 -0
  905. vellum/types/named_test_case_document_variable_value_request.py +3 -0
  906. vellum/types/named_test_case_image_variable_value.py +3 -0
  907. vellum/types/named_test_case_image_variable_value_request.py +3 -0
  908. vellum/types/named_test_case_video_variable_value.py +3 -0
  909. vellum/types/named_test_case_video_variable_value_request.py +3 -0
  910. vellum/types/node_input_compiled_audio_value.py +3 -0
  911. vellum/types/node_input_compiled_document_value.py +3 -0
  912. vellum/types/node_input_compiled_image_value.py +3 -0
  913. vellum/types/node_input_compiled_video_value.py +3 -0
  914. vellum/types/node_output_compiled_thinking_value.py +3 -0
  915. vellum/types/paginated_slim_integration_auth_config_read_list.py +3 -0
  916. vellum/types/paginated_slim_integration_read_list.py +3 -0
  917. vellum/types/paginated_slim_tool_definition_list.py +3 -0
  918. vellum/types/paginated_workflow_deployment_release_list.py +3 -0
  919. vellum/types/private_vectorizer.py +3 -0
  920. vellum/types/private_vectorizer_request.py +3 -0
  921. vellum/types/prompt_push_response.py +3 -0
  922. vellum/types/prompt_request_audio_input.py +3 -0
  923. vellum/types/prompt_request_document_input.py +3 -0
  924. vellum/types/prompt_request_image_input.py +3 -0
  925. vellum/types/prompt_request_video_input.py +3 -0
  926. vellum/types/prompt_version_build_config_sandbox.py +3 -0
  927. vellum/types/scenario_input_audio_variable_value.py +3 -0
  928. vellum/types/scenario_input_document_variable_value.py +3 -0
  929. vellum/types/scenario_input_image_variable_value.py +3 -0
  930. vellum/types/scenario_input_video_variable_value.py +3 -0
  931. vellum/types/scheduled_trigger_context.py +3 -0
  932. vellum/types/slim_composio_tool_definition.py +3 -0
  933. vellum/types/slim_integration_auth_config_read.py +3 -0
  934. vellum/types/slim_integration_read.py +3 -0
  935. vellum/types/test_case_audio_variable_value.py +3 -0
  936. vellum/types/test_case_document_variable_value.py +3 -0
  937. vellum/types/test_case_image_variable_value.py +3 -0
  938. vellum/types/test_case_video_variable_value.py +3 -0
  939. vellum/types/thinking_vellum_value.py +3 -0
  940. vellum/types/thinking_vellum_value_request.py +3 -0
  941. vellum/types/update_active_workspace_response.py +3 -0
  942. vellum/types/uploaded_file_read.py +3 -0
  943. vellum/types/vellum_video.py +3 -0
  944. vellum/types/vellum_video_request.py +3 -0
  945. vellum/types/video_chat_message_content.py +3 -0
  946. vellum/types/video_chat_message_content_request.py +3 -0
  947. vellum/types/video_input.py +3 -0
  948. vellum/types/video_input_request.py +3 -0
  949. vellum/types/video_prompt_block.py +3 -0
  950. vellum/types/video_vellum_value.py +3 -0
  951. vellum/types/video_vellum_value_request.py +3 -0
  952. vellum/types/workflow_deployment_display_data.py +3 -0
  953. vellum/types/workflow_display_icon.py +3 -0
  954. vellum/types/workflow_event.py +3 -0
  955. vellum/types/workflow_execution_detail.py +3 -0
  956. vellum/types/workflow_execution_usage_calculation_error.py +3 -0
  957. vellum/types/workflow_execution_usage_calculation_error_code_enum.py +3 -0
  958. vellum/types/workflow_execution_usage_result.py +3 -0
  959. vellum/types/workflow_input.py +3 -0
  960. vellum/types/workflow_output_audio.py +3 -0
  961. vellum/types/workflow_output_document.py +3 -0
  962. vellum/types/workflow_output_video.py +3 -0
  963. vellum/types/workflow_request_audio_input_request.py +3 -0
  964. vellum/types/workflow_request_document_input_request.py +3 -0
  965. vellum/types/workflow_request_image_input_request.py +3 -0
  966. vellum/types/workflow_request_video_input_request.py +3 -0
  967. vellum/types/workflow_resolved_state.py +3 -0
  968. vellum/types/workflow_result_event_state.py +3 -0
  969. vellum/types/workflow_sandbox_display_data.py +3 -0
  970. vellum/types/workspace_display_config.py +3 -0
  971. vellum/utils/files/__init__.py +18 -0
  972. vellum/utils/files/constants.py +47 -0
  973. vellum/utils/files/exceptions.py +25 -0
  974. vellum/utils/files/extensions.py +59 -0
  975. vellum/utils/files/mixin.py +109 -0
  976. vellum/utils/files/read.py +41 -0
  977. vellum/utils/files/stream.py +135 -0
  978. vellum/utils/files/tests/__init__.py +0 -0
  979. vellum/utils/files/tests/test_extensions.py +54 -0
  980. vellum/utils/files/tests/test_mixin.py +205 -0
  981. vellum/utils/files/tests/test_read.py +204 -0
  982. vellum/utils/files/tests/test_stream.py +199 -0
  983. vellum/utils/files/tests/test_upload.py +309 -0
  984. vellum/utils/files/tests/test_urls.py +252 -0
  985. vellum/utils/files/types.py +8 -0
  986. vellum/utils/files/upload.py +151 -0
  987. vellum/utils/files/urls.py +71 -0
  988. vellum/utils/json_encoder.py +95 -0
  989. vellum/utils/templating/custom_filters.py +4 -4
  990. vellum/utils/templating/render.py +4 -4
  991. vellum/utils/tests/__init__.py +0 -0
  992. vellum/utils/tests/test_json_encoder.py +92 -0
  993. vellum/utils/vellum_client.py +40 -0
  994. vellum/workflows/__init__.py +78 -0
  995. vellum/workflows/constants.py +7 -0
  996. vellum/workflows/context.py +27 -9
  997. vellum/workflows/descriptors/base.py +83 -2
  998. vellum/workflows/descriptors/exceptions.py +18 -1
  999. vellum/workflows/descriptors/tests/test_utils.py +57 -0
  1000. vellum/workflows/descriptors/utils.py +27 -3
  1001. vellum/workflows/edges/__init__.py +2 -0
  1002. vellum/workflows/edges/trigger_edge.py +67 -0
  1003. vellum/workflows/emitters/__init__.py +2 -0
  1004. vellum/workflows/emitters/base.py +25 -0
  1005. vellum/workflows/emitters/vellum_emitter.py +150 -0
  1006. vellum/workflows/environment/__init__.py +2 -1
  1007. vellum/workflows/environment/environment.py +10 -3
  1008. vellum/workflows/errors/types.py +29 -2
  1009. vellum/workflows/events/__init__.py +2 -0
  1010. vellum/workflows/events/context.py +90 -0
  1011. vellum/workflows/events/exception_handling.py +58 -0
  1012. vellum/workflows/events/node.py +27 -11
  1013. vellum/workflows/events/relational_threads.py +41 -0
  1014. vellum/workflows/events/stream.py +28 -0
  1015. vellum/workflows/events/tests/test_basic_workflow.py +50 -0
  1016. vellum/workflows/events/tests/test_event.py +145 -20
  1017. vellum/workflows/events/types.py +32 -4
  1018. vellum/workflows/events/workflow.py +111 -8
  1019. vellum/workflows/exceptions.py +46 -7
  1020. vellum/workflows/executable.py +9 -0
  1021. vellum/workflows/expressions/accessor.py +65 -11
  1022. vellum/workflows/expressions/add.py +41 -0
  1023. vellum/workflows/expressions/comparison_utils.py +38 -0
  1024. vellum/workflows/expressions/concat.py +35 -0
  1025. vellum/workflows/expressions/contains.py +7 -0
  1026. vellum/workflows/expressions/greater_than.py +8 -1
  1027. vellum/workflows/expressions/greater_than_or_equal_to.py +8 -1
  1028. vellum/workflows/expressions/is_error.py +23 -0
  1029. vellum/workflows/expressions/length.py +46 -0
  1030. vellum/workflows/expressions/less_than.py +8 -1
  1031. vellum/workflows/expressions/less_than_or_equal_to.py +8 -1
  1032. vellum/workflows/expressions/minus.py +41 -0
  1033. vellum/workflows/expressions/tests/test_accessor.py +248 -0
  1034. vellum/workflows/expressions/tests/test_add.py +72 -0
  1035. vellum/workflows/expressions/tests/test_concat.py +108 -0
  1036. vellum/workflows/expressions/tests/test_contains.py +175 -0
  1037. vellum/workflows/expressions/tests/test_expressions.py +145 -32
  1038. vellum/workflows/expressions/tests/test_length.py +38 -0
  1039. vellum/workflows/expressions/tests/test_minus.py +109 -0
  1040. vellum/workflows/graph/graph.py +255 -8
  1041. vellum/workflows/graph/tests/test_graph.py +300 -0
  1042. vellum/workflows/inputs/__init__.py +2 -0
  1043. vellum/workflows/inputs/base.py +75 -18
  1044. vellum/workflows/inputs/dataset_row.py +81 -0
  1045. vellum/workflows/inputs/tests/test_inputs.py +196 -1
  1046. vellum/workflows/integrations/__init__.py +5 -0
  1047. vellum/workflows/integrations/composio_service.py +158 -0
  1048. vellum/workflows/integrations/mcp_service.py +282 -0
  1049. vellum/workflows/integrations/tests/__init__.py +0 -0
  1050. vellum/workflows/integrations/tests/test_mcp_service.py +273 -0
  1051. vellum/workflows/integrations/tests/test_vellum_integration_service.py +299 -0
  1052. vellum/workflows/integrations/vellum_integration_service.py +136 -0
  1053. vellum/workflows/loaders/__init__.py +3 -0
  1054. vellum/workflows/loaders/base.py +36 -0
  1055. vellum/workflows/nodes/__init__.py +2 -0
  1056. vellum/workflows/nodes/bases/base.py +238 -46
  1057. vellum/workflows/nodes/bases/base_adornment_node.py +64 -1
  1058. vellum/workflows/nodes/bases/tests/test_base_adornment_node.py +31 -0
  1059. vellum/workflows/nodes/bases/tests/test_base_node.py +100 -4
  1060. vellum/workflows/nodes/core/error_node/node.py +11 -2
  1061. vellum/workflows/nodes/core/inline_subworkflow_node/node.py +29 -3
  1062. vellum/workflows/nodes/core/inline_subworkflow_node/tests/test_node.py +35 -0
  1063. vellum/workflows/nodes/core/map_node/node.py +103 -90
  1064. vellum/workflows/nodes/core/map_node/tests/test_node.py +178 -0
  1065. vellum/workflows/nodes/core/retry_node/node.py +8 -1
  1066. vellum/workflows/nodes/core/retry_node/tests/test_node.py +2 -3
  1067. vellum/workflows/nodes/core/templating_node/node.py +7 -2
  1068. vellum/workflows/nodes/core/templating_node/tests/test_templating_node.py +194 -1
  1069. vellum/workflows/nodes/displayable/__init__.py +6 -0
  1070. vellum/workflows/nodes/displayable/api_node/node.py +17 -1
  1071. vellum/workflows/nodes/displayable/api_node/tests/test_api_node.py +177 -3
  1072. vellum/workflows/nodes/displayable/bases/api_node/node.py +70 -16
  1073. vellum/workflows/nodes/displayable/bases/api_node/tests/__init__.py +0 -0
  1074. vellum/workflows/nodes/displayable/bases/api_node/tests/test_node.py +150 -0
  1075. vellum/workflows/nodes/displayable/bases/base_prompt_node/node.py +68 -7
  1076. vellum/workflows/nodes/displayable/bases/inline_prompt_node/node.py +299 -27
  1077. vellum/workflows/nodes/displayable/bases/inline_prompt_node/tests/test_inline_prompt_node.py +663 -20
  1078. vellum/workflows/nodes/displayable/bases/prompt_deployment_node.py +84 -14
  1079. vellum/workflows/nodes/displayable/bases/search_node.py +26 -3
  1080. vellum/workflows/nodes/displayable/bases/tests/test_prompt_deployment_node.py +90 -0
  1081. vellum/workflows/nodes/displayable/bases/utils.py +82 -5
  1082. vellum/workflows/nodes/displayable/code_execution_node/node.py +46 -15
  1083. vellum/workflows/nodes/displayable/code_execution_node/tests/{test_code_execution_node.py → test_node.py} +646 -5
  1084. vellum/workflows/nodes/displayable/code_execution_node/utils.py +28 -74
  1085. vellum/workflows/nodes/displayable/conditional_node/node.py +8 -4
  1086. vellum/workflows/nodes/displayable/final_output_node/node.py +80 -1
  1087. vellum/workflows/nodes/displayable/final_output_node/tests/test_node.py +96 -1
  1088. vellum/workflows/nodes/displayable/guardrail_node/node.py +25 -5
  1089. vellum/workflows/nodes/displayable/guardrail_node/test_node.py +29 -0
  1090. vellum/workflows/nodes/displayable/inline_prompt_node/node.py +9 -36
  1091. vellum/workflows/nodes/displayable/inline_prompt_node/tests/test_node.py +3 -0
  1092. vellum/workflows/nodes/displayable/merge_node/node.py +8 -1
  1093. vellum/workflows/nodes/displayable/note_node/node.py +8 -1
  1094. vellum/workflows/nodes/displayable/prompt_deployment_node/node.py +7 -23
  1095. vellum/workflows/nodes/displayable/search_node/node.py +18 -0
  1096. vellum/workflows/nodes/displayable/search_node/tests/test_node.py +76 -0
  1097. vellum/workflows/nodes/displayable/set_state_node/__init__.py +5 -0
  1098. vellum/workflows/nodes/displayable/set_state_node/node.py +71 -0
  1099. vellum/workflows/nodes/displayable/set_state_node/tests/__init__.py +0 -0
  1100. vellum/workflows/nodes/displayable/set_state_node/tests/test_node.py +212 -0
  1101. vellum/workflows/nodes/displayable/subworkflow_deployment_node/node.py +220 -59
  1102. vellum/workflows/nodes/displayable/subworkflow_deployment_node/tests/test_node.py +26 -1
  1103. vellum/workflows/nodes/displayable/tests/test_inline_text_prompt_node.py +4 -1
  1104. vellum/workflows/nodes/displayable/tests/test_search_node_error_handling.py +329 -0
  1105. vellum/workflows/nodes/displayable/tests/test_text_prompt_deployment_node.py +10 -16
  1106. vellum/workflows/nodes/displayable/tool_calling_node/__init__.py +3 -0
  1107. vellum/workflows/nodes/displayable/tool_calling_node/node.py +225 -0
  1108. vellum/workflows/nodes/displayable/tool_calling_node/state.py +11 -0
  1109. vellum/workflows/nodes/displayable/tool_calling_node/tests/__init__.py +0 -0
  1110. vellum/workflows/nodes/displayable/tool_calling_node/tests/test_composio_service.py +219 -0
  1111. vellum/workflows/nodes/displayable/tool_calling_node/tests/test_node.py +802 -0
  1112. vellum/workflows/nodes/displayable/tool_calling_node/tests/test_utils.py +316 -0
  1113. vellum/workflows/nodes/displayable/tool_calling_node/utils.py +633 -0
  1114. vellum/workflows/nodes/displayable/web_search_node/__init__.py +3 -0
  1115. vellum/workflows/nodes/displayable/web_search_node/node.py +136 -0
  1116. vellum/workflows/nodes/displayable/web_search_node/tests/__init__.py +0 -0
  1117. vellum/workflows/nodes/displayable/web_search_node/tests/test_node.py +246 -0
  1118. vellum/workflows/nodes/experimental/__init__.py +1 -0
  1119. vellum/workflows/nodes/mocks.py +40 -9
  1120. vellum/workflows/nodes/tests/test_mocks.py +2 -2
  1121. vellum/workflows/nodes/tests/test_utils.py +42 -26
  1122. vellum/workflows/nodes/utils.py +70 -7
  1123. vellum/workflows/outputs/base.py +53 -12
  1124. vellum/workflows/ports/node_ports.py +6 -2
  1125. vellum/workflows/ports/port.py +28 -3
  1126. vellum/workflows/ports/tests/test_port.py +45 -0
  1127. vellum/workflows/ports/utils.py +70 -17
  1128. vellum/workflows/references/__init__.py +2 -0
  1129. vellum/workflows/references/constant.py +4 -1
  1130. vellum/workflows/references/environment_variable.py +27 -9
  1131. vellum/workflows/references/output.py +3 -5
  1132. vellum/workflows/references/trigger.py +77 -0
  1133. vellum/workflows/references/workflow_input.py +5 -1
  1134. vellum/workflows/resolvers/base.py +19 -1
  1135. vellum/workflows/resolvers/resolver.py +71 -0
  1136. vellum/workflows/resolvers/tests/test_resolver.py +168 -0
  1137. vellum/workflows/resolvers/types.py +11 -0
  1138. vellum/workflows/runner/runner.py +659 -154
  1139. vellum/workflows/sandbox.py +55 -9
  1140. vellum/workflows/state/base.py +192 -64
  1141. vellum/workflows/state/context.py +225 -6
  1142. vellum/workflows/state/delta.py +20 -0
  1143. vellum/workflows/state/encoder.py +2 -62
  1144. vellum/workflows/state/tests/test_state.py +24 -9
  1145. vellum/workflows/tests/test_dataset_row.py +190 -0
  1146. vellum/workflows/tests/test_sandbox.py +137 -0
  1147. vellum/workflows/tests/triggers/test_integration_trigger.py +156 -0
  1148. vellum/workflows/triggers/__init__.py +6 -0
  1149. vellum/workflows/triggers/base.py +391 -0
  1150. vellum/workflows/triggers/integration.py +186 -0
  1151. vellum/workflows/triggers/manual.py +37 -0
  1152. vellum/workflows/triggers/schedule.py +18 -0
  1153. vellum/workflows/triggers/tests/__init__.py +1 -0
  1154. vellum/workflows/triggers/tests/test_base_trigger_display.py +147 -0
  1155. vellum/workflows/triggers/tests/test_integration.py +155 -0
  1156. vellum/workflows/types/__init__.py +2 -1
  1157. vellum/workflows/types/code_execution_node_wrappers.py +105 -0
  1158. vellum/workflows/types/core.py +5 -0
  1159. vellum/workflows/types/definition.py +168 -2
  1160. vellum/workflows/types/generics.py +5 -0
  1161. vellum/workflows/types/tests/test_definition.py +183 -0
  1162. vellum/workflows/types/tests/test_utils.py +14 -3
  1163. vellum/workflows/types/utils.py +64 -13
  1164. vellum/workflows/utils/files.py +28 -0
  1165. vellum/workflows/utils/functions.py +284 -17
  1166. vellum/workflows/utils/hmac.py +44 -0
  1167. vellum/workflows/utils/names.py +32 -4
  1168. vellum/workflows/utils/pydantic_schema.py +38 -0
  1169. vellum/workflows/utils/tests/test_functions.py +516 -5
  1170. vellum/workflows/utils/tests/test_names.py +9 -0
  1171. vellum/workflows/utils/tests/test_vellum_variables.py +32 -2
  1172. vellum/workflows/utils/uuids.py +35 -0
  1173. vellum/workflows/utils/vellum_variables.py +131 -7
  1174. vellum/workflows/utils/zip.py +46 -0
  1175. vellum/workflows/vellum_client.py +3 -21
  1176. vellum/workflows/workflows/base.py +363 -39
  1177. vellum/workflows/workflows/event_filters.py +13 -0
  1178. vellum/workflows/workflows/tests/test_base_workflow.py +122 -10
  1179. vellum/workflows/workflows/tests/test_event_filters.py +126 -0
  1180. {vellum_ai-0.14.41.dist-info → vellum_ai-1.11.2.dist-info}/METADATA +12 -13
  1181. vellum_ai-1.11.2.dist-info/RECORD +2177 -0
  1182. vellum_ai-1.11.2.dist-info/entry_points.txt +4 -0
  1183. vellum_cli/__init__.py +42 -4
  1184. vellum_cli/config.py +12 -5
  1185. vellum_cli/image_push.py +120 -10
  1186. vellum_cli/logger.py +11 -0
  1187. vellum_cli/move.py +56 -0
  1188. vellum_cli/ping.py +6 -0
  1189. vellum_cli/pull.py +78 -14
  1190. vellum_cli/push.py +149 -61
  1191. vellum_cli/tests/conftest.py +6 -0
  1192. vellum_cli/tests/test_image_push.py +295 -8
  1193. vellum_cli/tests/test_image_push_error_handling.py +258 -0
  1194. vellum_cli/tests/test_init.py +7 -24
  1195. vellum_cli/tests/test_move.py +154 -0
  1196. vellum_cli/tests/test_ping.py +15 -0
  1197. vellum_cli/tests/test_pull.py +133 -57
  1198. vellum_cli/tests/test_push.py +708 -19
  1199. vellum_ee/assets/node-definitions.json +1135 -0
  1200. vellum_ee/scripts/generate_node_definitions.py +89 -0
  1201. vellum_ee/workflows/display/base.py +29 -55
  1202. vellum_ee/workflows/display/editor/types.py +3 -0
  1203. vellum_ee/workflows/display/exceptions.py +3 -0
  1204. vellum_ee/workflows/display/nodes/base_node_display.py +211 -218
  1205. vellum_ee/workflows/display/nodes/get_node_display_class.py +1 -25
  1206. vellum_ee/workflows/display/nodes/tests/test_base_node_display.py +149 -3
  1207. vellum_ee/workflows/display/nodes/vellum/__init__.py +2 -0
  1208. vellum_ee/workflows/display/nodes/vellum/api_node.py +37 -12
  1209. vellum_ee/workflows/display/nodes/vellum/base_adornment_node.py +3 -3
  1210. vellum_ee/workflows/display/nodes/vellum/code_execution_node.py +30 -8
  1211. vellum_ee/workflows/display/nodes/vellum/conditional_node.py +19 -7
  1212. vellum_ee/workflows/display/nodes/vellum/error_node.py +23 -19
  1213. vellum_ee/workflows/display/nodes/vellum/final_output_node.py +9 -19
  1214. vellum_ee/workflows/display/nodes/vellum/function_node.py +14 -0
  1215. vellum_ee/workflows/display/nodes/vellum/guardrail_node.py +4 -4
  1216. vellum_ee/workflows/display/nodes/vellum/inline_prompt_node.py +114 -29
  1217. vellum_ee/workflows/display/nodes/vellum/inline_subworkflow_node.py +35 -9
  1218. vellum_ee/workflows/display/nodes/vellum/map_node.py +44 -25
  1219. vellum_ee/workflows/display/nodes/vellum/merge_node.py +2 -4
  1220. vellum_ee/workflows/display/nodes/vellum/note_node.py +2 -3
  1221. vellum_ee/workflows/display/nodes/vellum/prompt_deployment_node.py +28 -17
  1222. vellum_ee/workflows/display/nodes/vellum/retry_node.py +6 -7
  1223. vellum_ee/workflows/display/nodes/vellum/search_node.py +84 -18
  1224. vellum_ee/workflows/display/nodes/vellum/subworkflow_deployment_node.py +26 -14
  1225. vellum_ee/workflows/display/nodes/vellum/templating_node.py +5 -5
  1226. vellum_ee/workflows/display/nodes/vellum/tests/test_api_node.py +65 -0
  1227. vellum_ee/workflows/display/nodes/vellum/tests/test_code_execution_node.py +219 -3
  1228. vellum_ee/workflows/display/nodes/vellum/tests/test_error_node.py +4 -0
  1229. vellum_ee/workflows/display/nodes/vellum/tests/test_final_output_node.py +80 -0
  1230. vellum_ee/workflows/display/nodes/vellum/tests/test_inline_subworkflow_node.py +88 -0
  1231. vellum_ee/workflows/display/nodes/vellum/tests/test_prompt_deployment_node.py +177 -0
  1232. vellum_ee/workflows/display/nodes/vellum/tests/test_prompt_node.py +207 -6
  1233. vellum_ee/workflows/display/nodes/vellum/tests/test_retry_node.py +1 -1
  1234. vellum_ee/workflows/display/nodes/vellum/tests/test_search_node.py +104 -0
  1235. vellum_ee/workflows/display/nodes/vellum/tests/test_subworkflow_deployment_node.py +110 -0
  1236. vellum_ee/workflows/display/nodes/vellum/tests/test_templating_node.py +2 -2
  1237. vellum_ee/workflows/display/nodes/vellum/tests/test_tool_calling_node.py +694 -0
  1238. vellum_ee/workflows/display/nodes/vellum/tests/test_try_node.py +2 -2
  1239. vellum_ee/workflows/display/nodes/vellum/tests/test_utils.py +8 -9
  1240. vellum_ee/workflows/display/nodes/vellum/try_node.py +6 -7
  1241. vellum_ee/workflows/display/tests/test_base_workflow_display.py +427 -8
  1242. vellum_ee/workflows/display/tests/workflow_serialization/generic_nodes/conftest.py +2 -2
  1243. vellum_ee/workflows/display/tests/workflow_serialization/generic_nodes/test_adornments_serialization.py +150 -125
  1244. vellum_ee/workflows/display/tests/workflow_serialization/generic_nodes/test_attributes_serialization.py +277 -87
  1245. vellum_ee/workflows/display/tests/workflow_serialization/generic_nodes/test_outputs_serialization.py +21 -17
  1246. vellum_ee/workflows/display/tests/workflow_serialization/generic_nodes/test_ports_serialization.py +76 -64
  1247. vellum_ee/workflows/display/tests/workflow_serialization/generic_nodes/test_trigger_serialization.py +69 -12
  1248. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_api_node_serialization.py +68 -46
  1249. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_code_execution_node_serialization.py +92 -80
  1250. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_conditional_node_serialization.py +320 -170
  1251. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_default_state_serialization.py +14 -15
  1252. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_error_node_serialization.py +14 -12
  1253. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_generic_node_serialization.py +28 -18
  1254. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_guardrail_node_serialization.py +20 -16
  1255. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_inline_prompt_node_serialization.py +621 -5
  1256. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_inline_subworkflow_serialization.py +73 -43
  1257. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_map_node_serialization.py +51 -32
  1258. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_merge_node_serialization.py +37 -33
  1259. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_prompt_deployment_serialization.py +367 -36
  1260. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_search_node_serialization.py +40 -36
  1261. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_set_state_node_serialization.py +86 -0
  1262. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_subworkflow_deployment_serialization.py +25 -21
  1263. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_templating_node_serialization.py +22 -18
  1264. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_terminal_node_serialization.py +14 -10
  1265. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_tool_calling_node_composio_serialization.py +87 -0
  1266. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_tool_calling_node_inline_workflow_serialization.py +313 -0
  1267. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_tool_calling_node_mcp_serialization.py +65 -0
  1268. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_tool_calling_node_parent_input.py +89 -0
  1269. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_tool_calling_node_serialization.py +224 -0
  1270. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_tool_calling_node_vellum_integration_serialization.py +68 -0
  1271. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_tool_calling_node_workflow_deployment_serialization.py +107 -0
  1272. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_try_node_serialization.py +2 -3
  1273. vellum_ee/workflows/display/tests/workflow_serialization/test_chat_message_dict_reference_serialization.py +108 -0
  1274. vellum_ee/workflows/display/tests/workflow_serialization/test_complex_terminal_node_serialization.py +20 -65
  1275. vellum_ee/workflows/display/tests/workflow_serialization/test_final_output_node_map_reference_serialization.py +88 -0
  1276. vellum_ee/workflows/display/tests/workflow_serialization/test_integration_trigger_serialization.py +306 -0
  1277. vellum_ee/workflows/display/tests/workflow_serialization/test_integration_trigger_with_entrypoint_node_id.py +88 -0
  1278. vellum_ee/workflows/display/tests/workflow_serialization/test_list_vellum_document_serialization.py +65 -0
  1279. vellum_ee/workflows/display/tests/workflow_serialization/test_manual_trigger_serialization.py +110 -0
  1280. vellum_ee/workflows/display/tests/workflow_serialization/test_map_node_with_terminal_nodes_serialization.py +62 -0
  1281. vellum_ee/workflows/display/tests/workflow_serialization/test_multi_trigger_same_node_serialization.py +99 -0
  1282. vellum_ee/workflows/display/tests/workflow_serialization/test_scheduled_trigger_serialization.py +267 -0
  1283. vellum_ee/workflows/display/tests/workflow_serialization/test_terminal_node_any_serialization.py +49 -0
  1284. vellum_ee/workflows/display/tests/workflow_serialization/test_trigger_display_from_display_class.py +153 -0
  1285. vellum_ee/workflows/display/tests/workflow_serialization/test_web_search_node_serialization.py +72 -0
  1286. vellum_ee/workflows/display/tests/workflow_serialization/test_workflow_input_parameterization_error.py +37 -0
  1287. vellum_ee/workflows/display/types.py +32 -2
  1288. vellum_ee/workflows/display/utils/auto_layout.py +130 -0
  1289. vellum_ee/workflows/display/utils/events.py +57 -0
  1290. vellum_ee/workflows/display/utils/exceptions.py +19 -0
  1291. vellum_ee/workflows/display/utils/expressions.py +487 -2
  1292. vellum_ee/workflows/display/utils/metadata.py +146 -0
  1293. vellum_ee/workflows/display/utils/registry.py +46 -0
  1294. vellum_ee/workflows/display/utils/tests/__init__.py +0 -0
  1295. vellum_ee/workflows/display/utils/tests/test_auto_layout.py +56 -0
  1296. vellum_ee/workflows/display/utils/tests/test_events.py +185 -0
  1297. vellum_ee/workflows/display/utils/tests/test_expressions.py +92 -0
  1298. vellum_ee/workflows/display/utils/vellum.py +49 -86
  1299. vellum_ee/workflows/display/vellum.py +2 -128
  1300. vellum_ee/workflows/display/workflows/__init__.py +0 -1
  1301. vellum_ee/workflows/display/workflows/base_workflow_display.py +778 -129
  1302. vellum_ee/workflows/display/workflows/get_vellum_workflow_display_class.py +3 -0
  1303. vellum_ee/workflows/display/workflows/tests/test_workflow_display.py +752 -2
  1304. vellum_ee/workflows/server/virtual_file_loader.py +131 -6
  1305. vellum_ee/workflows/tests/local_workflow/display/nodes/final_output.py +1 -1
  1306. vellum_ee/workflows/tests/local_workflow/display/nodes/templating_node.py +1 -1
  1307. vellum_ee/workflows/tests/local_workflow/display/workflow.py +11 -14
  1308. vellum_ee/workflows/tests/test_display_meta.py +89 -0
  1309. vellum_ee/workflows/tests/test_registry.py +169 -0
  1310. vellum_ee/workflows/tests/test_serialize_module.py +265 -0
  1311. vellum_ee/workflows/tests/test_server.py +619 -44
  1312. vellum_ee/workflows/tests/test_virtual_files.py +48 -0
  1313. vellum/client/resources/release_reviews/client.py +0 -254
  1314. vellum/client/types/node_event_display_context.py +0 -30
  1315. vellum/client/types/workflow_event_display_context.py +0 -28
  1316. vellum/workflows/nodes/experimental/openai_chat_completion_node/__init__.py +0 -5
  1317. vellum/workflows/nodes/experimental/openai_chat_completion_node/node.py +0 -266
  1318. vellum/workflows/nodes/experimental/tool_calling_node/__init__.py +0 -3
  1319. vellum/workflows/nodes/experimental/tool_calling_node/node.py +0 -125
  1320. vellum/workflows/nodes/experimental/tool_calling_node/utils.py +0 -128
  1321. vellum_ai-0.14.41.dist-info/RECORD +0 -1704
  1322. vellum_ai-0.14.41.dist-info/entry_points.txt +0 -3
  1323. vellum_ee/workflows/display/workflows/vellum_workflow_display.py +0 -9
  1324. /vellum/{workflows/nodes/displayable/bases/inline_prompt_node → prompts}/constants.py +0 -0
  1325. {vellum_ai-0.14.41.dist-info → vellum_ai-1.11.2.dist-info}/LICENSE +0 -0
  1326. {vellum_ai-0.14.41.dist-info → vellum_ai-1.11.2.dist-info}/WHEEL +0 -0
vellum/client/__init__.py CHANGED
@@ -1,86 +1,69 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
+ import os
3
4
  import typing
4
- from .environment import VellumEnvironment
5
+
5
6
  import httpx
6
- from .core.client_wrapper import SyncClientWrapper
7
- from .resources.ad_hoc.client import AdHocClient
8
- from .resources.container_images.client import ContainerImagesClient
9
- from .resources.deployments.client import DeploymentsClient
10
- from .resources.release_reviews.client import ReleaseReviewsClient
11
- from .resources.document_indexes.client import DocumentIndexesClient
12
- from .resources.documents.client import DocumentsClient
13
- from .resources.folder_entities.client import FolderEntitiesClient
14
- from .resources.metric_definitions.client import MetricDefinitionsClient
15
- from .resources.ml_models.client import MlModelsClient
16
- from .resources.organizations.client import OrganizationsClient
17
- from .resources.prompts.client import PromptsClient
18
- from .resources.sandboxes.client import SandboxesClient
19
- from .resources.test_suite_runs.client import TestSuiteRunsClient
20
- from .resources.test_suites.client import TestSuitesClient
21
- from .resources.workflow_deployments.client import WorkflowDeploymentsClient
22
- from .resources.workflow_sandboxes.client import WorkflowSandboxesClient
23
- from .resources.workflows.client import WorkflowsClient
24
- from .resources.workspace_secrets.client import WorkspaceSecretsClient
25
- from .resources.workspaces.client import WorkspacesClient
26
- from .types.method_enum import MethodEnum
27
- from .types.execute_api_request_body import ExecuteApiRequestBody
28
- from .types.execute_api_request_headers_value import ExecuteApiRequestHeadersValue
29
- from .types.execute_api_request_bearer_token import ExecuteApiRequestBearerToken
30
- from .core.request_options import RequestOptions
31
- from .types.execute_api_response import ExecuteApiResponse
32
- from .core.serialization import convert_and_respect_annotation_metadata
33
- from .core.pydantic_utilities import parse_obj_as
34
- from json.decoder import JSONDecodeError
35
7
  from .core.api_error import ApiError
8
+ from .core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
9
+ from .core.request_options import RequestOptions
10
+ from .environment import VellumEnvironment
11
+ from .raw_client import AsyncRawVellum, RawVellum
12
+ from .resources.ad_hoc.client import AdHocClient, AsyncAdHocClient
13
+ from .resources.container_images.client import AsyncContainerImagesClient, ContainerImagesClient
14
+ from .resources.deployments.client import AsyncDeploymentsClient, DeploymentsClient
15
+ from .resources.document_indexes.client import AsyncDocumentIndexesClient, DocumentIndexesClient
16
+ from .resources.documents.client import AsyncDocumentsClient, DocumentsClient
17
+ from .resources.environments.client import AsyncEnvironmentsClient, EnvironmentsClient
18
+ from .resources.events.client import AsyncEventsClient, EventsClient
19
+ from .resources.folder_entities.client import AsyncFolderEntitiesClient, FolderEntitiesClient
20
+ from .resources.integration_auth_configs.client import AsyncIntegrationAuthConfigsClient, IntegrationAuthConfigsClient
21
+ from .resources.integration_providers.client import AsyncIntegrationProvidersClient, IntegrationProvidersClient
22
+ from .resources.integrations.client import AsyncIntegrationsClient, IntegrationsClient
23
+ from .resources.metric_definitions.client import AsyncMetricDefinitionsClient, MetricDefinitionsClient
24
+ from .resources.ml_models.client import AsyncMlModelsClient, MlModelsClient
25
+ from .resources.organizations.client import AsyncOrganizationsClient, OrganizationsClient
26
+ from .resources.prompts.client import AsyncPromptsClient, PromptsClient
27
+ from .resources.sandboxes.client import AsyncSandboxesClient, SandboxesClient
28
+ from .resources.test_suite_runs.client import AsyncTestSuiteRunsClient, TestSuiteRunsClient
29
+ from .resources.test_suites.client import AsyncTestSuitesClient, TestSuitesClient
30
+ from .resources.uploaded_files.client import AsyncUploadedFilesClient, UploadedFilesClient
31
+ from .resources.workflow_deployments.client import AsyncWorkflowDeploymentsClient, WorkflowDeploymentsClient
32
+ from .resources.workflow_executions.client import AsyncWorkflowExecutionsClient, WorkflowExecutionsClient
33
+ from .resources.workflow_sandboxes.client import AsyncWorkflowSandboxesClient, WorkflowSandboxesClient
34
+ from .resources.workflows.client import AsyncWorkflowsClient, WorkflowsClient
35
+ from .resources.workspace_secrets.client import AsyncWorkspaceSecretsClient, WorkspaceSecretsClient
36
+ from .resources.workspaces.client import AsyncWorkspacesClient, WorkspacesClient
37
+ from .types.api_version_enum import ApiVersionEnum
38
+ from .types.code_execution_package import CodeExecutionPackage
36
39
  from .types.code_execution_runtime import CodeExecutionRuntime
37
40
  from .types.code_executor_input import CodeExecutorInput
38
- from .types.code_execution_package import CodeExecutionPackage
39
- from .types.vellum_variable_type import VellumVariableType
40
41
  from .types.code_executor_response import CodeExecutorResponse
41
- from .errors.bad_request_error import BadRequestError
42
- from .types.prompt_deployment_input_request import PromptDeploymentInputRequest
43
- from .types.prompt_deployment_expand_meta_request import PromptDeploymentExpandMetaRequest
44
- from .types.raw_prompt_execution_overrides_request import RawPromptExecutionOverridesRequest
45
- from .types.execute_prompt_response import ExecutePromptResponse
46
- from .errors.forbidden_error import ForbiddenError
47
- from .errors.not_found_error import NotFoundError
48
- from .errors.internal_server_error import InternalServerError
42
+ from .types.execute_api_request_bearer_token import ExecuteApiRequestBearerToken
43
+ from .types.execute_api_request_body import ExecuteApiRequestBody
44
+ from .types.execute_api_request_headers_value import ExecuteApiRequestHeadersValue
45
+ from .types.execute_api_response import ExecuteApiResponse
49
46
  from .types.execute_prompt_event import ExecutePromptEvent
50
- import json
51
- from .types.workflow_request_input_request import WorkflowRequestInputRequest
52
- from .types.workflow_expand_meta_request import WorkflowExpandMetaRequest
47
+ from .types.execute_prompt_response import ExecutePromptResponse
48
+ from .types.execute_workflow_async_response import ExecuteWorkflowAsyncResponse
53
49
  from .types.execute_workflow_response import ExecuteWorkflowResponse
54
- from .types.workflow_execution_event_type import WorkflowExecutionEventType
55
- from .types.workflow_stream_event import WorkflowStreamEvent
56
- from .types.generate_request import GenerateRequest
57
50
  from .types.generate_options_request import GenerateOptionsRequest
51
+ from .types.generate_request import GenerateRequest
58
52
  from .types.generate_response import GenerateResponse
59
53
  from .types.generate_stream_response import GenerateStreamResponse
54
+ from .types.method_enum import MethodEnum
55
+ from .types.prompt_deployment_expand_meta_request import PromptDeploymentExpandMetaRequest
56
+ from .types.prompt_deployment_input_request import PromptDeploymentInputRequest
57
+ from .types.raw_prompt_execution_overrides_request import RawPromptExecutionOverridesRequest
60
58
  from .types.search_request_options_request import SearchRequestOptionsRequest
61
59
  from .types.search_response import SearchResponse
62
60
  from .types.submit_completion_actual_request import SubmitCompletionActualRequest
63
61
  from .types.submit_workflow_execution_actual_request import SubmitWorkflowExecutionActualRequest
64
- from .core.client_wrapper import AsyncClientWrapper
65
- from .resources.ad_hoc.client import AsyncAdHocClient
66
- from .resources.container_images.client import AsyncContainerImagesClient
67
- from .resources.deployments.client import AsyncDeploymentsClient
68
- from .resources.release_reviews.client import AsyncReleaseReviewsClient
69
- from .resources.document_indexes.client import AsyncDocumentIndexesClient
70
- from .resources.documents.client import AsyncDocumentsClient
71
- from .resources.folder_entities.client import AsyncFolderEntitiesClient
72
- from .resources.metric_definitions.client import AsyncMetricDefinitionsClient
73
- from .resources.ml_models.client import AsyncMlModelsClient
74
- from .resources.organizations.client import AsyncOrganizationsClient
75
- from .resources.prompts.client import AsyncPromptsClient
76
- from .resources.sandboxes.client import AsyncSandboxesClient
77
- from .resources.test_suite_runs.client import AsyncTestSuiteRunsClient
78
- from .resources.test_suites.client import AsyncTestSuitesClient
79
- from .resources.workflow_deployments.client import AsyncWorkflowDeploymentsClient
80
- from .resources.workflow_sandboxes.client import AsyncWorkflowSandboxesClient
81
- from .resources.workflows.client import AsyncWorkflowsClient
82
- from .resources.workspace_secrets.client import AsyncWorkspaceSecretsClient
83
- from .resources.workspaces.client import AsyncWorkspacesClient
62
+ from .types.vellum_variable_type import VellumVariableType
63
+ from .types.workflow_execution_event_type import WorkflowExecutionEventType
64
+ from .types.workflow_expand_meta_request import WorkflowExpandMetaRequest
65
+ from .types.workflow_request_input_request import WorkflowRequestInputRequest
66
+ from .types.workflow_stream_event import WorkflowStreamEvent
84
67
 
85
68
  # this is used as the default value for optional parameters
86
69
  OMIT = typing.cast(typing.Any, ...)
@@ -101,7 +84,11 @@ class Vellum:
101
84
 
102
85
 
103
86
 
87
+ api_version : typing.Optional[ApiVersionEnum]
104
88
  api_key : str
89
+ headers : typing.Optional[typing.Dict[str, str]]
90
+ Additional headers to send with every request.
91
+
105
92
  timeout : typing.Optional[float]
106
93
  The timeout to be used, in seconds, for requests. By default there is no timeout set, unless a custom httpx client is used, in which case this default is not enforced.
107
94
 
@@ -116,6 +103,7 @@ class Vellum:
116
103
  from vellum import Vellum
117
104
 
118
105
  client = Vellum(
106
+ api_version="YOUR_API_VERSION",
119
107
  api_key="YOUR_API_KEY",
120
108
  )
121
109
  """
@@ -124,15 +112,21 @@ class Vellum:
124
112
  self,
125
113
  *,
126
114
  environment: VellumEnvironment = VellumEnvironment.PRODUCTION,
115
+ api_version: typing.Optional[ApiVersionEnum] = os.getenv("VELLUM_API_VERSION", "2025-07-30"),
127
116
  api_key: str,
117
+ headers: typing.Optional[typing.Dict[str, str]] = None,
128
118
  timeout: typing.Optional[float] = None,
129
119
  follow_redirects: typing.Optional[bool] = True,
130
120
  httpx_client: typing.Optional[httpx.Client] = None,
131
121
  ):
132
- _defaulted_timeout = timeout if timeout is not None else None if httpx_client is None else None
122
+ _defaulted_timeout = (
123
+ timeout if timeout is not None else None if httpx_client is None else httpx_client.timeout.read
124
+ )
133
125
  self._client_wrapper = SyncClientWrapper(
134
126
  environment=environment,
127
+ api_version=api_version,
135
128
  api_key=api_key,
129
+ headers=headers,
136
130
  httpx_client=httpx_client
137
131
  if httpx_client is not None
138
132
  else httpx.Client(timeout=_defaulted_timeout, follow_redirects=follow_redirects)
@@ -140,13 +134,18 @@ class Vellum:
140
134
  else httpx.Client(timeout=_defaulted_timeout),
141
135
  timeout=_defaulted_timeout,
142
136
  )
137
+ self._raw_client = RawVellum(client_wrapper=self._client_wrapper)
138
+ self.integrations = IntegrationsClient(client_wrapper=self._client_wrapper)
139
+ self.events = EventsClient(client_wrapper=self._client_wrapper)
143
140
  self.ad_hoc = AdHocClient(client_wrapper=self._client_wrapper)
144
141
  self.container_images = ContainerImagesClient(client_wrapper=self._client_wrapper)
145
142
  self.deployments = DeploymentsClient(client_wrapper=self._client_wrapper)
146
- self.release_reviews = ReleaseReviewsClient(client_wrapper=self._client_wrapper)
147
143
  self.document_indexes = DocumentIndexesClient(client_wrapper=self._client_wrapper)
148
144
  self.documents = DocumentsClient(client_wrapper=self._client_wrapper)
145
+ self.environments = EnvironmentsClient(client_wrapper=self._client_wrapper)
149
146
  self.folder_entities = FolderEntitiesClient(client_wrapper=self._client_wrapper)
147
+ self.integration_auth_configs = IntegrationAuthConfigsClient(client_wrapper=self._client_wrapper)
148
+ self.integration_providers = IntegrationProvidersClient(client_wrapper=self._client_wrapper)
150
149
  self.metric_definitions = MetricDefinitionsClient(client_wrapper=self._client_wrapper)
151
150
  self.ml_models = MlModelsClient(client_wrapper=self._client_wrapper)
152
151
  self.organizations = OrganizationsClient(client_wrapper=self._client_wrapper)
@@ -154,12 +153,25 @@ class Vellum:
154
153
  self.sandboxes = SandboxesClient(client_wrapper=self._client_wrapper)
155
154
  self.test_suite_runs = TestSuiteRunsClient(client_wrapper=self._client_wrapper)
156
155
  self.test_suites = TestSuitesClient(client_wrapper=self._client_wrapper)
156
+ self.uploaded_files = UploadedFilesClient(client_wrapper=self._client_wrapper)
157
157
  self.workflow_deployments = WorkflowDeploymentsClient(client_wrapper=self._client_wrapper)
158
+ self.workflow_executions = WorkflowExecutionsClient(client_wrapper=self._client_wrapper)
158
159
  self.workflow_sandboxes = WorkflowSandboxesClient(client_wrapper=self._client_wrapper)
159
160
  self.workflows = WorkflowsClient(client_wrapper=self._client_wrapper)
160
161
  self.workspace_secrets = WorkspaceSecretsClient(client_wrapper=self._client_wrapper)
161
162
  self.workspaces = WorkspacesClient(client_wrapper=self._client_wrapper)
162
163
 
164
+ @property
165
+ def with_raw_response(self) -> RawVellum:
166
+ """
167
+ Retrieves a raw implementation of this client that returns raw responses.
168
+
169
+ Returns
170
+ -------
171
+ RawVellum
172
+ """
173
+ return self._raw_client
174
+
163
175
  def execute_api(
164
176
  self,
165
177
  *,
@@ -196,45 +208,22 @@ class Vellum:
196
208
  from vellum import Vellum
197
209
 
198
210
  client = Vellum(
211
+ api_version="YOUR_API_VERSION",
199
212
  api_key="YOUR_API_KEY",
200
213
  )
201
214
  client.execute_api(
202
- url="url",
215
+ url="x",
203
216
  )
204
217
  """
205
- _response = self._client_wrapper.httpx_client.request(
206
- "v1/execute-api",
207
- base_url=self._client_wrapper.get_environment().default,
208
- method="POST",
209
- json={
210
- "url": url,
211
- "method": method,
212
- "body": convert_and_respect_annotation_metadata(
213
- object_=body, annotation=ExecuteApiRequestBody, direction="write"
214
- ),
215
- "headers": convert_and_respect_annotation_metadata(
216
- object_=headers, annotation=typing.Dict[str, ExecuteApiRequestHeadersValue], direction="write"
217
- ),
218
- "bearer_token": convert_and_respect_annotation_metadata(
219
- object_=bearer_token, annotation=ExecuteApiRequestBearerToken, direction="write"
220
- ),
221
- },
218
+ _response = self._raw_client.execute_api(
219
+ url=url,
220
+ method=method,
221
+ body=body,
222
+ headers=headers,
223
+ bearer_token=bearer_token,
222
224
  request_options=request_options,
223
- omit=OMIT,
224
225
  )
225
- try:
226
- if 200 <= _response.status_code < 300:
227
- return typing.cast(
228
- ExecuteApiResponse,
229
- parse_obj_as(
230
- type_=ExecuteApiResponse, # type: ignore
231
- object_=_response.json(),
232
- ),
233
- )
234
- _response_json = _response.json()
235
- except JSONDecodeError:
236
- raise ApiError(status_code=_response.status_code, body=_response.text)
237
- raise ApiError(status_code=_response.status_code, body=_response_json)
226
+ return _response.data
238
227
 
239
228
  def execute_code(
240
229
  self,
@@ -272,67 +261,44 @@ class Vellum:
272
261
  from vellum import CodeExecutionPackage, StringInput, Vellum
273
262
 
274
263
  client = Vellum(
264
+ api_version="YOUR_API_VERSION",
275
265
  api_key="YOUR_API_KEY",
276
266
  )
277
267
  client.execute_code(
278
- code="code",
268
+ code="x",
279
269
  runtime="PYTHON_3_11_6",
280
270
  input_values=[
281
271
  StringInput(
282
- name="name",
272
+ name="x",
283
273
  value="value",
284
- )
274
+ ),
275
+ StringInput(
276
+ name="x",
277
+ value="value",
278
+ ),
285
279
  ],
286
280
  packages=[
287
281
  CodeExecutionPackage(
288
282
  version="version",
289
283
  name="name",
290
- )
284
+ ),
285
+ CodeExecutionPackage(
286
+ version="version",
287
+ name="name",
288
+ ),
291
289
  ],
292
290
  output_type="STRING",
293
291
  )
294
292
  """
295
- _response = self._client_wrapper.httpx_client.request(
296
- "v1/execute-code",
297
- base_url=self._client_wrapper.get_environment().predict,
298
- method="POST",
299
- json={
300
- "code": code,
301
- "runtime": runtime,
302
- "input_values": convert_and_respect_annotation_metadata(
303
- object_=input_values, annotation=typing.Sequence[CodeExecutorInput], direction="write"
304
- ),
305
- "packages": convert_and_respect_annotation_metadata(
306
- object_=packages, annotation=typing.Sequence[CodeExecutionPackage], direction="write"
307
- ),
308
- "output_type": output_type,
309
- },
293
+ _response = self._raw_client.execute_code(
294
+ code=code,
295
+ runtime=runtime,
296
+ input_values=input_values,
297
+ packages=packages,
298
+ output_type=output_type,
310
299
  request_options=request_options,
311
- omit=OMIT,
312
300
  )
313
- try:
314
- if 200 <= _response.status_code < 300:
315
- return typing.cast(
316
- CodeExecutorResponse,
317
- parse_obj_as(
318
- type_=CodeExecutorResponse, # type: ignore
319
- object_=_response.json(),
320
- ),
321
- )
322
- if _response.status_code == 400:
323
- raise BadRequestError(
324
- typing.cast(
325
- typing.Optional[typing.Any],
326
- parse_obj_as(
327
- type_=typing.Optional[typing.Any], # type: ignore
328
- object_=_response.json(),
329
- ),
330
- )
331
- )
332
- _response_json = _response.json()
333
- except JSONDecodeError:
334
- raise ApiError(status_code=_response.status_code, body=_response.text)
335
- raise ApiError(status_code=_response.status_code, body=_response_json)
301
+ return _response.data
336
302
 
337
303
  def execute_prompt(
338
304
  self,
@@ -393,94 +359,35 @@ class Vellum:
393
359
  from vellum import StringInputRequest, Vellum
394
360
 
395
361
  client = Vellum(
362
+ api_version="YOUR_API_VERSION",
396
363
  api_key="YOUR_API_KEY",
397
364
  )
398
365
  client.execute_prompt(
399
366
  inputs=[
400
367
  StringInputRequest(
401
- name="name",
368
+ name="x",
369
+ value="value",
370
+ ),
371
+ StringInputRequest(
372
+ name="x",
402
373
  value="value",
403
- )
374
+ ),
404
375
  ],
405
376
  )
406
377
  """
407
- _response = self._client_wrapper.httpx_client.request(
408
- "v1/execute-prompt",
409
- base_url=self._client_wrapper.get_environment().predict,
410
- method="POST",
411
- json={
412
- "inputs": convert_and_respect_annotation_metadata(
413
- object_=inputs, annotation=typing.Sequence[PromptDeploymentInputRequest], direction="write"
414
- ),
415
- "prompt_deployment_id": prompt_deployment_id,
416
- "prompt_deployment_name": prompt_deployment_name,
417
- "release_tag": release_tag,
418
- "external_id": external_id,
419
- "expand_meta": convert_and_respect_annotation_metadata(
420
- object_=expand_meta, annotation=PromptDeploymentExpandMetaRequest, direction="write"
421
- ),
422
- "raw_overrides": convert_and_respect_annotation_metadata(
423
- object_=raw_overrides, annotation=RawPromptExecutionOverridesRequest, direction="write"
424
- ),
425
- "expand_raw": expand_raw,
426
- "metadata": metadata,
427
- },
378
+ _response = self._raw_client.execute_prompt(
379
+ inputs=inputs,
380
+ prompt_deployment_id=prompt_deployment_id,
381
+ prompt_deployment_name=prompt_deployment_name,
382
+ release_tag=release_tag,
383
+ external_id=external_id,
384
+ expand_meta=expand_meta,
385
+ raw_overrides=raw_overrides,
386
+ expand_raw=expand_raw,
387
+ metadata=metadata,
428
388
  request_options=request_options,
429
- omit=OMIT,
430
389
  )
431
- try:
432
- if 200 <= _response.status_code < 300:
433
- return typing.cast(
434
- ExecutePromptResponse,
435
- parse_obj_as(
436
- type_=ExecutePromptResponse, # type: ignore
437
- object_=_response.json(),
438
- ),
439
- )
440
- if _response.status_code == 400:
441
- raise BadRequestError(
442
- typing.cast(
443
- typing.Optional[typing.Any],
444
- parse_obj_as(
445
- type_=typing.Optional[typing.Any], # type: ignore
446
- object_=_response.json(),
447
- ),
448
- )
449
- )
450
- if _response.status_code == 403:
451
- raise ForbiddenError(
452
- typing.cast(
453
- typing.Optional[typing.Any],
454
- parse_obj_as(
455
- type_=typing.Optional[typing.Any], # type: ignore
456
- object_=_response.json(),
457
- ),
458
- )
459
- )
460
- if _response.status_code == 404:
461
- raise NotFoundError(
462
- typing.cast(
463
- typing.Optional[typing.Any],
464
- parse_obj_as(
465
- type_=typing.Optional[typing.Any], # type: ignore
466
- object_=_response.json(),
467
- ),
468
- )
469
- )
470
- if _response.status_code == 500:
471
- raise InternalServerError(
472
- typing.cast(
473
- typing.Optional[typing.Any],
474
- parse_obj_as(
475
- type_=typing.Optional[typing.Any], # type: ignore
476
- object_=_response.json(),
477
- ),
478
- )
479
- )
480
- _response_json = _response.json()
481
- except JSONDecodeError:
482
- raise ApiError(status_code=_response.status_code, body=_response.text)
483
- raise ApiError(status_code=_response.status_code, body=_response_json)
390
+ return _response.data
484
391
 
485
392
  def execute_prompt_stream(
486
393
  self,
@@ -541,104 +448,37 @@ class Vellum:
541
448
  from vellum import StringInputRequest, Vellum
542
449
 
543
450
  client = Vellum(
451
+ api_version="YOUR_API_VERSION",
544
452
  api_key="YOUR_API_KEY",
545
453
  )
546
454
  response = client.execute_prompt_stream(
547
455
  inputs=[
548
456
  StringInputRequest(
549
- name="name",
457
+ name="x",
550
458
  value="value",
551
- )
459
+ ),
460
+ StringInputRequest(
461
+ name="x",
462
+ value="value",
463
+ ),
552
464
  ],
553
465
  )
554
466
  for chunk in response:
555
467
  yield chunk
556
468
  """
557
- with self._client_wrapper.httpx_client.stream(
558
- "v1/execute-prompt-stream",
559
- base_url=self._client_wrapper.get_environment().predict,
560
- method="POST",
561
- json={
562
- "inputs": convert_and_respect_annotation_metadata(
563
- object_=inputs, annotation=typing.Sequence[PromptDeploymentInputRequest], direction="write"
564
- ),
565
- "prompt_deployment_id": prompt_deployment_id,
566
- "prompt_deployment_name": prompt_deployment_name,
567
- "release_tag": release_tag,
568
- "external_id": external_id,
569
- "expand_meta": convert_and_respect_annotation_metadata(
570
- object_=expand_meta, annotation=PromptDeploymentExpandMetaRequest, direction="write"
571
- ),
572
- "raw_overrides": convert_and_respect_annotation_metadata(
573
- object_=raw_overrides, annotation=RawPromptExecutionOverridesRequest, direction="write"
574
- ),
575
- "expand_raw": expand_raw,
576
- "metadata": metadata,
577
- },
469
+ with self._raw_client.execute_prompt_stream(
470
+ inputs=inputs,
471
+ prompt_deployment_id=prompt_deployment_id,
472
+ prompt_deployment_name=prompt_deployment_name,
473
+ release_tag=release_tag,
474
+ external_id=external_id,
475
+ expand_meta=expand_meta,
476
+ raw_overrides=raw_overrides,
477
+ expand_raw=expand_raw,
478
+ metadata=metadata,
578
479
  request_options=request_options,
579
- omit=OMIT,
580
- ) as _response:
581
- try:
582
- if 200 <= _response.status_code < 300:
583
- for _text in _response.iter_lines():
584
- try:
585
- if len(_text) == 0:
586
- continue
587
- yield typing.cast(
588
- ExecutePromptEvent,
589
- parse_obj_as(
590
- type_=ExecutePromptEvent, # type: ignore
591
- object_=json.loads(_text),
592
- ),
593
- )
594
- except:
595
- pass
596
- return
597
- _response.read()
598
- if _response.status_code == 400:
599
- raise BadRequestError(
600
- typing.cast(
601
- typing.Optional[typing.Any],
602
- parse_obj_as(
603
- type_=typing.Optional[typing.Any], # type: ignore
604
- object_=_response.json(),
605
- ),
606
- )
607
- )
608
- if _response.status_code == 403:
609
- raise ForbiddenError(
610
- typing.cast(
611
- typing.Optional[typing.Any],
612
- parse_obj_as(
613
- type_=typing.Optional[typing.Any], # type: ignore
614
- object_=_response.json(),
615
- ),
616
- )
617
- )
618
- if _response.status_code == 404:
619
- raise NotFoundError(
620
- typing.cast(
621
- typing.Optional[typing.Any],
622
- parse_obj_as(
623
- type_=typing.Optional[typing.Any], # type: ignore
624
- object_=_response.json(),
625
- ),
626
- )
627
- )
628
- if _response.status_code == 500:
629
- raise InternalServerError(
630
- typing.cast(
631
- typing.Optional[typing.Any],
632
- parse_obj_as(
633
- type_=typing.Optional[typing.Any], # type: ignore
634
- object_=_response.json(),
635
- ),
636
- )
637
- )
638
- _response_json = _response.json()
639
- except JSONDecodeError:
640
- raise ApiError(status_code=_response.status_code, body=_response.text)
641
- raise ApiError(status_code=_response.status_code, body=_response_json)
480
+ ) as r:
481
+ yield from r.data
642
482
 
643
483
  def execute_workflow(
644
484
  self,
@@ -650,6 +490,7 @@ class Vellum:
650
490
  release_tag: typing.Optional[str] = OMIT,
651
491
  external_id: typing.Optional[str] = OMIT,
652
492
  metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
493
+ previous_execution_id: typing.Optional[str] = OMIT,
653
494
  request_options: typing.Optional[RequestOptions] = None,
654
495
  ) -> ExecuteWorkflowResponse:
655
496
  """
@@ -678,6 +519,9 @@ class Vellum:
678
519
  metadata : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
679
520
  Arbitrary JSON metadata associated with this request. Can be used to capture additional monitoring data such as user id, session id, etc. for future analysis.
680
521
 
522
+ previous_execution_id : typing.Optional[str]
523
+ The ID of a previous Workflow Execution to reference for initial State loading.
524
+
681
525
  request_options : typing.Optional[RequestOptions]
682
526
  Request-specific configuration.
683
527
 
@@ -691,80 +535,113 @@ class Vellum:
691
535
  from vellum import Vellum, WorkflowRequestStringInputRequest
692
536
 
693
537
  client = Vellum(
538
+ api_version="YOUR_API_VERSION",
694
539
  api_key="YOUR_API_KEY",
695
540
  )
696
541
  client.execute_workflow(
697
542
  inputs=[
698
543
  WorkflowRequestStringInputRequest(
699
- name="name",
544
+ name="x",
545
+ value="value",
546
+ ),
547
+ WorkflowRequestStringInputRequest(
548
+ name="x",
700
549
  value="value",
701
- )
550
+ ),
702
551
  ],
703
552
  )
704
553
  """
705
- _response = self._client_wrapper.httpx_client.request(
706
- "v1/execute-workflow",
707
- base_url=self._client_wrapper.get_environment().predict,
708
- method="POST",
709
- json={
710
- "inputs": convert_and_respect_annotation_metadata(
711
- object_=inputs, annotation=typing.Sequence[WorkflowRequestInputRequest], direction="write"
554
+ _response = self._raw_client.execute_workflow(
555
+ inputs=inputs,
556
+ expand_meta=expand_meta,
557
+ workflow_deployment_id=workflow_deployment_id,
558
+ workflow_deployment_name=workflow_deployment_name,
559
+ release_tag=release_tag,
560
+ external_id=external_id,
561
+ metadata=metadata,
562
+ previous_execution_id=previous_execution_id,
563
+ request_options=request_options,
564
+ )
565
+ return _response.data
566
+
567
+ def execute_workflow_async(
568
+ self,
569
+ *,
570
+ inputs: typing.Sequence[WorkflowRequestInputRequest],
571
+ workflow_deployment_id: typing.Optional[str] = OMIT,
572
+ workflow_deployment_name: typing.Optional[str] = OMIT,
573
+ release_tag: typing.Optional[str] = OMIT,
574
+ external_id: typing.Optional[str] = OMIT,
575
+ previous_execution_id: typing.Optional[str] = OMIT,
576
+ metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
577
+ request_options: typing.Optional[RequestOptions] = None,
578
+ ) -> ExecuteWorkflowAsyncResponse:
579
+ """
580
+ Executes a deployed Workflow asynchronously and returns the execution ID.
581
+
582
+ Parameters
583
+ ----------
584
+ inputs : typing.Sequence[WorkflowRequestInputRequest]
585
+ The list of inputs defined in the Workflow's Deployment with their corresponding values.
586
+
587
+ workflow_deployment_id : typing.Optional[str]
588
+ The ID of the Workflow Deployment. Must provide either this or workflow_deployment_name.
589
+
590
+ workflow_deployment_name : typing.Optional[str]
591
+ The name of the Workflow Deployment. Must provide either this or workflow_deployment_id.
592
+
593
+ release_tag : typing.Optional[str]
594
+ Optionally specify a release tag if you want to pin to a specific release of the Workflow Deployment
595
+
596
+ external_id : typing.Optional[str]
597
+ Optionally include a unique identifier for tracking purposes. Must be unique within a given Workspace.
598
+
599
+ previous_execution_id : typing.Optional[str]
600
+ The ID of a previous Workflow Execution to reference for initial State loading.
601
+
602
+ metadata : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
603
+ Arbitrary JSON metadata associated with this request. Can be used to capture additional monitoring data such as user id, session id, etc. for future analysis.
604
+
605
+ request_options : typing.Optional[RequestOptions]
606
+ Request-specific configuration.
607
+
608
+ Returns
609
+ -------
610
+ ExecuteWorkflowAsyncResponse
611
+
612
+
613
+ Examples
614
+ --------
615
+ from vellum import Vellum, WorkflowRequestStringInputRequest
616
+
617
+ client = Vellum(
618
+ api_version="YOUR_API_VERSION",
619
+ api_key="YOUR_API_KEY",
620
+ )
621
+ client.execute_workflow_async(
622
+ inputs=[
623
+ WorkflowRequestStringInputRequest(
624
+ name="x",
625
+ value="value",
712
626
  ),
713
- "expand_meta": convert_and_respect_annotation_metadata(
714
- object_=expand_meta, annotation=WorkflowExpandMetaRequest, direction="write"
627
+ WorkflowRequestStringInputRequest(
628
+ name="x",
629
+ value="value",
715
630
  ),
716
- "workflow_deployment_id": workflow_deployment_id,
717
- "workflow_deployment_name": workflow_deployment_name,
718
- "release_tag": release_tag,
719
- "external_id": external_id,
720
- "metadata": metadata,
721
- },
631
+ ],
632
+ )
633
+ """
634
+ _response = self._raw_client.execute_workflow_async(
635
+ inputs=inputs,
636
+ workflow_deployment_id=workflow_deployment_id,
637
+ workflow_deployment_name=workflow_deployment_name,
638
+ release_tag=release_tag,
639
+ external_id=external_id,
640
+ previous_execution_id=previous_execution_id,
641
+ metadata=metadata,
722
642
  request_options=request_options,
723
- omit=OMIT,
724
643
  )
725
- try:
726
- if 200 <= _response.status_code < 300:
727
- return typing.cast(
728
- ExecuteWorkflowResponse,
729
- parse_obj_as(
730
- type_=ExecuteWorkflowResponse, # type: ignore
731
- object_=_response.json(),
732
- ),
733
- )
734
- if _response.status_code == 400:
735
- raise BadRequestError(
736
- typing.cast(
737
- typing.Optional[typing.Any],
738
- parse_obj_as(
739
- type_=typing.Optional[typing.Any], # type: ignore
740
- object_=_response.json(),
741
- ),
742
- )
743
- )
744
- if _response.status_code == 404:
745
- raise NotFoundError(
746
- typing.cast(
747
- typing.Optional[typing.Any],
748
- parse_obj_as(
749
- type_=typing.Optional[typing.Any], # type: ignore
750
- object_=_response.json(),
751
- ),
752
- )
753
- )
754
- if _response.status_code == 500:
755
- raise InternalServerError(
756
- typing.cast(
757
- typing.Optional[typing.Any],
758
- parse_obj_as(
759
- type_=typing.Optional[typing.Any], # type: ignore
760
- object_=_response.json(),
761
- ),
762
- )
763
- )
764
- _response_json = _response.json()
765
- except JSONDecodeError:
766
- raise ApiError(status_code=_response.status_code, body=_response.text)
767
- raise ApiError(status_code=_response.status_code, body=_response_json)
644
+ return _response.data
768
645
 
769
646
  def execute_workflow_stream(
770
647
  self,
@@ -777,6 +654,7 @@ class Vellum:
777
654
  external_id: typing.Optional[str] = OMIT,
778
655
  event_types: typing.Optional[typing.Sequence[WorkflowExecutionEventType]] = OMIT,
779
656
  metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
657
+ previous_execution_id: typing.Optional[str] = OMIT,
780
658
  request_options: typing.Optional[RequestOptions] = None,
781
659
  ) -> typing.Iterator[WorkflowStreamEvent]:
782
660
  """
@@ -808,6 +686,9 @@ class Vellum:
808
686
  metadata : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
809
687
  Arbitrary JSON metadata associated with this request. Can be used to capture additional monitoring data such as user id, session id, etc. for future analysis.
810
688
 
689
+ previous_execution_id : typing.Optional[str]
690
+ The ID of a previous Workflow Execution to reference for initial State loading.
691
+
811
692
  request_options : typing.Optional[RequestOptions]
812
693
  Request-specific configuration.
813
694
 
@@ -821,91 +702,37 @@ class Vellum:
821
702
  from vellum import Vellum, WorkflowRequestStringInputRequest
822
703
 
823
704
  client = Vellum(
705
+ api_version="YOUR_API_VERSION",
824
706
  api_key="YOUR_API_KEY",
825
707
  )
826
708
  response = client.execute_workflow_stream(
827
709
  inputs=[
828
710
  WorkflowRequestStringInputRequest(
829
- name="name",
711
+ name="x",
830
712
  value="value",
831
- )
713
+ ),
714
+ WorkflowRequestStringInputRequest(
715
+ name="x",
716
+ value="value",
717
+ ),
832
718
  ],
833
719
  )
834
720
  for chunk in response:
835
721
  yield chunk
836
722
  """
837
- with self._client_wrapper.httpx_client.stream(
838
- "v1/execute-workflow-stream",
839
- base_url=self._client_wrapper.get_environment().predict,
840
- method="POST",
841
- json={
842
- "inputs": convert_and_respect_annotation_metadata(
843
- object_=inputs, annotation=typing.Sequence[WorkflowRequestInputRequest], direction="write"
844
- ),
845
- "expand_meta": convert_and_respect_annotation_metadata(
846
- object_=expand_meta, annotation=WorkflowExpandMetaRequest, direction="write"
847
- ),
848
- "workflow_deployment_id": workflow_deployment_id,
849
- "workflow_deployment_name": workflow_deployment_name,
850
- "release_tag": release_tag,
851
- "external_id": external_id,
852
- "event_types": event_types,
853
- "metadata": metadata,
854
- },
723
+ with self._raw_client.execute_workflow_stream(
724
+ inputs=inputs,
725
+ expand_meta=expand_meta,
726
+ workflow_deployment_id=workflow_deployment_id,
727
+ workflow_deployment_name=workflow_deployment_name,
728
+ release_tag=release_tag,
729
+ external_id=external_id,
730
+ event_types=event_types,
731
+ metadata=metadata,
732
+ previous_execution_id=previous_execution_id,
855
733
  request_options=request_options,
856
- omit=OMIT,
857
- ) as _response:
858
- try:
859
- if 200 <= _response.status_code < 300:
860
- for _text in _response.iter_lines():
861
- try:
862
- if len(_text) == 0:
863
- continue
864
- yield typing.cast(
865
- WorkflowStreamEvent,
866
- parse_obj_as(
867
- type_=WorkflowStreamEvent, # type: ignore
868
- object_=json.loads(_text),
869
- ),
870
- )
871
- except:
872
- pass
873
- return
874
- _response.read()
875
- if _response.status_code == 400:
876
- raise BadRequestError(
877
- typing.cast(
878
- typing.Optional[typing.Any],
879
- parse_obj_as(
880
- type_=typing.Optional[typing.Any], # type: ignore
881
- object_=_response.json(),
882
- ),
883
- )
884
- )
885
- if _response.status_code == 404:
886
- raise NotFoundError(
887
- typing.cast(
888
- typing.Optional[typing.Any],
889
- parse_obj_as(
890
- type_=typing.Optional[typing.Any], # type: ignore
891
- object_=_response.json(),
892
- ),
893
- )
894
- )
895
- if _response.status_code == 500:
896
- raise InternalServerError(
897
- typing.cast(
898
- typing.Optional[typing.Any],
899
- parse_obj_as(
900
- type_=typing.Optional[typing.Any], # type: ignore
901
- object_=_response.json(),
902
- ),
903
- )
904
- )
905
- _response_json = _response.json()
906
- except JSONDecodeError:
907
- raise ApiError(status_code=_response.status_code, body=_response.text)
908
- raise ApiError(status_code=_response.status_code, body=_response_json)
734
+ ) as r:
735
+ yield from r.data
909
736
 
910
737
  def generate(
911
738
  self,
@@ -949,86 +776,28 @@ class Vellum:
949
776
  from vellum import GenerateRequest, Vellum
950
777
 
951
778
  client = Vellum(
779
+ api_version="YOUR_API_VERSION",
952
780
  api_key="YOUR_API_KEY",
953
781
  )
954
782
  client.generate(
955
783
  requests=[
956
784
  GenerateRequest(
957
- input_values={"key": "value"},
958
- )
785
+ input_values={"input_values": {"key": "value"}},
786
+ ),
787
+ GenerateRequest(
788
+ input_values={"input_values": {"key": "value"}},
789
+ ),
959
790
  ],
960
791
  )
961
792
  """
962
- _response = self._client_wrapper.httpx_client.request(
963
- "v1/generate",
964
- base_url=self._client_wrapper.get_environment().predict,
965
- method="POST",
966
- json={
967
- "deployment_id": deployment_id,
968
- "deployment_name": deployment_name,
969
- "requests": convert_and_respect_annotation_metadata(
970
- object_=requests, annotation=typing.Sequence[GenerateRequest], direction="write"
971
- ),
972
- "options": convert_and_respect_annotation_metadata(
973
- object_=options, annotation=GenerateOptionsRequest, direction="write"
974
- ),
975
- },
793
+ _response = self._raw_client.generate(
794
+ requests=requests,
795
+ deployment_id=deployment_id,
796
+ deployment_name=deployment_name,
797
+ options=options,
976
798
  request_options=request_options,
977
- omit=OMIT,
978
799
  )
979
- try:
980
- if 200 <= _response.status_code < 300:
981
- return typing.cast(
982
- GenerateResponse,
983
- parse_obj_as(
984
- type_=GenerateResponse, # type: ignore
985
- object_=_response.json(),
986
- ),
987
- )
988
- if _response.status_code == 400:
989
- raise BadRequestError(
990
- typing.cast(
991
- typing.Optional[typing.Any],
992
- parse_obj_as(
993
- type_=typing.Optional[typing.Any], # type: ignore
994
- object_=_response.json(),
995
- ),
996
- )
997
- )
998
- if _response.status_code == 403:
999
- raise ForbiddenError(
1000
- typing.cast(
1001
- typing.Optional[typing.Any],
1002
- parse_obj_as(
1003
- type_=typing.Optional[typing.Any], # type: ignore
1004
- object_=_response.json(),
1005
- ),
1006
- )
1007
- )
1008
- if _response.status_code == 404:
1009
- raise NotFoundError(
1010
- typing.cast(
1011
- typing.Optional[typing.Any],
1012
- parse_obj_as(
1013
- type_=typing.Optional[typing.Any], # type: ignore
1014
- object_=_response.json(),
1015
- ),
1016
- )
1017
- )
1018
- if _response.status_code == 500:
1019
- raise InternalServerError(
1020
- typing.cast(
1021
- typing.Optional[typing.Any],
1022
- parse_obj_as(
1023
- type_=typing.Optional[typing.Any], # type: ignore
1024
- object_=_response.json(),
1025
- ),
1026
- )
1027
- )
1028
- _response_json = _response.json()
1029
- except JSONDecodeError:
1030
- raise ApiError(status_code=_response.status_code, body=_response.text)
1031
- raise ApiError(status_code=_response.status_code, body=_response_json)
800
+ return _response.data
1032
801
 
1033
802
  def generate_stream(
1034
803
  self,
@@ -1072,96 +841,30 @@ class Vellum:
1072
841
  from vellum import GenerateRequest, Vellum
1073
842
 
1074
843
  client = Vellum(
844
+ api_version="YOUR_API_VERSION",
1075
845
  api_key="YOUR_API_KEY",
1076
846
  )
1077
847
  response = client.generate_stream(
1078
848
  requests=[
1079
849
  GenerateRequest(
1080
- input_values={"key": "value"},
1081
- )
850
+ input_values={"input_values": {"key": "value"}},
851
+ ),
852
+ GenerateRequest(
853
+ input_values={"input_values": {"key": "value"}},
854
+ ),
1082
855
  ],
1083
856
  )
1084
857
  for chunk in response:
1085
858
  yield chunk
1086
859
  """
1087
- with self._client_wrapper.httpx_client.stream(
1088
- "v1/generate-stream",
1089
- base_url=self._client_wrapper.get_environment().predict,
1090
- method="POST",
1091
- json={
1092
- "deployment_id": deployment_id,
1093
- "deployment_name": deployment_name,
1094
- "requests": convert_and_respect_annotation_metadata(
1095
- object_=requests, annotation=typing.Sequence[GenerateRequest], direction="write"
1096
- ),
1097
- "options": convert_and_respect_annotation_metadata(
1098
- object_=options, annotation=GenerateOptionsRequest, direction="write"
1099
- ),
1100
- },
860
+ with self._raw_client.generate_stream(
861
+ requests=requests,
862
+ deployment_id=deployment_id,
863
+ deployment_name=deployment_name,
864
+ options=options,
1101
865
  request_options=request_options,
1102
- omit=OMIT,
1103
- ) as _response:
1104
- try:
1105
- if 200 <= _response.status_code < 300:
1106
- for _text in _response.iter_lines():
1107
- try:
1108
- if len(_text) == 0:
1109
- continue
1110
- yield typing.cast(
1111
- GenerateStreamResponse,
1112
- parse_obj_as(
1113
- type_=GenerateStreamResponse, # type: ignore
1114
- object_=json.loads(_text),
1115
- ),
1116
- )
1117
- except:
1118
- pass
1119
- return
1120
- _response.read()
1121
- if _response.status_code == 400:
1122
- raise BadRequestError(
1123
- typing.cast(
1124
- typing.Optional[typing.Any],
1125
- parse_obj_as(
1126
- type_=typing.Optional[typing.Any], # type: ignore
1127
- object_=_response.json(),
1128
- ),
1129
- )
1130
- )
1131
- if _response.status_code == 403:
1132
- raise ForbiddenError(
1133
- typing.cast(
1134
- typing.Optional[typing.Any],
1135
- parse_obj_as(
1136
- type_=typing.Optional[typing.Any], # type: ignore
1137
- object_=_response.json(),
1138
- ),
1139
- )
1140
- )
1141
- if _response.status_code == 404:
1142
- raise NotFoundError(
1143
- typing.cast(
1144
- typing.Optional[typing.Any],
1145
- parse_obj_as(
1146
- type_=typing.Optional[typing.Any], # type: ignore
1147
- object_=_response.json(),
1148
- ),
1149
- )
1150
- )
1151
- if _response.status_code == 500:
1152
- raise InternalServerError(
1153
- typing.cast(
1154
- typing.Optional[typing.Any],
1155
- parse_obj_as(
1156
- type_=typing.Optional[typing.Any], # type: ignore
1157
- object_=_response.json(),
1158
- ),
1159
- )
1160
- )
1161
- _response_json = _response.json()
1162
- except JSONDecodeError:
1163
- raise ApiError(status_code=_response.status_code, body=_response.text)
1164
- raise ApiError(status_code=_response.status_code, body=_response_json)
866
+ ) as r:
867
+ yield from r.data
1165
868
 
1166
869
  def search(
1167
870
  self,
@@ -1206,71 +909,22 @@ class Vellum:
1206
909
  from vellum import Vellum
1207
910
 
1208
911
  client = Vellum(
912
+ api_version="YOUR_API_VERSION",
1209
913
  api_key="YOUR_API_KEY",
1210
914
  )
1211
915
  client.search(
1212
- query="query",
916
+ query="x",
1213
917
  )
1214
918
  """
1215
- _response = self._client_wrapper.httpx_client.request(
1216
- "v1/search",
1217
- base_url=self._client_wrapper.get_environment().predict,
1218
- method="POST",
1219
- json={
1220
- "index_id": index_id,
1221
- "index_name": index_name,
1222
- "query": query,
1223
- "options": convert_and_respect_annotation_metadata(
1224
- object_=options, annotation=SearchRequestOptionsRequest, direction="write"
1225
- ),
1226
- "document_index": document_index,
1227
- },
919
+ _response = self._raw_client.search(
920
+ query=query,
921
+ index_id=index_id,
922
+ index_name=index_name,
923
+ options=options,
924
+ document_index=document_index,
1228
925
  request_options=request_options,
1229
- omit=OMIT,
1230
926
  )
1231
- try:
1232
- if 200 <= _response.status_code < 300:
1233
- return typing.cast(
1234
- SearchResponse,
1235
- parse_obj_as(
1236
- type_=SearchResponse, # type: ignore
1237
- object_=_response.json(),
1238
- ),
1239
- )
1240
- if _response.status_code == 400:
1241
- raise BadRequestError(
1242
- typing.cast(
1243
- typing.Optional[typing.Any],
1244
- parse_obj_as(
1245
- type_=typing.Optional[typing.Any], # type: ignore
1246
- object_=_response.json(),
1247
- ),
1248
- )
1249
- )
1250
- if _response.status_code == 404:
1251
- raise NotFoundError(
1252
- typing.cast(
1253
- typing.Optional[typing.Any],
1254
- parse_obj_as(
1255
- type_=typing.Optional[typing.Any], # type: ignore
1256
- object_=_response.json(),
1257
- ),
1258
- )
1259
- )
1260
- if _response.status_code == 500:
1261
- raise InternalServerError(
1262
- typing.cast(
1263
- typing.Optional[typing.Any],
1264
- parse_obj_as(
1265
- type_=typing.Optional[typing.Any], # type: ignore
1266
- object_=_response.json(),
1267
- ),
1268
- )
1269
- )
1270
- _response_json = _response.json()
1271
- except JSONDecodeError:
1272
- raise ApiError(status_code=_response.status_code, body=_response.text)
1273
- raise ApiError(status_code=_response.status_code, body=_response_json)
927
+ return _response.data
1274
928
 
1275
929
  def submit_completion_actuals(
1276
930
  self,
@@ -1306,63 +960,20 @@ class Vellum:
1306
960
  from vellum import SubmitCompletionActualRequest, Vellum
1307
961
 
1308
962
  client = Vellum(
963
+ api_version="YOUR_API_VERSION",
1309
964
  api_key="YOUR_API_KEY",
1310
965
  )
1311
966
  client.submit_completion_actuals(
1312
- actuals=[SubmitCompletionActualRequest()],
967
+ actuals=[SubmitCompletionActualRequest(), SubmitCompletionActualRequest()],
1313
968
  )
1314
969
  """
1315
- _response = self._client_wrapper.httpx_client.request(
1316
- "v1/submit-completion-actuals",
1317
- base_url=self._client_wrapper.get_environment().predict,
1318
- method="POST",
1319
- json={
1320
- "deployment_id": deployment_id,
1321
- "deployment_name": deployment_name,
1322
- "actuals": convert_and_respect_annotation_metadata(
1323
- object_=actuals, annotation=typing.Sequence[SubmitCompletionActualRequest], direction="write"
1324
- ),
1325
- },
970
+ _response = self._raw_client.submit_completion_actuals(
971
+ actuals=actuals,
972
+ deployment_id=deployment_id,
973
+ deployment_name=deployment_name,
1326
974
  request_options=request_options,
1327
- omit=OMIT,
1328
975
  )
1329
- try:
1330
- if 200 <= _response.status_code < 300:
1331
- return
1332
- if _response.status_code == 400:
1333
- raise BadRequestError(
1334
- typing.cast(
1335
- typing.Optional[typing.Any],
1336
- parse_obj_as(
1337
- type_=typing.Optional[typing.Any], # type: ignore
1338
- object_=_response.json(),
1339
- ),
1340
- )
1341
- )
1342
- if _response.status_code == 404:
1343
- raise NotFoundError(
1344
- typing.cast(
1345
- typing.Optional[typing.Any],
1346
- parse_obj_as(
1347
- type_=typing.Optional[typing.Any], # type: ignore
1348
- object_=_response.json(),
1349
- ),
1350
- )
1351
- )
1352
- if _response.status_code == 500:
1353
- raise InternalServerError(
1354
- typing.cast(
1355
- typing.Optional[typing.Any],
1356
- parse_obj_as(
1357
- type_=typing.Optional[typing.Any], # type: ignore
1358
- object_=_response.json(),
1359
- ),
1360
- )
1361
- )
1362
- _response_json = _response.json()
1363
- except JSONDecodeError:
1364
- raise ApiError(status_code=_response.status_code, body=_response.text)
1365
- raise ApiError(status_code=_response.status_code, body=_response_json)
976
+ return _response.data
1366
977
 
1367
978
  def submit_workflow_execution_actuals(
1368
979
  self,
@@ -1400,33 +1011,20 @@ class Vellum:
1400
1011
  from vellum import Vellum, WorkflowExecutionActualStringRequest
1401
1012
 
1402
1013
  client = Vellum(
1014
+ api_version="YOUR_API_VERSION",
1403
1015
  api_key="YOUR_API_KEY",
1404
1016
  )
1405
1017
  client.submit_workflow_execution_actuals(
1406
- actuals=[WorkflowExecutionActualStringRequest()],
1018
+ actuals=[
1019
+ WorkflowExecutionActualStringRequest(),
1020
+ WorkflowExecutionActualStringRequest(),
1021
+ ],
1407
1022
  )
1408
1023
  """
1409
- _response = self._client_wrapper.httpx_client.request(
1410
- "v1/submit-workflow-execution-actuals",
1411
- base_url=self._client_wrapper.get_environment().predict,
1412
- method="POST",
1413
- json={
1414
- "actuals": convert_and_respect_annotation_metadata(
1415
- object_=actuals, annotation=typing.Sequence[SubmitWorkflowExecutionActualRequest], direction="write"
1416
- ),
1417
- "execution_id": execution_id,
1418
- "external_id": external_id,
1419
- },
1420
- request_options=request_options,
1421
- omit=OMIT,
1024
+ _response = self._raw_client.submit_workflow_execution_actuals(
1025
+ actuals=actuals, execution_id=execution_id, external_id=external_id, request_options=request_options
1422
1026
  )
1423
- try:
1424
- if 200 <= _response.status_code < 300:
1425
- return
1426
- _response_json = _response.json()
1427
- except JSONDecodeError:
1428
- raise ApiError(status_code=_response.status_code, body=_response.text)
1429
- raise ApiError(status_code=_response.status_code, body=_response_json)
1027
+ return _response.data
1430
1028
 
1431
1029
 
1432
1030
  class AsyncVellum:
@@ -1444,7 +1042,11 @@ class AsyncVellum:
1444
1042
 
1445
1043
 
1446
1044
 
1045
+ api_version : typing.Optional[ApiVersionEnum]
1447
1046
  api_key : str
1047
+ headers : typing.Optional[typing.Dict[str, str]]
1048
+ Additional headers to send with every request.
1049
+
1448
1050
  timeout : typing.Optional[float]
1449
1051
  The timeout to be used, in seconds, for requests. By default there is no timeout set, unless a custom httpx client is used, in which case this default is not enforced.
1450
1052
 
@@ -1459,6 +1061,7 @@ class AsyncVellum:
1459
1061
  from vellum import AsyncVellum
1460
1062
 
1461
1063
  client = AsyncVellum(
1064
+ api_version="YOUR_API_VERSION",
1462
1065
  api_key="YOUR_API_KEY",
1463
1066
  )
1464
1067
  """
@@ -1467,15 +1070,21 @@ class AsyncVellum:
1467
1070
  self,
1468
1071
  *,
1469
1072
  environment: VellumEnvironment = VellumEnvironment.PRODUCTION,
1073
+ api_version: typing.Optional[ApiVersionEnum] = os.getenv("VELLUM_API_VERSION", "2025-07-30"),
1470
1074
  api_key: str,
1075
+ headers: typing.Optional[typing.Dict[str, str]] = None,
1471
1076
  timeout: typing.Optional[float] = None,
1472
1077
  follow_redirects: typing.Optional[bool] = True,
1473
1078
  httpx_client: typing.Optional[httpx.AsyncClient] = None,
1474
1079
  ):
1475
- _defaulted_timeout = timeout if timeout is not None else None if httpx_client is None else None
1080
+ _defaulted_timeout = (
1081
+ timeout if timeout is not None else None if httpx_client is None else httpx_client.timeout.read
1082
+ )
1476
1083
  self._client_wrapper = AsyncClientWrapper(
1477
1084
  environment=environment,
1085
+ api_version=api_version,
1478
1086
  api_key=api_key,
1087
+ headers=headers,
1479
1088
  httpx_client=httpx_client
1480
1089
  if httpx_client is not None
1481
1090
  else httpx.AsyncClient(timeout=_defaulted_timeout, follow_redirects=follow_redirects)
@@ -1483,13 +1092,18 @@ class AsyncVellum:
1483
1092
  else httpx.AsyncClient(timeout=_defaulted_timeout),
1484
1093
  timeout=_defaulted_timeout,
1485
1094
  )
1095
+ self._raw_client = AsyncRawVellum(client_wrapper=self._client_wrapper)
1096
+ self.integrations = AsyncIntegrationsClient(client_wrapper=self._client_wrapper)
1097
+ self.events = AsyncEventsClient(client_wrapper=self._client_wrapper)
1486
1098
  self.ad_hoc = AsyncAdHocClient(client_wrapper=self._client_wrapper)
1487
1099
  self.container_images = AsyncContainerImagesClient(client_wrapper=self._client_wrapper)
1488
1100
  self.deployments = AsyncDeploymentsClient(client_wrapper=self._client_wrapper)
1489
- self.release_reviews = AsyncReleaseReviewsClient(client_wrapper=self._client_wrapper)
1490
1101
  self.document_indexes = AsyncDocumentIndexesClient(client_wrapper=self._client_wrapper)
1491
1102
  self.documents = AsyncDocumentsClient(client_wrapper=self._client_wrapper)
1103
+ self.environments = AsyncEnvironmentsClient(client_wrapper=self._client_wrapper)
1492
1104
  self.folder_entities = AsyncFolderEntitiesClient(client_wrapper=self._client_wrapper)
1105
+ self.integration_auth_configs = AsyncIntegrationAuthConfigsClient(client_wrapper=self._client_wrapper)
1106
+ self.integration_providers = AsyncIntegrationProvidersClient(client_wrapper=self._client_wrapper)
1493
1107
  self.metric_definitions = AsyncMetricDefinitionsClient(client_wrapper=self._client_wrapper)
1494
1108
  self.ml_models = AsyncMlModelsClient(client_wrapper=self._client_wrapper)
1495
1109
  self.organizations = AsyncOrganizationsClient(client_wrapper=self._client_wrapper)
@@ -1497,12 +1111,25 @@ class AsyncVellum:
1497
1111
  self.sandboxes = AsyncSandboxesClient(client_wrapper=self._client_wrapper)
1498
1112
  self.test_suite_runs = AsyncTestSuiteRunsClient(client_wrapper=self._client_wrapper)
1499
1113
  self.test_suites = AsyncTestSuitesClient(client_wrapper=self._client_wrapper)
1114
+ self.uploaded_files = AsyncUploadedFilesClient(client_wrapper=self._client_wrapper)
1500
1115
  self.workflow_deployments = AsyncWorkflowDeploymentsClient(client_wrapper=self._client_wrapper)
1116
+ self.workflow_executions = AsyncWorkflowExecutionsClient(client_wrapper=self._client_wrapper)
1501
1117
  self.workflow_sandboxes = AsyncWorkflowSandboxesClient(client_wrapper=self._client_wrapper)
1502
1118
  self.workflows = AsyncWorkflowsClient(client_wrapper=self._client_wrapper)
1503
1119
  self.workspace_secrets = AsyncWorkspaceSecretsClient(client_wrapper=self._client_wrapper)
1504
1120
  self.workspaces = AsyncWorkspacesClient(client_wrapper=self._client_wrapper)
1505
1121
 
1122
+ @property
1123
+ def with_raw_response(self) -> AsyncRawVellum:
1124
+ """
1125
+ Retrieves a raw implementation of this client that returns raw responses.
1126
+
1127
+ Returns
1128
+ -------
1129
+ AsyncRawVellum
1130
+ """
1131
+ return self._raw_client
1132
+
1506
1133
  async def execute_api(
1507
1134
  self,
1508
1135
  *,
@@ -1541,51 +1168,28 @@ class AsyncVellum:
1541
1168
  from vellum import AsyncVellum
1542
1169
 
1543
1170
  client = AsyncVellum(
1171
+ api_version="YOUR_API_VERSION",
1544
1172
  api_key="YOUR_API_KEY",
1545
1173
  )
1546
1174
 
1547
1175
 
1548
1176
  async def main() -> None:
1549
1177
  await client.execute_api(
1550
- url="url",
1178
+ url="x",
1551
1179
  )
1552
1180
 
1553
1181
 
1554
1182
  asyncio.run(main())
1555
1183
  """
1556
- _response = await self._client_wrapper.httpx_client.request(
1557
- "v1/execute-api",
1558
- base_url=self._client_wrapper.get_environment().default,
1559
- method="POST",
1560
- json={
1561
- "url": url,
1562
- "method": method,
1563
- "body": convert_and_respect_annotation_metadata(
1564
- object_=body, annotation=ExecuteApiRequestBody, direction="write"
1565
- ),
1566
- "headers": convert_and_respect_annotation_metadata(
1567
- object_=headers, annotation=typing.Dict[str, ExecuteApiRequestHeadersValue], direction="write"
1568
- ),
1569
- "bearer_token": convert_and_respect_annotation_metadata(
1570
- object_=bearer_token, annotation=ExecuteApiRequestBearerToken, direction="write"
1571
- ),
1572
- },
1184
+ _response = await self._raw_client.execute_api(
1185
+ url=url,
1186
+ method=method,
1187
+ body=body,
1188
+ headers=headers,
1189
+ bearer_token=bearer_token,
1573
1190
  request_options=request_options,
1574
- omit=OMIT,
1575
1191
  )
1576
- try:
1577
- if 200 <= _response.status_code < 300:
1578
- return typing.cast(
1579
- ExecuteApiResponse,
1580
- parse_obj_as(
1581
- type_=ExecuteApiResponse, # type: ignore
1582
- object_=_response.json(),
1583
- ),
1584
- )
1585
- _response_json = _response.json()
1586
- except JSONDecodeError:
1587
- raise ApiError(status_code=_response.status_code, body=_response.text)
1588
- raise ApiError(status_code=_response.status_code, body=_response_json)
1192
+ return _response.data
1589
1193
 
1590
1194
  async def execute_code(
1591
1195
  self,
@@ -1625,25 +1229,34 @@ class AsyncVellum:
1625
1229
  from vellum import AsyncVellum, CodeExecutionPackage, StringInput
1626
1230
 
1627
1231
  client = AsyncVellum(
1232
+ api_version="YOUR_API_VERSION",
1628
1233
  api_key="YOUR_API_KEY",
1629
1234
  )
1630
1235
 
1631
1236
 
1632
1237
  async def main() -> None:
1633
1238
  await client.execute_code(
1634
- code="code",
1239
+ code="x",
1635
1240
  runtime="PYTHON_3_11_6",
1636
1241
  input_values=[
1637
1242
  StringInput(
1638
- name="name",
1243
+ name="x",
1639
1244
  value="value",
1640
- )
1245
+ ),
1246
+ StringInput(
1247
+ name="x",
1248
+ value="value",
1249
+ ),
1641
1250
  ],
1642
1251
  packages=[
1643
1252
  CodeExecutionPackage(
1644
1253
  version="version",
1645
1254
  name="name",
1646
- )
1255
+ ),
1256
+ CodeExecutionPackage(
1257
+ version="version",
1258
+ name="name",
1259
+ ),
1647
1260
  ],
1648
1261
  output_type="STRING",
1649
1262
  )
@@ -1651,47 +1264,15 @@ class AsyncVellum:
1651
1264
 
1652
1265
  asyncio.run(main())
1653
1266
  """
1654
- _response = await self._client_wrapper.httpx_client.request(
1655
- "v1/execute-code",
1656
- base_url=self._client_wrapper.get_environment().predict,
1657
- method="POST",
1658
- json={
1659
- "code": code,
1660
- "runtime": runtime,
1661
- "input_values": convert_and_respect_annotation_metadata(
1662
- object_=input_values, annotation=typing.Sequence[CodeExecutorInput], direction="write"
1663
- ),
1664
- "packages": convert_and_respect_annotation_metadata(
1665
- object_=packages, annotation=typing.Sequence[CodeExecutionPackage], direction="write"
1666
- ),
1667
- "output_type": output_type,
1668
- },
1267
+ _response = await self._raw_client.execute_code(
1268
+ code=code,
1269
+ runtime=runtime,
1270
+ input_values=input_values,
1271
+ packages=packages,
1272
+ output_type=output_type,
1669
1273
  request_options=request_options,
1670
- omit=OMIT,
1671
1274
  )
1672
- try:
1673
- if 200 <= _response.status_code < 300:
1674
- return typing.cast(
1675
- CodeExecutorResponse,
1676
- parse_obj_as(
1677
- type_=CodeExecutorResponse, # type: ignore
1678
- object_=_response.json(),
1679
- ),
1680
- )
1681
- if _response.status_code == 400:
1682
- raise BadRequestError(
1683
- typing.cast(
1684
- typing.Optional[typing.Any],
1685
- parse_obj_as(
1686
- type_=typing.Optional[typing.Any], # type: ignore
1687
- object_=_response.json(),
1688
- ),
1689
- )
1690
- )
1691
- _response_json = _response.json()
1692
- except JSONDecodeError:
1693
- raise ApiError(status_code=_response.status_code, body=_response.text)
1694
- raise ApiError(status_code=_response.status_code, body=_response_json)
1275
+ return _response.data
1695
1276
 
1696
1277
  async def execute_prompt(
1697
1278
  self,
@@ -1754,6 +1335,7 @@ class AsyncVellum:
1754
1335
  from vellum import AsyncVellum, StringInputRequest
1755
1336
 
1756
1337
  client = AsyncVellum(
1338
+ api_version="YOUR_API_VERSION",
1757
1339
  api_key="YOUR_API_KEY",
1758
1340
  )
1759
1341
 
@@ -1762,92 +1344,32 @@ class AsyncVellum:
1762
1344
  await client.execute_prompt(
1763
1345
  inputs=[
1764
1346
  StringInputRequest(
1765
- name="name",
1347
+ name="x",
1766
1348
  value="value",
1767
- )
1349
+ ),
1350
+ StringInputRequest(
1351
+ name="x",
1352
+ value="value",
1353
+ ),
1768
1354
  ],
1769
1355
  )
1770
1356
 
1771
1357
 
1772
1358
  asyncio.run(main())
1773
1359
  """
1774
- _response = await self._client_wrapper.httpx_client.request(
1775
- "v1/execute-prompt",
1776
- base_url=self._client_wrapper.get_environment().predict,
1777
- method="POST",
1778
- json={
1779
- "inputs": convert_and_respect_annotation_metadata(
1780
- object_=inputs, annotation=typing.Sequence[PromptDeploymentInputRequest], direction="write"
1781
- ),
1782
- "prompt_deployment_id": prompt_deployment_id,
1783
- "prompt_deployment_name": prompt_deployment_name,
1784
- "release_tag": release_tag,
1785
- "external_id": external_id,
1786
- "expand_meta": convert_and_respect_annotation_metadata(
1787
- object_=expand_meta, annotation=PromptDeploymentExpandMetaRequest, direction="write"
1788
- ),
1789
- "raw_overrides": convert_and_respect_annotation_metadata(
1790
- object_=raw_overrides, annotation=RawPromptExecutionOverridesRequest, direction="write"
1791
- ),
1792
- "expand_raw": expand_raw,
1793
- "metadata": metadata,
1794
- },
1360
+ _response = await self._raw_client.execute_prompt(
1361
+ inputs=inputs,
1362
+ prompt_deployment_id=prompt_deployment_id,
1363
+ prompt_deployment_name=prompt_deployment_name,
1364
+ release_tag=release_tag,
1365
+ external_id=external_id,
1366
+ expand_meta=expand_meta,
1367
+ raw_overrides=raw_overrides,
1368
+ expand_raw=expand_raw,
1369
+ metadata=metadata,
1795
1370
  request_options=request_options,
1796
- omit=OMIT,
1797
1371
  )
1798
- try:
1799
- if 200 <= _response.status_code < 300:
1800
- return typing.cast(
1801
- ExecutePromptResponse,
1802
- parse_obj_as(
1803
- type_=ExecutePromptResponse, # type: ignore
1804
- object_=_response.json(),
1805
- ),
1806
- )
1807
- if _response.status_code == 400:
1808
- raise BadRequestError(
1809
- typing.cast(
1810
- typing.Optional[typing.Any],
1811
- parse_obj_as(
1812
- type_=typing.Optional[typing.Any], # type: ignore
1813
- object_=_response.json(),
1814
- ),
1815
- )
1816
- )
1817
- if _response.status_code == 403:
1818
- raise ForbiddenError(
1819
- typing.cast(
1820
- typing.Optional[typing.Any],
1821
- parse_obj_as(
1822
- type_=typing.Optional[typing.Any], # type: ignore
1823
- object_=_response.json(),
1824
- ),
1825
- )
1826
- )
1827
- if _response.status_code == 404:
1828
- raise NotFoundError(
1829
- typing.cast(
1830
- typing.Optional[typing.Any],
1831
- parse_obj_as(
1832
- type_=typing.Optional[typing.Any], # type: ignore
1833
- object_=_response.json(),
1834
- ),
1835
- )
1836
- )
1837
- if _response.status_code == 500:
1838
- raise InternalServerError(
1839
- typing.cast(
1840
- typing.Optional[typing.Any],
1841
- parse_obj_as(
1842
- type_=typing.Optional[typing.Any], # type: ignore
1843
- object_=_response.json(),
1844
- ),
1845
- )
1846
- )
1847
- _response_json = _response.json()
1848
- except JSONDecodeError:
1849
- raise ApiError(status_code=_response.status_code, body=_response.text)
1850
- raise ApiError(status_code=_response.status_code, body=_response_json)
1372
+ return _response.data
1851
1373
 
1852
1374
  async def execute_prompt_stream(
1853
1375
  self,
@@ -1910,6 +1432,7 @@ class AsyncVellum:
1910
1432
  from vellum import AsyncVellum, StringInputRequest
1911
1433
 
1912
1434
  client = AsyncVellum(
1435
+ api_version="YOUR_API_VERSION",
1913
1436
  api_key="YOUR_API_KEY",
1914
1437
  )
1915
1438
 
@@ -1918,9 +1441,13 @@ class AsyncVellum:
1918
1441
  response = await client.execute_prompt_stream(
1919
1442
  inputs=[
1920
1443
  StringInputRequest(
1921
- name="name",
1444
+ name="x",
1445
+ value="value",
1446
+ ),
1447
+ StringInputRequest(
1448
+ name="x",
1922
1449
  value="value",
1923
- )
1450
+ ),
1924
1451
  ],
1925
1452
  )
1926
1453
  async for chunk in response:
@@ -1929,91 +1456,20 @@ class AsyncVellum:
1929
1456
 
1930
1457
  asyncio.run(main())
1931
1458
  """
1932
- async with self._client_wrapper.httpx_client.stream(
1933
- "v1/execute-prompt-stream",
1934
- base_url=self._client_wrapper.get_environment().predict,
1935
- method="POST",
1936
- json={
1937
- "inputs": convert_and_respect_annotation_metadata(
1938
- object_=inputs, annotation=typing.Sequence[PromptDeploymentInputRequest], direction="write"
1939
- ),
1940
- "prompt_deployment_id": prompt_deployment_id,
1941
- "prompt_deployment_name": prompt_deployment_name,
1942
- "release_tag": release_tag,
1943
- "external_id": external_id,
1944
- "expand_meta": convert_and_respect_annotation_metadata(
1945
- object_=expand_meta, annotation=PromptDeploymentExpandMetaRequest, direction="write"
1946
- ),
1947
- "raw_overrides": convert_and_respect_annotation_metadata(
1948
- object_=raw_overrides, annotation=RawPromptExecutionOverridesRequest, direction="write"
1949
- ),
1950
- "expand_raw": expand_raw,
1951
- "metadata": metadata,
1952
- },
1459
+ async with self._raw_client.execute_prompt_stream(
1460
+ inputs=inputs,
1461
+ prompt_deployment_id=prompt_deployment_id,
1462
+ prompt_deployment_name=prompt_deployment_name,
1463
+ release_tag=release_tag,
1464
+ external_id=external_id,
1465
+ expand_meta=expand_meta,
1466
+ raw_overrides=raw_overrides,
1467
+ expand_raw=expand_raw,
1468
+ metadata=metadata,
1953
1469
  request_options=request_options,
1954
- omit=OMIT,
1955
- ) as _response:
1956
- try:
1957
- if 200 <= _response.status_code < 300:
1958
- async for _text in _response.aiter_lines():
1959
- try:
1960
- if len(_text) == 0:
1961
- continue
1962
- yield typing.cast(
1963
- ExecutePromptEvent,
1964
- parse_obj_as(
1965
- type_=ExecutePromptEvent, # type: ignore
1966
- object_=json.loads(_text),
1967
- ),
1968
- )
1969
- except:
1970
- pass
1971
- return
1972
- await _response.aread()
1973
- if _response.status_code == 400:
1974
- raise BadRequestError(
1975
- typing.cast(
1976
- typing.Optional[typing.Any],
1977
- parse_obj_as(
1978
- type_=typing.Optional[typing.Any], # type: ignore
1979
- object_=_response.json(),
1980
- ),
1981
- )
1982
- )
1983
- if _response.status_code == 403:
1984
- raise ForbiddenError(
1985
- typing.cast(
1986
- typing.Optional[typing.Any],
1987
- parse_obj_as(
1988
- type_=typing.Optional[typing.Any], # type: ignore
1989
- object_=_response.json(),
1990
- ),
1991
- )
1992
- )
1993
- if _response.status_code == 404:
1994
- raise NotFoundError(
1995
- typing.cast(
1996
- typing.Optional[typing.Any],
1997
- parse_obj_as(
1998
- type_=typing.Optional[typing.Any], # type: ignore
1999
- object_=_response.json(),
2000
- ),
2001
- )
2002
- )
2003
- if _response.status_code == 500:
2004
- raise InternalServerError(
2005
- typing.cast(
2006
- typing.Optional[typing.Any],
2007
- parse_obj_as(
2008
- type_=typing.Optional[typing.Any], # type: ignore
2009
- object_=_response.json(),
2010
- ),
2011
- )
2012
- )
2013
- _response_json = _response.json()
2014
- except JSONDecodeError:
2015
- raise ApiError(status_code=_response.status_code, body=_response.text)
2016
- raise ApiError(status_code=_response.status_code, body=_response_json)
1470
+ ) as r:
1471
+ async for _chunk in r.data:
1472
+ yield _chunk
2017
1473
 
2018
1474
  async def execute_workflow(
2019
1475
  self,
@@ -2025,6 +1481,7 @@ class AsyncVellum:
2025
1481
  release_tag: typing.Optional[str] = OMIT,
2026
1482
  external_id: typing.Optional[str] = OMIT,
2027
1483
  metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
1484
+ previous_execution_id: typing.Optional[str] = OMIT,
2028
1485
  request_options: typing.Optional[RequestOptions] = None,
2029
1486
  ) -> ExecuteWorkflowResponse:
2030
1487
  """
@@ -2053,6 +1510,9 @@ class AsyncVellum:
2053
1510
  metadata : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
2054
1511
  Arbitrary JSON metadata associated with this request. Can be used to capture additional monitoring data such as user id, session id, etc. for future analysis.
2055
1512
 
1513
+ previous_execution_id : typing.Optional[str]
1514
+ The ID of a previous Workflow Execution to reference for initial State loading.
1515
+
2056
1516
  request_options : typing.Optional[RequestOptions]
2057
1517
  Request-specific configuration.
2058
1518
 
@@ -2068,6 +1528,7 @@ class AsyncVellum:
2068
1528
  from vellum import AsyncVellum, WorkflowRequestStringInputRequest
2069
1529
 
2070
1530
  client = AsyncVellum(
1531
+ api_version="YOUR_API_VERSION",
2071
1532
  api_key="YOUR_API_KEY",
2072
1533
  )
2073
1534
 
@@ -2076,78 +1537,118 @@ class AsyncVellum:
2076
1537
  await client.execute_workflow(
2077
1538
  inputs=[
2078
1539
  WorkflowRequestStringInputRequest(
2079
- name="name",
1540
+ name="x",
2080
1541
  value="value",
2081
- )
1542
+ ),
1543
+ WorkflowRequestStringInputRequest(
1544
+ name="x",
1545
+ value="value",
1546
+ ),
2082
1547
  ],
2083
1548
  )
2084
1549
 
2085
1550
 
2086
1551
  asyncio.run(main())
2087
1552
  """
2088
- _response = await self._client_wrapper.httpx_client.request(
2089
- "v1/execute-workflow",
2090
- base_url=self._client_wrapper.get_environment().predict,
2091
- method="POST",
2092
- json={
2093
- "inputs": convert_and_respect_annotation_metadata(
2094
- object_=inputs, annotation=typing.Sequence[WorkflowRequestInputRequest], direction="write"
2095
- ),
2096
- "expand_meta": convert_and_respect_annotation_metadata(
2097
- object_=expand_meta, annotation=WorkflowExpandMetaRequest, direction="write"
2098
- ),
2099
- "workflow_deployment_id": workflow_deployment_id,
2100
- "workflow_deployment_name": workflow_deployment_name,
2101
- "release_tag": release_tag,
2102
- "external_id": external_id,
2103
- "metadata": metadata,
2104
- },
1553
+ _response = await self._raw_client.execute_workflow(
1554
+ inputs=inputs,
1555
+ expand_meta=expand_meta,
1556
+ workflow_deployment_id=workflow_deployment_id,
1557
+ workflow_deployment_name=workflow_deployment_name,
1558
+ release_tag=release_tag,
1559
+ external_id=external_id,
1560
+ metadata=metadata,
1561
+ previous_execution_id=previous_execution_id,
2105
1562
  request_options=request_options,
2106
- omit=OMIT,
2107
1563
  )
2108
- try:
2109
- if 200 <= _response.status_code < 300:
2110
- return typing.cast(
2111
- ExecuteWorkflowResponse,
2112
- parse_obj_as(
2113
- type_=ExecuteWorkflowResponse, # type: ignore
2114
- object_=_response.json(),
1564
+ return _response.data
1565
+
1566
+ async def execute_workflow_async(
1567
+ self,
1568
+ *,
1569
+ inputs: typing.Sequence[WorkflowRequestInputRequest],
1570
+ workflow_deployment_id: typing.Optional[str] = OMIT,
1571
+ workflow_deployment_name: typing.Optional[str] = OMIT,
1572
+ release_tag: typing.Optional[str] = OMIT,
1573
+ external_id: typing.Optional[str] = OMIT,
1574
+ previous_execution_id: typing.Optional[str] = OMIT,
1575
+ metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
1576
+ request_options: typing.Optional[RequestOptions] = None,
1577
+ ) -> ExecuteWorkflowAsyncResponse:
1578
+ """
1579
+ Executes a deployed Workflow asynchronously and returns the execution ID.
1580
+
1581
+ Parameters
1582
+ ----------
1583
+ inputs : typing.Sequence[WorkflowRequestInputRequest]
1584
+ The list of inputs defined in the Workflow's Deployment with their corresponding values.
1585
+
1586
+ workflow_deployment_id : typing.Optional[str]
1587
+ The ID of the Workflow Deployment. Must provide either this or workflow_deployment_name.
1588
+
1589
+ workflow_deployment_name : typing.Optional[str]
1590
+ The name of the Workflow Deployment. Must provide either this or workflow_deployment_id.
1591
+
1592
+ release_tag : typing.Optional[str]
1593
+ Optionally specify a release tag if you want to pin to a specific release of the Workflow Deployment
1594
+
1595
+ external_id : typing.Optional[str]
1596
+ Optionally include a unique identifier for tracking purposes. Must be unique within a given Workspace.
1597
+
1598
+ previous_execution_id : typing.Optional[str]
1599
+ The ID of a previous Workflow Execution to reference for initial State loading.
1600
+
1601
+ metadata : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
1602
+ Arbitrary JSON metadata associated with this request. Can be used to capture additional monitoring data such as user id, session id, etc. for future analysis.
1603
+
1604
+ request_options : typing.Optional[RequestOptions]
1605
+ Request-specific configuration.
1606
+
1607
+ Returns
1608
+ -------
1609
+ ExecuteWorkflowAsyncResponse
1610
+
1611
+
1612
+ Examples
1613
+ --------
1614
+ import asyncio
1615
+
1616
+ from vellum import AsyncVellum, WorkflowRequestStringInputRequest
1617
+
1618
+ client = AsyncVellum(
1619
+ api_version="YOUR_API_VERSION",
1620
+ api_key="YOUR_API_KEY",
1621
+ )
1622
+
1623
+
1624
+ async def main() -> None:
1625
+ await client.execute_workflow_async(
1626
+ inputs=[
1627
+ WorkflowRequestStringInputRequest(
1628
+ name="x",
1629
+ value="value",
2115
1630
  ),
2116
- )
2117
- if _response.status_code == 400:
2118
- raise BadRequestError(
2119
- typing.cast(
2120
- typing.Optional[typing.Any],
2121
- parse_obj_as(
2122
- type_=typing.Optional[typing.Any], # type: ignore
2123
- object_=_response.json(),
2124
- ),
2125
- )
2126
- )
2127
- if _response.status_code == 404:
2128
- raise NotFoundError(
2129
- typing.cast(
2130
- typing.Optional[typing.Any],
2131
- parse_obj_as(
2132
- type_=typing.Optional[typing.Any], # type: ignore
2133
- object_=_response.json(),
2134
- ),
2135
- )
2136
- )
2137
- if _response.status_code == 500:
2138
- raise InternalServerError(
2139
- typing.cast(
2140
- typing.Optional[typing.Any],
2141
- parse_obj_as(
2142
- type_=typing.Optional[typing.Any], # type: ignore
2143
- object_=_response.json(),
2144
- ),
2145
- )
2146
- )
2147
- _response_json = _response.json()
2148
- except JSONDecodeError:
2149
- raise ApiError(status_code=_response.status_code, body=_response.text)
2150
- raise ApiError(status_code=_response.status_code, body=_response_json)
1631
+ WorkflowRequestStringInputRequest(
1632
+ name="x",
1633
+ value="value",
1634
+ ),
1635
+ ],
1636
+ )
1637
+
1638
+
1639
+ asyncio.run(main())
1640
+ """
1641
+ _response = await self._raw_client.execute_workflow_async(
1642
+ inputs=inputs,
1643
+ workflow_deployment_id=workflow_deployment_id,
1644
+ workflow_deployment_name=workflow_deployment_name,
1645
+ release_tag=release_tag,
1646
+ external_id=external_id,
1647
+ previous_execution_id=previous_execution_id,
1648
+ metadata=metadata,
1649
+ request_options=request_options,
1650
+ )
1651
+ return _response.data
2151
1652
 
2152
1653
  async def execute_workflow_stream(
2153
1654
  self,
@@ -2160,6 +1661,7 @@ class AsyncVellum:
2160
1661
  external_id: typing.Optional[str] = OMIT,
2161
1662
  event_types: typing.Optional[typing.Sequence[WorkflowExecutionEventType]] = OMIT,
2162
1663
  metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
1664
+ previous_execution_id: typing.Optional[str] = OMIT,
2163
1665
  request_options: typing.Optional[RequestOptions] = None,
2164
1666
  ) -> typing.AsyncIterator[WorkflowStreamEvent]:
2165
1667
  """
@@ -2191,6 +1693,9 @@ class AsyncVellum:
2191
1693
  metadata : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
2192
1694
  Arbitrary JSON metadata associated with this request. Can be used to capture additional monitoring data such as user id, session id, etc. for future analysis.
2193
1695
 
1696
+ previous_execution_id : typing.Optional[str]
1697
+ The ID of a previous Workflow Execution to reference for initial State loading.
1698
+
2194
1699
  request_options : typing.Optional[RequestOptions]
2195
1700
  Request-specific configuration.
2196
1701
 
@@ -2206,6 +1711,7 @@ class AsyncVellum:
2206
1711
  from vellum import AsyncVellum, WorkflowRequestStringInputRequest
2207
1712
 
2208
1713
  client = AsyncVellum(
1714
+ api_version="YOUR_API_VERSION",
2209
1715
  api_key="YOUR_API_KEY",
2210
1716
  )
2211
1717
 
@@ -2214,9 +1720,13 @@ class AsyncVellum:
2214
1720
  response = await client.execute_workflow_stream(
2215
1721
  inputs=[
2216
1722
  WorkflowRequestStringInputRequest(
2217
- name="name",
1723
+ name="x",
2218
1724
  value="value",
2219
- )
1725
+ ),
1726
+ WorkflowRequestStringInputRequest(
1727
+ name="x",
1728
+ value="value",
1729
+ ),
2220
1730
  ],
2221
1731
  )
2222
1732
  async for chunk in response:
@@ -2225,78 +1735,20 @@ class AsyncVellum:
2225
1735
 
2226
1736
  asyncio.run(main())
2227
1737
  """
2228
- async with self._client_wrapper.httpx_client.stream(
2229
- "v1/execute-workflow-stream",
2230
- base_url=self._client_wrapper.get_environment().predict,
2231
- method="POST",
2232
- json={
2233
- "inputs": convert_and_respect_annotation_metadata(
2234
- object_=inputs, annotation=typing.Sequence[WorkflowRequestInputRequest], direction="write"
2235
- ),
2236
- "expand_meta": convert_and_respect_annotation_metadata(
2237
- object_=expand_meta, annotation=WorkflowExpandMetaRequest, direction="write"
2238
- ),
2239
- "workflow_deployment_id": workflow_deployment_id,
2240
- "workflow_deployment_name": workflow_deployment_name,
2241
- "release_tag": release_tag,
2242
- "external_id": external_id,
2243
- "event_types": event_types,
2244
- "metadata": metadata,
2245
- },
1738
+ async with self._raw_client.execute_workflow_stream(
1739
+ inputs=inputs,
1740
+ expand_meta=expand_meta,
1741
+ workflow_deployment_id=workflow_deployment_id,
1742
+ workflow_deployment_name=workflow_deployment_name,
1743
+ release_tag=release_tag,
1744
+ external_id=external_id,
1745
+ event_types=event_types,
1746
+ metadata=metadata,
1747
+ previous_execution_id=previous_execution_id,
2246
1748
  request_options=request_options,
2247
- omit=OMIT,
2248
- ) as _response:
2249
- try:
2250
- if 200 <= _response.status_code < 300:
2251
- async for _text in _response.aiter_lines():
2252
- try:
2253
- if len(_text) == 0:
2254
- continue
2255
- yield typing.cast(
2256
- WorkflowStreamEvent,
2257
- parse_obj_as(
2258
- type_=WorkflowStreamEvent, # type: ignore
2259
- object_=json.loads(_text),
2260
- ),
2261
- )
2262
- except:
2263
- pass
2264
- return
2265
- await _response.aread()
2266
- if _response.status_code == 400:
2267
- raise BadRequestError(
2268
- typing.cast(
2269
- typing.Optional[typing.Any],
2270
- parse_obj_as(
2271
- type_=typing.Optional[typing.Any], # type: ignore
2272
- object_=_response.json(),
2273
- ),
2274
- )
2275
- )
2276
- if _response.status_code == 404:
2277
- raise NotFoundError(
2278
- typing.cast(
2279
- typing.Optional[typing.Any],
2280
- parse_obj_as(
2281
- type_=typing.Optional[typing.Any], # type: ignore
2282
- object_=_response.json(),
2283
- ),
2284
- )
2285
- )
2286
- if _response.status_code == 500:
2287
- raise InternalServerError(
2288
- typing.cast(
2289
- typing.Optional[typing.Any],
2290
- parse_obj_as(
2291
- type_=typing.Optional[typing.Any], # type: ignore
2292
- object_=_response.json(),
2293
- ),
2294
- )
2295
- )
2296
- _response_json = _response.json()
2297
- except JSONDecodeError:
2298
- raise ApiError(status_code=_response.status_code, body=_response.text)
2299
- raise ApiError(status_code=_response.status_code, body=_response_json)
1749
+ ) as r:
1750
+ async for _chunk in r.data:
1751
+ yield _chunk
2300
1752
 
2301
1753
  async def generate(
2302
1754
  self,
@@ -2342,6 +1794,7 @@ class AsyncVellum:
2342
1794
  from vellum import AsyncVellum, GenerateRequest
2343
1795
 
2344
1796
  client = AsyncVellum(
1797
+ api_version="YOUR_API_VERSION",
2345
1798
  api_key="YOUR_API_KEY",
2346
1799
  )
2347
1800
 
@@ -2350,84 +1803,25 @@ class AsyncVellum:
2350
1803
  await client.generate(
2351
1804
  requests=[
2352
1805
  GenerateRequest(
2353
- input_values={"key": "value"},
2354
- )
1806
+ input_values={"input_values": {"key": "value"}},
1807
+ ),
1808
+ GenerateRequest(
1809
+ input_values={"input_values": {"key": "value"}},
1810
+ ),
2355
1811
  ],
2356
1812
  )
2357
1813
 
2358
1814
 
2359
1815
  asyncio.run(main())
2360
1816
  """
2361
- _response = await self._client_wrapper.httpx_client.request(
2362
- "v1/generate",
2363
- base_url=self._client_wrapper.get_environment().predict,
2364
- method="POST",
2365
- json={
2366
- "deployment_id": deployment_id,
2367
- "deployment_name": deployment_name,
2368
- "requests": convert_and_respect_annotation_metadata(
2369
- object_=requests, annotation=typing.Sequence[GenerateRequest], direction="write"
2370
- ),
2371
- "options": convert_and_respect_annotation_metadata(
2372
- object_=options, annotation=GenerateOptionsRequest, direction="write"
2373
- ),
2374
- },
1817
+ _response = await self._raw_client.generate(
1818
+ requests=requests,
1819
+ deployment_id=deployment_id,
1820
+ deployment_name=deployment_name,
1821
+ options=options,
2375
1822
  request_options=request_options,
2376
- omit=OMIT,
2377
1823
  )
2378
- try:
2379
- if 200 <= _response.status_code < 300:
2380
- return typing.cast(
2381
- GenerateResponse,
2382
- parse_obj_as(
2383
- type_=GenerateResponse, # type: ignore
2384
- object_=_response.json(),
2385
- ),
2386
- )
2387
- if _response.status_code == 400:
2388
- raise BadRequestError(
2389
- typing.cast(
2390
- typing.Optional[typing.Any],
2391
- parse_obj_as(
2392
- type_=typing.Optional[typing.Any], # type: ignore
2393
- object_=_response.json(),
2394
- ),
2395
- )
2396
- )
2397
- if _response.status_code == 403:
2398
- raise ForbiddenError(
2399
- typing.cast(
2400
- typing.Optional[typing.Any],
2401
- parse_obj_as(
2402
- type_=typing.Optional[typing.Any], # type: ignore
2403
- object_=_response.json(),
2404
- ),
2405
- )
2406
- )
2407
- if _response.status_code == 404:
2408
- raise NotFoundError(
2409
- typing.cast(
2410
- typing.Optional[typing.Any],
2411
- parse_obj_as(
2412
- type_=typing.Optional[typing.Any], # type: ignore
2413
- object_=_response.json(),
2414
- ),
2415
- )
2416
- )
2417
- if _response.status_code == 500:
2418
- raise InternalServerError(
2419
- typing.cast(
2420
- typing.Optional[typing.Any],
2421
- parse_obj_as(
2422
- type_=typing.Optional[typing.Any], # type: ignore
2423
- object_=_response.json(),
2424
- ),
2425
- )
2426
- )
2427
- _response_json = _response.json()
2428
- except JSONDecodeError:
2429
- raise ApiError(status_code=_response.status_code, body=_response.text)
2430
- raise ApiError(status_code=_response.status_code, body=_response_json)
1824
+ return _response.data
2431
1825
 
2432
1826
  async def generate_stream(
2433
1827
  self,
@@ -2473,6 +1867,7 @@ class AsyncVellum:
2473
1867
  from vellum import AsyncVellum, GenerateRequest
2474
1868
 
2475
1869
  client = AsyncVellum(
1870
+ api_version="YOUR_API_VERSION",
2476
1871
  api_key="YOUR_API_KEY",
2477
1872
  )
2478
1873
 
@@ -2481,8 +1876,11 @@ class AsyncVellum:
2481
1876
  response = await client.generate_stream(
2482
1877
  requests=[
2483
1878
  GenerateRequest(
2484
- input_values={"key": "value"},
2485
- )
1879
+ input_values={"input_values": {"key": "value"}},
1880
+ ),
1881
+ GenerateRequest(
1882
+ input_values={"input_values": {"key": "value"}},
1883
+ ),
2486
1884
  ],
2487
1885
  )
2488
1886
  async for chunk in response:
@@ -2491,84 +1889,15 @@ class AsyncVellum:
2491
1889
 
2492
1890
  asyncio.run(main())
2493
1891
  """
2494
- async with self._client_wrapper.httpx_client.stream(
2495
- "v1/generate-stream",
2496
- base_url=self._client_wrapper.get_environment().predict,
2497
- method="POST",
2498
- json={
2499
- "deployment_id": deployment_id,
2500
- "deployment_name": deployment_name,
2501
- "requests": convert_and_respect_annotation_metadata(
2502
- object_=requests, annotation=typing.Sequence[GenerateRequest], direction="write"
2503
- ),
2504
- "options": convert_and_respect_annotation_metadata(
2505
- object_=options, annotation=GenerateOptionsRequest, direction="write"
2506
- ),
2507
- },
1892
+ async with self._raw_client.generate_stream(
1893
+ requests=requests,
1894
+ deployment_id=deployment_id,
1895
+ deployment_name=deployment_name,
1896
+ options=options,
2508
1897
  request_options=request_options,
2509
- omit=OMIT,
2510
- ) as _response:
2511
- try:
2512
- if 200 <= _response.status_code < 300:
2513
- async for _text in _response.aiter_lines():
2514
- try:
2515
- if len(_text) == 0:
2516
- continue
2517
- yield typing.cast(
2518
- GenerateStreamResponse,
2519
- parse_obj_as(
2520
- type_=GenerateStreamResponse, # type: ignore
2521
- object_=json.loads(_text),
2522
- ),
2523
- )
2524
- except:
2525
- pass
2526
- return
2527
- await _response.aread()
2528
- if _response.status_code == 400:
2529
- raise BadRequestError(
2530
- typing.cast(
2531
- typing.Optional[typing.Any],
2532
- parse_obj_as(
2533
- type_=typing.Optional[typing.Any], # type: ignore
2534
- object_=_response.json(),
2535
- ),
2536
- )
2537
- )
2538
- if _response.status_code == 403:
2539
- raise ForbiddenError(
2540
- typing.cast(
2541
- typing.Optional[typing.Any],
2542
- parse_obj_as(
2543
- type_=typing.Optional[typing.Any], # type: ignore
2544
- object_=_response.json(),
2545
- ),
2546
- )
2547
- )
2548
- if _response.status_code == 404:
2549
- raise NotFoundError(
2550
- typing.cast(
2551
- typing.Optional[typing.Any],
2552
- parse_obj_as(
2553
- type_=typing.Optional[typing.Any], # type: ignore
2554
- object_=_response.json(),
2555
- ),
2556
- )
2557
- )
2558
- if _response.status_code == 500:
2559
- raise InternalServerError(
2560
- typing.cast(
2561
- typing.Optional[typing.Any],
2562
- parse_obj_as(
2563
- type_=typing.Optional[typing.Any], # type: ignore
2564
- object_=_response.json(),
2565
- ),
2566
- )
2567
- )
2568
- _response_json = _response.json()
2569
- except JSONDecodeError:
2570
- raise ApiError(status_code=_response.status_code, body=_response.text)
2571
- raise ApiError(status_code=_response.status_code, body=_response_json)
1898
+ ) as r:
1899
+ async for _chunk in r.data:
1900
+ yield _chunk
2572
1901
 
2573
1902
  async def search(
2574
1903
  self,
@@ -2615,77 +1944,28 @@ class AsyncVellum:
2615
1944
  from vellum import AsyncVellum
2616
1945
 
2617
1946
  client = AsyncVellum(
1947
+ api_version="YOUR_API_VERSION",
2618
1948
  api_key="YOUR_API_KEY",
2619
1949
  )
2620
1950
 
2621
1951
 
2622
1952
  async def main() -> None:
2623
1953
  await client.search(
2624
- query="query",
1954
+ query="x",
2625
1955
  )
2626
1956
 
2627
1957
 
2628
1958
  asyncio.run(main())
2629
1959
  """
2630
- _response = await self._client_wrapper.httpx_client.request(
2631
- "v1/search",
2632
- base_url=self._client_wrapper.get_environment().predict,
2633
- method="POST",
2634
- json={
2635
- "index_id": index_id,
2636
- "index_name": index_name,
2637
- "query": query,
2638
- "options": convert_and_respect_annotation_metadata(
2639
- object_=options, annotation=SearchRequestOptionsRequest, direction="write"
2640
- ),
2641
- "document_index": document_index,
2642
- },
1960
+ _response = await self._raw_client.search(
1961
+ query=query,
1962
+ index_id=index_id,
1963
+ index_name=index_name,
1964
+ options=options,
1965
+ document_index=document_index,
2643
1966
  request_options=request_options,
2644
- omit=OMIT,
2645
1967
  )
2646
- try:
2647
- if 200 <= _response.status_code < 300:
2648
- return typing.cast(
2649
- SearchResponse,
2650
- parse_obj_as(
2651
- type_=SearchResponse, # type: ignore
2652
- object_=_response.json(),
2653
- ),
2654
- )
2655
- if _response.status_code == 400:
2656
- raise BadRequestError(
2657
- typing.cast(
2658
- typing.Optional[typing.Any],
2659
- parse_obj_as(
2660
- type_=typing.Optional[typing.Any], # type: ignore
2661
- object_=_response.json(),
2662
- ),
2663
- )
2664
- )
2665
- if _response.status_code == 404:
2666
- raise NotFoundError(
2667
- typing.cast(
2668
- typing.Optional[typing.Any],
2669
- parse_obj_as(
2670
- type_=typing.Optional[typing.Any], # type: ignore
2671
- object_=_response.json(),
2672
- ),
2673
- )
2674
- )
2675
- if _response.status_code == 500:
2676
- raise InternalServerError(
2677
- typing.cast(
2678
- typing.Optional[typing.Any],
2679
- parse_obj_as(
2680
- type_=typing.Optional[typing.Any], # type: ignore
2681
- object_=_response.json(),
2682
- ),
2683
- )
2684
- )
2685
- _response_json = _response.json()
2686
- except JSONDecodeError:
2687
- raise ApiError(status_code=_response.status_code, body=_response.text)
2688
- raise ApiError(status_code=_response.status_code, body=_response_json)
1968
+ return _response.data
2689
1969
 
2690
1970
  async def submit_completion_actuals(
2691
1971
  self,
@@ -2723,69 +2003,29 @@ class AsyncVellum:
2723
2003
  from vellum import AsyncVellum, SubmitCompletionActualRequest
2724
2004
 
2725
2005
  client = AsyncVellum(
2006
+ api_version="YOUR_API_VERSION",
2726
2007
  api_key="YOUR_API_KEY",
2727
2008
  )
2728
2009
 
2729
2010
 
2730
2011
  async def main() -> None:
2731
2012
  await client.submit_completion_actuals(
2732
- actuals=[SubmitCompletionActualRequest()],
2013
+ actuals=[
2014
+ SubmitCompletionActualRequest(),
2015
+ SubmitCompletionActualRequest(),
2016
+ ],
2733
2017
  )
2734
2018
 
2735
2019
 
2736
2020
  asyncio.run(main())
2737
2021
  """
2738
- _response = await self._client_wrapper.httpx_client.request(
2739
- "v1/submit-completion-actuals",
2740
- base_url=self._client_wrapper.get_environment().predict,
2741
- method="POST",
2742
- json={
2743
- "deployment_id": deployment_id,
2744
- "deployment_name": deployment_name,
2745
- "actuals": convert_and_respect_annotation_metadata(
2746
- object_=actuals, annotation=typing.Sequence[SubmitCompletionActualRequest], direction="write"
2747
- ),
2748
- },
2022
+ _response = await self._raw_client.submit_completion_actuals(
2023
+ actuals=actuals,
2024
+ deployment_id=deployment_id,
2025
+ deployment_name=deployment_name,
2749
2026
  request_options=request_options,
2750
- omit=OMIT,
2751
2027
  )
2752
- try:
2753
- if 200 <= _response.status_code < 300:
2754
- return
2755
- if _response.status_code == 400:
2756
- raise BadRequestError(
2757
- typing.cast(
2758
- typing.Optional[typing.Any],
2759
- parse_obj_as(
2760
- type_=typing.Optional[typing.Any], # type: ignore
2761
- object_=_response.json(),
2762
- ),
2763
- )
2764
- )
2765
- if _response.status_code == 404:
2766
- raise NotFoundError(
2767
- typing.cast(
2768
- typing.Optional[typing.Any],
2769
- parse_obj_as(
2770
- type_=typing.Optional[typing.Any], # type: ignore
2771
- object_=_response.json(),
2772
- ),
2773
- )
2774
- )
2775
- if _response.status_code == 500:
2776
- raise InternalServerError(
2777
- typing.cast(
2778
- typing.Optional[typing.Any],
2779
- parse_obj_as(
2780
- type_=typing.Optional[typing.Any], # type: ignore
2781
- object_=_response.json(),
2782
- ),
2783
- )
2784
- )
2785
- _response_json = _response.json()
2786
- except JSONDecodeError:
2787
- raise ApiError(status_code=_response.status_code, body=_response.text)
2788
- raise ApiError(status_code=_response.status_code, body=_response_json)
2028
+ return _response.data
2789
2029
 
2790
2030
  async def submit_workflow_execution_actuals(
2791
2031
  self,
@@ -2825,36 +2065,23 @@ class AsyncVellum:
2825
2065
  from vellum import AsyncVellum, WorkflowExecutionActualStringRequest
2826
2066
 
2827
2067
  client = AsyncVellum(
2068
+ api_version="YOUR_API_VERSION",
2828
2069
  api_key="YOUR_API_KEY",
2829
2070
  )
2830
2071
 
2831
2072
 
2832
2073
  async def main() -> None:
2833
2074
  await client.submit_workflow_execution_actuals(
2834
- actuals=[WorkflowExecutionActualStringRequest()],
2075
+ actuals=[
2076
+ WorkflowExecutionActualStringRequest(),
2077
+ WorkflowExecutionActualStringRequest(),
2078
+ ],
2835
2079
  )
2836
2080
 
2837
2081
 
2838
2082
  asyncio.run(main())
2839
2083
  """
2840
- _response = await self._client_wrapper.httpx_client.request(
2841
- "v1/submit-workflow-execution-actuals",
2842
- base_url=self._client_wrapper.get_environment().predict,
2843
- method="POST",
2844
- json={
2845
- "actuals": convert_and_respect_annotation_metadata(
2846
- object_=actuals, annotation=typing.Sequence[SubmitWorkflowExecutionActualRequest], direction="write"
2847
- ),
2848
- "execution_id": execution_id,
2849
- "external_id": external_id,
2850
- },
2851
- request_options=request_options,
2852
- omit=OMIT,
2084
+ _response = await self._raw_client.submit_workflow_execution_actuals(
2085
+ actuals=actuals, execution_id=execution_id, external_id=external_id, request_options=request_options
2853
2086
  )
2854
- try:
2855
- if 200 <= _response.status_code < 300:
2856
- return
2857
- _response_json = _response.json()
2858
- except JSONDecodeError:
2859
- raise ApiError(status_code=_response.status_code, body=_response.text)
2860
- raise ApiError(status_code=_response.status_code, body=_response_json)
2087
+ return _response.data