vellum-ai 0.3.13__py3-none-any.whl → 0.3.15__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (318) hide show
  1. vellum/__init__.py +22 -0
  2. vellum/client.py +846 -100
  3. vellum/core/__init__.py +8 -0
  4. vellum/core/client_wrapper.py +27 -8
  5. vellum/core/file.py +38 -0
  6. vellum/core/http_client.py +130 -0
  7. vellum/core/jsonable_encoder.py +2 -2
  8. vellum/core/request_options.py +32 -0
  9. vellum/resources/deployments/client.py +161 -24
  10. vellum/resources/document_indexes/client.py +337 -80
  11. vellum/resources/documents/client.py +278 -58
  12. vellum/resources/folder_entities/client.py +60 -10
  13. vellum/resources/model_versions/client.py +48 -8
  14. vellum/resources/registered_prompts/client.py +52 -6
  15. vellum/resources/sandboxes/client.py +108 -26
  16. vellum/resources/test_suite_runs/client.py +221 -38
  17. vellum/resources/test_suites/client.py +110 -24
  18. vellum/resources/workflow_deployments/client.py +110 -14
  19. vellum/types/__init__.py +20 -0
  20. vellum/types/api_node_result.py +1 -0
  21. vellum/types/api_node_result_data.py +4 -2
  22. vellum/types/array_chat_message_content.py +1 -0
  23. vellum/types/array_chat_message_content_item.py +6 -5
  24. vellum/types/array_chat_message_content_item_request.py +6 -5
  25. vellum/types/array_chat_message_content_request.py +1 -0
  26. vellum/types/array_enum.py +2 -2
  27. vellum/types/array_variable_value_item.py +16 -10
  28. vellum/types/chat_history_enum.py +2 -2
  29. vellum/types/chat_history_input_request.py +6 -1
  30. vellum/types/chat_history_variable_value.py +2 -1
  31. vellum/types/chat_message.py +7 -5
  32. vellum/types/chat_message_content.py +8 -6
  33. vellum/types/chat_message_content_request.py +8 -6
  34. vellum/types/chat_message_request.py +7 -5
  35. vellum/types/code_execution_node_array_result.py +31 -0
  36. vellum/types/code_execution_node_chat_history_result.py +2 -1
  37. vellum/types/code_execution_node_error_result.py +2 -1
  38. vellum/types/code_execution_node_function_call_result.py +31 -0
  39. vellum/types/code_execution_node_json_result.py +2 -1
  40. vellum/types/code_execution_node_number_result.py +2 -1
  41. vellum/types/code_execution_node_result.py +1 -0
  42. vellum/types/code_execution_node_result_data.py +2 -1
  43. vellum/types/code_execution_node_result_output.py +36 -8
  44. vellum/types/code_execution_node_search_results_result.py +2 -1
  45. vellum/types/code_execution_node_string_result.py +2 -1
  46. vellum/types/conditional_node_result.py +1 -0
  47. vellum/types/conditional_node_result_data.py +2 -1
  48. vellum/types/deployment_provider_payload_response.py +1 -0
  49. vellum/types/deployment_read.py +32 -17
  50. vellum/types/document_document_to_document_index.py +21 -15
  51. vellum/types/document_index_read.py +32 -19
  52. vellum/types/document_read.py +34 -24
  53. vellum/types/document_status.py +2 -2
  54. vellum/types/enriched_normalized_completion.py +36 -19
  55. vellum/types/error_enum.py +2 -2
  56. vellum/types/error_variable_value.py +2 -1
  57. vellum/types/execute_prompt_api_error_response.py +5 -1
  58. vellum/types/execute_prompt_event.py +8 -6
  59. vellum/types/execute_prompt_response.py +4 -4
  60. vellum/types/execute_workflow_error_response.py +5 -1
  61. vellum/types/execute_workflow_response.py +3 -2
  62. vellum/types/execute_workflow_stream_error_response.py +5 -1
  63. vellum/types/execute_workflow_workflow_result_event.py +4 -4
  64. vellum/types/execution_array_vellum_value.py +7 -2
  65. vellum/types/execution_chat_history_vellum_value.py +7 -2
  66. vellum/types/execution_error_vellum_value.py +7 -2
  67. vellum/types/execution_function_call_vellum_value.py +7 -2
  68. vellum/types/execution_json_vellum_value.py +7 -2
  69. vellum/types/execution_number_vellum_value.py +7 -2
  70. vellum/types/execution_search_results_vellum_value.py +7 -2
  71. vellum/types/execution_string_vellum_value.py +7 -2
  72. vellum/types/execution_vellum_value.py +16 -10
  73. vellum/types/fulfilled_enum.py +2 -2
  74. vellum/types/fulfilled_execute_prompt_event.py +2 -1
  75. vellum/types/fulfilled_execute_prompt_response.py +12 -5
  76. vellum/types/fulfilled_execute_workflow_workflow_result_event.py +1 -0
  77. vellum/types/fulfilled_function_call.py +2 -1
  78. vellum/types/fulfilled_prompt_execution_meta.py +3 -2
  79. vellum/types/fulfilled_workflow_node_result_event.py +6 -5
  80. vellum/types/function_call.py +4 -4
  81. vellum/types/function_call_chat_message_content.py +1 -0
  82. vellum/types/function_call_chat_message_content_request.py +1 -0
  83. vellum/types/function_call_chat_message_content_value.py +2 -1
  84. vellum/types/function_call_chat_message_content_value_request.py +2 -1
  85. vellum/types/function_call_enum.py +2 -2
  86. vellum/types/function_call_variable_value.py +1 -0
  87. vellum/types/generate_error_response.py +5 -1
  88. vellum/types/generate_options_request.py +8 -5
  89. vellum/types/generate_request.py +15 -9
  90. vellum/types/generate_result.py +10 -6
  91. vellum/types/generate_result_data.py +5 -3
  92. vellum/types/generate_result_error.py +5 -1
  93. vellum/types/generate_stream_response.py +1 -0
  94. vellum/types/generate_stream_result.py +3 -2
  95. vellum/types/generate_stream_result_data.py +1 -0
  96. vellum/types/image_chat_message_content.py +1 -0
  97. vellum/types/image_chat_message_content_request.py +1 -0
  98. vellum/types/image_enum.py +2 -2
  99. vellum/types/image_variable_value.py +2 -1
  100. vellum/types/initiated_enum.py +2 -2
  101. vellum/types/initiated_execute_prompt_event.py +2 -1
  102. vellum/types/initiated_prompt_execution_meta.py +5 -4
  103. vellum/types/initiated_workflow_node_result_event.py +5 -4
  104. vellum/types/json_enum.py +2 -2
  105. vellum/types/json_input_request.py +6 -1
  106. vellum/types/json_variable_value.py +2 -1
  107. vellum/types/logprobs_enum.py +2 -2
  108. vellum/types/metadata_filter_config_request.py +7 -6
  109. vellum/types/metadata_filter_rule_request.py +7 -6
  110. vellum/types/model_version_build_config.py +12 -7
  111. vellum/types/model_version_exec_config.py +18 -11
  112. vellum/types/model_version_exec_config_parameters.py +7 -6
  113. vellum/types/model_version_read.py +51 -32
  114. vellum/types/model_version_sandbox_snapshot.py +17 -4
  115. vellum/types/named_test_case_chat_history_variable_value_request.py +2 -1
  116. vellum/types/named_test_case_error_variable_value_request.py +2 -1
  117. vellum/types/named_test_case_json_variable_value_request.py +2 -1
  118. vellum/types/named_test_case_number_variable_value_request.py +2 -1
  119. vellum/types/named_test_case_search_results_variable_value_request.py +2 -1
  120. vellum/types/named_test_case_string_variable_value_request.py +2 -1
  121. vellum/types/named_test_case_variable_value_request.py +12 -8
  122. vellum/types/node_input_compiled_array_value.py +2 -1
  123. vellum/types/node_input_compiled_chat_history_value.py +2 -1
  124. vellum/types/node_input_compiled_error_value.py +2 -1
  125. vellum/types/node_input_compiled_function_call.py +32 -0
  126. vellum/types/node_input_compiled_json_value.py +2 -1
  127. vellum/types/node_input_compiled_number_value.py +2 -1
  128. vellum/types/node_input_compiled_search_results_value.py +2 -1
  129. vellum/types/node_input_compiled_string_value.py +2 -1
  130. vellum/types/node_input_variable_compiled_value.py +26 -9
  131. vellum/types/node_output_compiled_array_value.py +2 -1
  132. vellum/types/node_output_compiled_chat_history_value.py +2 -1
  133. vellum/types/node_output_compiled_error_value.py +2 -1
  134. vellum/types/node_output_compiled_function_value.py +2 -1
  135. vellum/types/node_output_compiled_json_value.py +2 -1
  136. vellum/types/node_output_compiled_number_value.py +2 -1
  137. vellum/types/node_output_compiled_search_results_value.py +2 -1
  138. vellum/types/node_output_compiled_string_value.py +2 -1
  139. vellum/types/node_output_compiled_value.py +16 -10
  140. vellum/types/normalized_log_probs.py +2 -1
  141. vellum/types/normalized_token_log_probs.py +3 -2
  142. vellum/types/number_enum.py +2 -2
  143. vellum/types/number_variable_value.py +2 -1
  144. vellum/types/paginated_document_index_read_list.py +5 -4
  145. vellum/types/paginated_slim_deployment_read_list.py +5 -4
  146. vellum/types/paginated_slim_document_list.py +5 -4
  147. vellum/types/paginated_slim_workflow_deployment_list.py +5 -4
  148. vellum/types/paginated_test_suite_run_execution_list.py +5 -4
  149. vellum/types/prompt_deployment_expand_meta_request_request.py +25 -15
  150. vellum/types/prompt_deployment_input_request.py +6 -5
  151. vellum/types/prompt_execution_meta.py +6 -5
  152. vellum/types/prompt_node_result.py +1 -0
  153. vellum/types/prompt_node_result_data.py +4 -3
  154. vellum/types/prompt_output.py +8 -6
  155. vellum/types/prompt_template_block.py +1 -0
  156. vellum/types/prompt_template_block_data.py +1 -0
  157. vellum/types/prompt_template_block_data_request.py +1 -0
  158. vellum/types/prompt_template_block_properties.py +11 -10
  159. vellum/types/prompt_template_block_properties_request.py +11 -10
  160. vellum/types/prompt_template_block_request.py +1 -0
  161. vellum/types/raw_prompt_execution_overrides_request.py +11 -5
  162. vellum/types/register_prompt_error_response.py +5 -1
  163. vellum/types/register_prompt_model_parameters_request.py +5 -4
  164. vellum/types/register_prompt_prompt.py +10 -2
  165. vellum/types/register_prompt_prompt_info_request.py +5 -3
  166. vellum/types/register_prompt_response.py +30 -10
  167. vellum/types/registered_prompt_deployment.py +15 -3
  168. vellum/types/registered_prompt_input_variable_request.py +3 -2
  169. vellum/types/registered_prompt_model_version.py +10 -2
  170. vellum/types/registered_prompt_sandbox.py +10 -2
  171. vellum/types/registered_prompt_sandbox_snapshot.py +5 -1
  172. vellum/types/rejected_enum.py +2 -2
  173. vellum/types/rejected_execute_prompt_event.py +2 -1
  174. vellum/types/rejected_execute_prompt_response.py +12 -5
  175. vellum/types/rejected_execute_workflow_workflow_result_event.py +1 -0
  176. vellum/types/rejected_function_call.py +2 -1
  177. vellum/types/rejected_prompt_execution_meta.py +3 -2
  178. vellum/types/rejected_workflow_node_result_event.py +4 -3
  179. vellum/types/sandbox_scenario.py +11 -3
  180. vellum/types/scenario_input.py +4 -3
  181. vellum/types/scenario_input_request.py +4 -3
  182. vellum/types/search_error_response.py +5 -1
  183. vellum/types/search_filters_request.py +10 -6
  184. vellum/types/search_node_result.py +1 -0
  185. vellum/types/search_node_result_data.py +7 -4
  186. vellum/types/search_request_options_request.py +20 -8
  187. vellum/types/search_response.py +5 -3
  188. vellum/types/search_result.py +15 -5
  189. vellum/types/search_result_document.py +20 -8
  190. vellum/types/search_result_document_request.py +15 -7
  191. vellum/types/search_result_merging_request.py +5 -1
  192. vellum/types/search_result_request.py +15 -5
  193. vellum/types/search_results_enum.py +2 -2
  194. vellum/types/search_results_variable_value.py +2 -1
  195. vellum/types/search_weights_request.py +10 -4
  196. vellum/types/slim_deployment_read.py +28 -14
  197. vellum/types/slim_document.py +56 -35
  198. vellum/types/slim_workflow_deployment.py +37 -24
  199. vellum/types/streaming_enum.py +2 -2
  200. vellum/types/streaming_execute_prompt_event.py +6 -4
  201. vellum/types/streaming_prompt_execution_meta.py +2 -1
  202. vellum/types/streaming_workflow_node_result_event.py +6 -5
  203. vellum/types/string_chat_message_content.py +1 -0
  204. vellum/types/string_chat_message_content_request.py +1 -0
  205. vellum/types/string_enum.py +2 -2
  206. vellum/types/string_input_request.py +6 -1
  207. vellum/types/string_variable_value.py +2 -1
  208. vellum/types/submit_completion_actual_request.py +25 -13
  209. vellum/types/submit_completion_actuals_error_response.py +1 -0
  210. vellum/types/submit_workflow_execution_actual_request.py +6 -5
  211. vellum/types/subworkflow_enum.py +2 -2
  212. vellum/types/subworkflow_node_result.py +1 -0
  213. vellum/types/templating_node_array_result.py +31 -0
  214. vellum/types/templating_node_chat_history_result.py +2 -1
  215. vellum/types/templating_node_error_result.py +2 -1
  216. vellum/types/templating_node_function_call_result.py +31 -0
  217. vellum/types/templating_node_json_result.py +2 -1
  218. vellum/types/templating_node_number_result.py +2 -1
  219. vellum/types/templating_node_result.py +1 -0
  220. vellum/types/templating_node_result_data.py +1 -0
  221. vellum/types/templating_node_result_output.py +36 -8
  222. vellum/types/templating_node_search_results_result.py +2 -1
  223. vellum/types/templating_node_string_result.py +2 -1
  224. vellum/types/terminal_node_array_result.py +8 -3
  225. vellum/types/terminal_node_chat_history_result.py +8 -3
  226. vellum/types/terminal_node_error_result.py +8 -3
  227. vellum/types/terminal_node_function_call_result.py +8 -3
  228. vellum/types/terminal_node_json_result.py +8 -3
  229. vellum/types/terminal_node_number_result.py +8 -3
  230. vellum/types/terminal_node_result.py +1 -0
  231. vellum/types/terminal_node_result_data.py +1 -0
  232. vellum/types/terminal_node_result_output.py +16 -10
  233. vellum/types/terminal_node_search_results_result.py +8 -3
  234. vellum/types/terminal_node_string_result.py +8 -3
  235. vellum/types/test_case_chat_history_variable_value.py +2 -1
  236. vellum/types/test_case_error_variable_value.py +2 -1
  237. vellum/types/test_case_json_variable_value.py +2 -1
  238. vellum/types/test_case_number_variable_value.py +2 -1
  239. vellum/types/test_case_search_results_variable_value.py +2 -1
  240. vellum/types/test_case_string_variable_value.py +2 -1
  241. vellum/types/test_case_variable_value.py +12 -8
  242. vellum/types/test_suite_run_deployment_release_tag_exec_config.py +5 -3
  243. vellum/types/test_suite_run_deployment_release_tag_exec_config_data.py +10 -4
  244. vellum/types/test_suite_run_deployment_release_tag_exec_config_data_request.py +10 -4
  245. vellum/types/test_suite_run_deployment_release_tag_exec_config_request.py +5 -3
  246. vellum/types/test_suite_run_deployment_release_tag_exec_config_type_enum.py +2 -2
  247. vellum/types/test_suite_run_exec_config.py +4 -4
  248. vellum/types/test_suite_run_exec_config_request.py +4 -4
  249. vellum/types/test_suite_run_execution.py +1 -0
  250. vellum/types/test_suite_run_execution_chat_history_output.py +2 -1
  251. vellum/types/test_suite_run_execution_error_output.py +2 -1
  252. vellum/types/test_suite_run_execution_json_output.py +2 -1
  253. vellum/types/test_suite_run_execution_metric_result.py +1 -0
  254. vellum/types/test_suite_run_execution_number_output.py +2 -1
  255. vellum/types/test_suite_run_execution_output.py +12 -8
  256. vellum/types/test_suite_run_execution_search_results_output.py +2 -1
  257. vellum/types/test_suite_run_execution_string_output.py +2 -1
  258. vellum/types/test_suite_run_metric_error_output.py +1 -0
  259. vellum/types/test_suite_run_metric_error_output_type_enum.py +2 -2
  260. vellum/types/test_suite_run_metric_number_output.py +1 -0
  261. vellum/types/test_suite_run_metric_number_output_type_enum.py +2 -2
  262. vellum/types/test_suite_run_metric_output.py +4 -4
  263. vellum/types/test_suite_run_read.py +16 -14
  264. vellum/types/test_suite_run_test_suite.py +1 -0
  265. vellum/types/test_suite_run_workflow_release_tag_exec_config.py +5 -3
  266. vellum/types/test_suite_run_workflow_release_tag_exec_config_data.py +10 -6
  267. vellum/types/test_suite_run_workflow_release_tag_exec_config_data_request.py +10 -6
  268. vellum/types/test_suite_run_workflow_release_tag_exec_config_request.py +5 -3
  269. vellum/types/test_suite_run_workflow_release_tag_exec_config_type_enum.py +2 -2
  270. vellum/types/test_suite_test_case.py +3 -2
  271. vellum/types/upload_document_error_response.py +1 -0
  272. vellum/types/upload_document_response.py +5 -1
  273. vellum/types/vellum_error.py +1 -0
  274. vellum/types/vellum_error_request.py +1 -0
  275. vellum/types/vellum_image.py +2 -1
  276. vellum/types/vellum_image_request.py +2 -1
  277. vellum/types/vellum_variable.py +1 -0
  278. vellum/types/workflow_deployment_read.py +37 -24
  279. vellum/types/workflow_event_error.py +1 -0
  280. vellum/types/workflow_execution_actual_chat_history_request.py +25 -15
  281. vellum/types/workflow_execution_actual_json_request.py +25 -15
  282. vellum/types/workflow_execution_actual_string_request.py +25 -15
  283. vellum/types/workflow_execution_node_result_event.py +3 -2
  284. vellum/types/workflow_execution_workflow_result_event.py +3 -2
  285. vellum/types/workflow_node_result_data.py +16 -10
  286. vellum/types/workflow_node_result_event.py +8 -6
  287. vellum/types/workflow_output.py +18 -11
  288. vellum/types/workflow_output_array.py +7 -2
  289. vellum/types/workflow_output_chat_history.py +7 -2
  290. vellum/types/workflow_output_error.py +7 -2
  291. vellum/types/workflow_output_function_call.py +7 -2
  292. vellum/types/workflow_output_image.py +7 -2
  293. vellum/types/workflow_output_json.py +7 -2
  294. vellum/types/workflow_output_number.py +7 -2
  295. vellum/types/workflow_output_search_results.py +7 -2
  296. vellum/types/workflow_output_string.py +7 -2
  297. vellum/types/workflow_request_chat_history_input_request.py +6 -1
  298. vellum/types/workflow_request_input_request.py +8 -6
  299. vellum/types/workflow_request_json_input_request.py +6 -1
  300. vellum/types/workflow_request_number_input_request.py +6 -1
  301. vellum/types/workflow_request_string_input_request.py +6 -1
  302. vellum/types/workflow_result_event.py +5 -4
  303. vellum/types/workflow_result_event_output_data.py +16 -10
  304. vellum/types/workflow_result_event_output_data_array.py +8 -5
  305. vellum/types/workflow_result_event_output_data_chat_history.py +8 -5
  306. vellum/types/workflow_result_event_output_data_error.py +8 -5
  307. vellum/types/workflow_result_event_output_data_function_call.py +8 -5
  308. vellum/types/workflow_result_event_output_data_json.py +8 -5
  309. vellum/types/workflow_result_event_output_data_number.py +8 -5
  310. vellum/types/workflow_result_event_output_data_search_results.py +8 -5
  311. vellum/types/workflow_result_event_output_data_string.py +11 -7
  312. vellum/types/workflow_stream_event.py +4 -4
  313. vellum/version.py +4 -0
  314. {vellum_ai-0.3.13.dist-info → vellum_ai-0.3.15.dist-info}/METADATA +4 -4
  315. vellum_ai-0.3.15.dist-info/RECORD +365 -0
  316. vellum_ai-0.3.13.dist-info/RECORD +0 -356
  317. {vellum_ai-0.3.13.dist-info → vellum_ai-0.3.15.dist-info}/LICENSE +0 -0
  318. {vellum_ai-0.3.13.dist-info → vellum_ai-0.3.15.dist-info}/WHEEL +0 -0
