vellum-ai 1.2.4__py3-none-any.whl → 1.3.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. vellum/__init__.py +56 -0
  2. vellum/client/README.md +1 -1
  3. vellum/client/core/client_wrapper.py +2 -2
  4. vellum/client/reference.md +0 -9
  5. vellum/client/resources/workflow_sandboxes/client.py +0 -12
  6. vellum/client/resources/workflow_sandboxes/raw_client.py +2 -10
  7. vellum/client/resources/workflows/client.py +20 -0
  8. vellum/client/resources/workflows/raw_client.py +20 -0
  9. vellum/client/types/__init__.py +56 -0
  10. vellum/client/types/audio_input.py +30 -0
  11. vellum/client/types/code_executor_input.py +8 -0
  12. vellum/client/types/deployment_read.py +5 -5
  13. vellum/client/types/document_input.py +30 -0
  14. vellum/client/types/image_input.py +30 -0
  15. vellum/client/types/named_scenario_input_audio_variable_value_request.py +22 -0
  16. vellum/client/types/named_scenario_input_document_variable_value_request.py +22 -0
  17. vellum/client/types/named_scenario_input_image_variable_value_request.py +22 -0
  18. vellum/client/types/named_scenario_input_request.py +8 -0
  19. vellum/client/types/named_scenario_input_video_variable_value_request.py +22 -0
  20. vellum/client/types/named_test_case_audio_variable_value.py +26 -0
  21. vellum/client/types/named_test_case_audio_variable_value_request.py +26 -0
  22. vellum/client/types/named_test_case_document_variable_value.py +22 -0
  23. vellum/client/types/named_test_case_document_variable_value_request.py +22 -0
  24. vellum/client/types/named_test_case_image_variable_value.py +22 -0
  25. vellum/client/types/named_test_case_image_variable_value_request.py +22 -0
  26. vellum/client/types/named_test_case_variable_value.py +8 -0
  27. vellum/client/types/named_test_case_variable_value_request.py +8 -0
  28. vellum/client/types/named_test_case_video_variable_value.py +22 -0
  29. vellum/client/types/named_test_case_video_variable_value_request.py +22 -0
  30. vellum/client/types/node_execution_span_attributes.py +1 -0
  31. vellum/client/types/scenario_input.py +11 -1
  32. vellum/client/types/scenario_input_audio_variable_value.py +22 -0
  33. vellum/client/types/scenario_input_document_variable_value.py +22 -0
  34. vellum/client/types/scenario_input_image_variable_value.py +22 -0
  35. vellum/client/types/scenario_input_video_variable_value.py +22 -0
  36. vellum/client/types/slim_deployment_read.py +5 -5
  37. vellum/client/types/slim_workflow_deployment.py +5 -5
  38. vellum/client/types/span_link.py +1 -1
  39. vellum/client/types/span_link_type_enum.py +1 -1
  40. vellum/client/types/test_case_audio_variable_value.py +27 -0
  41. vellum/client/types/test_case_document_variable_value.py +27 -0
  42. vellum/client/types/test_case_image_variable_value.py +27 -0
  43. vellum/client/types/test_case_variable_value.py +8 -0
  44. vellum/client/types/test_case_video_variable_value.py +27 -0
  45. vellum/client/types/video_input.py +30 -0
  46. vellum/client/types/workflow_deployment_read.py +5 -5
  47. vellum/client/types/workflow_push_deployment_config_request.py +1 -0
  48. vellum/client/types/workflow_request_audio_input_request.py +30 -0
  49. vellum/client/types/workflow_request_document_input_request.py +30 -0
  50. vellum/client/types/workflow_request_image_input_request.py +30 -0
  51. vellum/client/types/workflow_request_input_request.py +8 -0
  52. vellum/client/types/workflow_request_video_input_request.py +30 -0
  53. vellum/types/audio_input.py +3 -0
  54. vellum/types/document_input.py +3 -0
  55. vellum/types/image_input.py +3 -0
  56. vellum/types/named_scenario_input_audio_variable_value_request.py +3 -0
  57. vellum/types/named_scenario_input_document_variable_value_request.py +3 -0
  58. vellum/types/named_scenario_input_image_variable_value_request.py +3 -0
  59. vellum/types/named_scenario_input_video_variable_value_request.py +3 -0
  60. vellum/types/named_test_case_audio_variable_value.py +3 -0
  61. vellum/types/named_test_case_audio_variable_value_request.py +3 -0
  62. vellum/types/named_test_case_document_variable_value.py +3 -0
  63. vellum/types/named_test_case_document_variable_value_request.py +3 -0
  64. vellum/types/named_test_case_image_variable_value.py +3 -0
  65. vellum/types/named_test_case_image_variable_value_request.py +3 -0
  66. vellum/types/named_test_case_video_variable_value.py +3 -0
  67. vellum/types/named_test_case_video_variable_value_request.py +3 -0
  68. vellum/types/scenario_input_audio_variable_value.py +3 -0
  69. vellum/types/scenario_input_document_variable_value.py +3 -0
  70. vellum/types/scenario_input_image_variable_value.py +3 -0
  71. vellum/types/scenario_input_video_variable_value.py +3 -0
  72. vellum/types/test_case_audio_variable_value.py +3 -0
  73. vellum/types/test_case_document_variable_value.py +3 -0
  74. vellum/types/test_case_image_variable_value.py +3 -0
  75. vellum/types/test_case_video_variable_value.py +3 -0
  76. vellum/types/video_input.py +3 -0
  77. vellum/types/workflow_request_audio_input_request.py +3 -0
  78. vellum/types/workflow_request_document_input_request.py +3 -0
  79. vellum/types/workflow_request_image_input_request.py +3 -0
  80. vellum/types/workflow_request_video_input_request.py +3 -0
  81. vellum/workflows/events/types.py +6 -1
  82. vellum/workflows/integrations/tests/test_mcp_service.py +106 -1
  83. vellum/workflows/nodes/__init__.py +2 -0
  84. vellum/workflows/nodes/displayable/__init__.py +2 -0
  85. vellum/workflows/nodes/displayable/web_search_node/__init__.py +3 -0
  86. vellum/workflows/nodes/displayable/web_search_node/node.py +133 -0
  87. vellum/workflows/resolvers/base.py +19 -1
  88. vellum/workflows/resolvers/resolver.py +97 -0
  89. vellum/workflows/resolvers/tests/test_resolver.py +131 -0
  90. vellum/workflows/resolvers/types.py +11 -0
  91. vellum/workflows/runner/runner.py +49 -1
  92. vellum/workflows/state/context.py +41 -7
  93. vellum/workflows/utils/zip.py +46 -0
  94. vellum/workflows/workflows/base.py +13 -0
  95. {vellum_ai-1.2.4.dist-info → vellum_ai-1.3.0.dist-info}/METADATA +1 -1
  96. {vellum_ai-1.2.4.dist-info → vellum_ai-1.3.0.dist-info}/RECORD +105 -43
  97. vellum_cli/tests/test_init.py +7 -24
  98. vellum_cli/tests/test_pull.py +27 -52
  99. vellum_ee/workflows/display/tests/workflow_serialization/generic_nodes/test_attributes_serialization.py +7 -33
  100. vellum_ee/workflows/display/utils/events.py +19 -1
  101. vellum_ee/workflows/display/utils/tests/test_events.py +42 -0
  102. vellum_ee/workflows/tests/test_server.py +115 -0
  103. {vellum_ai-1.2.4.dist-info → vellum_ai-1.3.0.dist-info}/LICENSE +0 -0
  104. {vellum_ai-1.2.4.dist-info → vellum_ai-1.3.0.dist-info}/WHEEL +0 -0
  105. {vellum_ai-1.2.4.dist-info → vellum_ai-1.3.0.dist-info}/entry_points.txt +0 -0
