vellum-ai 0.9.3__py3-none-any.whl → 0.9.5__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (32) hide show
  1. vellum/__init__.py +18 -0
  2. vellum/core/client_wrapper.py +1 -1
  3. vellum/resources/__init__.py +6 -2
  4. vellum/resources/deployments/__init__.py +2 -2
  5. vellum/resources/deployments/client.py +160 -2
  6. vellum/resources/deployments/types/__init__.py +2 -1
  7. vellum/resources/deployments/types/list_deployment_release_tags_request_source.py +5 -0
  8. vellum/resources/workflow_deployments/__init__.py +2 -2
  9. vellum/resources/workflow_deployments/client.py +158 -0
  10. vellum/resources/workflow_deployments/types/__init__.py +2 -1
  11. vellum/resources/workflow_deployments/types/list_workflow_release_tags_request_source.py +5 -0
  12. vellum/resources/workflows/__init__.py +3 -0
  13. vellum/resources/workflows/client.py +61 -3
  14. vellum/resources/workflows/types/__init__.py +5 -0
  15. vellum/resources/workflows/types/workflows_pull_request_format.py +5 -0
  16. vellum/types/__init__.py +12 -0
  17. vellum/types/array_variable_value_item.py +2 -0
  18. vellum/types/audio_variable_value.py +25 -0
  19. vellum/types/audio_vellum_value.py +25 -0
  20. vellum/types/audio_vellum_value_request.py +25 -0
  21. vellum/types/paginated_deployment_release_tag_read_list.py +23 -0
  22. vellum/types/paginated_workflow_release_tag_read_list.py +23 -0
  23. vellum/types/vellum_audio.py +6 -2
  24. vellum/types/vellum_audio_request.py +6 -2
  25. vellum/types/vellum_value.py +2 -0
  26. vellum/types/vellum_value_request.py +2 -0
  27. vellum/types/workflow_push_deployment_config_request.py +22 -0
  28. vellum/types/workflow_push_response.py +2 -1
  29. {vellum_ai-0.9.3.dist-info → vellum_ai-0.9.5.dist-info}/METADATA +1 -1
  30. {vellum_ai-0.9.3.dist-info → vellum_ai-0.9.5.dist-info}/RECORD +32 -22
  31. {vellum_ai-0.9.3.dist-info → vellum_ai-0.9.5.dist-info}/LICENSE +0 -0
  32. {vellum_ai-0.9.3.dist-info → vellum_ai-0.9.5.dist-info}/WHEEL +0 -0