@@ -15,17 +15,23 @@ except ImportError:
15
15
 
16
16
 
17
17
  class ModelVersionExecConfig(pydantic.BaseModel):
18
- parameters: ModelVersionExecConfigParameters = pydantic.Field(
19
- description="The generation parameters that are passed to the LLM provider at runtime."
20
- )
21
- input_variables: typing.List[VellumVariable] = pydantic.Field(
22
- description="Input variables specified in the prompt template."
23
- )
24
- prompt_template: typing.Optional[str] = pydantic.Field(
25
- description="The template used to generate prompts for this model version."
26
- )
27
- prompt_block_data: typing.Optional[PromptTemplateBlockData]
28
- prompt_syntax_version: typing.Optional[int]
18
+ parameters: ModelVersionExecConfigParameters = pydantic.Field()
19
+ """
20
+ The generation parameters that are passed to the LLM provider at runtime.
21
+ """
22
+
23
+ input_variables: typing.List[VellumVariable] = pydantic.Field()
24
+ """
25
+ Input variables specified in the prompt template.
26
+ """
27
+
28
+ prompt_template: typing.Optional[str] = pydantic.Field(default=None)
29
+ """
30
+ The template used to generate prompts for this model version.
31
+ """
32
+
33
+ prompt_block_data: typing.Optional[PromptTemplateBlockData] = None
34
+ prompt_syntax_version: typing.Optional[int] = None
29
35
 