@@ -22,6 +22,7 @@ from .array_vellum_value import ArrayVellumValue
22
22
  from .array_vellum_value_request import ArrayVellumValueRequest
23
23
  from .audio_chat_message_content import AudioChatMessageContent
24
24
  from .audio_chat_message_content_request import AudioChatMessageContentRequest
25
+ from .audio_input import AudioInput
25
26
  from .audio_input_request import AudioInputRequest
26
27
  from .audio_prompt_block import AudioPromptBlock
27
28
  from .audio_vellum_value import AudioVellumValue
@@ -100,6 +101,7 @@ from .document_index_chunking_request import DocumentIndexChunkingRequest
100
101
  from .document_index_indexing_config import DocumentIndexIndexingConfig
101
102
  from .document_index_indexing_config_request import DocumentIndexIndexingConfigRequest
102
103
  from .document_index_read import DocumentIndexRead
104
+ from .document_input import DocumentInput
103
105
  from .document_input_request import DocumentInputRequest
104
106
  from .document_processing_state import DocumentProcessingState
105
107
  from .document_prompt_block import DocumentPromptBlock
@@ -203,6 +205,7 @@ from .hkunlp_instructor_xl_vectorizer import HkunlpInstructorXlVectorizer
203
205
  from .hkunlp_instructor_xl_vectorizer_request import HkunlpInstructorXlVectorizerRequest
204
206
  from .image_chat_message_content import ImageChatMessageContent
205
207
  from .image_chat_message_content_request import ImageChatMessageContentRequest
208
+ from .image_input import ImageInput
206
209
  from .image_input_request import ImageInputRequest
207
210
  from .image_prompt_block import ImagePromptBlock