vellum/__init__.py CHANGED
@@ -21,6 +21,9 @@ from .types import (
21
21
  ArrayVellumValueRequest,
22
22
  AudioChatMessageContent,
23
23
  AudioChatMessageContentRequest,
24
+ AudioVariableValue,
25
+ AudioVellumValue,
26
+ AudioVellumValueRequest,
24
27
  BasicVectorizerIntfloatMultilingualE5Large,
25
28
  BasicVectorizerIntfloatMultilingualE5LargeRequest,
26
29
  BasicVectorizerSentenceTransformersMultiQaMpnetBaseCosV1,
@@ -240,6 +243,7 @@ from .types import (
240
243
  OpenAiVectorizerTextEmbeddingAda002,
241
244
  OpenAiVectorizerTextEmbeddingAda002Request,
242
245
  PaginatedContainerImageReadList,
246
+ PaginatedDeploymentReleaseTagReadList,
243
247
  PaginatedDocumentIndexReadList,
244
248
  PaginatedFolderEntityList,
245
249
  PaginatedSlimDeploymentReadList,
@@ -247,6 +251,7 @@ from .types import (
247
251
  PaginatedSlimWorkflowDeploymentList,
248
252
  PaginatedTestSuiteRunExecutionList,
249
253
  PaginatedTestSuiteTestCaseList,
254
+ PaginatedWorkflowReleaseTagReadList,
250
255
  PdfSearchResultMetaSource,
251
256
  PdfSearchResultMetaSourceRequest,
252
257
  PlainTextPromptBlockRequest,
@@ -455,6 +460,7 @@ from .types import (
455
460
  WorkflowOutputNumber,
456
461
  WorkflowOutputSearchResults,
457
462
  WorkflowOutputString,
463
+ WorkflowPushDeploymentConfigRequest,
458
464
  WorkflowPushExecConfig,
459
465
  WorkflowPushResponse,
460
466
  WorkflowReleaseTagRead,
@@ -482,7 +488,10 @@ from .resources import (
482
488
  DeploymentsListRequestStatus,
483
489
  DocumentIndexesListRequestStatus,
484
490
  FolderEntitiesListRequestEntityStatus,
491
+ ListDeploymentReleaseTagsRequestSource,
492
+ ListWorkflowReleaseTagsRequestSource,
485
493
  WorkflowDeploymentsListRequestStatus,
494
+ WorkflowsPullRequestFormat,
486
495
  ad_hoc,
487
496
  container_images,
488
497
  deployments,
@@ -524,6 +533,9 @@ __all__ = [
524
533
  "AsyncVellum",
525
534
  "AudioChatMessageContent",
526
535
  "AudioChatMessageContentRequest",
536
+ "AudioVariableValue",
537
+ "AudioVellumValue",
538
+ "AudioVellumValueRequest",
527
539
  "BadRequestError",
528
540
  "BasicVectorizerIntfloatMultilingualE5Large",
529
541
  "BasicVectorizerIntfloatMultilingualE5LargeRequest",
@@ -680,6 +692,8 @@ __all__ = [
680
692
  "JsonVariableValue",
681
693
  "JsonVellumValue",
682
694
  "JsonVellumValueRequest",
695
+ "ListDeploymentReleaseTagsRequestSource",
696
+ "ListWorkflowReleaseTagsRequestSource",
683
697
  "LogicalOperator",
684
698
  "LogprobsEnum",
685
699
  "MapNodeResult",
@@ -750,6 +764,7 @@ __all__ = [
750
764
  "OpenAiVectorizerTextEmbeddingAda002",
751
765
  "OpenAiVectorizerTextEmbeddingAda002Request",
752
766
  "PaginatedContainerImageReadList",
767
+ "PaginatedDeploymentReleaseTagReadList",
753
768
  "PaginatedDocumentIndexReadList",
754
769
  "PaginatedFolderEntityList",
755
770
  "PaginatedSlimDeploymentReadList",
@@ -757,6 +772,7 @@ __all__ = [
757
772
  "PaginatedSlimWorkflowDeploymentList",
758
773
  "PaginatedTestSuiteRunExecutionList",
759
774
  "PaginatedTestSuiteTestCaseList",
775
+ "PaginatedWorkflowReleaseTagReadList",
760
776
  "PdfSearchResultMetaSource",
761
777
  "PdfSearchResultMetaSourceRequest",
762
778
  "PlainTextPromptBlockRequest",
@@ -968,6 +984,7 @@ __all__ = [
968
984
  "WorkflowOutputNumber",
969
985
  "WorkflowOutputSearchResults",
970
986
  "WorkflowOutputString",
987
+ "WorkflowPushDeploymentConfigRequest",
971
988
  "WorkflowPushExecConfig",
972
989
  "WorkflowPushResponse",
973
990
  "WorkflowReleaseTagRead",
@@ -988,6 +1005,7 @@ __all__ = [
988
1005
  "WorkflowResultEventOutputDataSearchResults",
989
1006
  "WorkflowResultEventOutputDataString",
990
1007
  "WorkflowStreamEvent",
1008
+ "WorkflowsPullRequestFormat",
991
1009
  "WorkspaceSecretRead",
992
1010
  "__version__",
993
1011
  "ad_hoc",
@@ -17,7 +17,7 @@ class BaseClientWrapper:
17
17
  headers: typing.Dict[str, str] = {
18
18
  "X-Fern-Language": "Python",
19
19
  "X-Fern-SDK-Name": "vellum-ai",
20
- "X-Fern-SDK-Version": "v0.9.3",
20
+ "X-Fern-SDK-Version": "0.9.5",
21
21
  }
22
22
  headers["X_API_KEY"] = self.api_key
23
23
  return headers
@@ -16,16 +16,20 @@ from . import (
16
16
  workflows,
17
17
  workspace_secrets,
18
18
  )
19
- from .deployments import DeploymentsListRequestStatus
19
+ from .deployments import DeploymentsListRequestStatus, ListDeploymentReleaseTagsRequestSource
20
20
  from .document_indexes import DocumentIndexesListRequestStatus
21
21
  from .folder_entities import FolderEntitiesListRequestEntityStatus
22
- from .workflow_deployments import WorkflowDeploymentsListRequestStatus
22
+ from .workflow_deployments import ListWorkflowReleaseTagsRequestSource, WorkflowDeploymentsListRequestStatus
23
+ from .workflows import WorkflowsPullRequestFormat
23
24
 
24
25
  __all__ = [
25
26
  "DeploymentsListRequestStatus",
26
27
  "DocumentIndexesListRequestStatus",
27
28
  "FolderEntitiesListRequestEntityStatus",
29
+ "ListDeploymentReleaseTagsRequestSource",
30
+ "ListWorkflowReleaseTagsRequestSource",
28
31
  "WorkflowDeploymentsListRequestStatus",
32
+ "WorkflowsPullRequestFormat",
29
33
  "ad_hoc",
30
34
  "container_images",
31
35
  "deployments",
@@ -1,5 +1,5 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
- from .types import DeploymentsListRequestStatus
3
+ from .types import DeploymentsListRequestStatus, ListDeploymentReleaseTagsRequestSource
4
4
 
5
- __all__ = ["DeploymentsListRequestStatus"]
5
+ __all__ = ["DeploymentsListRequestStatus", "ListDeploymentReleaseTagsRequestSource"]
@@ -10,6 +10,8 @@ from json.decoder import JSONDecodeError
10
10
  from ...core.api_error import ApiError
11
11
  from ...types.deployment_read import DeploymentRead
12
12
  from ...core.jsonable_encoder import jsonable_encoder
13
+ from .types.list_deployment_release_tags_request_source import ListDeploymentReleaseTagsRequestSource
14
+ from ...types.paginated_deployment_release_tag_read_list import PaginatedDeploymentReleaseTagReadList
13
15
  from ...types.deployment_release_tag_read import DeploymentReleaseTagRead
14
16
  from ...types.prompt_deployment_input_request import PromptDeploymentInputRequest
15
17
  from ...types.compile_prompt_deployment_expand_meta_request import CompilePromptDeploymentExpandMetaRequest
@@ -146,6 +148,80 @@ class DeploymentsClient:
146
148
  raise ApiError(status_code=_response.status_code, body=_response.text)
147
149
  raise ApiError(status_code=_response.status_code, body=_response_json)
148
150
 
151
+ def list_deployment_release_tags(
152
+ self,
153
+ id: str,
154
+ *,
155
+ limit: typing.Optional[int] = None,
156
+ offset: typing.Optional[int] = None,
157
+ ordering: typing.Optional[str] = None,
158
+ source: typing.Optional[ListDeploymentReleaseTagsRequestSource] = None,
159
+ request_options: typing.Optional[RequestOptions] = None,
160
+ ) -> PaginatedDeploymentReleaseTagReadList:
161
+ """
162
+ List Release Tags associated with the specified Prompt Deployment
163
+
164
+ Parameters
165
+ ----------
166
+ id : str
167
+ Either the Prompt Deployment's ID or its unique name
168
+
169
+ limit : typing.Optional[int]
170
+ Number of results to return per page.
171
+
172
+ offset : typing.Optional[int]
173
+ The initial index from which to return the results.
174
+
175
+ ordering : typing.Optional[str]
176
+ Which field to use when ordering the results.
177
+
178
+ source : typing.Optional[ListDeploymentReleaseTagsRequestSource]
179
+
180
+ request_options : typing.Optional[RequestOptions]
181
+ Request-specific configuration.
182
+
183
+ Returns
184
+ -------
185
+ PaginatedDeploymentReleaseTagReadList
186
+
187
+
188
+ Examples
189
+ --------
190
+ from vellum import Vellum
191
+
192
+ client = Vellum(
193
+ api_key="YOUR_API_KEY",
194
+ )
195
+ client.deployments.list_deployment_release_tags(
196
+ id="id",
197
+ )
198
+ """
199
+ _response = self._client_wrapper.httpx_client.request(
200
+ f"v1/deployments/{jsonable_encoder(id)}/release-tags",
201
+ base_url=self._client_wrapper.get_environment().default,
202
+ method="GET",
203
+ params={
204
+ "limit": limit,
205
+ "offset": offset,
206
+ "ordering": ordering,
207
+ "source": source,
208
+ },
209
+ request_options=request_options,
210
+ )
211
+ try:
212
+ if 200 <= _response.status_code < 300:
213
+ return typing.cast(
214
+ PaginatedDeploymentReleaseTagReadList,
215
+ parse_obj_as(
216
+ type_=PaginatedDeploymentReleaseTagReadList, # type: ignore
217
+ object_=_response.json(),
218
+ ),
219
+ )
220
+ _response_json = _response.json()
221
+ except JSONDecodeError:
222
+ raise ApiError(status_code=_response.status_code, body=_response.text)
223
+ raise ApiError(status_code=_response.status_code, body=_response_json)
224
+
149
225
  def retrieve_deployment_release_tag(
150
226
  self, id: str, name: str, *, request_options: typing.Optional[RequestOptions] = None
151
227
  ) -> DeploymentReleaseTagRead:
@@ -209,7 +285,7 @@ class DeploymentsClient:
209
285
  request_options: typing.Optional[RequestOptions] = None,
210
286
  ) -> DeploymentReleaseTagRead:
211
287
  """
212
- Updates an existing Release Tag associated with the specified Deployment.
288
+ Updates an existing Release Tag associated with the specified Prompt Deployment.
213
289
 
214
290
  Parameters
215
291
  ----------
@@ -538,6 +614,88 @@ class AsyncDeploymentsClient:
538
614
  raise ApiError(status_code=_response.status_code, body=_response.text)
539
615
  raise ApiError(status_code=_response.status_code, body=_response_json)
540
616
 
617
+ async def list_deployment_release_tags(
618
+ self,
619
+ id: str,
620
+ *,
621
+ limit: typing.Optional[int] = None,
622
+ offset: typing.Optional[int] = None,
623
+ ordering: typing.Optional[str] = None,
624
+ source: typing.Optional[ListDeploymentReleaseTagsRequestSource] = None,
625
+ request_options: typing.Optional[RequestOptions] = None,
626
+ ) -> PaginatedDeploymentReleaseTagReadList:
627
+ """
628
+ List Release Tags associated with the specified Prompt Deployment
629
+
630
+ Parameters
631
+ ----------
632
+ id : str
633
+ Either the Prompt Deployment's ID or its unique name
634
+
635
+ limit : typing.Optional[int]
636
+ Number of results to return per page.
637
+
638
+ offset : typing.Optional[int]
639
+ The initial index from which to return the results.
640
+
641
+ ordering : typing.Optional[str]
642
+ Which field to use when ordering the results.
643
+
644
+ source : typing.Optional[ListDeploymentReleaseTagsRequestSource]
645
+
646
+ request_options : typing.Optional[RequestOptions]
647
+ Request-specific configuration.
648
+
649
+ Returns
650
+ -------
651
+ PaginatedDeploymentReleaseTagReadList
652
+
653
+
654
+ Examples
655
+ --------
656
+ import asyncio
657
+
658
+ from vellum import AsyncVellum
659
+
660
+ client = AsyncVellum(
661
+ api_key="YOUR_API_KEY",
662
+ )
663
+
664
+
665
+ async def main() -> None:
666
+ await client.deployments.list_deployment_release_tags(
667
+ id="id",
668
+ )
669
+
670
+
671
+ asyncio.run(main())
672
+ """
673
+ _response = await self._client_wrapper.httpx_client.request(
674
+ f"v1/deployments/{jsonable_encoder(id)}/release-tags",
675
+ base_url=self._client_wrapper.get_environment().default,
676
+ method="GET",
677
+ params={
678
+ "limit": limit,
679
+ "offset": offset,
680
+ "ordering": ordering,
681
+ "source": source,
682
+ },
683
+ request_options=request_options,
684
+ )
685
+ try:
686
+ if 200 <= _response.status_code < 300:
687
+ return typing.cast(
688
+ PaginatedDeploymentReleaseTagReadList,
689
+ parse_obj_as(
690
+ type_=PaginatedDeploymentReleaseTagReadList, # type: ignore
691
+ object_=_response.json(),
692
+ ),
693
+ )
694
+ _response_json = _response.json()
695
+ except JSONDecodeError:
696
+ raise ApiError(status_code=_response.status_code, body=_response.text)
697
+ raise ApiError(status_code=_response.status_code, body=_response_json)
698
+
541
699
  async def retrieve_deployment_release_tag(
542
700
  self, id: str, name: str, *, request_options: typing.Optional[RequestOptions] = None
543
701
  ) -> DeploymentReleaseTagRead:
@@ -609,7 +767,7 @@ class AsyncDeploymentsClient:
609
767
  request_options: typing.Optional[RequestOptions] = None,
610
768
  ) -> DeploymentReleaseTagRead:
611
769
  """
612
- Updates an existing Release Tag associated with the specified Deployment.
770
+ Updates an existing Release Tag associated with the specified Prompt Deployment.
613
771
 
614
772
  Parameters
615
773
  ----------
@@ -1,5 +1,6 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
3
  from .deployments_list_request_status import DeploymentsListRequestStatus
4
+ from .list_deployment_release_tags_request_source import ListDeploymentReleaseTagsRequestSource
4
5
 
5
- __all__ = ["DeploymentsListRequestStatus"]
6
+ __all__ = ["DeploymentsListRequestStatus", "ListDeploymentReleaseTagsRequestSource"]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ ListDeploymentReleaseTagsRequestSource = typing.Union[typing.Literal["SYSTEM", "USER"], typing.Any]
@@ -1,5 +1,5 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
- from .types import WorkflowDeploymentsListRequestStatus
3
+ from .types import ListWorkflowReleaseTagsRequestSource, WorkflowDeploymentsListRequestStatus
4
4
 
5
- __all__ = ["WorkflowDeploymentsListRequestStatus"]
5
+ __all__ = ["ListWorkflowReleaseTagsRequestSource", "WorkflowDeploymentsListRequestStatus"]
@@ -10,6 +10,8 @@ from json.decoder import JSONDecodeError
10
10
  from ...core.api_error import ApiError
11
11
  from ...types.workflow_deployment_read import WorkflowDeploymentRead
12
12
  from ...core.jsonable_encoder import jsonable_encoder
13
+ from .types.list_workflow_release_tags_request_source import ListWorkflowReleaseTagsRequestSource
14
+ from ...types.paginated_workflow_release_tag_read_list import PaginatedWorkflowReleaseTagReadList
13
15
  from ...types.workflow_release_tag_read import WorkflowReleaseTagRead
14
16
  from ...core.client_wrapper import AsyncClientWrapper
15
17
 
@@ -138,6 +140,80 @@ class WorkflowDeploymentsClient:
138
140
  raise ApiError(status_code=_response.status_code, body=_response.text)
139
141
  raise ApiError(status_code=_response.status_code, body=_response_json)
140
142
 
143
+ def list_workflow_release_tags(
144
+ self,
145
+ id: str,
146
+ *,
147
+ limit: typing.Optional[int] = None,
148
+ offset: typing.Optional[int] = None,
149
+ ordering: typing.Optional[str] = None,
150
+ source: typing.Optional[ListWorkflowReleaseTagsRequestSource] = None,
151
+ request_options: typing.Optional[RequestOptions] = None,
152
+ ) -> PaginatedWorkflowReleaseTagReadList:
153
+ """
154
+ List Release Tags associated with the specified Workflow Deployment
155
+
156
+ Parameters
157
+ ----------
158
+ id : str
159
+ Either the Workflow Deployment's ID or its unique name
160
+
161
+ limit : typing.Optional[int]
162
+ Number of results to return per page.
163
+
164
+ offset : typing.Optional[int]
165
+ The initial index from which to return the results.
166
+
167
+ ordering : typing.Optional[str]
168
+ Which field to use when ordering the results.
169
+
170
+ source : typing.Optional[ListWorkflowReleaseTagsRequestSource]
171
+
172
+ request_options : typing.Optional[RequestOptions]
173
+ Request-specific configuration.
174
+
175
+ Returns
176
+ -------
177
+ PaginatedWorkflowReleaseTagReadList
178
+
179
+
180
+ Examples
181
+ --------
182
+ from vellum import Vellum
183
+
184
+ client = Vellum(
185
+ api_key="YOUR_API_KEY",
186
+ )
187
+ client.workflow_deployments.list_workflow_release_tags(
188
+ id="id",
189
+ )
190
+ """
191
+ _response = self._client_wrapper.httpx_client.request(
192
+ f"v1/workflow-deployments/{jsonable_encoder(id)}/release-tags",
193
+ base_url=self._client_wrapper.get_environment().default,
194
+ method="GET",
195
+ params={
196
+ "limit": limit,
197
+ "offset": offset,
198
+ "ordering": ordering,
199
+ "source": source,
200
+ },
201
+ request_options=request_options,
202
+ )
203
+ try:
204
+ if 200 <= _response.status_code < 300:
205
+ return typing.cast(
206
+ PaginatedWorkflowReleaseTagReadList,
207
+ parse_obj_as(
208
+ type_=PaginatedWorkflowReleaseTagReadList, # type: ignore
209
+ object_=_response.json(),
210
+ ),
211
+ )
212
+ _response_json = _response.json()
213
+ except JSONDecodeError:
214
+ raise ApiError(status_code=_response.status_code, body=_response.text)
215
+ raise ApiError(status_code=_response.status_code, body=_response_json)
216
+
141
217
  def retrieve_workflow_release_tag(
142
218
  self, id: str, name: str, *, request_options: typing.Optional[RequestOptions] = None
143
219
  ) -> WorkflowReleaseTagRead:
@@ -398,6 +474,88 @@ class AsyncWorkflowDeploymentsClient:
398
474
  raise ApiError(status_code=_response.status_code, body=_response.text)
399
475
  raise ApiError(status_code=_response.status_code, body=_response_json)
400
476
 
477
+ async def list_workflow_release_tags(
478
+ self,
479
+ id: str,
480
+ *,
481
+ limit: typing.Optional[int] = None,
482
+ offset: typing.Optional[int] = None,
483
+ ordering: typing.Optional[str] = None,
484
+ source: typing.Optional[ListWorkflowReleaseTagsRequestSource] = None,
485
+ request_options: typing.Optional[RequestOptions] = None,
486
+ ) -> PaginatedWorkflowReleaseTagReadList:
487
+ """
488
+ List Release Tags associated with the specified Workflow Deployment
489
+
490
+ Parameters
491
+ ----------
492
+ id : str
493
+ Either the Workflow Deployment's ID or its unique name
494
+
495
+ limit : typing.Optional[int]
496
+ Number of results to return per page.
497
+
498
+ offset : typing.Optional[int]
499
+ The initial index from which to return the results.
500
+
501
+ ordering : typing.Optional[str]
502
+ Which field to use when ordering the results.
503
+
504
+ source : typing.Optional[ListWorkflowReleaseTagsRequestSource]
505
+
506
+ request_options : typing.Optional[RequestOptions]
507
+ Request-specific configuration.
508
+
509
+ Returns
510
+ -------
511
+ PaginatedWorkflowReleaseTagReadList
512
+
513
+
514
+ Examples
515
+ --------
516
+ import asyncio
517
+
518
+ from vellum import AsyncVellum
519
+
520
+ client = AsyncVellum(
521
+ api_key="YOUR_API_KEY",
522
+ )
523
+
524
+
525
+ async def main() -> None:
526
+ await client.workflow_deployments.list_workflow_release_tags(
527
+ id="id",
528
+ )
529
+
530
+
531
+ asyncio.run(main())
532
+ """
533
+ _response = await self._client_wrapper.httpx_client.request(
534
+ f"v1/workflow-deployments/{jsonable_encoder(id)}/release-tags",
535
+ base_url=self._client_wrapper.get_environment().default,
536
+ method="GET",
537
+ params={
538
+ "limit": limit,
539
+ "offset": offset,
540
+ "ordering": ordering,
541
+ "source": source,
542
+ },
543
+ request_options=request_options,
544
+ )
545
+ try:
546
+ if 200 <= _response.status_code < 300:
547
+ return typing.cast(
548
+ PaginatedWorkflowReleaseTagReadList,
549
+ parse_obj_as(
550
+ type_=PaginatedWorkflowReleaseTagReadList, # type: ignore
551
+ object_=_response.json(),
552
+ ),
553
+ )
554
+ _response_json = _response.json()
555
+ except JSONDecodeError:
556
+ raise ApiError(status_code=_response.status_code, body=_response.text)
557
+ raise ApiError(status_code=_response.status_code, body=_response_json)
558
+
401
559
  async def retrieve_workflow_release_tag(
402
560
  self, id: str, name: str, *, request_options: typing.Optional[RequestOptions] = None
403
561
  ) -> WorkflowReleaseTagRead:
@@ -1,5 +1,6 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
+ from .list_workflow_release_tags_request_source import ListWorkflowReleaseTagsRequestSource
3
4
  from .workflow_deployments_list_request_status import WorkflowDeploymentsListRequestStatus
4
5
 
5
- __all__ = ["WorkflowDeploymentsListRequestStatus"]
6
+ __all__ = ["ListWorkflowReleaseTagsRequestSource", "WorkflowDeploymentsListRequestStatus"]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ ListWorkflowReleaseTagsRequestSource = typing.Union[typing.Literal["SYSTEM", "USER"], typing.Any]
@@ -1,2 +1,5 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
+ from .types import WorkflowsPullRequestFormat
4
+
5
+ __all__ = ["WorkflowsPullRequestFormat"]
@@ -2,13 +2,17 @@
2
2
 
3
3
  import typing
4
4
  from ...core.client_wrapper import SyncClientWrapper
5
+ from .types.workflows_pull_request_format import WorkflowsPullRequestFormat
5
6
  from ...core.request_options import RequestOptions
6
7
  from ...core.jsonable_encoder import jsonable_encoder
8
+ from ...errors.bad_request_error import BadRequestError
9
+ from ...core.pydantic_utilities import parse_obj_as
7
10
  from json.decoder import JSONDecodeError
8
11
  from ...core.api_error import ApiError
9
12
  from ...types.workflow_push_exec_config import WorkflowPushExecConfig
13
+ from ...types.workflow_push_deployment_config_request import WorkflowPushDeploymentConfigRequest
10
14
  from ...types.workflow_push_response import WorkflowPushResponse
11
- from ...core.pydantic_utilities import parse_obj_as
15
+ from ...core.serialization import convert_and_respect_annotation_metadata
12
16
  from ...core.client_wrapper import AsyncClientWrapper
13
17
 
14
18
  # this is used as the default value for optional parameters
@@ -19,7 +23,13 @@ class WorkflowsClient:
19
23
  def __init__(self, *, client_wrapper: SyncClientWrapper):
20
24
  self._client_wrapper = client_wrapper
21
25
 
22
- def pull(self, id: str, *, request_options: typing.Optional[RequestOptions] = None) -> typing.Iterator[bytes]:
26
+ def pull(
27
+ self,
28
+ id: str,
29
+ *,
30
+ format: typing.Optional[WorkflowsPullRequestFormat] = None,
31
+ request_options: typing.Optional[RequestOptions] = None,
32
+ ) -> typing.Iterator[bytes]:
23
33
  """
24
34
  An internal-only endpoint that's subject to breaking changes without notice. Not intended for public use.
25
35
 
@@ -28,6 +38,8 @@ class WorkflowsClient:
28
38
  id : str
29
39
  The ID of the Workflow to pull from
30
40
 
41
+ format : typing.Optional[WorkflowsPullRequestFormat]
42
+
31
43
  request_options : typing.Optional[RequestOptions]
32
44
  Request-specific configuration.
33
45
 
@@ -45,12 +57,16 @@ class WorkflowsClient:
45
57
  )
46
58
  client.workflows.pull(
47
59
  id="string",
60
+ format="json",
48
61
  )
49
62
  """
50
63
  with self._client_wrapper.httpx_client.stream(
51
64
  f"v1/workflows/{jsonable_encoder(id)}/pull",
52
65
  base_url=self._client_wrapper.get_environment().default,
53
66
  method="GET",
67
+ params={
68
+ "format": format,
69
+ },
54
70
  request_options=request_options,
55
71
  ) as _response:
56
72
  try:
@@ -59,6 +75,16 @@ class WorkflowsClient:
59
75
  yield _chunk
60
76
  return
61
77
  _response.read()
78
+ if _response.status_code == 400:
79
+ raise BadRequestError(
80
+ typing.cast(
81
+ typing.Optional[typing.Any],
82
+ parse_obj_as(
83
+ type_=typing.Optional[typing.Any], # type: ignore
84
+ object_=_response.json(),
85
+ ),
86
+ )
87
+ )
62
88
  _response_json = _response.json()
63
89
  except JSONDecodeError:
64
90
  raise ApiError(status_code=_response.status_code, body=_response.text)
@@ -70,6 +96,7 @@ class WorkflowsClient:
70
96
  exec_config: WorkflowPushExecConfig,
71
97
  label: str,
72
98
  workflow_sandbox_id: typing.Optional[str] = OMIT,
99
+ deployment_config: typing.Optional[WorkflowPushDeploymentConfigRequest] = OMIT,
73
100
  request_options: typing.Optional[RequestOptions] = None,
74
101
  ) -> WorkflowPushResponse:
75
102
  """
@@ -83,6 +110,8 @@ class WorkflowsClient:
83
110
 
84
111
  workflow_sandbox_id : typing.Optional[str]
85
112
 
113
+ deployment_config : typing.Optional[WorkflowPushDeploymentConfigRequest]
114
+
86
115
  request_options : typing.Optional[RequestOptions]
87
116
  Request-specific configuration.
88
117
 
@@ -111,6 +140,9 @@ class WorkflowsClient:
111
140
  "exec_config": exec_config,
112
141
  "label": label,
113
142
  "workflow_sandbox_id": workflow_sandbox_id,
143
+ "deployment_config": convert_and_respect_annotation_metadata(
144
+ object_=deployment_config, annotation=WorkflowPushDeploymentConfigRequest, direction="write"
145
+ ),
114
146
  },
115
147
  request_options=request_options,
116
148
  omit=OMIT,
@@ -135,7 +167,11 @@ class AsyncWorkflowsClient:
135
167
  self._client_wrapper = client_wrapper
136
168
 
137
169
  async def pull(
138
- self, id: str, *, request_options: typing.Optional[RequestOptions] = None
170
+ self,
171
+ id: str,
172
+ *,
173
+ format: typing.Optional[WorkflowsPullRequestFormat] = None,
174
+ request_options: typing.Optional[RequestOptions] = None,
139
175
  ) -> typing.AsyncIterator[bytes]:
140
176
  """
141
177
  An internal-only endpoint that's subject to breaking changes without notice. Not intended for public use.
@@ -145,6 +181,8 @@ class AsyncWorkflowsClient:
145
181
  id : str
146
182
  The ID of the Workflow to pull from
147
183
 
184
+ format : typing.Optional[WorkflowsPullRequestFormat]
185
+
148
186
  request_options : typing.Optional[RequestOptions]
149
187
  Request-specific configuration.
150
188
 
@@ -167,6 +205,7 @@ class AsyncWorkflowsClient:
167
205
  async def main() -> None:
168
206
  await client.workflows.pull(
169
207
  id="string",
208
+ format="json",
170
209
  )
171
210
 
172
211
 
@@ -176,6 +215,9 @@ class AsyncWorkflowsClient:
176
215
  f"v1/workflows/{jsonable_encoder(id)}/pull",
177
216
  base_url=self._client_wrapper.get_environment().default,
178
217
  method="GET",
218
+ params={
219
+ "format": format,
220
+ },
179
221
  request_options=request_options,
180
222
  ) as _response:
181
223
  try:
@@ -184,6 +226,16 @@ class AsyncWorkflowsClient:
184
226
  yield _chunk
185
227
  return
186
228
  await _response.aread()
229
+ if _response.status_code == 400:
230
+ raise BadRequestError(
231
+ typing.cast(
232
+ typing.Optional[typing.Any],
233
+ parse_obj_as(
234
+ type_=typing.Optional[typing.Any], # type: ignore
235
+ object_=_response.json(),
236
+ ),
237
+ )
238
+ )
187
239
  _response_json = _response.json()
188
240
  except JSONDecodeError:
189
241
  raise ApiError(status_code=_response.status_code, body=_response.text)
@@ -195,6 +247,7 @@ class AsyncWorkflowsClient:
195
247
  exec_config: WorkflowPushExecConfig,
196
248
  label: str,
197
249
  workflow_sandbox_id: typing.Optional[str] = OMIT,
250
+ deployment_config: typing.Optional[WorkflowPushDeploymentConfigRequest] = OMIT,
198
251
  request_options: typing.Optional[RequestOptions] = None,
199
252
  ) -> WorkflowPushResponse:
200
253
  """
@@ -208,6 +261,8 @@ class AsyncWorkflowsClient:
208
261
 
209
262
  workflow_sandbox_id : typing.Optional[str]
210
263
 
264
+ deployment_config : typing.Optional[WorkflowPushDeploymentConfigRequest]
265
+
211
266
  request_options : typing.Optional[RequestOptions]
212
267
  Request-specific configuration.
213
268
 
@@ -244,6 +299,9 @@ class AsyncWorkflowsClient:
244
299
  "exec_config": exec_config,
245
300
  "label": label,
246
301
  "workflow_sandbox_id": workflow_sandbox_id,
302
+ "deployment_config": convert_and_respect_annotation_metadata(
303
+ object_=deployment_config, annotation=WorkflowPushDeploymentConfigRequest, direction="write"
304
+ ),
247
305
  },
248
306
  request_options=request_options,
249
307
  omit=OMIT,
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from .workflows_pull_request_format import WorkflowsPullRequestFormat
4
+
5
+ __all__ = ["WorkflowsPullRequestFormat"]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ WorkflowsPullRequestFormat = typing.Union[typing.Literal["json", "zip"], typing.Any]
vellum/types/__init__.py CHANGED
@@ -20,6 +20,9 @@ from .array_vellum_value import ArrayVellumValue
20
20
  from .array_vellum_value_request import ArrayVellumValueRequest
21
21
  from .audio_chat_message_content import AudioChatMessageContent
22
22
  from .audio_chat_message_content_request import AudioChatMessageContentRequest
23
+ from .audio_variable_value import AudioVariableValue
24
+ from .audio_vellum_value import AudioVellumValue
25
+ from .audio_vellum_value_request import AudioVellumValueRequest
23
26
  from .basic_vectorizer_intfloat_multilingual_e_5_large import BasicVectorizerIntfloatMultilingualE5Large
24
27
  from .basic_vectorizer_intfloat_multilingual_e_5_large_request import BasicVectorizerIntfloatMultilingualE5LargeRequest
25
28
  from .basic_vectorizer_sentence_transformers_multi_qa_mpnet_base_cos_v_1 import (
@@ -251,6 +254,7 @@ from .open_ai_vectorizer_text_embedding_3_small_request import OpenAiVectorizerT
251
254
  from .open_ai_vectorizer_text_embedding_ada_002 import OpenAiVectorizerTextEmbeddingAda002
252
255
  from .open_ai_vectorizer_text_embedding_ada_002_request import OpenAiVectorizerTextEmbeddingAda002Request
253
256
  from .paginated_container_image_read_list import PaginatedContainerImageReadList
257
+ from .paginated_deployment_release_tag_read_list import PaginatedDeploymentReleaseTagReadList
254
258
  from .paginated_document_index_read_list import PaginatedDocumentIndexReadList
255
259
  from .paginated_folder_entity_list import PaginatedFolderEntityList
256
260
  from .paginated_slim_deployment_read_list import PaginatedSlimDeploymentReadList
@@ -258,6 +262,7 @@ from .paginated_slim_document_list import PaginatedSlimDocumentList
258
262
  from .paginated_slim_workflow_deployment_list import PaginatedSlimWorkflowDeploymentList
259
263
  from .paginated_test_suite_run_execution_list import PaginatedTestSuiteRunExecutionList
260
264
  from .paginated_test_suite_test_case_list import PaginatedTestSuiteTestCaseList
265
+ from .paginated_workflow_release_tag_read_list import PaginatedWorkflowReleaseTagReadList
261
266
  from .pdf_search_result_meta_source import PdfSearchResultMetaSource
262
267
  from .pdf_search_result_meta_source_request import PdfSearchResultMetaSourceRequest
263
268
  from .plain_text_prompt_block_request import PlainTextPromptBlockRequest
@@ -470,6 +475,7 @@ from .workflow_output_json import WorkflowOutputJson
470
475
  from .workflow_output_number import WorkflowOutputNumber
471
476
  from .workflow_output_search_results import WorkflowOutputSearchResults
472
477
  from .workflow_output_string import WorkflowOutputString
478
+ from .workflow_push_deployment_config_request import WorkflowPushDeploymentConfigRequest
473
479
  from .workflow_push_exec_config import WorkflowPushExecConfig
474
480
  from .workflow_push_response import WorkflowPushResponse
475
481
  from .workflow_release_tag_read import WorkflowReleaseTagRead
@@ -513,6 +519,9 @@ __all__ = [
513
519
  "ArrayVellumValueRequest",
514
520
  "AudioChatMessageContent",
515
521
  "AudioChatMessageContentRequest",
522
+ "AudioVariableValue",
523
+ "AudioVellumValue",
524
+ "AudioVellumValueRequest",
516
525
  "BasicVectorizerIntfloatMultilingualE5Large",
517
526
  "BasicVectorizerIntfloatMultilingualE5LargeRequest",
518
527
  "BasicVectorizerSentenceTransformersMultiQaMpnetBaseCosV1",
@@ -732,6 +741,7 @@ __all__ = [
732
741
  "OpenAiVectorizerTextEmbeddingAda002",
733
742
  "OpenAiVectorizerTextEmbeddingAda002Request",
734
743
  "PaginatedContainerImageReadList",
744
+ "PaginatedDeploymentReleaseTagReadList",
735
745
  "PaginatedDocumentIndexReadList",
736
746
  "PaginatedFolderEntityList",
737
747
  "PaginatedSlimDeploymentReadList",
@@ -739,6 +749,7 @@ __all__ = [
739
749
  "PaginatedSlimWorkflowDeploymentList",
740
750
  "PaginatedTestSuiteRunExecutionList",
741
751
  "PaginatedTestSuiteTestCaseList",
752
+ "PaginatedWorkflowReleaseTagReadList",
742
753
  "PdfSearchResultMetaSource",
743
754
  "PdfSearchResultMetaSourceRequest",
744
755
  "PlainTextPromptBlockRequest",
@@ -947,6 +958,7 @@ __all__ = [
947
958
  "WorkflowOutputNumber",
948
959
  "WorkflowOutputSearchResults",
949
960
  "WorkflowOutputString",
961
+ "WorkflowPushDeploymentConfigRequest",
950
962
  "WorkflowPushExecConfig",
951
963
  "WorkflowPushResponse",
952
964
  "WorkflowReleaseTagRead",
@@ -8,6 +8,7 @@ from .json_variable_value import JsonVariableValue
8
8
  from .error_variable_value import ErrorVariableValue
9
9
  from .function_call_variable_value import FunctionCallVariableValue
10
10
  from .image_variable_value import ImageVariableValue
11
+ from .audio_variable_value import AudioVariableValue
11
12
  from .chat_history_variable_value import ChatHistoryVariableValue
12
13
  from .search_results_variable_value import SearchResultsVariableValue
13
14
  import typing
@@ -21,6 +22,7 @@ ArrayVariableValueItem = typing.Union[
21
22
  ErrorVariableValue,
22
23
  FunctionCallVariableValue,
23
24
  ImageVariableValue,
25
+ AudioVariableValue,
24
26
  ChatHistoryVariableValue,
25
27
  SearchResultsVariableValue,
26
28
  "ArrayVariableValue",
@@ -0,0 +1,25 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from ..core.pydantic_utilities import UniversalBaseModel
4
+ import typing
5
+ from .vellum_audio import VellumAudio
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
7
+ import pydantic
8
+
9
+
10
+ class AudioVariableValue(UniversalBaseModel):
11
+ """
12
+ A base Vellum primitive value representing audio.
13
+ """
14
+
15
+ type: typing.Literal["AUDIO"] = "AUDIO"
16
+ value: typing.Optional[VellumAudio] = None
17
+
18
+ if IS_PYDANTIC_V2:
19
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
20
+ else:
21
+
22
+ class Config:
23
+ frozen = True
24
+ smart_union = True
25
+ extra = pydantic.Extra.allow
@@ -0,0 +1,25 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from ..core.pydantic_utilities import UniversalBaseModel
4
+ import typing
5
+ from .vellum_audio import VellumAudio
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
7
+ import pydantic
8
+
9
+
10
+ class AudioVellumValue(UniversalBaseModel):
11
+ """
12
+ A base Vellum primitive value representing audio.
13
+ """
14
+
15
+ type: typing.Literal["AUDIO"] = "AUDIO"
16
+ value: typing.Optional[VellumAudio] = None
17
+
18
+ if IS_PYDANTIC_V2:
19
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
20
+ else:
21
+
22
+ class Config:
23
+ frozen = True
24
+ smart_union = True
25
+ extra = pydantic.Extra.allow
@@ -0,0 +1,25 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from ..core.pydantic_utilities import UniversalBaseModel
4
+ import typing
5
+ from .vellum_audio_request import VellumAudioRequest
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
7
+ import pydantic
8
+
9
+
10
+ class AudioVellumValueRequest(UniversalBaseModel):
11
+ """
12
+ A base Vellum primitive value representing audio.
13
+ """
14
+
15
+ type: typing.Literal["AUDIO"] = "AUDIO"
16
+ value: typing.Optional[VellumAudioRequest] = None
17
+
18
+ if IS_PYDANTIC_V2:
19
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
20
+ else:
21
+
22
+ class Config:
23
+ frozen = True
24
+ smart_union = True
25
+ extra = pydantic.Extra.allow
@@ -0,0 +1,23 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from ..core.pydantic_utilities import UniversalBaseModel
4
+ import typing
5
+ from .deployment_release_tag_read import DeploymentReleaseTagRead
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
7
+ import pydantic
8
+
9
+
10
+ class PaginatedDeploymentReleaseTagReadList(UniversalBaseModel):
11
+ count: typing.Optional[int] = None
12
+ next: typing.Optional[str] = None
13
+ previous: typing.Optional[str] = None
14
+ results: typing.Optional[typing.List[DeploymentReleaseTagRead]] = None
15
+
16
+ if IS_PYDANTIC_V2:
17
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
18
+ else:
19
+
20
+ class Config:
21
+ frozen = True
22
+ smart_union = True
23
+ extra = pydantic.Extra.allow
@@ -0,0 +1,23 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from ..core.pydantic_utilities import UniversalBaseModel
4
+ import typing
5
+ from .workflow_release_tag_read import WorkflowReleaseTagRead
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
7
+ import pydantic
8
+
9
+
10
+ class PaginatedWorkflowReleaseTagReadList(UniversalBaseModel):
11
+ count: typing.Optional[int] = None
12
+ next: typing.Optional[str] = None
13
+ previous: typing.Optional[str] = None
14
+ results: typing.Optional[typing.List[WorkflowReleaseTagRead]] = None
15
+
16
+ if IS_PYDANTIC_V2:
17
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
18
+ else:
19
+
20
+ class Config:
21
+ frozen = True
22
+ smart_union = True
23
+ extra = pydantic.Extra.allow
@@ -1,13 +1,17 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
3
  from ..core.pydantic_utilities import UniversalBaseModel
4
+ import pydantic
4
5
  import typing
5
6
  from ..core.pydantic_utilities import IS_PYDANTIC_V2
6
- import pydantic
7
7
 
8
8
 
9
9
  class VellumAudio(UniversalBaseModel):
10
- src: str
10
+ src: str = pydantic.Field()
11
+ """
12
+ A valid data URL containing the audio data.
13
+ """
14
+
11
15
  metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
12
16
 
13
17
  if IS_PYDANTIC_V2:
@@ -1,13 +1,17 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
3
  from ..core.pydantic_utilities import UniversalBaseModel
4
+ import pydantic
4
5
  import typing
5
6
  from ..core.pydantic_utilities import IS_PYDANTIC_V2
6
- import pydantic
7
7
 
8
8
 
9
9
  class VellumAudioRequest(UniversalBaseModel):
10
- src: str
10
+ src: str = pydantic.Field()
11
+ """
12
+ A valid data URL containing the audio data.
13
+ """
14
+
11
15
  metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
12
16
 
13
17
  if IS_PYDANTIC_V2:
@@ -6,6 +6,7 @@ from .string_vellum_value import StringVellumValue
6
6
  from .number_vellum_value import NumberVellumValue
7
7
  from .json_vellum_value import JsonVellumValue
8
8
  from .image_vellum_value import ImageVellumValue
9
+ from .audio_vellum_value import AudioVellumValue
9
10
  from .function_call_vellum_value import FunctionCallVellumValue
10
11
  from .error_vellum_value import ErrorVellumValue
11
12
  from .chat_history_vellum_value import ChatHistoryVellumValue
@@ -19,6 +20,7 @@ VellumValue = typing.Union[
19
20
  NumberVellumValue,
20
21
  JsonVellumValue,
21
22
  ImageVellumValue,
23
+ AudioVellumValue,
22
24
  FunctionCallVellumValue,
23
25
  ErrorVellumValue,
24
26
  "ArrayVellumValue",
@@ -6,6 +6,7 @@ from .string_vellum_value_request import StringVellumValueRequest
6
6
  from .number_vellum_value_request import NumberVellumValueRequest
7
7
  from .json_vellum_value_request import JsonVellumValueRequest
8
8
  from .image_vellum_value_request import ImageVellumValueRequest
9
+ from .audio_vellum_value_request import AudioVellumValueRequest
9
10
  from .function_call_vellum_value_request import FunctionCallVellumValueRequest
10
11
  from .error_vellum_value_request import ErrorVellumValueRequest
11
12
  from .chat_history_vellum_value_request import ChatHistoryVellumValueRequest
@@ -19,6 +20,7 @@ VellumValueRequest = typing.Union[
19
20
  NumberVellumValueRequest,
20
21
  JsonVellumValueRequest,
21
22
  ImageVellumValueRequest,
23
+ AudioVellumValueRequest,
22
24
  FunctionCallVellumValueRequest,
23
25
  ErrorVellumValueRequest,
24
26
  "ArrayVellumValueRequest",
@@ -0,0 +1,22 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from ..core.pydantic_utilities import UniversalBaseModel
4
+ import typing
5
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
6
+ import pydantic
7
+
8
+
9
+ class WorkflowPushDeploymentConfigRequest(UniversalBaseModel):
10
+ label: typing.Optional[str] = None
11
+ name: typing.Optional[str] = None
12
+ description: typing.Optional[str] = None
13
+ release_tags: typing.Optional[typing.List[str]] = None
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
@@ -1,13 +1,14 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
3
  from ..core.pydantic_utilities import UniversalBaseModel
4
- from ..core.pydantic_utilities import IS_PYDANTIC_V2
5
4
  import typing
5
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
6
6
  import pydantic
7
7
 
8
8
 
9
9
  class WorkflowPushResponse(UniversalBaseModel):
10
10
  workflow_sandbox_id: str
11
+ workflow_deployment_id: typing.Optional[str] = None
11
12
 
12
13
  if IS_PYDANTIC_V2:
13
14
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: vellum-ai
3
- Version: 0.9.3
3
+ Version: 0.9.5
4
4
  Summary:
5
5
  License: MIT
6
6
  Requires-Python: >=3.8,<4.0
@@ -1,8 +1,8 @@
1
- vellum/__init__.py,sha256=uz3omyTboMrMSk6YMbpqA5CI62by2F8tUuu9LWhK66I,34226
1
+ vellum/__init__.py,sha256=lxCyTeUWCY9gVFEdNGjS9D5vo_ZHdBKB5Jq5YBzOAuA,34880
2
2
  vellum/client.py,sha256=kG4b9g1Jjm6zgzGBXCAYXcM_3xNQfBsa2Xut6F0eHQM,115201
3
3
  vellum/core/__init__.py,sha256=SQ85PF84B9MuKnBwHNHWemSGuy-g_515gFYNFhvEE0I,1438
4
4
  vellum/core/api_error.py,sha256=RE8LELok2QCjABadECTvtDp7qejA1VmINCh6TbqPwSE,426
5
- vellum/core/client_wrapper.py,sha256=NgWlRdAr9JcMt5BPf4juPIsbFQfSBTNhjyjHNr8y864,1890
5
+ vellum/core/client_wrapper.py,sha256=eKBQyUrDOyRuqIhipKHnTPLlwF5qCGsy9j7k1um7lu4,1889
6
6
  vellum/core/datetime_utils.py,sha256=nBys2IsYrhPdszxGKCNRPSOCwa-5DWOHG95FB8G9PKo,1047
7
7
  vellum/core/file.py,sha256=X9IbmkZmB2bB_DpmZAO3crWdXagOakAyn6UCOCImCPg,2322
8
8
  vellum/core/http_client.py,sha256=R0pQpCppnEtxccGvXl4uJ76s7ro_65Fo_erlNNLp_AI,19228
@@ -30,15 +30,16 @@ vellum/lib/utils/paginator.py,sha256=yDvgehocYBDclLt5SewZH4hCIyq0yLHdBzkyPCoYPjs
30
30
  vellum/lib/utils/typing.py,sha256=qngWnFwrWLUeu1nmixXGj173mwg7BXKTAyQkxK8AtfQ,327
31
31
  vellum/lib/utils/uuid.py,sha256=nedyhTNQDS2YvrU5gL3PtvG9cgGH87yKOcpGDJAe44E,214
32
32
  vellum/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
33
- vellum/resources/__init__.py,sha256=oPvhJ3z-7efrRlZ7ILrHQTypPBcXLOtGZdGMmHiVpLU,1094
33
+ vellum/resources/__init__.py,sha256=6tqe3AwLJGLW38iua0Tje0n3uz3a4vkqMFxbUJGRs98,1346
34
34
  vellum/resources/ad_hoc/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
35
35
  vellum/resources/ad_hoc/client.py,sha256=maNoWMHH8LSFlr5rDfoJybiPaoWuUiWFkt-IFq8dNMA,17271
36
36
  vellum/resources/container_images/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
37
37
  vellum/resources/container_images/client.py,sha256=jK1n-NFsdBKCeEKh-EIqvw7R8AG9PP4GxxcoH9F0GYs,15463
38
- vellum/resources/deployments/__init__.py,sha256=AE0TcFwLrLBljM0ZDX-pPw4Kqt-1f5JDpIok2HS80QI,157
39
- vellum/resources/deployments/client.py,sha256=tF3llT_g6rfzDHpLhlEoz9gJDy8vIdNGKfICMJp3iEw,29236
40
- vellum/resources/deployments/types/__init__.py,sha256=IhwnmoXJ0r_QEhh1b2tBcaAm_x3fWMVuIhYmAapp_ZA,183
38
+ vellum/resources/deployments/__init__.py,sha256=m64MNuPx3qVazOnTNwOY8oEeDrAkNwMJvUEe5xoMDvs,239
39
+ vellum/resources/deployments/client.py,sha256=sG_Qyc9ks1oFHsBoIJgBnZId-__W5-3T_i8A9elHUzI,34520
40
+ vellum/resources/deployments/types/__init__.py,sha256=29GVdoLOJsADSSSqZwb6CQPeEmPjkKrbsWfru1bemj8,321
41
41
  vellum/resources/deployments/types/deployments_list_request_status.py,sha256=CxlQD16KZXme7x31YYCe_3aAgEueutDTeJo5A4Au-aU,174
42
+ vellum/resources/deployments/types/list_deployment_release_tags_request_source.py,sha256=hRGgWMYZL9uKCmD_2dU8-u9RCPUUGItpNn1tUY-NXKY,180
42
43
  vellum/resources/document_indexes/__init__.py,sha256=YpOl_9IV7xOlH4OmusQxtAJB11kxQfCSMDyT1_UD0oM,165
43
44
  vellum/resources/document_indexes/client.py,sha256=1kp5I8DC4UPvjlWsocuaNhgpIQppDfHFkZIMBKBFj9s,37520
44
45
  vellum/resources/document_indexes/types/__init__.py,sha256=IoFqKHN_VBdEhC7VL8_6Jbatrn0e0zuYEJAJUahcUR0,196
@@ -57,14 +58,17 @@ vellum/resources/test_suite_runs/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-
57
58
  vellum/resources/test_suite_runs/client.py,sha256=gCF1ewlUrCsZhnXYOYqdUuD2twTrQ-u95xOgvRy7WAw,15130
58
59
  vellum/resources/test_suites/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
59
60
  vellum/resources/test_suites/client.py,sha256=XOSXVzgcnyescVX02aKdRzLSxY32xS0ULXbwc9XFAE8,25063
60
- vellum/resources/workflow_deployments/__init__.py,sha256=-5BCA0kSmW6WUh4gqLuQtHv4zFdt9lccuDwMU5YvEu4,173
61
- vellum/resources/workflow_deployments/client.py,sha256=ezSg3EDA5UszvrT15jx7-RoSO8pXRwAIDlqMCJXkNOY,17393
62
- vellum/resources/workflow_deployments/types/__init__.py,sha256=rmS_4dtbgLHGNQJ_pOloygrjl4sNbKZjTEKBxbMyz6E,208
61
+ vellum/resources/workflow_deployments/__init__.py,sha256=_duH6m1CDWcfqX6DTBNjO3ar4Xrl-f5PozMaTcT4Kow,251
62
+ vellum/resources/workflow_deployments/client.py,sha256=dtXQWS0qC8jaV8LdpZ88Ss-JISXI5lLp7UGRUkFXKMY,22667
63
+ vellum/resources/workflow_deployments/types/__init__.py,sha256=W7DKJ1nduwhRckYLvH7wHLdaGH9MXHTZkxwG7FdTngY,340
64
+ vellum/resources/workflow_deployments/types/list_workflow_release_tags_request_source.py,sha256=LPETHLX9Ygha_JRT9oWZAZR6clv-W1tTelXzktkTBX8,178
63
65
  vellum/resources/workflow_deployments/types/workflow_deployments_list_request_status.py,sha256=FXVkVmGM6DZ2RpTGnZXWJYiVlLQ-K5fDtX3WMaBPaWk,182
64
66
  vellum/resources/workflow_sandboxes/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
65
67
  vellum/resources/workflow_sandboxes/client.py,sha256=3wVQxkjrJ5bIS8fB5FpKXCP2dX38299ghWrJ8YmXxwQ,7435
66
- vellum/resources/workflows/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
67
- vellum/resources/workflows/client.py,sha256=lXyxcMpu4pYGd9EmdLHCWTKEwJ2owPOoH_kI7lT5dOQ,8181
68
+ vellum/resources/workflows/__init__.py,sha256=Z4xi8Nxd9U4t35FQSepTt1p-ns0X1xtdNs168kUcuBk,153
69
+ vellum/resources/workflows/client.py,sha256=mJAg6KNbvchX-_rPzIrAWQqPVNPujDdQ9LTt-lHD0eE,10662
70
+ vellum/resources/workflows/types/__init__.py,sha256=-uFca4ypncAOvfsg6sjD-5C9zWdA5qNvU6m675GphVg,177
71
+ vellum/resources/workflows/types/workflows_pull_request_format.py,sha256=dOWE_jnDnniIJLoeseeCms23aklghyBkoPmBFzcqqZk,165
68
72
  vellum/resources/workspace_secrets/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
69
73
  vellum/resources/workspace_secrets/client.py,sha256=h7UzXLyTttPq1t-JZGMg1BWxypxJvBGUdqg7KGT7MK4,8027
70
74
  vellum/terraform/__init__.py,sha256=CxzT0rkV9cXwAtxZ3gv46DCRt9vBl_Sx1SOj5MJtl0Y,498
@@ -78,7 +82,7 @@ vellum/terraform/ml_model/__init__.py,sha256=I8h1Ru-Rb-Hi_HusK6G7nJQZEKQGsAAHMmw
78
82
  vellum/terraform/provider/__init__.py,sha256=-06xKmAmknpohVzw5TD-t1bnUHta8OrQYqvMd04XM-U,12684
79
83
  vellum/terraform/py.typed,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
80
84
  vellum/terraform/versions.json,sha256=45c7jjRD5i4w9DJQHs5ZqLLVXRnQwP9Rirq3mWY-xEo,56
81
- vellum/types/__init__.py,sha256=TsOOpzY7n4ut1T1LuZxN54GgthpA1V0pD10bvhXdZt8,52085
85
+ vellum/types/__init__.py,sha256=sqoQD4V1dk8tGUZoK1EuuaUvFHuPJEB5DkAq3R7Y4F4,52736
82
86
  vellum/types/ad_hoc_execute_prompt_event.py,sha256=bCjujA2XsOgyF3bRZbcEqV2rOIymRgsLoIRtZpB14xg,607
83
87
  vellum/types/ad_hoc_expand_meta_request.py,sha256=hS8PC3hC--OKvRKi2ZFj_RJPQ1bxo2GXno8qJq1kk28,1338
84
88
  vellum/types/ad_hoc_fulfilled_prompt_execution_meta.py,sha256=Bfvf1d_dkmshxRACVM5vcxbH_7AQY23RmrrnPc0ytYY,939
@@ -94,11 +98,14 @@ vellum/types/array_chat_message_content_item_request.py,sha256=sF6gvW2UqE1EDJlG8
94
98
  vellum/types/array_chat_message_content_request.py,sha256=vpPV0KmM_uui7vFHY6f6kE1yj7iOwqOjxEuGhh1ZxFM,809
95
99
  vellum/types/array_input_request.py,sha256=eOuIc8jRrE4uCGWiopQkoSA9QR3VLDogbh2hj8ZxLzw,1069
96
100
  vellum/types/array_variable_value.py,sha256=_BQX5Kk1OLJaAyk3CPgsIgiLR_FI2pvbe5Ne8q9gsqY,876
97
- vellum/types/array_variable_value_item.py,sha256=UeEoHg9zOjYi9MPez8CAeZuRQy5RSu3KEiEyF-t2Nng,963
101
+ vellum/types/array_variable_value_item.py,sha256=5GDpe5sFc4aeJOeXqPxsyLSRYxQ9hFBg5RYlv12ZHaU,1040
98
102
  vellum/types/array_vellum_value.py,sha256=6ZDizIzijUFX29JD4lnNv1mOH-venLD_c_sIiONWzqE,915
99
103
  vellum/types/array_vellum_value_request.py,sha256=SUIfUTeJTDcsH76mb_PfQv3q0GEUkVr4Gk-dqn2Qr-I,951
100
104
  vellum/types/audio_chat_message_content.py,sha256=159ELbeifFmAOvqPKaVSemHytSJ6OR0kOCtspCj4Lmc,725
101
105
  vellum/types/audio_chat_message_content_request.py,sha256=0iy-fv_AYp_3FIJUNza3aqCZrnHBsYN-IwQO690qeUk,754
106
+ vellum/types/audio_variable_value.py,sha256=GLZMcQ_2IicejsXhvQz0kVNfIKmjLHqwa27qYOo881Y,747
107
+ vellum/types/audio_vellum_value.py,sha256=8tbwNkj5UtnjZhFIQZ18O233yCt4fK3BhXpR7S5VEt4,745
108
+ vellum/types/audio_vellum_value_request.py,sha256=KnEyYDvTVqNdYcb4v2AGs5nLbcWFSj351_A9nM2ad8Y,774
102
109
  vellum/types/basic_vectorizer_intfloat_multilingual_e_5_large.py,sha256=YaPY5r4YGfMrcnmIKZgZhjNrVOINZfSo_c7xtNA9MY0,827
103
110
  vellum/types/basic_vectorizer_intfloat_multilingual_e_5_large_request.py,sha256=HuuCD5Z_mUoMkkGoCnvQ4vkI8xt3zjO4x5mD6dheQ1I,834
104
111
  vellum/types/basic_vectorizer_sentence_transformers_multi_qa_mpnet_base_cos_v_1.py,sha256=2svbTOM633pvslH9fw4F4M4LcWby_5r8-ukihTFuDuY,911
@@ -318,6 +325,7 @@ vellum/types/open_ai_vectorizer_text_embedding_3_small_request.py,sha256=-lwNeWj
318
325
  vellum/types/open_ai_vectorizer_text_embedding_ada_002.py,sha256=c4vNlR6lRvUjq-67M06sroDMNMG_qC4JUBqwmKEJQ2I,812
319
326
  vellum/types/open_ai_vectorizer_text_embedding_ada_002_request.py,sha256=FdpkkNBGgRwfqFjBwpfH4t2zKIM0pIYminX2iZQUzvY,841
320
327
  vellum/types/paginated_container_image_read_list.py,sha256=7lwIgs1q7Z0xDYPGWPnjSNC1kU_peu79CotzaaQfRdA,801
328
+ vellum/types/paginated_deployment_release_tag_read_list.py,sha256=hp7D74CxPY14dEPRZ-fnTCwp63upxkYquL1e74oYXh4,826
321
329
  vellum/types/paginated_document_index_read_list.py,sha256=bO7pm3KCZi5LDO17YXgr_lUF9SRdAfMu6wOutX91ANw,797
322
330
  vellum/types/paginated_folder_entity_list.py,sha256=PElkrxMrnEjL9YGXde_r7RpNQUjzYfaLDlnwO8WFDSo,776
323
331
  vellum/types/paginated_slim_deployment_read_list.py,sha256=H8VKHr-aZP4ACwQJSs7KOrbqaj2nmMmyyvZHe7NRWRc,1048
@@ -325,6 +333,7 @@ vellum/types/paginated_slim_document_list.py,sha256=8f7L0ZqD9hBU4XTGTdltl0ORuyy2
325
333
  vellum/types/paginated_slim_workflow_deployment_list.py,sha256=b0SGPewaOK5VlvlxymI6BELdqC9W0m823IZK-SaOiIw,1072
326
334
  vellum/types/paginated_test_suite_run_execution_list.py,sha256=_NCKlKzs-8h0oZFhbGLO4sMt3xh9jicPqJdYu-NN-8c,1019
327
335
  vellum/types/paginated_test_suite_test_case_list.py,sha256=9KrCCQKy0egMmVx5U2k6o1GjNrUYpVvGG_hm2cHqIzc,995
336
+ vellum/types/paginated_workflow_release_tag_read_list.py,sha256=dH24ESWyAMVtyHsBkxG8kJ9oORY04Wn3IN-7jvV7Lu4,818
328
337
  vellum/types/pdf_search_result_meta_source.py,sha256=EMVhqdN1bwE6Ujdx4VhlmKQtJvitN-57kY8oZPxh9dI,1126
329
338
  vellum/types/pdf_search_result_meta_source_request.py,sha256=nUhaD2Kw1paGC6O_ICVNu3R0e1SVgTshRTkGNgmcjXo,1133
330
339
  vellum/types/plain_text_prompt_block_request.py,sha256=ljdh2OD-xUOAhEF8raHc6WnQDnWdtEY8aSNsEiuC5nY,971
@@ -493,18 +502,18 @@ vellum/types/unit_enum.py,sha256=BKWRVp2WfHtGK4D6TsolhNJHGHfExzrRHkFn8H8QkwQ,113
493
502
  vellum/types/upload_document_response.py,sha256=6_5Cm4yBPq5nD-rEql6GsmrAtSVVtNRczOL5YwsBVMI,649
494
503
  vellum/types/upsert_test_suite_test_case_request.py,sha256=iB38vx4mo4yNLV5XTeXMGR-PJLOQPloWQOAAi7PDpM0,2079
495
504
  vellum/types/variable_prompt_block_request.py,sha256=XYiA3R_jaMZ2Mq37Lbh7CfBqqj93Yv8ZMVYGheodBdY,990
496
- vellum/types/vellum_audio.py,sha256=PiCX2QSfGIhVclKWwciTUQjbhK9vUiFyUzWVnt3x8ic,637
497
- vellum/types/vellum_audio_request.py,sha256=CHjXt7WV8oRQ7QbcT_Ty929yGAq--mMg2bZx3UU9fvE,644
505
+ vellum/types/vellum_audio.py,sha256=oPm1bcxk7fTfWfHWOPSLvrZrRBjCyPDVDRMACPoWmMI,721
506
+ vellum/types/vellum_audio_request.py,sha256=y9CZgQ1TteW0AHNk8GuAZLNVFa981rh7P9vyV8bfgys,728
498
507
  vellum/types/vellum_error.py,sha256=jCKfuCkDTiyFb1-QyP2cg0wReja6wMuooKPAjNhBA0M,643
499
508
  vellum/types/vellum_error_code_enum.py,sha256=thsWeS_QSTEF_vElgJ5tA2Zn98kF1mYnDRKtIJTu4fo,271
500
509
  vellum/types/vellum_error_request.py,sha256=RacXJoIgR8MeXXWDMI76pkxLBhCRgHnbj-aIJytZtP4,650
501
510
  vellum/types/vellum_image.py,sha256=wkFRgxOkxFPrmRdWTO58_41_vk0HYn5k4xsc-5ywxEs,637
502
511
  vellum/types/vellum_image_request.py,sha256=_Gr4L7PSY8PNQINyTy04hPdwLc8_bR1RTUWZ73RQRYM,644
503
- vellum/types/vellum_value.py,sha256=LPV1UFvtD2P3pnq1pyVNHHgVip_1Ncl3u8C7RCa6rkE,898
512
+ vellum/types/vellum_value.py,sha256=fpLQ84tTHb2OQK162TIqmfwa2_31M9NAmkzA1DIPAGY,969
504
513
  vellum/types/vellum_value_logical_condition_group_request.py,sha256=vyr6lhHuS-6YtcFL5TTmPGtKRoNI9w63N7N2RPQwKVQ,1402
505
514
  vellum/types/vellum_value_logical_condition_request.py,sha256=HkZfj4X48UHFrPDHgUi3lp0MUGBMfroC0noNqZ_rW8o,1177
506
515
  vellum/types/vellum_value_logical_expression_request.py,sha256=vjNsI1NUAkwxLwIXJM_DVXTObyAM63gOfHj6aHw7osc,479
507
- vellum/types/vellum_value_request.py,sha256=c0ds41RlI9rQnUXrt-An6wssRKLk7hKntjSEk7FqOuo,1103
516
+ vellum/types/vellum_value_request.py,sha256=Yke9JRiEaAS7i9NiCUMZiECzQOkSeb7jRRAVf5pXUWo,1196
508
517
  vellum/types/vellum_variable.py,sha256=LNNNlYbT1VqadO6aUmeir9cXirtxgrIl-R2EalYZ5Uo,1123
509
518
  vellum/types/vellum_variable_extensions.py,sha256=PsrRo0STOKhxrkSFRrOXCPlf1x5Uxpy3vVMJz02O20E,685
510
519
  vellum/types/vellum_variable_extensions_request.py,sha256=n5qAdEDpPtC_eS4HVRMFkm0f9GAvu16DZy7-R9FGEPI,692
@@ -533,8 +542,9 @@ vellum/types/workflow_output_json.py,sha256=MiCF-mq121YKZmYeaVpb3Tgh4XYqWjNgo3uM
533
542
  vellum/types/workflow_output_number.py,sha256=p8APNBpl6c3e3dxCFvZtL0jyKOmu9s6LkY3vgXwhTMw,812
534
543
  vellum/types/workflow_output_search_results.py,sha256=r3RRGVVrH2H9NAuxA7qmG8lponyeLHHhCx6AUiMYWzc,903
535
544
  vellum/types/workflow_output_string.py,sha256=_jclzbQ-Wlf-7FEVTWXhs9h5FWfj4xGpiODZBOzT43w,810
545
+ vellum/types/workflow_push_deployment_config_request.py,sha256=pG6bZtlw7S0TcXtNRQNa7y_2NodZe7dp5SchIrgRUVU,745
536
546
  vellum/types/workflow_push_exec_config.py,sha256=2JSGRwPx97IO3rDQmpyen_Zs7R4e1nDUk7jRAZG5U8s,151
537
- vellum/types/workflow_push_response.py,sha256=M9aVBUj4J9LGj5hMNBNMCVZKPnPvDWo9F90HSEhRW0o,578
547
+ vellum/types/workflow_push_response.py,sha256=BHFX9M87__2AwW6krLxumQ3ecOR6qMOMgVmvQdS_6Ls,634
538
548
  vellum/types/workflow_release_tag_read.py,sha256=S7ekl01oVDetL8R7MdBTb4cDhHN0W0iHGNJ1-ZpY3Tc,1155
539
549
  vellum/types/workflow_release_tag_workflow_deployment_history_item.py,sha256=pjWobdk9mZD3Px86rwFHfs_PYJBGXDKQUkxsgNEe6EA,825
540
550
  vellum/types/workflow_request_chat_history_input_request.py,sha256=WCZvwDuNS8ylWOOoKD3t7fHLSYB0h-fVCqeDRzqPoPA,898
@@ -555,7 +565,7 @@ vellum/types/workflow_result_event_output_data_string.py,sha256=tM3kgh6tEhD0dFEb
555
565
  vellum/types/workflow_stream_event.py,sha256=Wn3Yzuy9MqWAeo8tEaXDTKDEbJoA8DdYdMVq8EKuhu8,361
556
566
  vellum/types/workspace_secret_read.py,sha256=3CnHDG72IAY0KRNvc31F0xLmhnpwjQHnDYCfQJzCxI0,714
557
567
  vellum/version.py,sha256=jq-1PlAYxN9AXuaZqbYk9ak27SgE2lw9Ia5gx1b1gVI,76
558
- vellum_ai-0.9.3.dist-info/LICENSE,sha256=CcaljEIoOBaU-wItPH4PmM_mDCGpyuUY0Er1BGu5Ti8,1073
559
- vellum_ai-0.9.3.dist-info/METADATA,sha256=D55Hrkl9LmXgxpCVIgO1rfc_G8dFKO3REHEtqj6qE7U,4394
560
- vellum_ai-0.9.3.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
561
- vellum_ai-0.9.3.dist-info/RECORD,,
568
+ vellum_ai-0.9.5.dist-info/LICENSE,sha256=CcaljEIoOBaU-wItPH4PmM_mDCGpyuUY0Er1BGu5Ti8,1073
569
+ vellum_ai-0.9.5.dist-info/METADATA,sha256=l-CeQgxUQREfkgizlV1e_eFat47Dv1eDEsb3KKY8kds,4394
570
+ vellum_ai-0.9.5.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
571
+ vellum_ai-0.9.5.dist-info/RECORD,,