30
36
  def json(self, **kwargs: typing.Any) -> str:
31
37
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -38,4 +44,5 @@ class ModelVersionExecConfig(pydantic.BaseModel):
38
44
  class Config:
39
45
  frozen = True
40
46
  smart_union = True
47
+ extra = pydantic.Extra.allow
41
48
  json_encoders = {dt.datetime: serialize_datetime}
@@ -12,15 +12,15 @@ except ImportError:
12
12
 
13
13
 
14
14
  class ModelVersionExecConfigParameters(pydantic.BaseModel):
15
- temperature: typing.Optional[float]
16
- max_tokens: typing.Optional[int]
15
+ temperature: typing.Optional[float] = None
16
+ max_tokens: typing.Optional[int] = None
17
17
  top_p: float
18
18
  frequency_penalty: float
19
19
  presence_penalty: float
20
- logit_bias: typing.Optional[typing.Dict[str, typing.Optional[float]]]
21
- stop: typing.Optional[typing.List[str]]
22
- top_k: typing.Optional[float]
23
- custom_parameters: typing.Optional[typing.Dict[str, typing.Any]]
20
+ logit_bias: typing.Optional[typing.Dict[str, typing.Optional[float]]] = None
21
+ stop: typing.Optional[typing.List[str]] = None
22
+ top_k: typing.Optional[float] = None
23
+ custom_parameters: typing.Optional[typing.Dict[str, typing.Any]] = None
24
24
 