208
211
  from .image_vellum_value import ImageVellumValue
@@ -241,18 +244,28 @@ from .metric_node_result import MetricNodeResult
241
244
  from .ml_model_read import MlModelRead
242
245
  from .ml_model_usage import MlModelUsage
243
246
  from .ml_model_usage_wrapper import MlModelUsageWrapper
247
+ from .named_scenario_input_audio_variable_value_request import NamedScenarioInputAudioVariableValueRequest
244
248
  from .named_scenario_input_chat_history_variable_value_request import NamedScenarioInputChatHistoryVariableValueRequest
249
+ from .named_scenario_input_document_variable_value_request import NamedScenarioInputDocumentVariableValueRequest
250
+ from .named_scenario_input_image_variable_value_request import NamedScenarioInputImageVariableValueRequest
245
251
  from .named_scenario_input_json_variable_value_request import NamedScenarioInputJsonVariableValueRequest
246
252
  from .named_scenario_input_request import NamedScenarioInputRequest
247
253
  from .named_scenario_input_string_variable_value_request import NamedScenarioInputStringVariableValueRequest
254
+ from .named_scenario_input_video_variable_value_request import NamedScenarioInputVideoVariableValueRequest
248
255
  from .named_test_case_array_variable_value import NamedTestCaseArrayVariableValue
249
256
  from .named_test_case_array_variable_value_request import NamedTestCaseArrayVariableValueRequest
257
+ from .named_test_case_audio_variable_value import NamedTestCaseAudioVariableValue
258
+ from .named_test_case_audio_variable_value_request import NamedTestCaseAudioVariableValueRequest
250
259
  from .named_test_case_chat_history_variable_value import NamedTestCaseChatHistoryVariableValue
251
260
  from .named_test_case_chat_history_variable_value_request import NamedTestCaseChatHistoryVariableValueRequest
261
+ from .named_test_case_document_variable_value import NamedTestCaseDocumentVariableValue
262
+ from .named_test_case_document_variable_value_request import NamedTestCaseDocumentVariableValueRequest
252
263
  from .named_test_case_error_variable_value import NamedTestCaseErrorVariableValue
253
264
  from .named_test_case_error_variable_value_request import NamedTestCaseErrorVariableValueRequest
254
265
  from .named_test_case_function_call_variable_value import NamedTestCaseFunctionCallVariableValue
255
266
  from .named_test_case_function_call_variable_value_request import NamedTestCaseFunctionCallVariableValueRequest
267
+ from .named_test_case_image_variable_value import NamedTestCaseImageVariableValue
268
+ from .named_test_case_image_variable_value_request import NamedTestCaseImageVariableValueRequest
256
269
  from .named_test_case_json_variable_value import NamedTestCaseJsonVariableValue
257
270
  from .named_test_case_json_variable_value_request import NamedTestCaseJsonVariableValueRequest
258
271
  from .named_test_case_number_variable_value import NamedTestCaseNumberVariableValue
@@ -263,6 +276,8 @@ from .named_test_case_string_variable_value import NamedTestCaseStringVariableVa
263
276
  from .named_test_case_string_variable_value_request import NamedTestCaseStringVariableValueRequest
264
277
  from .named_test_case_variable_value import NamedTestCaseVariableValue
265
278
  from .named_test_case_variable_value_request import NamedTestCaseVariableValueRequest
279
+ from .named_test_case_video_variable_value import NamedTestCaseVideoVariableValue
280
+ from .named_test_case_video_variable_value_request import NamedTestCaseVideoVariableValueRequest
266
281
  from .new_member_join_behavior_enum import NewMemberJoinBehaviorEnum
267
282
  from .node_execution_fulfilled_body import NodeExecutionFulfilledBody
268
283
  from .node_execution_fulfilled_event import NodeExecutionFulfilledEvent
@@ -383,9 +398,13 @@ from .rich_text_child_block import RichTextChildBlock
383
398
  from .rich_text_prompt_block import RichTextPromptBlock
384
399
  from .sandbox_scenario import SandboxScenario
385
400
  from .scenario_input import ScenarioInput
401
+ from .scenario_input_audio_variable_value import ScenarioInputAudioVariableValue
386
402
  from .scenario_input_chat_history_variable_value import ScenarioInputChatHistoryVariableValue
403
+ from .scenario_input_document_variable_value import ScenarioInputDocumentVariableValue
404
+ from .scenario_input_image_variable_value import ScenarioInputImageVariableValue
387
405
  from .scenario_input_json_variable_value import ScenarioInputJsonVariableValue
388
406
  from .scenario_input_string_variable_value import ScenarioInputStringVariableValue
407
+ from .scenario_input_video_variable_value import ScenarioInputVideoVariableValue
389
408
  from .search_filters_request import SearchFiltersRequest
