vellum-ai 0.12.13__py3-none-any.whl → 0.12.15__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- vellum/__init__.py +9 -0
- vellum/client/__init__.py +2 -6
- vellum/client/core/client_wrapper.py +1 -1
- vellum/client/environment.py +3 -3
- vellum/client/resources/ad_hoc/client.py +2 -6
- vellum/client/resources/container_images/client.py +0 -8
- vellum/client/resources/metric_definitions/client.py +2 -6
- vellum/client/resources/workflows/client.py +8 -8
- vellum/client/types/__init__.py +6 -0
- vellum/client/types/audio_prompt_block.py +29 -0
- vellum/client/types/function_call_prompt_block.py +30 -0
- vellum/client/types/image_prompt_block.py +29 -0
- vellum/client/types/prompt_block.py +12 -1
- vellum/client/types/workflow_push_response.py +1 -0
- vellum/plugins/pydantic.py +12 -2
- vellum/types/audio_prompt_block.py +3 -0
- vellum/types/function_call_prompt_block.py +3 -0
- vellum/types/image_prompt_block.py +3 -0
- vellum/workflows/descriptors/tests/test_utils.py +3 -0
- vellum/workflows/nodes/bases/base.py +4 -1
- vellum/workflows/nodes/bases/base_adornment_node.py +75 -0
- vellum/workflows/nodes/bases/tests/test_base_node.py +13 -0
- vellum/workflows/nodes/core/inline_subworkflow_node/node.py +2 -0
- vellum/workflows/nodes/core/map_node/node.py +49 -45
- vellum/workflows/nodes/core/retry_node/node.py +10 -45
- vellum/workflows/nodes/core/try_node/node.py +12 -84
- vellum/workflows/nodes/utils.py +44 -1
- vellum/workflows/references/constant.py +21 -0
- vellum/workflows/runner/runner.py +4 -3
- vellum/workflows/types/cycle_map.py +34 -0
- vellum/workflows/workflows/base.py +4 -11
- {vellum_ai-0.12.13.dist-info → vellum_ai-0.12.15.dist-info}/METADATA +2 -2
- {vellum_ai-0.12.13.dist-info → vellum_ai-0.12.15.dist-info}/RECORD +52 -39
- vellum_cli/config.py +4 -0
- vellum_cli/pull.py +20 -5
- vellum_cli/push.py +7 -0
- vellum_cli/tests/test_pull.py +19 -1
- vellum_ee/workflows/display/nodes/vellum/__init__.py +2 -0
- vellum_ee/workflows/display/nodes/vellum/base_node.py +18 -0
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_conditional_node_serialization.py +10 -41
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_error_node_serialization.py +4 -14
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_generic_node_serialization.py +174 -0
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_inline_subworkflow_serialization.py +2 -10
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_map_node_serialization.py +2 -10
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_merge_node_serialization.py +5 -19
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_try_node_serialization.py +2 -8
- vellum_ee/workflows/display/tests/workflow_serialization/test_complex_terminal_node_serialization.py +14 -25
- vellum_ee/workflows/server/__init__.py +0 -0
- vellum_ee/workflows/server/virtual_file_loader.py +42 -0
- {vellum_ai-0.12.13.dist-info → vellum_ai-0.12.15.dist-info}/LICENSE +0 -0
- {vellum_ai-0.12.13.dist-info → vellum_ai-0.12.15.dist-info}/WHEEL +0 -0
- {vellum_ai-0.12.13.dist-info → vellum_ai-0.12.15.dist-info}/entry_points.txt +0 -0
@@ -2,16 +2,16 @@ vellum_cli/CONTRIBUTING.md,sha256=FtDC7BGxSeMnwCXAUssFsAIElXtmJE-O5Z7BpolcgvI,29
|
|
2
2
|
vellum_cli/README.md,sha256=2NudRoLzWxNKqnuVy1JuQ7DerIaxWGYkrH8kMd-asIE,90
|
3
3
|
vellum_cli/__init__.py,sha256=iims87aL6HbwggCAh8JfLBNf3C7tN3TGDmlg7V5W9Lg,8506
|
4
4
|
vellum_cli/aliased_group.py,sha256=ugW498j0yv4ALJ8vS9MsO7ctDW7Jlir9j6nE_uHAP8c,3363
|
5
|
-
vellum_cli/config.py,sha256=
|
5
|
+
vellum_cli/config.py,sha256=998IZbvkrw2avjbvs8bw6NrbEgGz5UBKRbvKAcastJg,5493
|
6
6
|
vellum_cli/image_push.py,sha256=SJwhwWJsLjwGNezNVd_oCVpFMfPsAB3dfLWmriZZUtw,4419
|
7
7
|
vellum_cli/logger.py,sha256=PuRFa0WCh4sAGFS5aqWB0QIYpS6nBWwPJrIXpWxugV4,1022
|
8
|
-
vellum_cli/pull.py,sha256=
|
9
|
-
vellum_cli/push.py,sha256=
|
8
|
+
vellum_cli/pull.py,sha256=hYQBe2_-Y4Ieh_Jo54EwBUpqPYq6UYitUBPgqyOVba0,7499
|
9
|
+
vellum_cli/push.py,sha256=00VHNlUc41UdO59gwIhSuk3AFL3kDITNQdWCdnYAtxc,5633
|
10
10
|
vellum_cli/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
11
11
|
vellum_cli/tests/conftest.py,sha256=eFGwBxib3Nki830lIFintB0b6r4x8T_KMnmzhlTY5x0,1337
|
12
12
|
vellum_cli/tests/test_config.py,sha256=uvKGDc8BoVyT9_H0Z-g8469zVxomn6Oi3Zj-vK7O_wU,2631
|
13
13
|
vellum_cli/tests/test_main.py,sha256=qDZG-aQauPwBwM6A2DIu1494n47v3pL28XakTbLGZ-k,272
|
14
|
-
vellum_cli/tests/test_pull.py,sha256=
|
14
|
+
vellum_cli/tests/test_pull.py,sha256=6gbASF6ASy5YcdWjOCt6b5K0u2VWsFegdrTWu6sEVKs,19613
|
15
15
|
vellum_cli/tests/test_push.py,sha256=NpwGXuZSzrR7B6hBO1UF9O8im13_LlpSqncVSdzYDiQ,5812
|
16
16
|
vellum_ee/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
17
17
|
vellum_ee/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -26,8 +26,9 @@ vellum_ee/workflows/display/nodes/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5J
|
|
26
26
|
vellum_ee/workflows/display/nodes/tests/test_base_node_display.py,sha256=QqR3Ly0RNrXwOeLdW5nERDFt0gRPf76n1bPES6o5UN4,1093
|
27
27
|
vellum_ee/workflows/display/nodes/types.py,sha256=St1BB6no528OyELGiyRabWao0GGw6mLhstQAvEACbGk,247
|
28
28
|
vellum_ee/workflows/display/nodes/utils.py,sha256=sloya5TpXsnot1HURc9L51INwflRqUzHxRVnCS9Cd-4,973
|
29
|
-
vellum_ee/workflows/display/nodes/vellum/__init__.py,sha256=
|
29
|
+
vellum_ee/workflows/display/nodes/vellum/__init__.py,sha256=_raKY9eKi_OvIFn6nGvf9xKSboKtYLHCWaWCwDQFbOc,1567
|
30
30
|
vellum_ee/workflows/display/nodes/vellum/api_node.py,sha256=4SSQGecKWHuoGy5YIGJeOZVHGKwTs_8Y-gf3GvsHb0M,8506
|
31
|
+
vellum_ee/workflows/display/nodes/vellum/base_node.py,sha256=CBE-4tgQhk5zEcQqGQ0R6ZqZbtNuxAaJ5tDD8jDLOfY,672
|
31
32
|
vellum_ee/workflows/display/nodes/vellum/code_execution_node.py,sha256=qrf2Ne8n2aaoa2xgK3ExCEGI9BA-2g1zmvjSHyzCWmQ,4230
|
32
33
|
vellum_ee/workflows/display/nodes/vellum/conditional_node.py,sha256=EtdqJfhYw03PuT2iyJ6mSAZK4RsQqDie_2AnJAtMelk,13625
|
33
34
|
vellum_ee/workflows/display/nodes/vellum/error_node.py,sha256=ygTjSjYDI4DtkxADWub5rhBnRWItMKWF6fezBrgpOKA,1979
|
@@ -51,19 +52,20 @@ vellum_ee/workflows/display/tests/test_vellum_workflow_display.py,sha256=TEg3Qbd
|
|
51
52
|
vellum_ee/workflows/display/tests/workflow_serialization/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
52
53
|
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_api_node_serialization.py,sha256=e__ae2yepB5vlgVT08sr1DDB8pYjax6VQLo5FtRk-nA,17934
|
53
54
|
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_code_execution_node_serialization.py,sha256=F822H2tM3Fvmc2PvunrVCRhtSKQLLpi5y2L1gyJKa78,31576
|
54
|
-
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_conditional_node_serialization.py,sha256=
|
55
|
-
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_error_node_serialization.py,sha256=
|
55
|
+
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_conditional_node_serialization.py,sha256=T8gYYFd4jxOnrNp3Qhz4KH7ifvDPgyZxJJE7G9xt03U,52569
|
56
|
+
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_error_node_serialization.py,sha256=zQ0MYjHeXR7sx4vGWEH6761DEEZ8RYMNr6ocRmLEAG0,6460
|
57
|
+
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_generic_node_serialization.py,sha256=YkgtdubGOl00kusqkADQ-YoTk6dCW83ShoV3DG9Pvuo,6182
|
56
58
|
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_guardrail_node_serialization.py,sha256=vA8cd7PJYhf949OUGeYP_moKtMogSyfHN2Z-qzNQLwM,8294
|
57
|
-
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_inline_subworkflow_serialization.py,sha256=
|
58
|
-
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_map_node_serialization.py,sha256=
|
59
|
-
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_merge_node_serialization.py,sha256=
|
59
|
+
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_inline_subworkflow_serialization.py,sha256=6z7WJ0GLhG7dhilenw7JTq1O8XUVeYmjJHHvgHBtQeU,21725
|
60
|
+
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_map_node_serialization.py,sha256=iFbqXQr-4VyaqAYbldzRS4jt6G8f1Eoa1lTlMgJQO-Y,15599
|
61
|
+
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_merge_node_serialization.py,sha256=7f9sr8nv4pCqdic8E7RHDrbaOiExelIh7CZYAJ8QNus,9649
|
60
62
|
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_prompt_deployment_serialization.py,sha256=NkpgaTbu6nLr3iwgsSNtiHyiNDCUaFakd1JaoW6CC6Y,9489
|
61
63
|
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_search_node_serialization.py,sha256=9R6ELHBn9tsp3cy15q1qp1OByyCxFOVdrM67EwCYY50,12984
|
62
64
|
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_subworkflow_deployment_serialization.py,sha256=8bz0vm_EyQKSjnwS5vqqgnjE9ygvm-CaPKcwCfeOrlo,12704
|
63
65
|
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_templating_node_serialization.py,sha256=6LrGPS7e9CWpjFq2hpliSzP9kDpZ9KqvBNlNO3sq8cs,8063
|
64
66
|
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_terminal_node_serialization.py,sha256=xG8nKA1iKXxUe1fnD2X6qm7cUGW14iq2P-L16zhcKC8,4271
|
65
|
-
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_try_node_serialization.py,sha256=
|
66
|
-
vellum_ee/workflows/display/tests/workflow_serialization/test_complex_terminal_node_serialization.py,sha256=
|
67
|
+
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_try_node_serialization.py,sha256=Y_-JNnPI9nAK6cLWxGaxz9ngo0_Dr0j2VNqreFk4CtE,2659
|
68
|
+
vellum_ee/workflows/display/tests/workflow_serialization/test_complex_terminal_node_serialization.py,sha256=jvjQju7DYUFQ3FffVVA7RXUO0UB7-Fhq_qH7MiT0XcI,8522
|
67
69
|
vellum_ee/workflows/display/types.py,sha256=FSPg3TO8iNE2gnl1vn-nsMfit2V6yeBXW0Igh089A9w,2011
|
68
70
|
vellum_ee/workflows/display/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
69
71
|
vellum_ee/workflows/display/utils/vellum.py,sha256=-cz3xB-_-r1O9TBdLQPBvlpptg9CrZVNQ50QimmJFnA,5032
|
@@ -72,12 +74,14 @@ vellum_ee/workflows/display/workflows/__init__.py,sha256=kapXsC67VJcgSuiBMa86Fde
|
|
72
74
|
vellum_ee/workflows/display/workflows/base_workflow_display.py,sha256=ydAbFMzcY2LURINZbXYm9BAXZdIa3-7rQ86Kupo7qcA,12804
|
73
75
|
vellum_ee/workflows/display/workflows/get_vellum_workflow_display_class.py,sha256=AMxNnTm2z3LIR5rqxoCAfuy37F2FTuSRDVtKUoezO8M,1184
|
74
76
|
vellum_ee/workflows/display/workflows/vellum_workflow_display.py,sha256=GhIviEMDWNw1p8z20ta08T5PeNCVJs5p2hrOX1uyNxg,17066
|
75
|
-
|
77
|
+
vellum_ee/workflows/server/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
78
|
+
vellum_ee/workflows/server/virtual_file_loader.py,sha256=sQQFqn7xI0GfUlypWkVFl-X5ShXTh9bXq8N6qlQvSoE,1452
|
79
|
+
vellum/__init__.py,sha256=wO2rKMEtIjNEb53CstEj-0qkUDiKKmGb_uxXEl-jS8c,35776
|
76
80
|
vellum/client/README.md,sha256=JkCJjmMZl4jrPj46pkmL9dpK4gSzQQmP5I7z4aME4LY,4749
|
77
|
-
vellum/client/__init__.py,sha256=
|
81
|
+
vellum/client/__init__.py,sha256=7yb5YnhvHQUJusa1WyUZcAKGol3z-Lfu07EfD03eEW4,111291
|
78
82
|
vellum/client/core/__init__.py,sha256=SQ85PF84B9MuKnBwHNHWemSGuy-g_515gFYNFhvEE0I,1438
|
79
83
|
vellum/client/core/api_error.py,sha256=RE8LELok2QCjABadECTvtDp7qejA1VmINCh6TbqPwSE,426
|
80
|
-
vellum/client/core/client_wrapper.py,sha256=
|
84
|
+
vellum/client/core/client_wrapper.py,sha256=_Cf6x5JgwTAjYASLdfDJqsyFst0nGh8_6WqQT-DbLkk,1869
|
81
85
|
vellum/client/core/datetime_utils.py,sha256=nBys2IsYrhPdszxGKCNRPSOCwa-5DWOHG95FB8G9PKo,1047
|
82
86
|
vellum/client/core/file.py,sha256=X9IbmkZmB2bB_DpmZAO3crWdXagOakAyn6UCOCImCPg,2322
|
83
87
|
vellum/client/core/http_client.py,sha256=R0pQpCppnEtxccGvXl4uJ76s7ro_65Fo_erlNNLp_AI,19228
|
@@ -87,7 +91,7 @@ vellum/client/core/query_encoder.py,sha256=ekulqNd0j8TgD7ox-Qbz7liqX8-KP9blvT9Ds
|
|
87
91
|
vellum/client/core/remove_none_from_dict.py,sha256=EU9SGgYidWq7SexuJbNs4-PZ-5Bl3Vppd864mS6vQZw,342
|
88
92
|
vellum/client/core/request_options.py,sha256=5cCGt5AEGgtP5xifDl4oVQUmSjlIA8FmRItAlJawM18,1417
|
89
93
|
vellum/client/core/serialization.py,sha256=D9h_t-RQON3-CHWs1C4ESY9B-Yd5d-l5lnTLb_X896g,9601
|
90
|
-
vellum/client/environment.py,sha256=
|
94
|
+
vellum/client/environment.py,sha256=bcAFjoE9XXd7tiysYS90Os669IJmUMZS2JZ_ZQn0Dpg,498
|
91
95
|
vellum/client/errors/__init__.py,sha256=HZB8vVqzDNx0M2uFJ05S5RcGTH95iVDl4v3rQ4xRqSw,343
|
92
96
|
vellum/client/errors/bad_request_error.py,sha256=_EbO8mWqN9kFZPvIap8qa1lL_EWkRcsZe1HKV9GDWJY,264
|
93
97
|
vellum/client/errors/forbidden_error.py,sha256=QO1kKlhClAPES6zsEK7g9pglWnxn3KWaOCAawWOg6Aw,263
|
@@ -95,9 +99,9 @@ vellum/client/errors/internal_server_error.py,sha256=8USCagXyJJ1MOm9snpcXIUt6eNX
|
|
95
99
|
vellum/client/errors/not_found_error.py,sha256=tBVCeBC8n3C811WHRj_n-hs3h8MqwR5gp0vLiobk7W8,262
|
96
100
|
vellum/client/resources/__init__.py,sha256=2B6Oim7PG4IxSUNSzDY1EruQHsaZ7konj3j_WSTydCs,1378
|
97
101
|
vellum/client/resources/ad_hoc/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
|
98
|
-
vellum/client/resources/ad_hoc/client.py,sha256=
|
102
|
+
vellum/client/resources/ad_hoc/client.py,sha256=_liorv4AsoJ55kVu0a5oWB3Qeff0iUKXqoHEIyDWLxc,14173
|
99
103
|
vellum/client/resources/container_images/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
|
100
|
-
vellum/client/resources/container_images/client.py,sha256=
|
104
|
+
vellum/client/resources/container_images/client.py,sha256=g8X3IkWFj43-sJMvirjDrh1-yjOFYV2C9xsGC20Xfjo,15003
|
101
105
|
vellum/client/resources/deployments/__init__.py,sha256=m64MNuPx3qVazOnTNwOY8oEeDrAkNwMJvUEe5xoMDvs,239
|
102
106
|
vellum/client/resources/deployments/client.py,sha256=ssXaHJXBxO_I8JLuijusDVWwsfYadTw3j7o41ICYtrY,38777
|
103
107
|
vellum/client/resources/deployments/types/__init__.py,sha256=29GVdoLOJsADSSSqZwb6CQPeEmPjkKrbsWfru1bemj8,321
|
@@ -114,7 +118,7 @@ vellum/client/resources/folder_entities/client.py,sha256=ep5dnfJmEuEyrOSUftEVwKa
|
|
114
118
|
vellum/client/resources/folder_entities/types/__init__.py,sha256=cHabrupjC-HL3kj-UZ9WdVzqHoQHCu6QsLFB3wlOs7k,212
|
115
119
|
vellum/client/resources/folder_entities/types/folder_entities_list_request_entity_status.py,sha256=nK9b9fRSeCfjn2V2Hifl1IbhFeVsNkoeXJ8rCAPADFg,183
|
116
120
|
vellum/client/resources/metric_definitions/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
|
117
|
-
vellum/client/resources/metric_definitions/client.py,sha256=
|
121
|
+
vellum/client/resources/metric_definitions/client.py,sha256=WfR2f9YtDIdb9yXD_xvJf4pfRr0jVH7QKiiUrPAaeLs,9870
|
118
122
|
vellum/client/resources/ml_models/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
|
119
123
|
vellum/client/resources/ml_models/client.py,sha256=XIYapTEY6GRNr7V0Kjy5bEeKmrhv9ul8qlQY2A5LFqQ,3872
|
120
124
|
vellum/client/resources/sandboxes/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
|
@@ -131,12 +135,12 @@ vellum/client/resources/workflow_deployments/types/workflow_deployments_list_req
|
|
131
135
|
vellum/client/resources/workflow_sandboxes/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
|
132
136
|
vellum/client/resources/workflow_sandboxes/client.py,sha256=3wVQxkjrJ5bIS8fB5FpKXCP2dX38299ghWrJ8YmXxwQ,7435
|
133
137
|
vellum/client/resources/workflows/__init__.py,sha256=Z4xi8Nxd9U4t35FQSepTt1p-ns0X1xtdNs168kUcuBk,153
|
134
|
-
vellum/client/resources/workflows/client.py,sha256=
|
138
|
+
vellum/client/resources/workflows/client.py,sha256=4TOVbNauZ7x84rot3FBo8KKqmjd1mMGKLLXE7BRFEK0,11179
|
135
139
|
vellum/client/resources/workflows/types/__init__.py,sha256=-uFca4ypncAOvfsg6sjD-5C9zWdA5qNvU6m675GphVg,177
|
136
140
|
vellum/client/resources/workflows/types/workflows_pull_request_format.py,sha256=dOWE_jnDnniIJLoeseeCms23aklghyBkoPmBFzcqqZk,165
|
137
141
|
vellum/client/resources/workspace_secrets/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
|
138
142
|
vellum/client/resources/workspace_secrets/client.py,sha256=h7UzXLyTttPq1t-JZGMg1BWxypxJvBGUdqg7KGT7MK4,8027
|
139
|
-
vellum/client/types/__init__.py,sha256=
|
143
|
+
vellum/client/types/__init__.py,sha256=NzUZ2aXt94v1CqcvgIA3vrSUVLDMM39rVeHm3_YqREw,54062
|
140
144
|
vellum/client/types/ad_hoc_execute_prompt_event.py,sha256=bCjujA2XsOgyF3bRZbcEqV2rOIymRgsLoIRtZpB14xg,607
|
141
145
|
vellum/client/types/ad_hoc_expand_meta.py,sha256=1gv-NCsy_6xBYupLvZH979yf2VMdxAU-l0y0ynMKZaw,1331
|
142
146
|
vellum/client/types/ad_hoc_fulfilled_prompt_execution_meta.py,sha256=Bfvf1d_dkmshxRACVM5vcxbH_7AQY23RmrrnPc0ytYY,939
|
@@ -157,6 +161,7 @@ vellum/client/types/array_vellum_value.py,sha256=6ZDizIzijUFX29JD4lnNv1mOH-venLD
|
|
157
161
|
vellum/client/types/array_vellum_value_request.py,sha256=SUIfUTeJTDcsH76mb_PfQv3q0GEUkVr4Gk-dqn2Qr-I,951
|
158
162
|
vellum/client/types/audio_chat_message_content.py,sha256=159ELbeifFmAOvqPKaVSemHytSJ6OR0kOCtspCj4Lmc,725
|
159
163
|
vellum/client/types/audio_chat_message_content_request.py,sha256=0iy-fv_AYp_3FIJUNza3aqCZrnHBsYN-IwQO690qeUk,754
|
164
|
+
vellum/client/types/audio_prompt_block.py,sha256=4gbzRmZfT_crv3YcGTq265LE-HnzB_bxxtK0aUKzEJY,1013
|
160
165
|
vellum/client/types/audio_variable_value.py,sha256=GLZMcQ_2IicejsXhvQz0kVNfIKmjLHqwa27qYOo881Y,747
|
161
166
|
vellum/client/types/audio_vellum_value.py,sha256=8tbwNkj5UtnjZhFIQZ18O233yCt4fK3BhXpR7S5VEt4,745
|
162
167
|
vellum/client/types/audio_vellum_value_request.py,sha256=KnEyYDvTVqNdYcb4v2AGs5nLbcWFSj351_A9nM2ad8Y,774
|
@@ -267,6 +272,7 @@ vellum/client/types/function_call_chat_message_content_request.py,sha256=HVGxHs6
|
|
267
272
|
vellum/client/types/function_call_chat_message_content_value.py,sha256=DHRZYAMc4Y5MerUS_6CIxQBtORftKn-gBx8Skgivm_A,736
|
268
273
|
vellum/client/types/function_call_chat_message_content_value_request.py,sha256=67EZ3qSR9zO5akOgloswRE0Pv8BcjtWhdTRJIwuQU04,743
|
269
274
|
vellum/client/types/function_call_input.py,sha256=Iiqk2-IX6xUI2UnRj3bum5C0OlQn9jRmBwatUzJQQt8,820
|
275
|
+
vellum/client/types/function_call_prompt_block.py,sha256=TFs-XtVM7F-Mg-KwVctOyOcSloVI1vIfsMEeEeLuu7Y,1052
|
270
276
|
vellum/client/types/function_call_request.py,sha256=udGEdk66q1zTpEFE2xq-cu6w_ahMpfQv_9lIey9x1G0,720
|
271
277
|
vellum/client/types/function_call_variable_value.py,sha256=VQKCiEtJsmIK3i7CtFV_2ZpxeX70rqpUViXIvAci8L0,702
|
272
278
|
vellum/client/types/function_call_vellum_value.py,sha256=lLJb-S_-S_UXm6una1BMyCbqLpMhbbMcaVIYNO45h5o,759
|
@@ -291,6 +297,7 @@ vellum/client/types/hkunlp_instructor_xl_vectorizer.py,sha256=0wDZyilAQD3SQYIOBx
|
|
291
297
|
vellum/client/types/hkunlp_instructor_xl_vectorizer_request.py,sha256=Mtg_hl-IIfa134LWBonkxOQ1dhjXkGkz7maDZ57o_d4,832
|
292
298
|
vellum/client/types/image_chat_message_content.py,sha256=1jHmNuLY2kuuSgJCqNmc4wUMw5aot6GLU6_hQ_99r2g,725
|
293
299
|
vellum/client/types/image_chat_message_content_request.py,sha256=b0K1NnY-NneG_V3JAnyr4H2jrPGOC1OQ-OcCmS1GCvE,754
|
300
|
+
vellum/client/types/image_prompt_block.py,sha256=JIcfWZAWYcOm04Y6XjmxPG58SaoXwIjuZwnVypEVahU,1008
|
294
301
|
vellum/client/types/image_variable_value.py,sha256=njfgKYFU5lTCeosINThWziVE_jpuBjcgntZ3xAALT58,750
|
295
302
|
vellum/client/types/image_vellum_value.py,sha256=69XnqE9m-bd3dOdMD73WtfDm_kDrVg-y3fi35akuqsk,748
|
296
303
|
vellum/client/types/image_vellum_value_request.py,sha256=-Q66T8M6fAf9K_v0LeRwZjB_6pkBUSyMUQc6plRRK5E,777
|
@@ -395,7 +402,7 @@ vellum/client/types/pdf_search_result_meta_source_request.py,sha256=nUhaD2Kw1paG
|
|
395
402
|
vellum/client/types/plain_text_prompt_block.py,sha256=cqEN-B4mcvMw_9lBN7FQG8pk9b5LBJ9xpM6PTgkGiqs,930
|
396
403
|
vellum/client/types/price.py,sha256=ewzXDBVLaleuXMVQ-gQ3G1Nl5J2OWOVEMEFfnQIpiTk,610
|
397
404
|
vellum/client/types/processing_failure_reason_enum.py,sha256=R_KIW7TcQejhc-vLhtNf9SdkYADgoZCn4ch4_RRIvsI,195
|
398
|
-
vellum/client/types/prompt_block.py,sha256=
|
405
|
+
vellum/client/types/prompt_block.py,sha256=PK3NMPLg0NSmrr7JpMQcbNzCo8DjTP9xvg6ENd2bJZk,747
|
399
406
|
vellum/client/types/prompt_block_state.py,sha256=BRAzTYARoSU36IVZGWMeeqhl5fgFMXCyhJ8rCbfB-f0,163
|
400
407
|
vellum/client/types/prompt_deployment_expand_meta_request.py,sha256=agsiAaHB6lDoZPlnfJ2nmhB4Ud4EiJJTX05YmduyCPo,1910
|
401
408
|
vellum/client/types/prompt_deployment_input_request.py,sha256=KrT4-Ew2VvTWXEkYQz2oyHn5EDOgrMW7FzRFaPH3ARg,353
|
@@ -609,7 +616,7 @@ vellum/client/types/workflow_output_search_results.py,sha256=r3RRGVVrH2H9NAuxA7q
|
|
609
616
|
vellum/client/types/workflow_output_string.py,sha256=_jclzbQ-Wlf-7FEVTWXhs9h5FWfj4xGpiODZBOzT43w,810
|
610
617
|
vellum/client/types/workflow_push_deployment_config_request.py,sha256=pG6bZtlw7S0TcXtNRQNa7y_2NodZe7dp5SchIrgRUVU,745
|
611
618
|
vellum/client/types/workflow_push_exec_config.py,sha256=6TaVMVqhSOz4DnY46l8axPDtytSioXDl9nHvFXSxH1g,94
|
612
|
-
vellum/client/types/workflow_push_response.py,sha256=
|
619
|
+
vellum/client/types/workflow_push_response.py,sha256=1vUSZmZ1GK1242dAkNwJnJI0rL3pBT3_0HOLLjdiutw,724
|
613
620
|
vellum/client/types/workflow_release_tag_read.py,sha256=S7ekl01oVDetL8R7MdBTb4cDhHN0W0iHGNJ1-ZpY3Tc,1155
|
614
621
|
vellum/client/types/workflow_release_tag_workflow_deployment_history_item.py,sha256=pjWobdk9mZD3Px86rwFHfs_PYJBGXDKQUkxsgNEe6EA,825
|
615
622
|
vellum/client/types/workflow_request_chat_history_input_request.py,sha256=WCZvwDuNS8ylWOOoKD3t7fHLSYB0h-fVCqeDRzqPoPA,898
|
@@ -656,7 +663,7 @@ vellum/evaluations/utils/env.py,sha256=Xj_nxsoU5ox06EOTjRopR4lrigQI6Le6qbWGltYoE
|
|
656
663
|
vellum/evaluations/utils/exceptions.py,sha256=dXMAkzqbHV_AP5FjjbegPlfUE0zQDlpA3qOsoOJUxfg,49
|
657
664
|
vellum/evaluations/utils/paginator.py,sha256=rEED_BJAXAM6tM1yMwHePNzszjq_tTq4NbQvi1jWQ_Q,697
|
658
665
|
vellum/plugins/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
659
|
-
vellum/plugins/pydantic.py,sha256=
|
666
|
+
vellum/plugins/pydantic.py,sha256=dNtZWHo-IdseG52C2RoTanxyTJg0AhPZrH-9lbNqwYg,2604
|
660
667
|
vellum/plugins/utils.py,sha256=U9ZY9KdE3RRvbcG01hXxu9CvfJD6Fo7nJDgcHjQn0FI,606
|
661
668
|
vellum/plugins/vellum_mypy.py,sha256=VC15EzjTsXOb9uF1bky4rcxePP-0epMVmCsLB2z4Dh8,24816
|
662
669
|
vellum/prompts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -731,6 +738,7 @@ vellum/types/array_vellum_value.py,sha256=7_gccasRhEX_dekrfpiM6sqGVXxnT6f5sLB904
|
|
731
738
|
vellum/types/array_vellum_value_request.py,sha256=-tnyAoCArVJRaTQFPDqgTHuzec1UgWpXqjEbUbhZbyI,164
|
732
739
|
vellum/types/audio_chat_message_content.py,sha256=beZpZqUrJQHis0bkhiPnJO9qbl8c2DZyv74dd1OZf8o,164
|
733
740
|
vellum/types/audio_chat_message_content_request.py,sha256=ySZZ8IARXUocjczLZ27CHEmRX3uY2UhBfTzaOE8CeRo,172
|
741
|
+
vellum/types/audio_prompt_block.py,sha256=zpQcvY3Fic82mPlPyOLCjZBBq0dFyCyKuGRkYNDWQko,156
|
734
742
|
vellum/types/audio_variable_value.py,sha256=lDlablFV78mXIRI7IJU1Pyj4SsACLTnwnRBw0UJO3RU,158
|
735
743
|
vellum/types/audio_vellum_value.py,sha256=-9HkLXeBD-IMh_TwKdmQVfAD_F0et2gYKT2ykb_jaAM,156
|
736
744
|
vellum/types/audio_vellum_value_request.py,sha256=YuwrbVZK1EuUKkir5H9-ipeLTPfSF8h6Yy5lS_pAZg4,164
|
@@ -841,6 +849,7 @@ vellum/types/function_call_chat_message_content_request.py,sha256=Pe-BkV1-7hTxkY
|
|
841
849
|
vellum/types/function_call_chat_message_content_value.py,sha256=KETBajaPRZGjpNc4H09C0xauVhKkf-mDy6yPFmqKFn0,178
|
842
850
|
vellum/types/function_call_chat_message_content_value_request.py,sha256=nVlQJdvM5mo4z52l8GodiPvoFydUv6X35s83pEvI7Nk,186
|
843
851
|
vellum/types/function_call_input.py,sha256=Ec31jaPDp9ljRe_XBSH0HwtxdJUUNkbK3kBscOhI6UY,157
|
852
|
+
vellum/types/function_call_prompt_block.py,sha256=n4gHkUbUsihmlxN-bt_4B-CUpFZjl7Ammusqv_LB648,164
|
844
853
|
vellum/types/function_call_request.py,sha256=Dz9jMUgEjX0Bhv-amoRLKR_oPlq_dcWcr0VFGA0Yi70,159
|
845
854
|
vellum/types/function_call_variable_value.py,sha256=61qbXVPjRivofXeKmdP-3dLhH1tkzKAorxBQlBft_-U,166
|
846
855
|
vellum/types/function_call_vellum_value.py,sha256=IEFGHcyjmksr0fbttwF8URV75jGRbs8WCpg5Kw-PEW4,164
|
@@ -865,6 +874,7 @@ vellum/types/hkunlp_instructor_xl_vectorizer.py,sha256=JRH8sgsDEfVUF9H-83eoirSU4
|
|
865
874
|
vellum/types/hkunlp_instructor_xl_vectorizer_request.py,sha256=zb2L8_LUSxtOQOWjr9tDU_mK2a_azmKO8DqNQi52EQM,177
|
866
875
|
vellum/types/image_chat_message_content.py,sha256=hNVlrv_xoUm1-euBK5DkZDInoMfL0eXb4Klx3juCWYU,164
|
867
876
|
vellum/types/image_chat_message_content_request.py,sha256=-_twjYRyGrsbc79xyd0vZ2xkt3Z4rsjJb2Ts0xRX-dY,172
|
877
|
+
vellum/types/image_prompt_block.py,sha256=K5eXoltiu3ifZqeLtNUTz6DUKu-aqnK0hUyWNvPGByg,156
|
868
878
|
vellum/types/image_variable_value.py,sha256=AqrNSw5yXLkQ3c3rsxhnQEenUoxyx_NXfiN26lwBNBg,158
|
869
879
|
vellum/types/image_vellum_value.py,sha256=aCrL399s9TeVKI5dvF7_qus43IgGYoy1erUqOk_iHB8,156
|
870
880
|
vellum/types/image_vellum_value_request.py,sha256=dEXmHRhRYDhWuUMHJ0VjwUc5RLVBCEeoW-QSBKc8LEg,164
|
@@ -1218,7 +1228,7 @@ vellum/workflows/constants.py,sha256=Z0W4YlqfSlSgWC11PrVUPs6ZOBeIaQ78E_90J1hohiw
|
|
1218
1228
|
vellum/workflows/context.py,sha256=R8qdsFbD_0p7B6PWnyvSrZ_aOgMtGw-_uk0P0UAmwLA,1230
|
1219
1229
|
vellum/workflows/descriptors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1220
1230
|
vellum/workflows/descriptors/base.py,sha256=BhYd5O9_3fjS_Vet9Q2_kyUJCySHGVM_HWaOBtctkNA,14320
|
1221
|
-
vellum/workflows/descriptors/tests/test_utils.py,sha256=
|
1231
|
+
vellum/workflows/descriptors/tests/test_utils.py,sha256=1CFx6Yejrg_AlwSO6kqGjuav4-ZubCLN0u4NtR3KgCk,4510
|
1222
1232
|
vellum/workflows/descriptors/utils.py,sha256=lO_dbr5g3PXpHPtVBkdguAK4-1qayZ7RXjl3BgAhrMM,3795
|
1223
1233
|
vellum/workflows/edges/__init__.py,sha256=wSkmAnz9xyi4vZwtDbKxwlplt2skD7n3NsxkvR_pUus,50
|
1224
1234
|
vellum/workflows/edges/edge.py,sha256=N0SnY3gKVuxImPAdCbPMPlHJIXbkQ3fwq_LbJRvVMFc,677
|
@@ -1273,29 +1283,30 @@ vellum/workflows/inputs/base.py,sha256=1kMgr0WqCYdWUqgFvgSoAMw2067FAlgwhGXLgbIOr
|
|
1273
1283
|
vellum/workflows/logging.py,sha256=_a217XogktV4Ncz6xKFz7WfYmZAzkfVRVuC0rWob8ls,437
|
1274
1284
|
vellum/workflows/nodes/__init__.py,sha256=aVdQVv7Y3Ro3JlqXGpxwaU2zrI06plDHD2aumH5WUIs,1157
|
1275
1285
|
vellum/workflows/nodes/bases/__init__.py,sha256=cniHuz_RXdJ4TQgD8CBzoiKDiPxg62ErdVpCbWICX64,58
|
1276
|
-
vellum/workflows/nodes/bases/base.py,sha256=
|
1286
|
+
vellum/workflows/nodes/bases/base.py,sha256=RREFzYPxemKUvQc0NfnwQmby-p_BE3O-TbVWKbQFdfs,14271
|
1287
|
+
vellum/workflows/nodes/bases/base_adornment_node.py,sha256=eFTgsPCYb3eyGS0-kw7C6crFnwFx437R5wh9-8bWYts,2905
|
1277
1288
|
vellum/workflows/nodes/bases/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1278
|
-
vellum/workflows/nodes/bases/tests/test_base_node.py,sha256=
|
1289
|
+
vellum/workflows/nodes/bases/tests/test_base_node.py,sha256=51CueFVty9XYASC0rKr1cXWejho5WElmhfhp6cCONy0,3811
|
1279
1290
|
vellum/workflows/nodes/core/__init__.py,sha256=5zDMCmyt1v0HTJzlUBwq3U9L825yZGZhT9JL18-mRR4,455
|
1280
1291
|
vellum/workflows/nodes/core/error_node/__init__.py,sha256=g7RRnlHhqu4qByfLjBwCunmgGA8dI5gNsjS3h6TwlSI,60
|
1281
1292
|
vellum/workflows/nodes/core/error_node/node.py,sha256=MFHU5vITYSK-L9CuMZ49In2ZeNLWnhZD0f8r5dWvb5Y,1270
|
1282
1293
|
vellum/workflows/nodes/core/inline_subworkflow_node/__init__.py,sha256=nKNEH1QTl-1PcvmYoqSWEl0-t6gAur8GLTXHzklRQfM,84
|
1283
|
-
vellum/workflows/nodes/core/inline_subworkflow_node/node.py,sha256=
|
1294
|
+
vellum/workflows/nodes/core/inline_subworkflow_node/node.py,sha256=zyKvpeNoD2D7vtGbNuvqXUxVgtkmSbk1XQExwX9KUf8,3602
|
1284
1295
|
vellum/workflows/nodes/core/inline_subworkflow_node/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1285
1296
|
vellum/workflows/nodes/core/inline_subworkflow_node/tests/test_node.py,sha256=99LLPgHMqohGL-G4KqOSjeVlDR_FH8Rv1gtRii85MC4,1143
|
1286
1297
|
vellum/workflows/nodes/core/map_node/__init__.py,sha256=MXpZYmGfhsMJHqqlpd64WiJRtbAtAMQz-_3fCU_cLV0,56
|
1287
|
-
vellum/workflows/nodes/core/map_node/node.py,sha256=
|
1298
|
+
vellum/workflows/nodes/core/map_node/node.py,sha256=DTMoGqtR8MyfZ8jy8apNoN-4KFFFHywo87pfpqyBVEw,7322
|
1288
1299
|
vellum/workflows/nodes/core/map_node/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1289
1300
|
vellum/workflows/nodes/core/map_node/tests/test_node.py,sha256=RHSZs7t6mW3UWvRrXnHZqaXVdRT2ZquOK_YHJ-gzXsU,1871
|
1290
1301
|
vellum/workflows/nodes/core/retry_node/__init__.py,sha256=lN2bIy5a3Uzhs_FYCrooADyYU6ZGShtvLKFWpelwPvo,60
|
1291
|
-
vellum/workflows/nodes/core/retry_node/node.py,sha256=
|
1302
|
+
vellum/workflows/nodes/core/retry_node/node.py,sha256=lAABgo2E_pWkzOYUBGzC1SnywgwtGuJojwT602fKCUc,3153
|
1292
1303
|
vellum/workflows/nodes/core/retry_node/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1293
1304
|
vellum/workflows/nodes/core/retry_node/tests/test_node.py,sha256=QXTnHwmJHISxXjvZMeuuEo0iVugVMJyaJoggI8yKXfI,3132
|
1294
1305
|
vellum/workflows/nodes/core/templating_node/__init__.py,sha256=GmyuYo81_A1_Bz6id69ozVFS6FKiuDsZTiA3I6MaL2U,70
|
1295
1306
|
vellum/workflows/nodes/core/templating_node/node.py,sha256=N-NOBd-UY91qO9orCcW4KEbhNvDQivZPA-PCxs-M0RM,4204
|
1296
1307
|
vellum/workflows/nodes/core/templating_node/tests/test_templating_node.py,sha256=nW_kyJ9RAqz45_kJE_rlhOOvbV4OO3hecP-P-ydQpkw,2845
|
1297
1308
|
vellum/workflows/nodes/core/try_node/__init__.py,sha256=JVD4DrldTIqFQQFrubs9KtWCCc0YCAc7Fzol5ZWIWeM,56
|
1298
|
-
vellum/workflows/nodes/core/try_node/node.py,sha256=
|
1309
|
+
vellum/workflows/nodes/core/try_node/node.py,sha256=_lTmSYCiz7lktaxpNWUCglNi8_5Sfy8Rpiov5SeKVMw,3920
|
1299
1310
|
vellum/workflows/nodes/core/try_node/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1300
1311
|
vellum/workflows/nodes/core/try_node/tests/test_node.py,sha256=Wc2kLl-MkffsBxl3IiFaqLd16e2Iosxhk7qBnojPvQg,4092
|
1301
1312
|
vellum/workflows/nodes/displayable/__init__.py,sha256=6F_4DlSwvHuilWnIalp8iDjjDXl0Nmz4QzJV2PYe5RI,1023
|
@@ -1346,7 +1357,7 @@ vellum/workflows/nodes/experimental/README.md,sha256=eF6DfIL8t-HbF9-mcofOMymKrra
|
|
1346
1357
|
vellum/workflows/nodes/experimental/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1347
1358
|
vellum/workflows/nodes/experimental/openai_chat_completion_node/__init__.py,sha256=lsyD9laR9p7kx5-BXGH2gUTM242UhKy8SMV0SR6S2iE,90
|
1348
1359
|
vellum/workflows/nodes/experimental/openai_chat_completion_node/node.py,sha256=1EGeiaT-Zoo6pttQFKKBcdf3dmhAbjKGaErYD5FFwlc,10185
|
1349
|
-
vellum/workflows/nodes/utils.py,sha256=
|
1360
|
+
vellum/workflows/nodes/utils.py,sha256=chSsmKe_BsvMIJpzSxO5TWYlr3sAuxiwkfB5azkuN5Q,2715
|
1350
1361
|
vellum/workflows/outputs/__init__.py,sha256=AyZ4pRh_ACQIGvkf0byJO46EDnSix1ZCAXfvh-ms1QE,94
|
1351
1362
|
vellum/workflows/outputs/base.py,sha256=a7W6rNSDSawwGAXYjNTF2iHb9lnZu7WFSOagZIyy__k,7976
|
1352
1363
|
vellum/workflows/ports/__init__.py,sha256=bZuMt-R7z5bKwpu4uPW7LlJeePOQWmCcDSXe5frUY5g,101
|
@@ -1354,6 +1365,7 @@ vellum/workflows/ports/node_ports.py,sha256=g4A-8iUAvEJSkaWppbvzAR8XU02R9U-qLN4r
|
|
1354
1365
|
vellum/workflows/ports/port.py,sha256=rc3GB7dDQCUs0IbY08a92-31YzJHQgBeww13brSJ2Js,3172
|
1355
1366
|
vellum/workflows/ports/utils.py,sha256=pEjVNJKw9LhD_cFN-o0MWBOW2ejno7jv26qqzjLxwS4,1662
|
1356
1367
|
vellum/workflows/references/__init__.py,sha256=glHFC1VfXmcbNvH5VzFbkT03d8_D7MMcvEcsUBrzLIs,591
|
1368
|
+
vellum/workflows/references/constant.py,sha256=6yUT4q1sMj1hkI_tzzQ9AYcmeeDYFUNCqUq_W2DN0S8,540
|
1357
1369
|
vellum/workflows/references/environment_variable.py,sha256=7FFtiKfc4eyVkkfUbhc666OBNDqvFlMoNQEYmGpEVVE,661
|
1358
1370
|
vellum/workflows/references/execution_count.py,sha256=JILHqt8ELdc9ct-WsVCA5X-rKiP1rmJODw-XTf4kpHI,722
|
1359
1371
|
vellum/workflows/references/external_input.py,sha256=XHugauKYvAmsGoFnjgJh00FcXjSMIqBvRun_CZuJD64,1662
|
@@ -1367,7 +1379,7 @@ vellum/workflows/references/workflow_input.py,sha256=86IuhlBz-9cGxeUzizyjdp482aj
|
|
1367
1379
|
vellum/workflows/resolvers/__init__.py,sha256=eH6hTvZO4IciDaf_cf7aM2vs-DkBDyJPycOQevJxQnI,82
|
1368
1380
|
vellum/workflows/resolvers/base.py,sha256=WHra9LRtlTuB1jmuNqkfVE2JUgB61Cyntn8f0b0WZg4,411
|
1369
1381
|
vellum/workflows/runner/__init__.py,sha256=i1iG5sAhtpdsrlvwgH6B-m49JsINkiWyPWs8vyT-bqM,72
|
1370
|
-
vellum/workflows/runner/runner.py,sha256=
|
1382
|
+
vellum/workflows/runner/runner.py,sha256=wS9GulRM8f77sQ9-FlDpHjQJgoMLt0cTDRSTpucTyr0,28139
|
1371
1383
|
vellum/workflows/sandbox.py,sha256=GVJzVjMuYzOBnSrboB0_6MMRZWBluAyQ2o7syeaeBd0,2235
|
1372
1384
|
vellum/workflows/state/__init__.py,sha256=yUUdR-_Vl7UiixNDYQZ-GEM_kJI9dnOia75TtuNEsnE,60
|
1373
1385
|
vellum/workflows/state/base.py,sha256=jpSzF1OQd3-fqi6dMGlNsQl-7JnJxCdzWIigmX8Wz-I,14425
|
@@ -1380,6 +1392,7 @@ vellum/workflows/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3
|
|
1380
1392
|
vellum/workflows/tests/test_sandbox.py,sha256=JKwaluI-lODQo7Ek9sjDstjL_WTdSqUlVik6ZVTfVOA,1826
|
1381
1393
|
vellum/workflows/types/__init__.py,sha256=KxUTMBGzuRCfiMqzzsykOeVvrrkaZmTTo1a7SLu8gRM,68
|
1382
1394
|
vellum/workflows/types/core.py,sha256=D2NcSBwGgWj_mtXZqe3KnEQcb5qd5HzqAwnxwmlCfCw,899
|
1395
|
+
vellum/workflows/types/cycle_map.py,sha256=-ZMQsKzZBpCi0bchJrkuN_dtCFuz9uFABy7Fq2PI58E,928
|
1383
1396
|
vellum/workflows/types/generics.py,sha256=ZkfoRhWs042i5IjA99v2wIhmh1u-Wieo3LzosgGWJVk,600
|
1384
1397
|
vellum/workflows/types/stack.py,sha256=RDSGLkcV612ge8UuAH9TZiEGXxJt0Av2-H5rfzrTVVI,1014
|
1385
1398
|
vellum/workflows/types/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -1397,10 +1410,10 @@ vellum/workflows/utils/uuids.py,sha256=DFzPv9RCvsKhvdTEIQyfSek2A31D6S_QcmeLPbgrg
|
|
1397
1410
|
vellum/workflows/utils/vellum_variables.py,sha256=g5xHYB8etfHE32ek19nP6Anf8NyjhmUtOwO2KmQ5xZU,3111
|
1398
1411
|
vellum/workflows/vellum_client.py,sha256=ODrq_TSl-drX2aezXegf7pizpWDVJuTXH-j6528t75s,683
|
1399
1412
|
vellum/workflows/workflows/__init__.py,sha256=KY45TqvavCCvXIkyCFMEc0dc6jTMOUci93U2DUrlZYc,66
|
1400
|
-
vellum/workflows/workflows/base.py,sha256=
|
1413
|
+
vellum/workflows/workflows/base.py,sha256=qdZYQq-jjdr0fYT0FCfmFuI5ypE3pANupgYcOqqML0o,18884
|
1401
1414
|
vellum/workflows/workflows/event_filters.py,sha256=GSxIgwrX26a1Smfd-6yss2abGCnadGsrSZGa7t7LpJA,2008
|
1402
|
-
vellum_ai-0.12.
|
1403
|
-
vellum_ai-0.12.
|
1404
|
-
vellum_ai-0.12.
|
1405
|
-
vellum_ai-0.12.
|
1406
|
-
vellum_ai-0.12.
|
1415
|
+
vellum_ai-0.12.15.dist-info/LICENSE,sha256=hOypcdt481qGNISA784bnAGWAE6tyIf9gc2E78mYC3E,1574
|
1416
|
+
vellum_ai-0.12.15.dist-info/METADATA,sha256=vXfKfASRTSAbS23j4YTI7V_hDRYglGisCWULazWGJfo,5168
|
1417
|
+
vellum_ai-0.12.15.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
1418
|
+
vellum_ai-0.12.15.dist-info/entry_points.txt,sha256=HCH4yc_V3J_nDv3qJzZ_nYS8llCHZViCDP1ejgCc5Ak,42
|
1419
|
+
vellum_ai-0.12.15.dist-info/RECORD,,
|
vellum_cli/config.py
CHANGED
@@ -35,6 +35,8 @@ class WorkflowConfig(UniversalBaseModel):
|
|
35
35
|
workflow_sandbox_id: Optional[str] = None
|
36
36
|
ignore: Optional[Union[str, List[str]]] = None
|
37
37
|
deployments: List[WorkflowDeploymentConfig] = field(default_factory=list)
|
38
|
+
container_image_name: Optional[str] = None
|
39
|
+
container_image_tag: Optional[str] = None
|
38
40
|
|
39
41
|
def merge(self, other: "WorkflowConfig") -> "WorkflowConfig":
|
40
42
|
self_deployment_by_id = {
|
@@ -68,6 +70,8 @@ class WorkflowConfig(UniversalBaseModel):
|
|
68
70
|
workflow_sandbox_id=self.workflow_sandbox_id or other.workflow_sandbox_id,
|
69
71
|
ignore=self.ignore or other.ignore,
|
70
72
|
deployments=merged_deployments,
|
73
|
+
container_image_tag=self.container_image_tag or other.container_image_tag,
|
74
|
+
container_image_name=self.container_image_name or other.container_image_name,
|
71
75
|
)
|
72
76
|
|
73
77
|
|
vellum_cli/pull.py
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
import io
|
2
|
+
import json
|
2
3
|
import os
|
3
4
|
from pathlib import Path
|
4
5
|
from uuid import UUID
|
@@ -14,6 +15,7 @@ from vellum_cli.config import VellumCliConfig, WorkflowConfig, load_vellum_cli_c
|
|
14
15
|
from vellum_cli.logger import load_cli_logger
|
15
16
|
|
16
17
|
ERROR_LOG_FILE_NAME = "error.log"
|
18
|
+
METADATA_FILE_NAME = "metadata.json"
|
17
19
|
|
18
20
|
|
19
21
|
def _is_valid_uuid(val: Union[str, UUID, None]) -> bool:
|
@@ -109,6 +111,7 @@ def pull_command(
|
|
109
111
|
logger.info(f"Pulling workflow into {workflow_config.module}")
|
110
112
|
client = create_vellum_client()
|
111
113
|
query_parameters = {}
|
114
|
+
|
112
115
|
if include_json:
|
113
116
|
query_parameters["include_json"] = include_json
|
114
117
|
if exclude_code:
|
@@ -128,6 +131,8 @@ def pull_command(
|
|
128
131
|
|
129
132
|
target_dir = os.path.join(os.getcwd(), *workflow_config.module.split("."))
|
130
133
|
error_content = ""
|
134
|
+
metadata_json: Optional[dict] = None
|
135
|
+
|
131
136
|
with zipfile.ZipFile(zip_buffer) as zip_file:
|
132
137
|
# Delete files in target_dir that aren't in the zip file
|
133
138
|
if os.path.exists(target_dir):
|
@@ -152,16 +157,26 @@ def pull_command(
|
|
152
157
|
os.remove(file_path)
|
153
158
|
|
154
159
|
for file_name in zip_file.namelist():
|
155
|
-
|
156
|
-
os.makedirs(os.path.dirname(target_file), exist_ok=True)
|
157
|
-
with zip_file.open(file_name) as source, open(target_file, "w") as target:
|
160
|
+
with zip_file.open(file_name) as source:
|
158
161
|
content = source.read().decode("utf-8")
|
159
162
|
if file_name == ERROR_LOG_FILE_NAME:
|
160
163
|
error_content = content
|
161
164
|
continue
|
165
|
+
if file_name == METADATA_FILE_NAME:
|
166
|
+
metadata_json = json.loads(content)
|
167
|
+
continue
|
162
168
|
|
163
|
-
|
164
|
-
|
169
|
+
target_file = os.path.join(target_dir, file_name)
|
170
|
+
os.makedirs(os.path.dirname(target_file), exist_ok=True)
|
171
|
+
with open(target_file, "w") as target:
|
172
|
+
logger.info(f"Writing to {target_file}...")
|
173
|
+
target.write(content)
|
174
|
+
|
175
|
+
if metadata_json:
|
176
|
+
workflow_config.container_image_name = metadata_json.get("runner_config", {}).get("container_image_name")
|
177
|
+
workflow_config.container_image_tag = metadata_json.get("runner_config", {}).get("container_image_tag")
|
178
|
+
if workflow_config.container_image_name and not workflow_config.container_image_tag:
|
179
|
+
workflow_config.container_image_tag = "latest"
|
165
180
|
|
166
181
|
if include_json:
|
167
182
|
logger.warning(
|
vellum_cli/push.py
CHANGED
@@ -51,8 +51,15 @@ def push_command(
|
|
51
51
|
workflow = BaseWorkflow.load_from_module(workflow_config.module)
|
52
52
|
workflow_display = get_workflow_display(base_display_class=VellumWorkflowDisplay, workflow_class=workflow)
|
53
53
|
exec_config = workflow_display.serialize()
|
54
|
+
|
55
|
+
container_tag = workflow_config.container_image_tag
|
56
|
+
if workflow_config.container_image_name and not workflow_config.container_image_tag:
|
57
|
+
container_tag = "latest"
|
58
|
+
|
54
59
|
exec_config["runner_config"] = {
|
55
60
|
"sdk_version": metadata.version("vellum-ai"),
|
61
|
+
"container_image_tag": container_tag,
|
62
|
+
"container_image_name": workflow_config.container_image_name,
|
56
63
|
}
|
57
64
|
|
58
65
|
label = snake_to_title_case(workflow_config.module.split(".")[-1])
|
vellum_cli/tests/test_pull.py
CHANGED
@@ -130,6 +130,8 @@ def test_pull__sandbox_id_with_no_config(vellum_client):
|
|
130
130
|
"workflow_sandbox_id": "87654321-0000-0000-0000-000000000000",
|
131
131
|
"ignore": None,
|
132
132
|
"deployments": [],
|
133
|
+
"container_image_tag": None,
|
134
|
+
"container_image_name": None,
|
133
135
|
}
|
134
136
|
],
|
135
137
|
}
|
@@ -204,6 +206,8 @@ def test_pull__workflow_deployment_with_no_config(vellum_client):
|
|
204
206
|
"workflow_sandbox_id": None,
|
205
207
|
"ignore": None,
|
206
208
|
"deployments": [],
|
209
|
+
"container_image_tag": None,
|
210
|
+
"container_image_name": None,
|
207
211
|
}
|
208
212
|
],
|
209
213
|
}
|
@@ -407,7 +411,17 @@ def test_pull__sandbox_id_with_other_workflow_deployment_in_lock(vellum_client,
|
|
407
411
|
new_workflow_sandbox_id = "87654321-0000-0000-0000-000000000000"
|
408
412
|
|
409
413
|
# AND the workflow pull API call returns a zip file
|
410
|
-
vellum_client.workflows.pull.return_value = iter(
|
414
|
+
vellum_client.workflows.pull.return_value = iter(
|
415
|
+
[
|
416
|
+
_zip_file_map(
|
417
|
+
{
|
418
|
+
"workflow.py": "print('hello')",
|
419
|
+
"metadata.json": '{"runner_config": { "container_image_name": "test", '
|
420
|
+
'"container_image_tag": "1.0" } }',
|
421
|
+
}
|
422
|
+
)
|
423
|
+
]
|
424
|
+
)
|
411
425
|
|
412
426
|
# WHEN the user runs the pull command with the new workflow sandbox id
|
413
427
|
runner = CliRunner()
|
@@ -433,12 +447,16 @@ def test_pull__sandbox_id_with_other_workflow_deployment_in_lock(vellum_client,
|
|
433
447
|
"release_tags": None,
|
434
448
|
},
|
435
449
|
],
|
450
|
+
"container_image_name": None,
|
451
|
+
"container_image_tag": None,
|
436
452
|
},
|
437
453
|
{
|
438
454
|
"module": "workflow_87654321",
|
439
455
|
"workflow_sandbox_id": new_workflow_sandbox_id,
|
440
456
|
"ignore": None,
|
441
457
|
"deployments": [],
|
458
|
+
"container_image_name": "test",
|
459
|
+
"container_image_tag": "1.0",
|
442
460
|
},
|
443
461
|
]
|
444
462
|
|
@@ -1,4 +1,5 @@
|
|
1
1
|
from .api_node import BaseAPINodeDisplay
|
2
|
+
from .base_node import BaseNodeDisplay
|
2
3
|
from .code_execution_node import BaseCodeExecutionNodeDisplay
|
3
4
|
from .conditional_node import BaseConditionalNodeDisplay
|
4
5
|
from .error_node import BaseErrorNodeDisplay
|
@@ -27,6 +28,7 @@ __all__ = [
|
|
27
28
|
"BaseInlineSubworkflowNodeDisplay",
|
28
29
|
"BaseMapNodeDisplay",
|
29
30
|
"BaseMergeNodeDisplay",
|
31
|
+
"BaseNodeDisplay",
|
30
32
|
"BaseNoteNodeDisplay",
|
31
33
|
"BasePromptDeploymentNodeDisplay",
|
32
34
|
"BaseSearchNodeDisplay",
|
@@ -0,0 +1,18 @@
|
|
1
|
+
from typing import Any, Generic, TypeVar
|
2
|
+
|
3
|
+
from vellum.workflows.nodes.bases.base import BaseNode
|
4
|
+
from vellum.workflows.types.core import JsonObject
|
5
|
+
from vellum_ee.workflows.display.nodes.base_node_vellum_display import BaseNodeVellumDisplay
|
6
|
+
from vellum_ee.workflows.display.types import WorkflowDisplayContext
|
7
|
+
|
8
|
+
_BaseNodeType = TypeVar("_BaseNodeType", bound=BaseNode)
|
9
|
+
|
10
|
+
|
11
|
+
class BaseNodeDisplay(BaseNodeVellumDisplay[_BaseNodeType], Generic[_BaseNodeType]):
|
12
|
+
def serialize(self, display_context: WorkflowDisplayContext, **kwargs: Any) -> JsonObject:
|
13
|
+
node_id = self.node_id
|
14
|
+
|
15
|
+
return {
|
16
|
+
"id": str(node_id),
|
17
|
+
"type": "GENERIC",
|
18
|
+
}
|
@@ -1,5 +1,4 @@
|
|
1
1
|
import pytest
|
2
|
-
from unittest import mock
|
3
2
|
|
4
3
|
from deepdiff import DeepDiff
|
5
4
|
|
@@ -21,7 +20,6 @@ from vellum.workflows.expressions.less_than import LessThanExpression
|
|
21
20
|
from vellum.workflows.expressions.less_than_or_equal_to import LessThanOrEqualToExpression
|
22
21
|
from vellum.workflows.expressions.not_between import NotBetweenExpression
|
23
22
|
from vellum.workflows.expressions.not_in import NotInExpression
|
24
|
-
from vellum_ee.workflows.display.nodes.base_node_vellum_display import BaseNodeVellumDisplay
|
25
23
|
from vellum_ee.workflows.display.workflows import VellumWorkflowDisplay
|
26
24
|
from vellum_ee.workflows.display.workflows.get_vellum_workflow_display_class import get_workflow_display
|
27
25
|
|
@@ -33,12 +31,7 @@ def test_serialize_workflow():
|
|
33
31
|
# GIVEN a Workflow that uses a ConditionalNode
|
34
32
|
# WHEN we serialize it
|
35
33
|
workflow_display = get_workflow_display(base_display_class=VellumWorkflowDisplay, workflow_class=CategoryWorkflow)
|
36
|
-
|
37
|
-
# TODO: Support serialization of BaseNode
|
38
|
-
# https://app.shortcut.com/vellum/story/4871/support-serialization-of-base-node
|
39
|
-
with mock.patch.object(BaseNodeVellumDisplay, "serialize") as mocked_serialize:
|
40
|
-
mocked_serialize.return_value = {"type": "MOCKED"}
|
41
|
-
serialized_workflow: dict = workflow_display.serialize()
|
34
|
+
serialized_workflow: dict = workflow_display.serialize()
|
42
35
|
|
43
36
|
# THEN we should get a serialized representation of the Workflow
|
44
37
|
assert serialized_workflow.keys() == {
|
@@ -457,23 +450,14 @@ def test_serialize_workflow():
|
|
457
450
|
|
458
451
|
assert not DeepDiff(
|
459
452
|
[
|
460
|
-
{
|
461
|
-
|
462
|
-
},
|
463
|
-
{
|
464
|
-
|
465
|
-
},
|
466
|
-
{
|
467
|
-
"type": "MOCKED",
|
468
|
-
},
|
469
|
-
{
|
470
|
-
"type": "MOCKED",
|
471
|
-
},
|
472
|
-
{
|
473
|
-
"type": "MOCKED",
|
474
|
-
},
|
453
|
+
{"id": "148c61bd-e8b0-4d4b-8734-b043a72b90ed", "type": "GENERIC"},
|
454
|
+
{"id": "ed7caf01-9ae7-47a3-b15a-16697abaf486", "type": "GENERIC"},
|
455
|
+
{"id": "0d959311-c836-4641-a867-58f63df9dfea", "type": "GENERIC"},
|
456
|
+
{"id": "8df781b1-ff28-48a5-98a2-d7d796b932b0", "type": "GENERIC"},
|
457
|
+
{"id": "68c02b7c-5077-4087-803d-841474a8081f", "type": "GENERIC"},
|
475
458
|
],
|
476
459
|
workflow_raw_data["nodes"][2:7],
|
460
|
+
ignore_order=True,
|
477
461
|
)
|
478
462
|
|
479
463
|
assert not DeepDiff(
|
@@ -917,12 +901,7 @@ def test_conditional_node_serialize_all_operators_with_lhs_and_rhs(descriptor, o
|
|
917
901
|
workflow_cls = create_simple_workflow(descriptor)
|
918
902
|
|
919
903
|
workflow_display = get_workflow_display(base_display_class=VellumWorkflowDisplay, workflow_class=workflow_cls)
|
920
|
-
|
921
|
-
# TODO: Support serialization of BaseNode
|
922
|
-
# https://app.shortcut.com/vellum/story/4871/support-serialization-of-base-node
|
923
|
-
with mock.patch.object(BaseNodeVellumDisplay, "serialize") as mocked_serialize:
|
924
|
-
mocked_serialize.return_value = {"type": "MOCKED"}
|
925
|
-
serialized_workflow: dict = workflow_display.serialize()
|
904
|
+
serialized_workflow: dict = workflow_display.serialize()
|
926
905
|
|
927
906
|
# THEN we should get a serialized representation of the Workflow
|
928
907
|
assert serialized_workflow.keys() == {
|
@@ -1041,12 +1020,7 @@ def test_conditional_node_serialize_all_operators_with_expression(descriptor, op
|
|
1041
1020
|
workflow_cls = create_simple_workflow(descriptor)
|
1042
1021
|
|
1043
1022
|
workflow_display = get_workflow_display(base_display_class=VellumWorkflowDisplay, workflow_class=workflow_cls)
|
1044
|
-
|
1045
|
-
# TODO: Support serialization of BaseNode
|
1046
|
-
# https://app.shortcut.com/vellum/story/4871/support-serialization-of-base-node
|
1047
|
-
with mock.patch.object(BaseNodeVellumDisplay, "serialize") as mocked_serialize:
|
1048
|
-
mocked_serialize.return_value = {"type": "MOCKED"}
|
1049
|
-
serialized_workflow: dict = workflow_display.serialize()
|
1023
|
+
serialized_workflow: dict = workflow_display.serialize()
|
1050
1024
|
|
1051
1025
|
# THEN we should get a serialized representation of the Workflow
|
1052
1026
|
assert serialized_workflow.keys() == {
|
@@ -1152,12 +1126,7 @@ def test_conditional_node_serialize_all_operators_with_value_and_start_and_end(d
|
|
1152
1126
|
workflow_cls = create_simple_workflow(descriptor)
|
1153
1127
|
|
1154
1128
|
workflow_display = get_workflow_display(base_display_class=VellumWorkflowDisplay, workflow_class=workflow_cls)
|
1155
|
-
|
1156
|
-
# TODO: Support serialization of BaseNode
|
1157
|
-
# https://app.shortcut.com/vellum/story/4871/support-serialization-of-base-node
|
1158
|
-
with mock.patch.object(BaseNodeVellumDisplay, "serialize") as mocked_serialize:
|
1159
|
-
mocked_serialize.return_value = {"type": "MOCKED"}
|
1160
|
-
serialized_workflow: dict = workflow_display.serialize()
|
1129
|
+
serialized_workflow: dict = workflow_display.serialize()
|
1161
1130
|
|
1162
1131
|
# THEN we should get a serialized representation of the Workflow
|
1163
1132
|
assert serialized_workflow.keys() == {
|
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_error_node_serialization.py
CHANGED
@@ -1,8 +1,5 @@
|
|
1
|
-
from unittest import mock
|
2
|
-
|
3
1
|
from deepdiff import DeepDiff
|
4
2
|
|
5
|
-
from vellum_ee.workflows.display.nodes.base_node_vellum_display import BaseNodeVellumDisplay
|
6
3
|
from vellum_ee.workflows.display.workflows import VellumWorkflowDisplay
|
7
4
|
from vellum_ee.workflows.display.workflows.get_vellum_workflow_display_class import get_workflow_display
|
8
5
|
|
@@ -16,11 +13,7 @@ def test_serialize_workflow():
|
|
16
13
|
base_display_class=VellumWorkflowDisplay, workflow_class=BasicErrorNodeWorkflow
|
17
14
|
)
|
18
15
|
|
19
|
-
|
20
|
-
# https://app.shortcut.com/vellum/story/4871/support-serialization-of-base-node
|
21
|
-
with mock.patch.object(BaseNodeVellumDisplay, "serialize") as mocked_serialize:
|
22
|
-
mocked_serialize.return_value = {"type": "MOCKED"}
|
23
|
-
serialized_workflow: dict = workflow_display.serialize()
|
16
|
+
serialized_workflow: dict = workflow_display.serialize()
|
24
17
|
|
25
18
|
# THEN we should get a serialized representation of the Workflow
|
26
19
|
assert serialized_workflow.keys() == {
|
@@ -137,14 +130,11 @@ def test_serialize_workflow():
|
|
137
130
|
|
138
131
|
assert not DeepDiff(
|
139
132
|
[
|
140
|
-
{
|
141
|
-
|
142
|
-
},
|
143
|
-
{
|
144
|
-
"type": "MOCKED",
|
145
|
-
},
|
133
|
+
{"id": "1381c078-efa2-4255-89a1-7b4cb742c7fc", "type": "GENERIC"},
|
134
|
+
{"id": "1eee9b4e-531f-45f2-a4b9-42207fac2c33", "type": "GENERIC"},
|
146
135
|
],
|
147
136
|
mocked_base_nodes,
|
137
|
+
ignore_order=True,
|
148
138
|
)
|
149
139
|
|
150
140
|
terminal_node = workflow_raw_data["nodes"][-1]
|