25
25
  def json(self, **kwargs: typing.Any) -> str:
26
26
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -33,4 +33,5 @@ class ModelVersionExecConfigParameters(pydantic.BaseModel):
33
33
  class Config:
34
34
  frozen = True
35
35
  smart_union = True
36
+ extra = pydantic.Extra.allow
36
37
  json_encoders = {dt.datetime: serialize_datetime}
@@ -16,38 +16,56 @@ except ImportError:
16
16
 
17
17
 
18
18
  class ModelVersionRead(pydantic.BaseModel):
19
- id: str = pydantic.Field(description="Vellum-generated ID that uniquely identifies this model version.")
20
- created: dt.datetime = pydantic.Field(description="Timestamp of when this model version was created.")
21
- label: str = pydantic.Field(description="Human-friendly name for this model version.")
22
- provider: ProviderEnum = pydantic.Field(
23
- description=(
24
- "Which LLM provider this model version is associated with.\n"
25
- "\n"
26
- "- `ANTHROPIC` - Anthropic\n"
27
- "- `AWS_BEDROCK` - AWS Bedrock\n"
28
- "- `AZURE_OPENAI` - Azure OpenAI\n"
29
- "- `COHERE` - Cohere\n"
30
- "- `GOOGLE` - Google\n"
31
- "- `HOSTED` - Hosted\n"
32
- "- `MOSAICML` - MosaicML\n"
33
- "- `OPENAI` - OpenAI\n"
34
- "- `FIREWORKS_AI` - Fireworks AI\n"
35
- "- `HUGGINGFACE` - HuggingFace\n"
36
- "- `MYSTIC` - Mystic\n"
37
- "- `PYQ` - Pyq\n"
38
- "- `REPLICATE` - Replicate\n"
39
- )
40
- )
41
- external_id: str = pydantic.Field(
42
- description="The unique id of this model version as it exists in the above provider's system."
43
- )
44
- build_config: ModelVersionBuildConfig = pydantic.Field(
45
- description="Configuration used to build this model version."
46
- )
47
- exec_config: ModelVersionExecConfig = pydantic.Field(
48
- description="Configuration used to execute this model version."
49
- )
50
- status: typing.Optional[ModelVersionReadStatusEnum]
19
+ id: str = pydantic.Field()
20
+ """
21
+ Vellum-generated ID that uniquely identifies this model version.
22
+ """
23
+
24
+ created: dt.datetime = pydantic.Field()
25
+ """
26
+ Timestamp of when this model version was created.
27
+ """
28
+
29
+ label: str = pydantic.Field()
30
+ """
31
+ Human-friendly name for this model version.
32
+ """
33
+
34
+ provider: ProviderEnum = pydantic.Field()
35
+ """
36
+ Which LLM provider this model version is associated with.
37
+
38
+ - `ANTHROPIC` - Anthropic
39
+ - `AWS_BEDROCK` - AWS Bedrock
40
+ - `AZURE_OPENAI` - Azure OpenAI
41
+ - `COHERE` - Cohere
42
+ - `GOOGLE` - Google
43
+ - `HOSTED` - Hosted
44
+ - `MOSAICML` - MosaicML
45
+ - `OPENAI` - OpenAI
46
+ - `FIREWORKS_AI` - Fireworks AI
47
+ - `HUGGINGFACE` - HuggingFace
48
+ - `MYSTIC` - Mystic
49
+ - `PYQ` - Pyq
50
+ - `REPLICATE` - Replicate
51
+ """
52
+
53
+ external_id: str = pydantic.Field()
54
+ """
55
+ The unique id of this model version as it exists in the above provider's system.
56
+ """
57
+
58
+ build_config: ModelVersionBuildConfig = pydantic.Field()
59
+ """
60
+ Configuration used to build this model version.
61
+ """
62
+
63
+ exec_config: ModelVersionExecConfig = pydantic.Field()
64
+ """
65
+ Configuration used to execute this model version.
66
+ """
67
+
68
+ status: typing.Optional[ModelVersionReadStatusEnum] = None
51
69
 