390
409
  from .search_node_result import SearchNodeResult
391
410
  from .search_node_result_data import SearchNodeResultData
@@ -452,14 +471,18 @@ from .terminal_node_result_output import TerminalNodeResultOutput
452
471
  from .terminal_node_search_results_result import TerminalNodeSearchResultsResult
453
472
  from .terminal_node_string_result import TerminalNodeStringResult
454
473
  from .test_case_array_variable_value import TestCaseArrayVariableValue
474
+ from .test_case_audio_variable_value import TestCaseAudioVariableValue
455
475
  from .test_case_chat_history_variable_value import TestCaseChatHistoryVariableValue
476
+ from .test_case_document_variable_value import TestCaseDocumentVariableValue
456
477
  from .test_case_error_variable_value import TestCaseErrorVariableValue
457
478
  from .test_case_function_call_variable_value import TestCaseFunctionCallVariableValue
479
+ from .test_case_image_variable_value import TestCaseImageVariableValue
458
480
  from .test_case_json_variable_value import TestCaseJsonVariableValue
459
481
  from .test_case_number_variable_value import TestCaseNumberVariableValue
460
482
  from .test_case_search_results_variable_value import TestCaseSearchResultsVariableValue
461
483
  from .test_case_string_variable_value import TestCaseStringVariableValue
462
484
  from .test_case_variable_value import TestCaseVariableValue
485
+ from .test_case_video_variable_value import TestCaseVideoVariableValue
463
486
  from .test_suite_run_deployment_release_tag_exec_config import TestSuiteRunDeploymentReleaseTagExecConfig
464
487
  from .test_suite_run_deployment_release_tag_exec_config_data import TestSuiteRunDeploymentReleaseTagExecConfigData