52
70
  def json(self, **kwargs: typing.Any) -> str:
53
71
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -60,4 +78,5 @@ class ModelVersionRead(pydantic.BaseModel):
60
78
  class Config:
61
79
  frozen = True
62
80
  smart_union = True
81
+ extra = pydantic.Extra.allow
63
82
  json_encoders = {dt.datetime: serialize_datetime}
@@ -12,10 +12,22 @@ except ImportError:
12
12
 
13
13
 
14
14
  class ModelVersionSandboxSnapshot(pydantic.BaseModel):
15
- id: str = pydantic.Field(description="The ID of the sandbox snapshot.")
16
- prompt_index: typing.Optional[int] = pydantic.Field(description="The index of the prompt in the sandbox snapshot.")
17
- prompt_id: typing.Optional[str] = pydantic.Field(description="The id of the prompt in the sandbox snapshot.")
18
- sandbox_id: typing.Optional[str]
15
+ id: str = pydantic.Field()
16
+ """
17
+ The ID of the sandbox snapshot.
18
+ """
19
+
20
+ prompt_index: typing.Optional[int] = pydantic.Field(default=None)
21
+ """
22
+ The index of the prompt in the sandbox snapshot.
23
+ """
24
+
25
+ prompt_id: typing.Optional[str] = pydantic.Field(default=None)
26
+ """
27
+ The id of the prompt in the sandbox snapshot.
28
+ """
29
+
30
+ sandbox_id: typing.Optional[str] = None
19
31
 
20
32
  def json(self, **kwargs: typing.Any) -> str:
21
33
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -28,4 +40,5 @@ class ModelVersionSandboxSnapshot(pydantic.BaseModel):
28
40
  class Config:
29
41
  frozen = True
30
42
  smart_union = True
43
+ extra = pydantic.Extra.allow
31
44
  json_encoders = {dt.datetime: serialize_datetime}
@@ -14,7 +14,7 @@ except ImportError:
14
14
 
15
15
  class NamedTestCaseChatHistoryVariableValueRequest(pydantic.BaseModel):
16
16
  name: str
17
- value: typing.Optional[typing.List[ChatMessageRequest]]
17
+ value: typing.Optional[typing.List[ChatMessageRequest]] = None
18
18
 
19
19
  def json(self, **kwargs: typing.Any) -> str:
20
20
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -27,4 +27,5 @@ class NamedTestCaseChatHistoryVariableValueRequest(pydantic.BaseModel):
27
27
  class Config:
28
28
  frozen = True
29
29
  smart_union = True
30
+ extra = pydantic.Extra.allow
30
31
  json_encoders = {dt.datetime: serialize_datetime}
@@ -14,7 +14,7 @@ except ImportError:
14
14
 
15
15
  class NamedTestCaseErrorVariableValueRequest(pydantic.BaseModel):
16
16
  name: str
17
- value: typing.Optional[VellumErrorRequest]
17
+ value: typing.Optional[VellumErrorRequest] = None
18
18
 
19
19
  def json(self, **kwargs: typing.Any) -> str:
20
20
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -27,4 +27,5 @@ class NamedTestCaseErrorVariableValueRequest(pydantic.BaseModel):
27
27
  class Config:
28
28
  frozen = True
29
29
  smart_union = True
30
+ extra = pydantic.Extra.allow
30
31
  json_encoders = {dt.datetime: serialize_datetime}
@@ -13,7 +13,7 @@ except ImportError:
13
13
 
14
14
  class NamedTestCaseJsonVariableValueRequest(pydantic.BaseModel):
15
15
  name: str
16
- value: typing.Optional[typing.Dict[str, typing.Any]]
16
+ value: typing.Optional[typing.Dict[str, typing.Any]] = None
17
17
 
18
18
  def json(self, **kwargs: typing.Any) -> str:
19
19
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -26,4 +26,5 @@ class NamedTestCaseJsonVariableValueRequest(pydantic.BaseModel):
26
26
  class Config:
27
27
  frozen = True
28
28
  smart_union = True
29
+ extra = pydantic.Extra.allow
29
30
  json_encoders = {dt.datetime: serialize_datetime}
@@ -13,7 +13,7 @@ except ImportError:
13
13
 
14
14
  class NamedTestCaseNumberVariableValueRequest(pydantic.BaseModel):
15
15
  name: str
16
- value: typing.Optional[float]
16
+ value: typing.Optional[float] = None
17
17
 
18
18
  def json(self, **kwargs: typing.Any) -> str:
19
19
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -26,4 +26,5 @@ class NamedTestCaseNumberVariableValueRequest(pydantic.BaseModel):
26
26
  class Config:
27
27
  frozen = True
28
28
  smart_union = True
29
+ extra = pydantic.Extra.allow
29
30
  json_encoders = {dt.datetime: serialize_datetime}
@@ -14,7 +14,7 @@ except ImportError:
14
14
 
15
15
  class NamedTestCaseSearchResultsVariableValueRequest(pydantic.BaseModel):
16
16
  name: str
17
- value: typing.Optional[typing.List[SearchResultRequest]]
17
+ value: typing.Optional[typing.List[SearchResultRequest]] = None
18
18
 
19
19
  def json(self, **kwargs: typing.Any) -> str:
20
20
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -27,4 +27,5 @@ class NamedTestCaseSearchResultsVariableValueRequest(pydantic.BaseModel):
27
27
  class Config:
28
28
  frozen = True
29
29
  smart_union = True
30
+ extra = pydantic.Extra.allow
30
31
  json_encoders = {dt.datetime: serialize_datetime}
@@ -13,7 +13,7 @@ except ImportError:
13
13
 
14
14
  class NamedTestCaseStringVariableValueRequest(pydantic.BaseModel):
15
15
  name: str
16
- value: typing.Optional[str]
16
+ value: typing.Optional[str] = None
17
17
 
18
18
  def json(self, **kwargs: typing.Any) -> str:
19
19
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -26,4 +26,5 @@ class NamedTestCaseStringVariableValueRequest(pydantic.BaseModel):
26
26
  class Config:
27
27
  frozen = True
28
28
  smart_union = True
29
+ extra = pydantic.Extra.allow
29
30
  json_encoders = {dt.datetime: serialize_datetime}
@@ -4,8 +4,6 @@ from __future__ import annotations
4
4
 
5
5
  import typing
6
6
 
7
- import typing_extensions
8
-
9
7
  from .named_test_case_chat_history_variable_value_request import NamedTestCaseChatHistoryVariableValueRequest
10
8
  from .named_test_case_error_variable_value_request import NamedTestCaseErrorVariableValueRequest
11
9
  from .named_test_case_json_variable_value_request import NamedTestCaseJsonVariableValueRequest
@@ -15,57 +13,63 @@ from .named_test_case_string_variable_value_request import NamedTestCaseStringVa
15
13
 
16
14
 
17
15
  class NamedTestCaseVariableValueRequest_String(NamedTestCaseStringVariableValueRequest):
18
- type: typing_extensions.Literal["STRING"]
16
+ type: typing.Literal["STRING"] = "STRING"
19
17
 
20
18
  class Config:
21
19
  frozen = True
22
20
  smart_union = True
23
21
  allow_population_by_field_name = True
22
+ populate_by_name = True
24
23
 
25
24
 
26
25
  class NamedTestCaseVariableValueRequest_Number(NamedTestCaseNumberVariableValueRequest):
27
- type: typing_extensions.Literal["NUMBER"]
26
+ type: typing.Literal["NUMBER"] = "NUMBER"
28
27
 
29
28
  class Config:
30
29
  frozen = True
31
30
  smart_union = True
32
31
  allow_population_by_field_name = True
32
+ populate_by_name = True
33
33
 
34
34
 
35
35
  class NamedTestCaseVariableValueRequest_Json(NamedTestCaseJsonVariableValueRequest):
36
- type: typing_extensions.Literal["JSON"]
36
+ type: typing.Literal["JSON"] = "JSON"
37
37
 
38
38
  class Config:
39
39
  frozen = True
40
40
  smart_union = True
41
41
  allow_population_by_field_name = True
42
+ populate_by_name = True
42
43
 
43
44
 
44
45
  class NamedTestCaseVariableValueRequest_ChatHistory(NamedTestCaseChatHistoryVariableValueRequest):
45
- type: typing_extensions.Literal["CHAT_HISTORY"]
46
+ type: typing.Literal["CHAT_HISTORY"] = "CHAT_HISTORY"
46
47
 
47
48
  class Config:
48
49
  frozen = True
49
50
  smart_union = True
50
51
  allow_population_by_field_name = True
52
+ populate_by_name = True
51
53
 
52
54
 
53
55
  class NamedTestCaseVariableValueRequest_SearchResults(NamedTestCaseSearchResultsVariableValueRequest):
54
- type: typing_extensions.Literal["SEARCH_RESULTS"]
56
+ type: typing.Literal["SEARCH_RESULTS"] = "SEARCH_RESULTS"
55
57
 
56
58
  class Config:
57
59
  frozen = True
58
60
  smart_union = True
59
61
  allow_population_by_field_name = True
62
+ populate_by_name = True
60
63
 
61
64
 
62
65
  class NamedTestCaseVariableValueRequest_Error(NamedTestCaseErrorVariableValueRequest):
63
- type: typing_extensions.Literal["ERROR"]
66
+ type: typing.Literal["ERROR"] = "ERROR"
64
67
 