465
488
  from .test_suite_run_deployment_release_tag_exec_config_data_request import (
@@ -577,6 +600,7 @@ from .vellum_video_request import VellumVideoRequest
577
600
  from .vellum_workflow_execution_event import VellumWorkflowExecutionEvent
578
601
  from .video_chat_message_content import VideoChatMessageContent
579
602
  from .video_chat_message_content_request import VideoChatMessageContentRequest
603
+ from .video_input import VideoInput
580
604
  from .video_input_request import VideoInputRequest
581
605
  from .video_prompt_block import VideoPromptBlock
582
606
  from .video_vellum_value import VideoVellumValue
@@ -643,11 +667,15 @@ from .workflow_push_exec_config import WorkflowPushExecConfig
643
667
  from .workflow_push_response import WorkflowPushResponse
644
668
  from .workflow_release_tag_read import WorkflowReleaseTagRead
645
669
  from .workflow_release_tag_workflow_deployment_history_item import WorkflowReleaseTagWorkflowDeploymentHistoryItem
670
+ from .workflow_request_audio_input_request import WorkflowRequestAudioInputRequest
646
671
  from .workflow_request_chat_history_input_request import WorkflowRequestChatHistoryInputRequest
672
+ from .workflow_request_document_input_request import WorkflowRequestDocumentInputRequest
673
+ from .workflow_request_image_input_request import WorkflowRequestImageInputRequest
647
674
  from .workflow_request_input_request import WorkflowRequestInputRequest
648
675
  from .workflow_request_json_input_request import WorkflowRequestJsonInputRequest
649
676
  from .workflow_request_number_input_request import WorkflowRequestNumberInputRequest
650
677
  from .workflow_request_string_input_request import WorkflowRequestStringInputRequest
678
+ from .workflow_request_video_input_request import WorkflowRequestVideoInputRequest
651
679
  from .workflow_result_event import WorkflowResultEvent
652
680
  from .workflow_result_event_output_data import WorkflowResultEventOutputData
653
681
  from .workflow_result_event_output_data_array import WorkflowResultEventOutputDataArray
@@ -685,6 +713,7 @@ __all__ = [
685
713
  "ArrayVellumValueRequest",
686
714
  "AudioChatMessageContent",
687
715
  "AudioChatMessageContentRequest",
716
+ "AudioInput",
688
717
  "AudioInputRequest",
689
718
  "AudioPromptBlock",
690
719
  "AudioVellumValue",
@@ -755,6 +784,7 @@ __all__ = [
755
784
  "DocumentIndexIndexingConfig",
756
785
  "DocumentIndexIndexingConfigRequest",
757
786
  "DocumentIndexRead",
787
+ "DocumentInput",
758
788
  "DocumentInputRequest",
759
789
  "DocumentProcessingState",
760
790
  "DocumentPromptBlock",
@@ -854,6 +884,7 @@ __all__ = [
854
884
  "HkunlpInstructorXlVectorizerRequest",
855
885
  "ImageChatMessageContent",
856
886
  "ImageChatMessageContentRequest",
887
+ "ImageInput",
857
888
  "ImageInputRequest",
858
889
  "ImagePromptBlock",
859
890
  "ImageVellumValue",
@@ -892,18 +923,28 @@ __all__ = [
892
923
  "MlModelRead",
893
924
  "MlModelUsage",
894
925
  "MlModelUsageWrapper",
926
+ "NamedScenarioInputAudioVariableValueRequest",
895
927
  "NamedScenarioInputChatHistoryVariableValueRequest",
928
+ "NamedScenarioInputDocumentVariableValueRequest",
929
+ "NamedScenarioInputImageVariableValueRequest",
896
930
  "NamedScenarioInputJsonVariableValueRequest",
897
931
  "NamedScenarioInputRequest",
898
932
  "NamedScenarioInputStringVariableValueRequest",
933
+ "NamedScenarioInputVideoVariableValueRequest",
899
934
  "NamedTestCaseArrayVariableValue",
900
935
  "NamedTestCaseArrayVariableValueRequest",
936
+ "NamedTestCaseAudioVariableValue",
937
+ "NamedTestCaseAudioVariableValueRequest",
901
938
  "NamedTestCaseChatHistoryVariableValue",
902
939
  "NamedTestCaseChatHistoryVariableValueRequest",
940
+ "NamedTestCaseDocumentVariableValue",
941
+ "NamedTestCaseDocumentVariableValueRequest",
903
942
  "NamedTestCaseErrorVariableValue",
904
943
  "NamedTestCaseErrorVariableValueRequest",
905
944
  "NamedTestCaseFunctionCallVariableValue",
906
945
  "NamedTestCaseFunctionCallVariableValueRequest",
946
+ "NamedTestCaseImageVariableValue",
947
+ "NamedTestCaseImageVariableValueRequest",
907
948
  "NamedTestCaseJsonVariableValue",
908
949
  "NamedTestCaseJsonVariableValueRequest",
909
950
  "NamedTestCaseNumberVariableValue",
@@ -914,6 +955,8 @@ __all__ = [
914
955
  "NamedTestCaseStringVariableValueRequest",
915
956
  "NamedTestCaseVariableValue",
916
957
  "NamedTestCaseVariableValueRequest",
958
+ "NamedTestCaseVideoVariableValue",
959
+ "NamedTestCaseVideoVariableValueRequest",
917
960
  "NewMemberJoinBehaviorEnum",
918
961
  "NodeExecutionFulfilledBody",
919
962
  "NodeExecutionFulfilledEvent",
@@ -1034,9 +1077,13 @@ __all__ = [
1034
1077
  "RichTextPromptBlock",
1035
1078
  "SandboxScenario",
1036
1079
  "ScenarioInput",
1080
+ "ScenarioInputAudioVariableValue",
1037
1081
  "ScenarioInputChatHistoryVariableValue",
1082
+ "ScenarioInputDocumentVariableValue",
1083
+ "ScenarioInputImageVariableValue",
1038
1084
  "ScenarioInputJsonVariableValue",
1039
1085
  "ScenarioInputStringVariableValue",
1086
+ "ScenarioInputVideoVariableValue",
1040
1087
  "SearchFiltersRequest",
1041
1088
  "SearchNodeResult",
1042
1089
  "SearchNodeResultData",
@@ -1103,14 +1150,18 @@ __all__ = [
1103
1150
  "TerminalNodeSearchResultsResult",
1104
1151
  "TerminalNodeStringResult",
1105
1152
  "TestCaseArrayVariableValue",
1153
+ "TestCaseAudioVariableValue",
1106
1154
  "TestCaseChatHistoryVariableValue",
1155
+ "TestCaseDocumentVariableValue",
1107
1156
  "TestCaseErrorVariableValue",
1108
1157
  "TestCaseFunctionCallVariableValue",
1158
+ "TestCaseImageVariableValue",
1109
1159
  "TestCaseJsonVariableValue",
1110
1160
  "TestCaseNumberVariableValue",
1111
1161
  "TestCaseSearchResultsVariableValue",
1112
1162
  "TestCaseStringVariableValue",
1113
1163
  "TestCaseVariableValue",
1164
+ "TestCaseVideoVariableValue",
1114
1165
  "TestSuiteRunDeploymentReleaseTagExecConfig",
1115
1166
  "TestSuiteRunDeploymentReleaseTagExecConfigData",
1116
1167
  "TestSuiteRunDeploymentReleaseTagExecConfigDataRequest",
@@ -1212,6 +1263,7 @@ __all__ = [
1212
1263
  "VellumWorkflowExecutionEvent",
1213
1264
  "VideoChatMessageContent",
1214
1265
  "VideoChatMessageContentRequest",
1266
+ "VideoInput",
1215
1267
  "VideoInputRequest",
1216
1268
  "VideoPromptBlock",
1217
1269
  "VideoVellumValue",
@@ -1278,11 +1330,15 @@ __all__ = [
1278
1330
  "WorkflowPushResponse",
1279
1331
  "WorkflowReleaseTagRead",
1280
1332
  "WorkflowReleaseTagWorkflowDeploymentHistoryItem",
1333
+ "WorkflowRequestAudioInputRequest",
1281
1334
  "WorkflowRequestChatHistoryInputRequest",
1335
+ "WorkflowRequestDocumentInputRequest",
1336
+ "WorkflowRequestImageInputRequest",
1282
1337
  "WorkflowRequestInputRequest",
1283
1338
  "WorkflowRequestJsonInputRequest",
1284
1339
  "WorkflowRequestNumberInputRequest",
1285
1340
  "WorkflowRequestStringInputRequest",
1341
+ "WorkflowRequestVideoInputRequest",
1286
1342
  "WorkflowResultEvent",
1287
1343
  "WorkflowResultEventOutputData",
1288
1344
  "WorkflowResultEventOutputDataArray",
@@ -0,0 +1,30 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+ from .vellum_audio import VellumAudio
8
+
9
+
10
+ class AudioInput(UniversalBaseModel):
11
+ """
12
+ A user input representing a Vellum Audio value
13
+ """
14
+
15
+ name: str = pydantic.Field()
16
+ """
17
+ The variable's name
18
+ """
19
+
20
+ type: typing.Literal["AUDIO"] = "AUDIO"
21
+ value: VellumAudio
22
+
23
+ if IS_PYDANTIC_V2:
24
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
25
+ else:
26
+
27
+ class Config:
28
+ frozen = True
29
+ smart_union = True
30
+ extra = pydantic.Extra.allow
@@ -3,14 +3,18 @@
3
3
  import typing
4
4
 
5
5
  from .array_input import ArrayInput
6
+ from .audio_input import AudioInput
6
7
  from .chat_history_input import ChatHistoryInput
7
8
  from .code_executor_secret_input import CodeExecutorSecretInput
9
+ from .document_input import DocumentInput
8
10
  from .error_input import ErrorInput
9
11
  from .function_call_input import FunctionCallInput
12
+ from .image_input import ImageInput
10
13
  from .json_input import JsonInput
11
14
  from .number_input import NumberInput
12
15
  from .search_results_input import SearchResultsInput
13
16
  from .string_input import StringInput
17
+ from .video_input import VideoInput
14
18
 
15
19
  CodeExecutorInput = typing.Union[
16
20
  StringInput,
@@ -21,5 +25,9 @@ CodeExecutorInput = typing.Union[
21
25
  ErrorInput,
22
26
  ArrayInput,
23
27
  FunctionCallInput,
28
+ AudioInput,
29
+ VideoInput,
30
+ ImageInput,
31
+ DocumentInput,
24
32
  CodeExecutorSecretInput,
25
33
  ]
@@ -13,6 +13,10 @@ from .vellum_variable import VellumVariable
13
13
 
14
14
 
15
15
  class DeploymentRead(UniversalBaseModel):
16
+ """
17
+ A Prompt Deployment's full details.
18
+ """
19
+
16
20
  id: str
17
21
  created: dt.datetime
18
22
  label: str = pydantic.Field()
@@ -35,11 +39,7 @@ class DeploymentRead(UniversalBaseModel):
35
39
 
36
40
  environment: typing.Optional[EnvironmentEnum] = pydantic.Field(default=None)
37
41
  """
38
- The environment this deployment is used in
39
-
40
- * `DEVELOPMENT` - Development
41
- * `STAGING` - Staging
42
- * `PRODUCTION` - Production
42
+ Deprecated. The value returned will always be 'PRODUCTION'.
43
43
  """
44
44
 
45
45
  last_deployed_on: dt.datetime
@@ -0,0 +1,30 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+ from .vellum_document import VellumDocument
8
+
9
+
10
+ class DocumentInput(UniversalBaseModel):
11
+ """
12
+ A user input representing a Vellum Document value
13
+ """
14
+
15
+ name: str = pydantic.Field()
16
+ """
17
+ The variable's name
18
+ """
19
+
20
+ type: typing.Literal["DOCUMENT"] = "DOCUMENT"
21
+ value: VellumDocument
22
+
23
+ if IS_PYDANTIC_V2:
24
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
25
+ else:
26
+
27
+ class Config:
28
+ frozen = True
29
+ smart_union = True
30
+ extra = pydantic.Extra.allow
@@ -0,0 +1,30 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+ from .vellum_image import VellumImage
8
+
9
+
10
+ class ImageInput(UniversalBaseModel):
11
+ """
12
+ A user input representing a Vellum Image value
13
+ """
14
+
15
+ name: str = pydantic.Field()
16
+ """
17
+ The variable's name
18
+ """
19
+
20
+ type: typing.Literal["IMAGE"] = "IMAGE"
21
+ value: VellumImage
22
+
23
+ if IS_PYDANTIC_V2:
24
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
25
+ else:
26
+
27
+ class Config:
28
+ frozen = True
29
+ smart_union = True
30
+ extra = pydantic.Extra.allow
@@ -0,0 +1,22 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+ from .vellum_audio_request import VellumAudioRequest
8
+
9
+
10
+ class NamedScenarioInputAudioVariableValueRequest(UniversalBaseModel):
11
+ type: typing.Literal["AUDIO"] = "AUDIO"
12
+ value: VellumAudioRequest
13
+ name: str
14
+
15
+ if IS_PYDANTIC_V2:
16
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
17
+ else:
18
+
19
+ class Config:
20
+ frozen = True
21
+ smart_union = True
22
+ extra = pydantic.Extra.allow
@@ -0,0 +1,22 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+ from .vellum_document_request import VellumDocumentRequest
8
+
9
+
10
+ class NamedScenarioInputDocumentVariableValueRequest(UniversalBaseModel):
11
+ type: typing.Literal["DOCUMENT"] = "DOCUMENT"
12
+ value: VellumDocumentRequest
13
+ name: str
14
+
15
+ if IS_PYDANTIC_V2:
16
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
17
+ else:
18
+
19
+ class Config:
20
+ frozen = True
21
+ smart_union = True
22
+ extra = pydantic.Extra.allow
@@ -0,0 +1,22 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+ from .vellum_image_request import VellumImageRequest
8
+
9
+
10
+ class NamedScenarioInputImageVariableValueRequest(UniversalBaseModel):
11
+ type: typing.Literal["IMAGE"] = "IMAGE"
12
+ value: VellumImageRequest
13
+ name: str
14
+
15
+ if IS_PYDANTIC_V2:
16
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
17
+ else:
18
+
19
+ class Config:
20
+ frozen = True
21
+ smart_union = True
22
+ extra = pydantic.Extra.allow
@@ -2,12 +2,20 @@
2
2
 
3
3
  import typing
4
4
 
5
+ from .named_scenario_input_audio_variable_value_request import NamedScenarioInputAudioVariableValueRequest
5
6
  from .named_scenario_input_chat_history_variable_value_request import NamedScenarioInputChatHistoryVariableValueRequest
7
+ from .named_scenario_input_document_variable_value_request import NamedScenarioInputDocumentVariableValueRequest
8
+ from .named_scenario_input_image_variable_value_request import NamedScenarioInputImageVariableValueRequest
6
9
  from .named_scenario_input_json_variable_value_request import NamedScenarioInputJsonVariableValueRequest
7
10
  from .named_scenario_input_string_variable_value_request import NamedScenarioInputStringVariableValueRequest
11
+ from .named_scenario_input_video_variable_value_request import NamedScenarioInputVideoVariableValueRequest
8
12
 
9
13
  NamedScenarioInputRequest = typing.Union[
10
14
  NamedScenarioInputStringVariableValueRequest,
11
15
  NamedScenarioInputJsonVariableValueRequest,
12
16
  NamedScenarioInputChatHistoryVariableValueRequest,
17
+ NamedScenarioInputAudioVariableValueRequest,
18
+ NamedScenarioInputVideoVariableValueRequest,
19
+ NamedScenarioInputImageVariableValueRequest,
20
+ NamedScenarioInputDocumentVariableValueRequest,
13
21
  ]
@@ -0,0 +1,22 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+ from .vellum_video_request import VellumVideoRequest
8
+
9
+
10
+ class NamedScenarioInputVideoVariableValueRequest(UniversalBaseModel):
11
+ type: typing.Literal["VIDEO"] = "VIDEO"
12
+ value: VellumVideoRequest
13
+ name: str
14
+
15
+ if IS_PYDANTIC_V2:
16
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
17
+ else:
18
+
19
+ class Config:
20
+ frozen = True
21
+ smart_union = True
22
+ extra = pydantic.Extra.allow
@@ -0,0 +1,26 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+ from .vellum_audio import VellumAudio
8
+
9
+
10
+ class NamedTestCaseAudioVariableValue(UniversalBaseModel):
11
+ """
12
+ Named Test Case value that is of type AUDIO
13
+ """
14
+
15
+ type: typing.Literal["AUDIO"] = "AUDIO"
16
+ value: VellumAudio
17
+ name: str
18
+
19
+ if IS_PYDANTIC_V2:
20
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
21
+ else:
22
+
23
+ class Config:
24
+ frozen = True
25
+ smart_union = True
26
+ extra = pydantic.Extra.allow
@@ -0,0 +1,26 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+ from .vellum_audio_request import VellumAudioRequest
8
+
9
+
10
+ class NamedTestCaseAudioVariableValueRequest(UniversalBaseModel):
11
+ """
12
+ Named Test Case value that is of type AUDIO
13
+ """
14
+
15
+ type: typing.Literal["AUDIO"] = "AUDIO"
16
+ value: VellumAudioRequest
17
+ name: str
18
+
19
+ if IS_PYDANTIC_V2:
20
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
21
+ else:
22
+
23
+ class Config:
24
+ frozen = True
25
+ smart_union = True
26
+ extra = pydantic.Extra.allow
@@ -0,0 +1,22 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+ from .vellum_document import VellumDocument
8
+
9
+
10
+ class NamedTestCaseDocumentVariableValue(UniversalBaseModel):
11
+ type: typing.Literal["DOCUMENT"] = "DOCUMENT"
12
+ value: VellumDocument
13
+ name: str
14
+
15
+ if IS_PYDANTIC_V2:
16
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
17
+ else:
18
+
19
+ class Config:
20
+ frozen = True
21
+ smart_union = True
22
+ extra = pydantic.Extra.allow
@@ -0,0 +1,22 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+ from .vellum_document_request import VellumDocumentRequest
8
+
9
+
10
+ class NamedTestCaseDocumentVariableValueRequest(UniversalBaseModel):
11
+ type: typing.Literal["DOCUMENT"] = "DOCUMENT"
12
+ value: VellumDocumentRequest
13
+ name: str
14
+
15
+ if IS_PYDANTIC_V2:
16
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
17
+ else:
18
+
19
+ class Config:
20
+ frozen = True
21
+ smart_union = True
22
+ extra = pydantic.Extra.allow
@@ -0,0 +1,22 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+ from .vellum_image import VellumImage
8
+
9
+
10
+ class NamedTestCaseImageVariableValue(UniversalBaseModel):
11
+ type: typing.Literal["IMAGE"] = "IMAGE"
12
+ value: VellumImage
13
+ name: str
14
+
15
+ if IS_PYDANTIC_V2:
16
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
17
+ else:
18
+
19
+ class Config:
20
+ frozen = True
21
+ smart_union = True
22
+ extra = pydantic.Extra.allow
@@ -0,0 +1,22 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+ from .vellum_image_request import VellumImageRequest
8
+
9
+
10
+ class NamedTestCaseImageVariableValueRequest(UniversalBaseModel):
11
+ type: typing.Literal["IMAGE"] = "IMAGE"
12
+ value: VellumImageRequest
13
+ name: str
14
+
15
+ if IS_PYDANTIC_V2:
16
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
17
+ else:
18
+
19
+ class Config:
20
+ frozen = True
21
+ smart_union = True
22
+ extra = pydantic.Extra.allow
@@ -3,13 +3,17 @@
3
3
  import typing
4
4
 
5
5
  from .named_test_case_array_variable_value import NamedTestCaseArrayVariableValue
6
+ from .named_test_case_audio_variable_value import NamedTestCaseAudioVariableValue
6
7
  from .named_test_case_chat_history_variable_value import NamedTestCaseChatHistoryVariableValue
8
+ from .named_test_case_document_variable_value import NamedTestCaseDocumentVariableValue
7
9
  from .named_test_case_error_variable_value import NamedTestCaseErrorVariableValue
8
10
  from .named_test_case_function_call_variable_value import NamedTestCaseFunctionCallVariableValue
11
+ from .named_test_case_image_variable_value import NamedTestCaseImageVariableValue
9
12
  from .named_test_case_json_variable_value import NamedTestCaseJsonVariableValue
10
13
  from .named_test_case_number_variable_value import NamedTestCaseNumberVariableValue
11
14
  from .named_test_case_search_results_variable_value import NamedTestCaseSearchResultsVariableValue
12
15
  from .named_test_case_string_variable_value import NamedTestCaseStringVariableValue
16
+ from .named_test_case_video_variable_value import NamedTestCaseVideoVariableValue
13
17
 
14
18
  NamedTestCaseVariableValue = typing.Union[
15
19
  NamedTestCaseStringVariableValue,
@@ -20,4 +24,8 @@ NamedTestCaseVariableValue = typing.Union[
20
24
  NamedTestCaseErrorVariableValue,
21
25
  NamedTestCaseFunctionCallVariableValue,
22
26
  NamedTestCaseArrayVariableValue,
27
+ NamedTestCaseAudioVariableValue,
28
+ NamedTestCaseVideoVariableValue,
29
+ NamedTestCaseImageVariableValue,
30
+ NamedTestCaseDocumentVariableValue,
23
31
  ]