65
68
  class Config:
66
69
  frozen = True
67
70
  smart_union = True
68
71
  allow_population_by_field_name = True
72
+ populate_by_name = True
69
73
 
70
74
 
71
75
  NamedTestCaseVariableValueRequest = typing.Union[
@@ -15,7 +15,7 @@ except ImportError:
15
15
  class NodeInputCompiledArrayValue(pydantic.BaseModel):
16
16
  node_input_id: str
17
17
  key: str
18
- value: typing.Optional[typing.List[ArrayVariableValueItem]]
18
+ value: typing.Optional[typing.List[ArrayVariableValueItem]] = None
19
19
 
20
20
  def json(self, **kwargs: typing.Any) -> str:
21
21
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -28,4 +28,5 @@ class NodeInputCompiledArrayValue(pydantic.BaseModel):
28
28
  class Config:
29
29
  frozen = True
30
30
  smart_union = True
31
+ extra = pydantic.Extra.allow
31
32
  json_encoders = {dt.datetime: serialize_datetime}
@@ -15,7 +15,7 @@ except ImportError:
15
15
  class NodeInputCompiledChatHistoryValue(pydantic.BaseModel):
16
16
  node_input_id: str
17
17
  key: str
18
- value: typing.Optional[typing.List[ChatMessage]]
18
+ value: typing.Optional[typing.List[ChatMessage]] = None
19
19
 
20
20
  def json(self, **kwargs: typing.Any) -> str:
21
21
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -28,4 +28,5 @@ class NodeInputCompiledChatHistoryValue(pydantic.BaseModel):
28
28
  class Config:
29
29
  frozen = True
30
30
  smart_union = True
31
+ extra = pydantic.Extra.allow
31
32
  json_encoders = {dt.datetime: serialize_datetime}
@@ -15,7 +15,7 @@ except ImportError:
15
15
  class NodeInputCompiledErrorValue(pydantic.BaseModel):
16
16
  node_input_id: str
17
17
  key: str
18
- value: typing.Optional[VellumError]
18
+ value: typing.Optional[VellumError] = None
19
19
 
20
20
  def json(self, **kwargs: typing.Any) -> str:
21
21
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -28,4 +28,5 @@ class NodeInputCompiledErrorValue(pydantic.BaseModel):
28
28
  class Config:
29
29
  frozen = True
30
30
  smart_union = True
31
+ extra = pydantic.Extra.allow
31
32
  json_encoders = {dt.datetime: serialize_datetime}
@@ -0,0 +1,32 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import datetime as dt
4
+ import typing
5
+
6
+ from ..core.datetime_utils import serialize_datetime
7
+ from .function_call import FunctionCall
8
+
9
+ try:
10
+ import pydantic.v1 as pydantic # type: ignore
11
+ except ImportError:
12
+ import pydantic # type: ignore
13
+
14
+
15
+ class NodeInputCompiledFunctionCall(pydantic.BaseModel):
16
+ node_input_id: str
17
+ key: str
18
+ value: typing.Optional[FunctionCall] = None
19
+
20
+ def json(self, **kwargs: typing.Any) -> str:
21
+ kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
22
+ return super().json(**kwargs_with_defaults)
23
+
24
+ def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
25
+ kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
26
+ return super().dict(**kwargs_with_defaults)
27
+
28
+ class Config:
29
+ frozen = True
30
+ smart_union = True
31
+ extra = pydantic.Extra.allow
32
+ json_encoders = {dt.datetime: serialize_datetime}
@@ -14,7 +14,7 @@ except ImportError:
14
14
  class NodeInputCompiledJsonValue(pydantic.BaseModel):
15
15
  node_input_id: str
16
16
  key: str
17
- value: typing.Optional[typing.Dict[str, typing.Any]]
17
+ value: typing.Optional[typing.Dict[str, typing.Any]] = None
18
18
 
19
19
  def json(self, **kwargs: typing.Any) -> str:
20
20
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -27,4 +27,5 @@ class NodeInputCompiledJsonValue(pydantic.BaseModel):
27
27
  class Config:
28
28
  frozen = True
29
29
  smart_union = True
30
+ extra = pydantic.Extra.allow
30
31
  json_encoders = {dt.datetime: serialize_datetime}
@@ -14,7 +14,7 @@ except ImportError:
14
14
  class NodeInputCompiledNumberValue(pydantic.BaseModel):
15
15
  node_input_id: str
16
16
  key: str
17
- value: typing.Optional[float]
17
+ value: typing.Optional[float] = None
18
18
 
19
19
  def json(self, **kwargs: typing.Any) -> str:
20
20
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -27,4 +27,5 @@ class NodeInputCompiledNumberValue(pydantic.BaseModel):
27
27
  class Config:
28
28
  frozen = True
29
29
  smart_union = True
30
+ extra = pydantic.Extra.allow
30
31
  json_encoders = {dt.datetime: serialize_datetime}
@@ -15,7 +15,7 @@ except ImportError:
15
15
  class NodeInputCompiledSearchResultsValue(pydantic.BaseModel):
16
16
  node_input_id: str
17
17
  key: str
18
- value: typing.Optional[typing.List[SearchResult]]
18
+ value: typing.Optional[typing.List[SearchResult]] = None
19
19
 
20
20
  def json(self, **kwargs: typing.Any) -> str:
21
21
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -28,4 +28,5 @@ class NodeInputCompiledSearchResultsValue(pydantic.BaseModel):
28
28
  class Config:
29
29
  frozen = True
30
30
  smart_union = True
31
+ extra = pydantic.Extra.allow
31
32
  json_encoders = {dt.datetime: serialize_datetime}
@@ -14,7 +14,7 @@ except ImportError:
14
14
  class NodeInputCompiledStringValue(pydantic.BaseModel):
15
15
  node_input_id: str
16
16
  key: str
17
- value: typing.Optional[str]
17
+ value: typing.Optional[str] = None
18
18
 
19
19
  def json(self, **kwargs: typing.Any) -> str:
20
20
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -27,4 +27,5 @@ class NodeInputCompiledStringValue(pydantic.BaseModel):
27
27
  class Config:
28
28
  frozen = True
29
29
  smart_union = True
30
+ extra = pydantic.Extra.allow
30
31
  json_encoders = {dt.datetime: serialize_datetime}
@@ -4,11 +4,10 @@ from __future__ import annotations
4
4
 
5
5
  import typing
6
6
 
7
- import typing_extensions
8
-
9
7
  from .node_input_compiled_array_value import NodeInputCompiledArrayValue
10
8
  from .node_input_compiled_chat_history_value import NodeInputCompiledChatHistoryValue
11
9
  from .node_input_compiled_error_value import NodeInputCompiledErrorValue
10
+ from .node_input_compiled_function_call import NodeInputCompiledFunctionCall
12
11
  from .node_input_compiled_json_value import NodeInputCompiledJsonValue
13
12
  from .node_input_compiled_number_value import NodeInputCompiledNumberValue
14
13
  from .node_input_compiled_search_results_value import NodeInputCompiledSearchResultsValue
@@ -16,66 +15,83 @@ from .node_input_compiled_string_value import NodeInputCompiledStringValue
16
15
 
17
16
 
18
17
  class NodeInputVariableCompiledValue_String(NodeInputCompiledStringValue):
19
- type: typing_extensions.Literal["STRING"]
18
+ type: typing.Literal["STRING"] = "STRING"
20
19
 
21
20
  class Config:
22
21
  frozen = True
23
22
  smart_union = True
24
23
  allow_population_by_field_name = True
24
+ populate_by_name = True
25
25
 
26
26
 
27
27
  class NodeInputVariableCompiledValue_Number(NodeInputCompiledNumberValue):
28
- type: typing_extensions.Literal["NUMBER"]
28
+ type: typing.Literal["NUMBER"] = "NUMBER"
29
29
 
30
30
  class Config:
31
31
  frozen = True
32
32
  smart_union = True
33
33
  allow_population_by_field_name = True
34
+ populate_by_name = True
34
35
 
35
36
 
36
37
  class NodeInputVariableCompiledValue_Json(NodeInputCompiledJsonValue):
37
- type: typing_extensions.Literal["JSON"]
38
+ type: typing.Literal["JSON"] = "JSON"
38
39
 
39
40
  class Config:
40
41
  frozen = True
41
42
  smart_union = True
42
43
  allow_population_by_field_name = True
44
+ populate_by_name = True
43
45
 
44
46
 
45
47
  class NodeInputVariableCompiledValue_ChatHistory(NodeInputCompiledChatHistoryValue):
46
- type: typing_extensions.Literal["CHAT_HISTORY"]
48
+ type: typing.Literal["CHAT_HISTORY"] = "CHAT_HISTORY"
47
49
 
48
50
  class Config:
49
51
  frozen = True
50
52
  smart_union = True
51
53
  allow_population_by_field_name = True
54
+ populate_by_name = True
52
55
 
53
56
 
54
57
  class NodeInputVariableCompiledValue_SearchResults(NodeInputCompiledSearchResultsValue):
55
- type: typing_extensions.Literal["SEARCH_RESULTS"]
58
+ type: typing.Literal["SEARCH_RESULTS"] = "SEARCH_RESULTS"
56
59
 
57
60
  class Config:
58
61
  frozen = True
59
62
  smart_union = True
60
63
  allow_population_by_field_name = True
64
+ populate_by_name = True
61
65
 
62
66
 
63
67
  class NodeInputVariableCompiledValue_Error(NodeInputCompiledErrorValue):
64
- type: typing_extensions.Literal["ERROR"]
68
+ type: typing.Literal["ERROR"] = "ERROR"
65
69
 
66
70
  class Config:
67
71
  frozen = True
68
72
  smart_union = True
69
73
  allow_population_by_field_name = True
74
+ populate_by_name = True
70
75
 
71
76
 
72
77
  class NodeInputVariableCompiledValue_Array(NodeInputCompiledArrayValue):
73
- type: typing_extensions.Literal["ARRAY"]
78
+ type: typing.Literal["ARRAY"] = "ARRAY"
79
+
80
+ class Config:
81
+ frozen = True
82
+ smart_union = True
83
+ allow_population_by_field_name = True
84
+ populate_by_name = True
85
+
86
+
87
+ class NodeInputVariableCompiledValue_FunctionCall(NodeInputCompiledFunctionCall):
88
+ type: typing.Literal["FUNCTION_CALL"] = "FUNCTION_CALL"
74
89
 
75
90
  class Config:
76
91
  frozen = True
77
92
  smart_union = True
78
93
  allow_population_by_field_name = True
94
+ populate_by_name = True
79
95
 
80
96
 
81
97
  NodeInputVariableCompiledValue = typing.Union[
@@ -86,4 +102,5 @@ NodeInputVariableCompiledValue = typing.Union[
86
102
  NodeInputVariableCompiledValue_SearchResults,
87
103
  NodeInputVariableCompiledValue_Error,
88
104
  NodeInputVariableCompiledValue_Array,
105
+ NodeInputVariableCompiledValue_FunctionCall,
89
106
  ]
@@ -14,7 +14,7 @@ except ImportError:
14
14
 
15
15
  class NodeOutputCompiledArrayValue(pydantic.BaseModel):
16
16
  node_output_id: str
17
- value: typing.Optional[typing.List[ArrayVariableValueItem]]
17
+ value: typing.Optional[typing.List[ArrayVariableValueItem]] = None
18
18
 
19
19
  def json(self, **kwargs: typing.Any) -> str:
20
20
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -27,4 +27,5 @@ class NodeOutputCompiledArrayValue(pydantic.BaseModel):
27
27
  class Config:
28
28
  frozen = True
29
29
  smart_union = True
30
+ extra = pydantic.Extra.allow
30
31
  json_encoders = {dt.datetime: serialize_datetime}
@@ -14,7 +14,7 @@ except ImportError:
14
14
 
15
15
  class NodeOutputCompiledChatHistoryValue(pydantic.BaseModel):
16
16
  node_output_id: str
17
- value: typing.Optional[typing.List[ChatMessage]]
17
+ value: typing.Optional[typing.List[ChatMessage]] = None
18
18
 
19
19
  def json(self, **kwargs: typing.Any) -> str:
20
20
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -27,4 +27,5 @@ class NodeOutputCompiledChatHistoryValue(pydantic.BaseModel):
27
27
  class Config:
28
28
  frozen = True
29
29
  smart_union = True
30
+ extra = pydantic.Extra.allow
30
31
  json_encoders = {dt.datetime: serialize_datetime}