vellum-ai 0.14.82__py3-none-any.whl → 0.14.84__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. vellum/__init__.py +4 -0
  2. vellum/client/README.md +1 -9
  3. vellum/client/__init__.py +44 -24
  4. vellum/client/core/client_wrapper.py +2 -1
  5. vellum/client/core/http_client.py +0 -2
  6. vellum/client/core/jsonable_encoder.py +0 -1
  7. vellum/client/core/pydantic_utilities.py +1 -3
  8. vellum/client/core/serialization.py +1 -2
  9. vellum/client/reference.md +8 -0
  10. vellum/client/resources/ad_hoc/client.py +20 -12
  11. vellum/client/resources/deployments/client.py +6 -2
  12. vellum/client/resources/documents/client.py +10 -0
  13. vellum/client/types/__init__.py +4 -0
  14. vellum/client/types/container_image_build_config.py +1 -0
  15. vellum/client/types/document_read.py +5 -0
  16. vellum/client/types/execution_thinking_vellum_value.py +1 -1
  17. vellum/client/types/google_vertex_ai_vectorizer_gemini_embedding_001.py +21 -0
  18. vellum/client/types/google_vertex_ai_vectorizer_gemini_embedding_001_request.py +21 -0
  19. vellum/client/types/indexing_config_vectorizer.py +2 -0
  20. vellum/client/types/indexing_config_vectorizer_request.py +2 -0
  21. vellum/client/types/thinking_vellum_value.py +1 -1
  22. vellum/client/types/thinking_vellum_value_request.py +1 -1
  23. vellum/client/types/workflow_sandbox_example.py +2 -0
  24. vellum/types/google_vertex_ai_vectorizer_gemini_embedding_001.py +3 -0
  25. vellum/types/google_vertex_ai_vectorizer_gemini_embedding_001_request.py +3 -0
  26. vellum/workflows/nodes/displayable/inline_prompt_node/node.py +2 -2
  27. vellum/workflows/nodes/displayable/prompt_deployment_node/node.py +2 -2
  28. vellum/workflows/nodes/experimental/tool_calling_node/node.py +3 -0
  29. {vellum_ai-0.14.82.dist-info → vellum_ai-0.14.84.dist-info}/METADATA +1 -1
  30. {vellum_ai-0.14.82.dist-info → vellum_ai-0.14.84.dist-info}/RECORD +35 -30
  31. vellum_ee/workflows/display/workflows/base_workflow_display.py +10 -5
  32. vellum_ee/workflows/tests/test_serialize_module.py +1 -1
  33. {vellum_ai-0.14.82.dist-info → vellum_ai-0.14.84.dist-info}/LICENSE +0 -0
  34. {vellum_ai-0.14.82.dist-info → vellum_ai-0.14.84.dist-info}/WHEEL +0 -0
  35. {vellum_ai-0.14.82.dist-info → vellum_ai-0.14.84.dist-info}/entry_points.txt +0 -0
vellum/__init__.py CHANGED
@@ -170,6 +170,8 @@ from .types import (
170
170
  GenerateStreamResultData,
171
171
  GoogleVertexAiVectorizerConfig,
172
172
  GoogleVertexAiVectorizerConfigRequest,
173
+ GoogleVertexAiVectorizerGeminiEmbedding001,
174
+ GoogleVertexAiVectorizerGeminiEmbedding001Request,
173
175
  GoogleVertexAiVectorizerTextEmbedding004,
174
176
  GoogleVertexAiVectorizerTextEmbedding004Request,
175
177
  GoogleVertexAiVectorizerTextMultilingualEmbedding002,
@@ -808,6 +810,8 @@ __all__ = [
808
810
  "GenerateStreamResultData",
809
811
  "GoogleVertexAiVectorizerConfig",
810
812
  "GoogleVertexAiVectorizerConfigRequest",
813
+ "GoogleVertexAiVectorizerGeminiEmbedding001",
814
+ "GoogleVertexAiVectorizerGeminiEmbedding001Request",
811
815
  "GoogleVertexAiVectorizerTextEmbedding004",
812
816
  "GoogleVertexAiVectorizerTextEmbedding004Request",
813
817
  "GoogleVertexAiVectorizerTextMultilingualEmbedding002",
vellum/client/README.md CHANGED
@@ -173,6 +173,7 @@ client.execute_prompt(..., request_options={
173
173
 
174
174
  You can override the `httpx` client to customize it for your use-case. Some common use-cases include support for proxies
175
175
  and transports.
176
+
176
177
  ```python
177
178
  import httpx
178
179
  from vellum import Vellum
@@ -186,12 +187,3 @@ client = Vellum(
186
187
  )
187
188
  ```
188
189
 
189
- ## Contributing
190
-
191
- While we value open-source contributions to this SDK, this library is generated programmatically.
192
- Additions made directly to this library would have to be moved over to our generation code,
193
- otherwise they would be overwritten upon the next generated release. Feel free to open a PR as
194
- a proof of concept, but know that we will not be able to merge it as-is. We suggest opening
195
- an issue first to discuss with us!
196
-
197
- On the other hand, contributions to the README are always very welcome!
vellum/client/__init__.py CHANGED
@@ -129,7 +129,9 @@ class Vellum:
129
129
  follow_redirects: typing.Optional[bool] = True,
130
130
  httpx_client: typing.Optional[httpx.Client] = None,
131
131
  ):
132
- _defaulted_timeout = timeout if timeout is not None else None if httpx_client is None else None
132
+ _defaulted_timeout = (
133
+ timeout if timeout is not None else None if httpx_client is None else httpx_client.timeout.read
134
+ )
133
135
  self._client_wrapper = SyncClientWrapper(
134
136
  environment=environment,
135
137
  api_key=api_key,
@@ -210,13 +212,13 @@ class Vellum:
210
212
  "url": url,
211
213
  "method": method,
212
214
  "body": convert_and_respect_annotation_metadata(
213
- object_=body, annotation=ExecuteApiRequestBody, direction="write"
215
+ object_=body, annotation=typing.Optional[ExecuteApiRequestBody], direction="write"
214
216
  ),
215
217
  "headers": convert_and_respect_annotation_metadata(
216
218
  object_=headers, annotation=typing.Dict[str, ExecuteApiRequestHeadersValue], direction="write"
217
219
  ),
218
220
  "bearer_token": convert_and_respect_annotation_metadata(
219
- object_=bearer_token, annotation=ExecuteApiRequestBearerToken, direction="write"
221
+ object_=bearer_token, annotation=typing.Optional[ExecuteApiRequestBearerToken], direction="write"
220
222
  ),
221
223
  },
222
224
  headers={
@@ -423,10 +425,14 @@ class Vellum:
423
425
  "release_tag": release_tag,
424
426
  "external_id": external_id,
425
427
  "expand_meta": convert_and_respect_annotation_metadata(
426
- object_=expand_meta, annotation=PromptDeploymentExpandMetaRequest, direction="write"
428
+ object_=expand_meta,
429
+ annotation=typing.Optional[PromptDeploymentExpandMetaRequest],
430
+ direction="write",
427
431
  ),
428
432
  "raw_overrides": convert_and_respect_annotation_metadata(
429
- object_=raw_overrides, annotation=RawPromptExecutionOverridesRequest, direction="write"
433
+ object_=raw_overrides,
434
+ annotation=typing.Optional[RawPromptExecutionOverridesRequest],
435
+ direction="write",
430
436
  ),
431
437
  "expand_raw": expand_raw,
432
438
  "metadata": metadata,
@@ -576,10 +582,14 @@ class Vellum:
576
582
  "release_tag": release_tag,
577
583
  "external_id": external_id,
578
584
  "expand_meta": convert_and_respect_annotation_metadata(
579
- object_=expand_meta, annotation=PromptDeploymentExpandMetaRequest, direction="write"
585
+ object_=expand_meta,
586
+ annotation=typing.Optional[PromptDeploymentExpandMetaRequest],
587
+ direction="write",
580
588
  ),
581
589
  "raw_overrides": convert_and_respect_annotation_metadata(
582
- object_=raw_overrides, annotation=RawPromptExecutionOverridesRequest, direction="write"
590
+ object_=raw_overrides,
591
+ annotation=typing.Optional[RawPromptExecutionOverridesRequest],
592
+ direction="write",
583
593
  ),
584
594
  "expand_raw": expand_raw,
585
595
  "metadata": metadata,
@@ -723,7 +733,7 @@ class Vellum:
723
733
  object_=inputs, annotation=typing.Sequence[WorkflowRequestInputRequest], direction="write"
724
734
  ),
725
735
  "expand_meta": convert_and_respect_annotation_metadata(
726
- object_=expand_meta, annotation=WorkflowExpandMetaRequest, direction="write"
736
+ object_=expand_meta, annotation=typing.Optional[WorkflowExpandMetaRequest], direction="write"
727
737
  ),
728
738
  "workflow_deployment_id": workflow_deployment_id,
729
739
  "workflow_deployment_name": workflow_deployment_name,
@@ -858,7 +868,7 @@ class Vellum:
858
868
  object_=inputs, annotation=typing.Sequence[WorkflowRequestInputRequest], direction="write"
859
869
  ),
860
870
  "expand_meta": convert_and_respect_annotation_metadata(
861
- object_=expand_meta, annotation=WorkflowExpandMetaRequest, direction="write"
871
+ object_=expand_meta, annotation=typing.Optional[WorkflowExpandMetaRequest], direction="write"
862
872
  ),
863
873
  "workflow_deployment_id": workflow_deployment_id,
864
874
  "workflow_deployment_name": workflow_deployment_name,
@@ -988,7 +998,7 @@ class Vellum:
988
998
  object_=requests, annotation=typing.Sequence[GenerateRequest], direction="write"
989
999
  ),
990
1000
  "options": convert_and_respect_annotation_metadata(
991
- object_=options, annotation=GenerateOptionsRequest, direction="write"
1001
+ object_=options, annotation=typing.Optional[GenerateOptionsRequest], direction="write"
992
1002
  ),
993
1003
  },
994
1004
  headers={
@@ -1116,7 +1126,7 @@ class Vellum:
1116
1126
  object_=requests, annotation=typing.Sequence[GenerateRequest], direction="write"
1117
1127
  ),
1118
1128
  "options": convert_and_respect_annotation_metadata(
1119
- object_=options, annotation=GenerateOptionsRequest, direction="write"
1129
+ object_=options, annotation=typing.Optional[GenerateOptionsRequest], direction="write"
1120
1130
  ),
1121
1131
  },
1122
1132
  headers={
@@ -1245,7 +1255,7 @@ class Vellum:
1245
1255
  "index_name": index_name,
1246
1256
  "query": query,
1247
1257
  "options": convert_and_respect_annotation_metadata(
1248
- object_=options, annotation=SearchRequestOptionsRequest, direction="write"
1258
+ object_=options, annotation=typing.Optional[SearchRequestOptionsRequest], direction="write"
1249
1259
  ),
1250
1260
  "document_index": document_index,
1251
1261
  },
@@ -1505,7 +1515,9 @@ class AsyncVellum:
1505
1515
  follow_redirects: typing.Optional[bool] = True,
1506
1516
  httpx_client: typing.Optional[httpx.AsyncClient] = None,
1507
1517
  ):
1508
- _defaulted_timeout = timeout if timeout is not None else None if httpx_client is None else None
1518
+ _defaulted_timeout = (
1519
+ timeout if timeout is not None else None if httpx_client is None else httpx_client.timeout.read
1520
+ )
1509
1521
  self._client_wrapper = AsyncClientWrapper(
1510
1522
  environment=environment,
1511
1523
  api_key=api_key,
@@ -1594,13 +1606,13 @@ class AsyncVellum:
1594
1606
  "url": url,
1595
1607
  "method": method,
1596
1608
  "body": convert_and_respect_annotation_metadata(
1597
- object_=body, annotation=ExecuteApiRequestBody, direction="write"
1609
+ object_=body, annotation=typing.Optional[ExecuteApiRequestBody], direction="write"
1598
1610
  ),
1599
1611
  "headers": convert_and_respect_annotation_metadata(
1600
1612
  object_=headers, annotation=typing.Dict[str, ExecuteApiRequestHeadersValue], direction="write"
1601
1613
  ),
1602
1614
  "bearer_token": convert_and_respect_annotation_metadata(
1603
- object_=bearer_token, annotation=ExecuteApiRequestBearerToken, direction="write"
1615
+ object_=bearer_token, annotation=typing.Optional[ExecuteApiRequestBearerToken], direction="write"
1604
1616
  ),
1605
1617
  },
1606
1618
  headers={
@@ -1823,10 +1835,14 @@ class AsyncVellum:
1823
1835
  "release_tag": release_tag,
1824
1836
  "external_id": external_id,
1825
1837
  "expand_meta": convert_and_respect_annotation_metadata(
1826
- object_=expand_meta, annotation=PromptDeploymentExpandMetaRequest, direction="write"
1838
+ object_=expand_meta,
1839
+ annotation=typing.Optional[PromptDeploymentExpandMetaRequest],
1840
+ direction="write",
1827
1841
  ),
1828
1842
  "raw_overrides": convert_and_respect_annotation_metadata(
1829
- object_=raw_overrides, annotation=RawPromptExecutionOverridesRequest, direction="write"
1843
+ object_=raw_overrides,
1844
+ annotation=typing.Optional[RawPromptExecutionOverridesRequest],
1845
+ direction="write",
1830
1846
  ),
1831
1847
  "expand_raw": expand_raw,
1832
1848
  "metadata": metadata,
@@ -1984,10 +2000,14 @@ class AsyncVellum:
1984
2000
  "release_tag": release_tag,
1985
2001
  "external_id": external_id,
1986
2002
  "expand_meta": convert_and_respect_annotation_metadata(
1987
- object_=expand_meta, annotation=PromptDeploymentExpandMetaRequest, direction="write"
2003
+ object_=expand_meta,
2004
+ annotation=typing.Optional[PromptDeploymentExpandMetaRequest],
2005
+ direction="write",
1988
2006
  ),
1989
2007
  "raw_overrides": convert_and_respect_annotation_metadata(
1990
- object_=raw_overrides, annotation=RawPromptExecutionOverridesRequest, direction="write"
2008
+ object_=raw_overrides,
2009
+ annotation=typing.Optional[RawPromptExecutionOverridesRequest],
2010
+ direction="write",
1991
2011
  ),
1992
2012
  "expand_raw": expand_raw,
1993
2013
  "metadata": metadata,
@@ -2139,7 +2159,7 @@ class AsyncVellum:
2139
2159
  object_=inputs, annotation=typing.Sequence[WorkflowRequestInputRequest], direction="write"
2140
2160
  ),
2141
2161
  "expand_meta": convert_and_respect_annotation_metadata(
2142
- object_=expand_meta, annotation=WorkflowExpandMetaRequest, direction="write"
2162
+ object_=expand_meta, annotation=typing.Optional[WorkflowExpandMetaRequest], direction="write"
2143
2163
  ),
2144
2164
  "workflow_deployment_id": workflow_deployment_id,
2145
2165
  "workflow_deployment_name": workflow_deployment_name,
@@ -2282,7 +2302,7 @@ class AsyncVellum:
2282
2302
  object_=inputs, annotation=typing.Sequence[WorkflowRequestInputRequest], direction="write"
2283
2303
  ),
2284
2304
  "expand_meta": convert_and_respect_annotation_metadata(
2285
- object_=expand_meta, annotation=WorkflowExpandMetaRequest, direction="write"
2305
+ object_=expand_meta, annotation=typing.Optional[WorkflowExpandMetaRequest], direction="write"
2286
2306
  ),
2287
2307
  "workflow_deployment_id": workflow_deployment_id,
2288
2308
  "workflow_deployment_name": workflow_deployment_name,
@@ -2420,7 +2440,7 @@ class AsyncVellum:
2420
2440
  object_=requests, annotation=typing.Sequence[GenerateRequest], direction="write"
2421
2441
  ),
2422
2442
  "options": convert_and_respect_annotation_metadata(
2423
- object_=options, annotation=GenerateOptionsRequest, direction="write"
2443
+ object_=options, annotation=typing.Optional[GenerateOptionsRequest], direction="write"
2424
2444
  ),
2425
2445
  },
2426
2446
  headers={
@@ -2556,7 +2576,7 @@ class AsyncVellum:
2556
2576
  object_=requests, annotation=typing.Sequence[GenerateRequest], direction="write"
2557
2577
  ),
2558
2578
  "options": convert_and_respect_annotation_metadata(
2559
- object_=options, annotation=GenerateOptionsRequest, direction="write"
2579
+ object_=options, annotation=typing.Optional[GenerateOptionsRequest], direction="write"
2560
2580
  ),
2561
2581
  },
2562
2582
  headers={
@@ -2693,7 +2713,7 @@ class AsyncVellum:
2693
2713
  "index_name": index_name,
2694
2714
  "query": query,
2695
2715
  "options": convert_and_respect_annotation_metadata(
2696
- object_=options, annotation=SearchRequestOptionsRequest, direction="write"
2716
+ object_=options, annotation=typing.Optional[SearchRequestOptionsRequest], direction="write"
2697
2717
  ),
2698
2718
  "document_index": document_index,
2699
2719
  },
@@ -16,9 +16,10 @@ class BaseClientWrapper:
16
16
 
17
17
  def get_headers(self) -> typing.Dict[str, str]:
18
18
  headers: typing.Dict[str, str] = {
19
+ "User-Agent": "vellum-ai/0.14.84",
19
20
  "X-Fern-Language": "Python",
20
21
  "X-Fern-SDK-Name": "vellum-ai",
21
- "X-Fern-SDK-Version": "0.14.82",
22
+ "X-Fern-SDK-Version": "0.14.84",
22
23
  }
23
24
  headers["X-API-KEY"] = self.api_key
24
25
  return headers
@@ -2,7 +2,6 @@
2
2
 
3
3
  import asyncio
4
4
  import email.utils
5
- import json
6
5
  import re
7
6
  import time
8
7
  import typing
@@ -11,7 +10,6 @@ from contextlib import asynccontextmanager, contextmanager
11
10
  from random import random
12
11
 
13
12
  import httpx
14
-
15
13
  from .file import File, convert_file_dict_to_httpx_tuples
16
14
  from .jsonable_encoder import jsonable_encoder
17
15
  from .query_encoder import encode_query
@@ -17,7 +17,6 @@ from types import GeneratorType
17
17
  from typing import Any, Callable, Dict, List, Optional, Set, Union
18
18
 
19
19
  import pydantic
20
-
21
20
  from .datetime_utils import serialize_datetime
22
21
  from .pydantic_utilities import (
23
22
  IS_PYDANTIC_V2,
@@ -5,11 +5,9 @@ import datetime as dt
5
5
  import typing
6
6
  from collections import defaultdict
7
7
 
8
- import typing_extensions
9
-
10
8
  import pydantic
11
9
  import logging
12
-
10
+ import typing_extensions
13
11
  from .datetime_utils import serialize_datetime
14
12
  from .serialization import convert_and_respect_annotation_metadata
15
13
 
@@ -4,9 +4,8 @@ import collections
4
4
  import inspect
5
5
  import typing
6
6
 
7
- import typing_extensions
8
-
9
7
  import pydantic
8
+ import typing_extensions
10
9
 
11
10
 
12
11
  class FieldMetadata:
@@ -3497,6 +3497,14 @@ The current status of the document
3497
3497
  <dl>
3498
3498
  <dd>
3499
3499
 
3500
+ **keywords:** `typing.Optional[typing.Sequence[str]]` — A list of keywords that'll be associated with the document. Used as part of keyword search.
3501
+
3502
+ </dd>
3503
+ </dl>
3504
+
3505
+ <dl>
3506
+ <dd>
3507
+
3500
3508
  **metadata:** `typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]` — A JSON object containing any metadata associated with the document that you'd like to filter upon later.
3501
3509
 
3502
3510
  </dd>
@@ -121,16 +121,18 @@ class AdHocClient:
121
121
  object_=parameters, annotation=PromptParameters, direction="write"
122
122
  ),
123
123
  "settings": convert_and_respect_annotation_metadata(
124
- object_=settings, annotation=PromptSettings, direction="write"
124
+ object_=settings, annotation=typing.Optional[PromptSettings], direction="write"
125
125
  ),
126
126
  "blocks": convert_and_respect_annotation_metadata(
127
127
  object_=blocks, annotation=typing.Sequence[PromptBlock], direction="write"
128
128
  ),
129
129
  "functions": convert_and_respect_annotation_metadata(
130
- object_=functions, annotation=typing.Sequence[FunctionDefinition], direction="write"
130
+ object_=functions,
131
+ annotation=typing.Optional[typing.Sequence[FunctionDefinition]],
132
+ direction="write",
131
133
  ),
132
134
  "expand_meta": convert_and_respect_annotation_metadata(
133
- object_=expand_meta, annotation=AdHocExpandMeta, direction="write"
135
+ object_=expand_meta, annotation=typing.Optional[AdHocExpandMeta], direction="write"
134
136
  ),
135
137
  },
136
138
  headers={
@@ -277,16 +279,18 @@ class AdHocClient:
277
279
  object_=parameters, annotation=PromptParameters, direction="write"
278
280
  ),
279
281
  "settings": convert_and_respect_annotation_metadata(
280
- object_=settings, annotation=PromptSettings, direction="write"
282
+ object_=settings, annotation=typing.Optional[PromptSettings], direction="write"
281
283
  ),
282
284
  "blocks": convert_and_respect_annotation_metadata(
283
285
  object_=blocks, annotation=typing.Sequence[PromptBlock], direction="write"
284
286
  ),
285
287
  "functions": convert_and_respect_annotation_metadata(
286
- object_=functions, annotation=typing.Sequence[FunctionDefinition], direction="write"
288
+ object_=functions,
289
+ annotation=typing.Optional[typing.Sequence[FunctionDefinition]],
290
+ direction="write",
287
291
  ),
288
292
  "expand_meta": convert_and_respect_annotation_metadata(
289
- object_=expand_meta, annotation=AdHocExpandMeta, direction="write"
293
+ object_=expand_meta, annotation=typing.Optional[AdHocExpandMeta], direction="write"
290
294
  ),
291
295
  },
292
296
  headers={
@@ -452,16 +456,18 @@ class AsyncAdHocClient:
452
456
  object_=parameters, annotation=PromptParameters, direction="write"
453
457
  ),
454
458
  "settings": convert_and_respect_annotation_metadata(
455
- object_=settings, annotation=PromptSettings, direction="write"
459
+ object_=settings, annotation=typing.Optional[PromptSettings], direction="write"
456
460
  ),
457
461
  "blocks": convert_and_respect_annotation_metadata(
458
462
  object_=blocks, annotation=typing.Sequence[PromptBlock], direction="write"
459
463
  ),
460
464
  "functions": convert_and_respect_annotation_metadata(
461
- object_=functions, annotation=typing.Sequence[FunctionDefinition], direction="write"
465
+ object_=functions,
466
+ annotation=typing.Optional[typing.Sequence[FunctionDefinition]],
467
+ direction="write",
462
468
  ),
463
469
  "expand_meta": convert_and_respect_annotation_metadata(
464
- object_=expand_meta, annotation=AdHocExpandMeta, direction="write"
470
+ object_=expand_meta, annotation=typing.Optional[AdHocExpandMeta], direction="write"
465
471
  ),
466
472
  },
467
473
  headers={
@@ -616,16 +622,18 @@ class AsyncAdHocClient:
616
622
  object_=parameters, annotation=PromptParameters, direction="write"
617
623
  ),
618
624
  "settings": convert_and_respect_annotation_metadata(
619
- object_=settings, annotation=PromptSettings, direction="write"
625
+ object_=settings, annotation=typing.Optional[PromptSettings], direction="write"
620
626
  ),
621
627
  "blocks": convert_and_respect_annotation_metadata(
622
628
  object_=blocks, annotation=typing.Sequence[PromptBlock], direction="write"
623
629
  ),
624
630
  "functions": convert_and_respect_annotation_metadata(
625
- object_=functions, annotation=typing.Sequence[FunctionDefinition], direction="write"
631
+ object_=functions,
632
+ annotation=typing.Optional[typing.Sequence[FunctionDefinition]],
633
+ direction="write",
626
634
  ),
627
635
  "expand_meta": convert_and_respect_annotation_metadata(
628
- object_=expand_meta, annotation=AdHocExpandMeta, direction="write"
636
+ object_=expand_meta, annotation=typing.Optional[AdHocExpandMeta], direction="write"
629
637
  ),
630
638
  },
631
639
  headers={
@@ -530,7 +530,9 @@ class DeploymentsClient:
530
530
  ),
531
531
  "release_tag": release_tag,
532
532
  "expand_meta": convert_and_respect_annotation_metadata(
533
- object_=expand_meta, annotation=CompilePromptDeploymentExpandMetaRequest, direction="write"
533
+ object_=expand_meta,
534
+ annotation=typing.Optional[CompilePromptDeploymentExpandMetaRequest],
535
+ direction="write",
534
536
  ),
535
537
  },
536
538
  headers={
@@ -1159,7 +1161,9 @@ class AsyncDeploymentsClient:
1159
1161
  ),
1160
1162
  "release_tag": release_tag,
1161
1163
  "expand_meta": convert_and_respect_annotation_metadata(
1162
- object_=expand_meta, annotation=CompilePromptDeploymentExpandMetaRequest, direction="write"
1164
+ object_=expand_meta,
1165
+ annotation=typing.Optional[CompilePromptDeploymentExpandMetaRequest],
1166
+ direction="write",
1163
1167
  ),
1164
1168
  },
1165
1169
  headers={
@@ -192,6 +192,7 @@ class DocumentsClient:
192
192
  *,
193
193
  label: typing.Optional[str] = OMIT,
194
194
  status: typing.Optional[DocumentStatus] = OMIT,
195
+ keywords: typing.Optional[typing.Sequence[str]] = OMIT,
195
196
  metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
196
197
  request_options: typing.Optional[RequestOptions] = None,
197
198
  ) -> DocumentRead:
@@ -210,6 +211,9 @@ class DocumentsClient:
210
211
 
211
212
  * `ACTIVE` - Active
212
213
 
214
+ keywords : typing.Optional[typing.Sequence[str]]
215
+ A list of keywords that'll be associated with the document. Used as part of keyword search.
216
+
213
217
  metadata : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
214
218
  A JSON object containing any metadata associated with the document that you'd like to filter upon later.
215
219
 
@@ -239,6 +243,7 @@ class DocumentsClient:
239
243
  json={
240
244
  "label": label,
241
245
  "status": status,
246
+ "keywords": keywords,
242
247
  "metadata": metadata,
243
248
  },
244
249
  headers={
@@ -573,6 +578,7 @@ class AsyncDocumentsClient:
573
578
  *,
574
579
  label: typing.Optional[str] = OMIT,
575
580
  status: typing.Optional[DocumentStatus] = OMIT,
581
+ keywords: typing.Optional[typing.Sequence[str]] = OMIT,
576
582
  metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
577
583
  request_options: typing.Optional[RequestOptions] = None,
578
584
  ) -> DocumentRead:
@@ -591,6 +597,9 @@ class AsyncDocumentsClient:
591
597
 
592
598
  * `ACTIVE` - Active
593
599
 
600
+ keywords : typing.Optional[typing.Sequence[str]]
601
+ A list of keywords that'll be associated with the document. Used as part of keyword search.
602
+
594
603
  metadata : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
595
604
  A JSON object containing any metadata associated with the document that you'd like to filter upon later.
596
605
 
@@ -628,6 +637,7 @@ class AsyncDocumentsClient:
628
637
  json={
629
638
  "label": label,
630
639
  "status": status,
640
+ "keywords": keywords,
631
641
  "metadata": metadata,
632
642
  },
633
643
  headers={
@@ -174,6 +174,8 @@ from .generate_stream_result import GenerateStreamResult
174
174
  from .generate_stream_result_data import GenerateStreamResultData
175
175
  from .google_vertex_ai_vectorizer_config import GoogleVertexAiVectorizerConfig
176
176
  from .google_vertex_ai_vectorizer_config_request import GoogleVertexAiVectorizerConfigRequest
177
+ from .google_vertex_ai_vectorizer_gemini_embedding_001 import GoogleVertexAiVectorizerGeminiEmbedding001
178
+ from .google_vertex_ai_vectorizer_gemini_embedding_001_request import GoogleVertexAiVectorizerGeminiEmbedding001Request
177
179
  from .google_vertex_ai_vectorizer_text_embedding_004 import GoogleVertexAiVectorizerTextEmbedding004
178
180
  from .google_vertex_ai_vectorizer_text_embedding_004_request import GoogleVertexAiVectorizerTextEmbedding004Request
179
181
  from .google_vertex_ai_vectorizer_text_multilingual_embedding_002 import (
@@ -793,6 +795,8 @@ __all__ = [
793
795
  "GenerateStreamResultData",
794
796
  "GoogleVertexAiVectorizerConfig",
795
797
  "GoogleVertexAiVectorizerConfigRequest",
798
+ "GoogleVertexAiVectorizerGeminiEmbedding001",
799
+ "GoogleVertexAiVectorizerGeminiEmbedding001Request",
796
800
  "GoogleVertexAiVectorizerTextEmbedding004",
797
801
  "GoogleVertexAiVectorizerTextEmbedding004Request",
798
802
  "GoogleVertexAiVectorizerTextMultilingualEmbedding002",
@@ -9,6 +9,7 @@ import pydantic
9
9
 
10
10
  class ContainerImageBuildConfig(UniversalBaseModel):
11
11
  packages: typing.List[CodeExecutionPackage]
12
+ user_script: typing.Optional[str] = None
12
13
 
13
14
  if IS_PYDANTIC_V2:
14
15
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
@@ -31,6 +31,11 @@ class DocumentRead(UniversalBaseModel):
31
31
  * `ACTIVE` - Active
32
32
  """
33
33
 
34
+ keywords: typing.Optional[typing.List[str]] = pydantic.Field(default=None)
35
+ """
36
+ A list of keywords that'll be associated with the document. Used as part of keyword search.
37
+ """
38
+
34
39
  original_file_url: typing.Optional[str] = None
35
40
  document_to_document_indexes: typing.List[DocumentDocumentToDocumentIndex]
36
41
  metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = pydantic.Field(default=None)
@@ -19,7 +19,7 @@ class ExecutionThinkingVellumValue(UniversalBaseModel):
19
19
 
20
20
  name: str
21
21
  type: typing.Literal["THINKING"] = "THINKING"
22
- value: typing.List[StringVellumValue]
22
+ value: StringVellumValue
23
23
 
24
24
  if IS_PYDANTIC_V2:
25
25
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
@@ -0,0 +1,21 @@
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 .google_vertex_ai_vectorizer_config import GoogleVertexAiVectorizerConfig
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
7
+ import pydantic
8
+
9
+
10
+ class GoogleVertexAiVectorizerGeminiEmbedding001(UniversalBaseModel):
11
+ model_name: typing.Literal["gemini-embedding-001"] = "gemini-embedding-001"
12
+ config: GoogleVertexAiVectorizerConfig
13
+
14
+ if IS_PYDANTIC_V2:
15
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
16
+ else:
17
+
18
+ class Config:
19
+ frozen = True
20
+ smart_union = True
21
+ extra = pydantic.Extra.allow
@@ -0,0 +1,21 @@
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 .google_vertex_ai_vectorizer_config_request import GoogleVertexAiVectorizerConfigRequest
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
7
+ import pydantic
8
+
9
+
10
+ class GoogleVertexAiVectorizerGeminiEmbedding001Request(UniversalBaseModel):
11
+ model_name: typing.Literal["gemini-embedding-001"] = "gemini-embedding-001"
12
+ config: GoogleVertexAiVectorizerConfigRequest
13
+
14
+ if IS_PYDANTIC_V2:
15
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
16
+ else:
17
+
18
+ class Config:
19
+ frozen = True
20
+ smart_union = True
21
+ extra = pydantic.Extra.allow
@@ -16,6 +16,7 @@ from .google_vertex_ai_vectorizer_text_embedding_004 import GoogleVertexAiVector
16
16
  from .google_vertex_ai_vectorizer_text_multilingual_embedding_002 import (
17
17
  GoogleVertexAiVectorizerTextMultilingualEmbedding002,
18
18
  )
19
+ from .google_vertex_ai_vectorizer_gemini_embedding_001 import GoogleVertexAiVectorizerGeminiEmbedding001
19
20
  from .fast_embed_vectorizer_baai_bge_small_en_v_15 import FastEmbedVectorizerBaaiBgeSmallEnV15
20
21
 
21
22
  IndexingConfigVectorizer = typing.Union[
@@ -28,5 +29,6 @@ IndexingConfigVectorizer = typing.Union[
28
29
  HkunlpInstructorXlVectorizer,
29
30
  GoogleVertexAiVectorizerTextEmbedding004,
30
31
  GoogleVertexAiVectorizerTextMultilingualEmbedding002,
32
+ GoogleVertexAiVectorizerGeminiEmbedding001,
31
33
  FastEmbedVectorizerBaaiBgeSmallEnV15,
32
34
  ]
@@ -16,6 +16,7 @@ from .google_vertex_ai_vectorizer_text_embedding_004_request import GoogleVertex
16
16
  from .google_vertex_ai_vectorizer_text_multilingual_embedding_002_request import (
17
17
  GoogleVertexAiVectorizerTextMultilingualEmbedding002Request,
18
18
  )
19
+ from .google_vertex_ai_vectorizer_gemini_embedding_001_request import GoogleVertexAiVectorizerGeminiEmbedding001Request
19
20
  from .fast_embed_vectorizer_baai_bge_small_en_v_15_request import FastEmbedVectorizerBaaiBgeSmallEnV15Request
20
21
 
21
22
  IndexingConfigVectorizerRequest = typing.Union[
@@ -28,5 +29,6 @@ IndexingConfigVectorizerRequest = typing.Union[
28
29
  HkunlpInstructorXlVectorizerRequest,
29
30
  GoogleVertexAiVectorizerTextEmbedding004Request,
30
31
  GoogleVertexAiVectorizerTextMultilingualEmbedding002Request,
32
+ GoogleVertexAiVectorizerGeminiEmbedding001Request,
31
33
  FastEmbedVectorizerBaaiBgeSmallEnV15Request,
32
34
  ]
@@ -13,7 +13,7 @@ class ThinkingVellumValue(UniversalBaseModel):
13
13
  """
14
14
 
15
15
  type: typing.Literal["THINKING"] = "THINKING"
16
- value: typing.List[StringVellumValue]
16
+ value: StringVellumValue
17
17
 
18
18
  if IS_PYDANTIC_V2:
19
19
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
@@ -13,7 +13,7 @@ class ThinkingVellumValueRequest(UniversalBaseModel):
13
13
  """
14
14
 
15
15
  type: typing.Literal["THINKING"] = "THINKING"
16
- value: typing.List[StringVellumValueRequest]
16
+ value: StringVellumValueRequest
17
17
 
18
18
  if IS_PYDANTIC_V2:
19
19
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
@@ -11,6 +11,8 @@ class WorkflowSandboxExample(UniversalBaseModel):
11
11
  label: str
12
12
  description: typing.Optional[str] = None
13
13
  icon_name: typing.Optional[str] = None
14
+ ui_image_url: typing.Optional[str] = None
15
+ code_image_url: typing.Optional[str] = None
14
16
 
15
17
  if IS_PYDANTIC_V2:
16
18
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
@@ -0,0 +1,3 @@
1
+ # WARNING: This file will be removed in a future release. Please import from "vellum.client" instead.
2
+
3
+ from vellum.client.types.google_vertex_ai_vectorizer_gemini_embedding_001 import *
@@ -0,0 +1,3 @@
1
+ # WARNING: This file will be removed in a future release. Please import from "vellum.client" instead.
2
+
3
+ from vellum.client.types.google_vertex_ai_vectorizer_gemini_embedding_001_request import *
@@ -64,8 +64,8 @@ class InlinePromptNode(BaseInlinePromptNode[StateType]):
64
64
  elif output.type == "FUNCTION_CALL":
65
65
  string_outputs.append(output.value.model_dump_json(indent=4))
66
66
  elif output.type == "THINKING":
67
- thinking_strings = [item.value for item in output.value if item.value is not None]
68
- string_outputs.append("\n".join(thinking_strings))
67
+ if output.value.type == "STRING":
68
+ string_outputs.append(output.value.value)
69
69
  else:
70
70
  string_outputs.append(output.value.message)
71
71
 
@@ -66,8 +66,8 @@ class PromptDeploymentNode(BasePromptDeploymentNode[StateType]):
66
66
  elif output.type == "FUNCTION_CALL":
67
67
  string_outputs.append(output.value.model_dump_json(indent=4))
68
68
  elif output.type == "THINKING":
69
- thinking_strings = [item.value for item in output.value if item.value is not None]
70
- string_outputs.append("\n".join(thinking_strings))
69
+ if output.value.type == "STRING":
70
+ string_outputs.append(output.value.value)
71
71
  else:
72
72
  string_outputs.append(output.value.message)
73
73
 
@@ -0,0 +1,3 @@
1
+ from vellum.workflows.nodes.displayable.tool_calling_node import ToolCallingNode
2
+
3
+ __all__ = ["ToolCallingNode"]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: vellum-ai
3
- Version: 0.14.82
3
+ Version: 0.14.84
4
4
  Summary:
5
5
  License: MIT
6
6
  Requires-Python: >=3.9,<4.0
@@ -110,7 +110,7 @@ vellum_ee/workflows/display/utils/tests/test_auto_layout.py,sha256=vfXI769418s9v
110
110
  vellum_ee/workflows/display/utils/vellum.py,sha256=mtoXmSYwR7rvrq-d6CzCW_auaJXTct0Mi1F0xpRCiNQ,5627
111
111
  vellum_ee/workflows/display/vellum.py,sha256=o7mq_vk2Yapu9DDKRz5l76h8EmCAypWGQYe6pryrbB8,3576
112
112
  vellum_ee/workflows/display/workflows/__init__.py,sha256=kapXsC67VJcgSuiBMa86FdePG5A9kMB5Pi4Uy1O2ob4,207
113
- vellum_ee/workflows/display/workflows/base_workflow_display.py,sha256=ZFZ8E2mIA-2aWnP9eRT_Z1s4efh7mTcdS8TQMlsICMY,40890
113
+ vellum_ee/workflows/display/workflows/base_workflow_display.py,sha256=_gbMjULwEV6S7rLQKPNuuaD1LoTNf2WWTUkVqxQvG04,41153
114
114
  vellum_ee/workflows/display/workflows/get_vellum_workflow_display_class.py,sha256=gxz76AeCqgAZ9D2lZeTiZzxY9eMgn3qOSfVgiqYcOh8,2028
115
115
  vellum_ee/workflows/display/workflows/tests/test_workflow_display.py,sha256=L7SKWJ26Ex-XXTNfHYXux7KP6I-dxE1EMQylap4Mhjs,31762
116
116
  vellum_ee/workflows/display/workflows/vellum_workflow_display.py,sha256=aaKdmWrgEe5YyV4zuDY_4E3y-l59rIHQnNGiPj2OWxQ,359
@@ -136,38 +136,38 @@ vellum_ee/workflows/tests/local_workflow/nodes/final_output.py,sha256=ZX7zBv87zi
136
136
  vellum_ee/workflows/tests/local_workflow/nodes/templating_node.py,sha256=NQwFN61QkHfI3Vssz-B0NKGfupK8PU0FDSAIAhYBLi0,325
137
137
  vellum_ee/workflows/tests/local_workflow/workflow.py,sha256=A4qOzOPNwePYxWbcAgIPLsmrVS_aVEZEc-wULSv787Q,393
138
138
  vellum_ee/workflows/tests/test_display_meta.py,sha256=PkXJVnMZs9GNooDkd59n4YTBAX3XGPQWeSSVbhehVFM,5112
139
- vellum_ee/workflows/tests/test_serialize_module.py,sha256=qcHbl6YaKtJebQJvw0OXCVlJXLkj6sjkbSMu05zXI0U,1874
139
+ vellum_ee/workflows/tests/test_serialize_module.py,sha256=EVrCRAP0lpvd0GIDlg2tnGfJzDNooNDXPfGFPLAqmbI,1870
140
140
  vellum_ee/workflows/tests/test_server.py,sha256=SsOkS6sGO7uGC4mxvk4iv8AtcXs058P9hgFHzTWmpII,14519
141
141
  vellum_ee/workflows/tests/test_virtual_files.py,sha256=TJEcMR0v2S8CkloXNmCHA0QW0K6pYNGaIjraJz7sFvY,2762
142
- vellum/__init__.py,sha256=I8qQZ9GWQ_u-rMZlCWj-Zl2Z_YM1NGY3fAG5BrPeZb8,42698
143
- vellum/client/README.md,sha256=CuGUYnaE0Imt0KqQ4sIPaUghCjLHkF3DdEvZWu14-8s,4807
144
- vellum/client/__init__.py,sha256=AYopGv2ZRVn3zsU8_km6KOvEHDbXiTPCVuYVI7bWvdA,120166
142
+ vellum/__init__.py,sha256=4RAS94IJNzJ0I4ywijtwTf9hPuwjHWjOs4ObAioCZF4,42908
143
+ vellum/client/README.md,sha256=47bNYmRLSISR1ING58kXXZ88nFLPGFv0bAspBtuXG3g,4306
144
+ vellum/client/__init__.py,sha256=tKLc-F8I8_62RSZg7J7Lvo1dUQ_or7DGsDhbMyhWfGA,120958
145
145
  vellum/client/core/__init__.py,sha256=SQ85PF84B9MuKnBwHNHWemSGuy-g_515gFYNFhvEE0I,1438
146
146
  vellum/client/core/api_error.py,sha256=RE8LELok2QCjABadECTvtDp7qejA1VmINCh6TbqPwSE,426
147
- vellum/client/core/client_wrapper.py,sha256=xroZld9rUgZBqi4t2PSZNmSpW0hkjl8W5dkudogh9PI,1869
147
+ vellum/client/core/client_wrapper.py,sha256=GH65a7H2ljEoGOSUk3XDPKq_xWK6PvLX_crfwBiwCo4,1916
148
148
  vellum/client/core/datetime_utils.py,sha256=nBys2IsYrhPdszxGKCNRPSOCwa-5DWOHG95FB8G9PKo,1047
149
149
  vellum/client/core/file.py,sha256=d4NNbX8XvXP32z8KpK2Xovv33nFfruIrpz0QWxlgpZk,2663
150
- vellum/client/core/http_client.py,sha256=Z77OIxIbL4OAB2IDqjRq_sYa5yNYAWfmdhdCSSvh6Y4,19552
151
- vellum/client/core/jsonable_encoder.py,sha256=qaF1gtgH-kQZb4kJskETwcCsOPUof-NnYVdszHkb-dM,3656
152
- vellum/client/core/pydantic_utilities.py,sha256=lnpQ0SFnoVDtFp7vSHt5lmBXWeqgg03VWWo6CiYLocw,12268
150
+ vellum/client/core/http_client.py,sha256=cKs2w0ybDBk1wHQf-fTALm_MmvaMe3cZKcYJxqmCxkE,19539
151
+ vellum/client/core/jsonable_encoder.py,sha256=hGgcEEeX11sqxxsll7h15pO3pTNVxk_n79Kcn0laoWA,3655
152
+ vellum/client/core/pydantic_utilities.py,sha256=3r9fa6Fh11FfgRUM7p7OkffLEZGW481fe27XW4Wl8yg,12266
153
153
  vellum/client/core/query_encoder.py,sha256=ekulqNd0j8TgD7ox-Qbz7liqX8-KP9blvT9DsRCenYM,2144
154
154
  vellum/client/core/remove_none_from_dict.py,sha256=EU9SGgYidWq7SexuJbNs4-PZ-5Bl3Vppd864mS6vQZw,342
155
155
  vellum/client/core/request_options.py,sha256=h0QUNCFVdCW_7GclVySCAY2w4NhtXVBUCmHgmzaxpcg,1681
156
- vellum/client/core/serialization.py,sha256=D9h_t-RQON3-CHWs1C4ESY9B-Yd5d-l5lnTLb_X896g,9601
156
+ vellum/client/core/serialization.py,sha256=AMtvLgUpF6ugN96V7bvOMP3W-z06gH2n4-1vl9nPbLE,9600
157
157
  vellum/client/environment.py,sha256=bcAFjoE9XXd7tiysYS90Os669IJmUMZS2JZ_ZQn0Dpg,498
158
158
  vellum/client/errors/__init__.py,sha256=HZB8vVqzDNx0M2uFJ05S5RcGTH95iVDl4v3rQ4xRqSw,343
159
159
  vellum/client/errors/bad_request_error.py,sha256=_EbO8mWqN9kFZPvIap8qa1lL_EWkRcsZe1HKV9GDWJY,264
160
160
  vellum/client/errors/forbidden_error.py,sha256=QO1kKlhClAPES6zsEK7g9pglWnxn3KWaOCAawWOg6Aw,263
161
161
  vellum/client/errors/internal_server_error.py,sha256=8USCagXyJJ1MOm9snpcXIUt6eNXvrd_aq7Gfcu1vlOI,268
162
162
  vellum/client/errors/not_found_error.py,sha256=tBVCeBC8n3C811WHRj_n-hs3h8MqwR5gp0vLiobk7W8,262
163
- vellum/client/reference.md,sha256=AG_zpL_pTZNHF9fEU-3I74QxAfCfCAsUrOXizL2PWig,91317
163
+ vellum/client/reference.md,sha256=7GWLlL9oly8ZpNifMwfP8DYqKu_j2b0JdKcgJxc98ZA,91496
164
164
  vellum/client/resources/__init__.py,sha256=XgQao4rJxyYu71j64RFIsshz4op9GE8-i-C5GCv-KVE,1555
165
165
  vellum/client/resources/ad_hoc/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
166
- vellum/client/resources/ad_hoc/client.py,sha256=rtpiGR6j8CcXSnN6UW_jYwLLdfJ9dwkTm_nta9oRzno,25933
166
+ vellum/client/resources/ad_hoc/client.py,sha256=1jTid6izei9QcnZHjx8jBxAIf9ig2y0vpFPPX6WJM6A,26301
167
167
  vellum/client/resources/container_images/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
168
168
  vellum/client/resources/container_images/client.py,sha256=N9Xe-IyuZigbZum3MZFqgZrVKgfNOTGFxK83alHra04,15181
169
169
  vellum/client/resources/deployments/__init__.py,sha256=m64MNuPx3qVazOnTNwOY8oEeDrAkNwMJvUEe5xoMDvs,239
170
- vellum/client/resources/deployments/client.py,sha256=VD04bAnLnGDD4OowDTHOniuWLZf287teJVamoQ0OnMg,43592
170
+ vellum/client/resources/deployments/client.py,sha256=pJQLqwLbQSZiaSHeQMnSO52cVhwiyqBPsnqbOJt2eso,43708
171
171
  vellum/client/resources/deployments/types/__init__.py,sha256=29GVdoLOJsADSSSqZwb6CQPeEmPjkKrbsWfru1bemj8,321
172
172
  vellum/client/resources/deployments/types/deployments_list_request_status.py,sha256=CxlQD16KZXme7x31YYCe_3aAgEueutDTeJo5A4Au-aU,174
173
173
  vellum/client/resources/deployments/types/list_deployment_release_tags_request_source.py,sha256=hRGgWMYZL9uKCmD_2dU8-u9RCPUUGItpNn1tUY-NXKY,180
@@ -176,7 +176,7 @@ vellum/client/resources/document_indexes/client.py,sha256=2zt85keRD9DEN9Z-dkHn7G
176
176
  vellum/client/resources/document_indexes/types/__init__.py,sha256=IoFqKHN_VBdEhC7VL8_6Jbatrn0e0zuYEJAJUahcUR0,196
177
177
  vellum/client/resources/document_indexes/types/document_indexes_list_request_status.py,sha256=sfUEB0cvOSmlE2iITqnMVyHv05Zy2fWP4QjCIYqMg0M,178
178
178
  vellum/client/resources/documents/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
179
- vellum/client/resources/documents/client.py,sha256=yCbgKjv-qJG46VUJugCM903f1uB03JOhUSw2Q8wrP_c,25908
179
+ vellum/client/resources/documents/client.py,sha256=g9fOsSxk7SLwFw5K7c-YV-KWSmz1-Ng69Rpi16G3U1E,26436
180
180
  vellum/client/resources/folder_entities/__init__.py,sha256=QOp7UMMB3a32GrfVaud35ECn4fqPBKXxCyClsDgd6GE,175
181
181
  vellum/client/resources/folder_entities/client.py,sha256=wlmGYzrgM0GwvpVqNXBzblUdaDm4foFLto5OZ53joJk,11288
182
182
  vellum/client/resources/folder_entities/types/__init__.py,sha256=cHabrupjC-HL3kj-UZ9WdVzqHoQHCu6QsLFB3wlOs7k,212
@@ -212,7 +212,7 @@ vellum/client/resources/workspace_secrets/__init__.py,sha256=FTtvy8EDg9nNNg9WCat
212
212
  vellum/client/resources/workspace_secrets/client.py,sha256=zlBdbeTP6sqvtyl_DlrpfG-W5hSP7tJ1NYLSygi4CLU,8205
213
213
  vellum/client/resources/workspaces/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
214
214
  vellum/client/resources/workspaces/client.py,sha256=RthwzN1o-Jxwg5yyNNodavFyNUSxfLoTv26w3mRR5g8,3595
215
- vellum/client/types/__init__.py,sha256=gl1Lb4alZrG7SqoSibiKJY4I5sSCcqH-QH560_vwGUw,64711
215
+ vellum/client/types/__init__.py,sha256=NgEh6I44X4Hwrd4lIswu7QPHzuWoxmej9p4JYsSJJb8,65043
216
216
  vellum/client/types/ad_hoc_execute_prompt_event.py,sha256=bCjujA2XsOgyF3bRZbcEqV2rOIymRgsLoIRtZpB14xg,607
217
217
  vellum/client/types/ad_hoc_expand_meta.py,sha256=1gv-NCsy_6xBYupLvZH979yf2VMdxAU-l0y0ynMKZaw,1331
218
218
  vellum/client/types/ad_hoc_fulfilled_prompt_execution_meta.py,sha256=oDG60TpwK1YNSKhRsBbiP2O3ZF9PKR-M9chGIfKw4R4,1004
@@ -279,7 +279,7 @@ vellum/client/types/components_schemas_prompt_version_build_config_sandbox.py,sh
279
279
  vellum/client/types/condition_combinator.py,sha256=NQ6-F85juf21jsRuZRA6PjIFv7ITVWG5myuuZdLxeQI,156
280
280
  vellum/client/types/conditional_node_result.py,sha256=vx8xo9F1KoJqOnYPtSevfOcBxKYAk8J8JGWFr1c4UO8,784
281
281
  vellum/client/types/conditional_node_result_data.py,sha256=yk4E7KHSzmKlweI9ce9eN_iW08V70KGmG1Z0K5455T0,604
282
- vellum/client/types/container_image_build_config.py,sha256=KJnx5PNdLJajPEa4A75GM7tN1nsZKS9JjWxm3-tpSlU,659
282
+ vellum/client/types/container_image_build_config.py,sha256=KcMGkFl6yMTLum4FUhlFXg5yPF1Z_Ru8Mgpm2lbMN10,704
283
283
  vellum/client/types/container_image_container_image_tag.py,sha256=ph9Xs0R386viUofCITdUfIKCLaDJokY5nzczf0iReuA,622
284
284
  vellum/client/types/container_image_read.py,sha256=pm2gZp08JgZh15pH__voBvJ2U7k39_cHe6h2bV89FKY,1137
285
285
  vellum/client/types/create_test_suite_test_case_request.py,sha256=3LmAy6U8tUJ75dmmnMMJyAJ4_xp7TT3iTzks8C8fHJk,1508
@@ -300,7 +300,7 @@ vellum/client/types/document_index_indexing_config_request.py,sha256=Wt-ys1o_acH
300
300
  vellum/client/types/document_index_read.py,sha256=ePngiRszr65HLl9D0_FUdhAdMe84nRwyM3cKbr8rFpg,1177
301
301
  vellum/client/types/document_processing_state.py,sha256=ISlurj7jQzwHzxPzDZTqeAIgSIIGMBBPgcOSoe04pTU,211
302
302
  vellum/client/types/document_prompt_block.py,sha256=sgFxN48PILFuuF2KUIwks6PbJ3XH6sCE_8ydLEE_doU,1019
303
- vellum/client/types/document_read.py,sha256=U3YcFLF9exeZYAhLErEdAc_vVTtWZ8efXDKmmcabshg,1661
303
+ vellum/client/types/document_read.py,sha256=-KUCyU6OYiOG0QlDG3ci7J3MQGIoVza8U9sdakeiSWI,1853
304
304
  vellum/client/types/document_status.py,sha256=GD_TSoFmZUBJnPl-chAmaQFzQ2_TYO3PSqi3-9QfEHE,122
305
305
  vellum/client/types/document_vellum_value.py,sha256=a8WQhyntwy80iN9j8L9F5v6Jmq1L4j0ETJo9c9VGabs,768
306
306
  vellum/client/types/document_vellum_value_request.py,sha256=utpoRMMVhMIsa4S4ZOaOr2lX76BgrOVolPxCwy9-pUw,797
@@ -330,7 +330,7 @@ vellum/client/types/execution_json_vellum_value.py,sha256=oGY3CsJBKeOuEexmITfRYc
330
330
  vellum/client/types/execution_number_vellum_value.py,sha256=b2TpqyafRHCdl6EhgctNgUSLU-JBdouU6OgM8Jk_O78,809
331
331
  vellum/client/types/execution_search_results_vellum_value.py,sha256=HkxoXaUF6pMbfXd5wLk5VKmcXed2IRfEzkxsoGpwmg0,898
332
332
  vellum/client/types/execution_string_vellum_value.py,sha256=4w0ottwB5F2NL3uEXBBggP7XkcdE_D2lGmEobkXWY7o,807
333
- vellum/client/types/execution_thinking_vellum_value.py,sha256=n66gPYgiDpOGhOniQlRE6jDUOBnPkHnfOvz8RVyzw1g,879
333
+ vellum/client/types/execution_thinking_vellum_value.py,sha256=5WGuCVue3OMAdM881fDUFGjwOuWhImT6ALQq1qHyTks,866
334
334
  vellum/client/types/execution_vellum_value.py,sha256=gJ4UWA4KKzWGJZpEZGQV8Efqh27PmyWz6RZSsbtNux8,1088
335
335
  vellum/client/types/external_input_descriptor.py,sha256=ErOW2OfFMz1FDGmVY6NgiUBPsleaWhdJBekwFp4ru7o,805
336
336
  vellum/client/types/external_test_case_execution.py,sha256=TkO1CQcEI8LA7sdYJfAqhbdkj27sXEkF8VL7zBeDBM4,877
@@ -379,6 +379,8 @@ vellum/client/types/generate_stream_result.py,sha256=d661Ptq-XDyoKGYYUgs7htUkuRo
379
379
  vellum/client/types/generate_stream_result_data.py,sha256=-wzHLPkJrCNL_7vQuX-nZKi3wKxJ8v1j8DRzLmagVNU,697
380
380
  vellum/client/types/google_vertex_ai_vectorizer_config.py,sha256=okGOJl721ONG1_aq1cphZ23WAJfi0FwLdwEoiuMMJP4,595
381
381
  vellum/client/types/google_vertex_ai_vectorizer_config_request.py,sha256=0SnNAz4PAgzCjB_BChH1AYwwkOXbW9ed1EO2KXuDwCo,602
382
+ vellum/client/types/google_vertex_ai_vectorizer_gemini_embedding_001.py,sha256=c1Q6yELRJ1VRFHZyNq2pqzIipVWb4LgBkBe8FcMsAzs,773
383
+ vellum/client/types/google_vertex_ai_vectorizer_gemini_embedding_001_request.py,sha256=Q7rp83x7EVn_d3Bw5rzRGt0yl_dX0bCRqxw_vrZh7xw,802
382
384
  vellum/client/types/google_vertex_ai_vectorizer_text_embedding_004.py,sha256=V2owWci9ffII48PKfqOalDSliBA1JLholvPQYhknJ9o,767
383
385
  vellum/client/types/google_vertex_ai_vectorizer_text_embedding_004_request.py,sha256=L_3gq3pe8JKvGg9ufsrhvHekQAveyzD9uzoxl2arwkE,796
384
386
  vellum/client/types/google_vertex_ai_vectorizer_text_multilingual_embedding_002.py,sha256=MoukrZZsuDVze43vuS5bEYygI6Jpok5QJTYPjHEz0tg,805
@@ -390,8 +392,8 @@ vellum/client/types/image_chat_message_content_request.py,sha256=b0K1NnY-NneG_V3
390
392
  vellum/client/types/image_prompt_block.py,sha256=JIcfWZAWYcOm04Y6XjmxPG58SaoXwIjuZwnVypEVahU,1008
391
393
  vellum/client/types/image_vellum_value.py,sha256=69XnqE9m-bd3dOdMD73WtfDm_kDrVg-y3fi35akuqsk,748
392
394
  vellum/client/types/image_vellum_value_request.py,sha256=-Q66T8M6fAf9K_v0LeRwZjB_6pkBUSyMUQc6plRRK5E,777
393
- vellum/client/types/indexing_config_vectorizer.py,sha256=pVZ5mCY75LQD15r83IMmPmt8tK__kSFlBd62szI_ZYw,1673
394
- vellum/client/types/indexing_config_vectorizer_request.py,sha256=q2pC4oIEy74xCgsl4hOnHtNA4BRYhQsbiHOn_IdT3V8,1900
395
+ vellum/client/types/indexing_config_vectorizer.py,sha256=d9HrryJRZR74y86oez9_yVn5HIFHD0UDQngsHvxGrro,1826
396
+ vellum/client/types/indexing_config_vectorizer_request.py,sha256=uCl_42CcthsZ26iIP4LpWRRrUXUttDIp67kbhmzJfPY,2075
395
397
  vellum/client/types/indexing_state_enum.py,sha256=KWYMz5DwJnVhu3ZlSDdqiC5MtiTIdrxE4EvwFYiel1U,213
396
398
  vellum/client/types/initiated_ad_hoc_execute_prompt_event.py,sha256=B34Q2aU2vj9qpjpWXIieN839iB7t4EWCD9mmCfbkwpo,915
397
399
  vellum/client/types/initiated_execute_prompt_event.py,sha256=tHt80ZIuKk6B85IQqSF3MQqiSSiBsSP2Aw3XuD5xk6E,893
@@ -697,8 +699,8 @@ vellum/client/types/test_suite_test_case_replace_bulk_operation_request.py,sha25
697
699
  vellum/client/types/test_suite_test_case_replaced_bulk_result.py,sha256=BIlXI7udygWrwtyRhCl8hmExHbkAl9lI8s3sm1G5iGc,1019
698
700
  vellum/client/types/test_suite_test_case_replaced_bulk_result_data.py,sha256=ORmcUvwzvRLRaoFhxdXFIKzPxOI6PU1kESl0R6rsJuw,651
699
701
  vellum/client/types/test_suite_test_case_upsert_bulk_operation_request.py,sha256=PrKuqePiXBQv6iLAxsk4xQg29KGdOlqMDhIVdGNxuz4,1071
700
- vellum/client/types/thinking_vellum_value.py,sha256=XLeSzCwbO9kVek6zdMn6pQChLKDYFeyabE9OiFeoq_I,755
701
- vellum/client/types/thinking_vellum_value_request.py,sha256=n6FqEZs5TKhhNZqe9yau_Vcn55ktXxFQO5sWa0aRNbg,784
702
+ vellum/client/types/thinking_vellum_value.py,sha256=q6IZFZrAXkoYCQOfHLLKWCTYj_zW8HJIzovO6IlzY-A,742
703
+ vellum/client/types/thinking_vellum_value_request.py,sha256=dHxjlH_6nxRjcixAudmvwwOMkWc4JmLHfRWKK4rGssA,771
702
704
  vellum/client/types/token_overlapping_window_chunker_config.py,sha256=_8vR9AiZQmb5OA3OojbjuTOGiGNTS9EY0vXrmej_TM0,731
703
705
  vellum/client/types/token_overlapping_window_chunker_config_request.py,sha256=O58w5om6EsCgZeqM7n3KSzwo1PqINyHWln46EFW4Inc,738
704
706
  vellum/client/types/token_overlapping_window_chunking.py,sha256=TghiPKWZg3Eg_UzGI9VmjQgVPZFABrnhfsz4iPLEem8,889
@@ -805,7 +807,7 @@ vellum/client/types/workflow_result_event_output_data_json.py,sha256=8MrgcTSVUby
805
807
  vellum/client/types/workflow_result_event_output_data_number.py,sha256=OZYYUF3ayq7gyaesRK3YRaTMVgxFdeFGtOpTPWX10yk,1081
806
808
  vellum/client/types/workflow_result_event_output_data_search_results.py,sha256=U34IK7ZvBG70ZBO4SEqbaNzIrV9Zn1NXabNh3M9v_hg,1172
807
809
  vellum/client/types/workflow_result_event_output_data_string.py,sha256=tM3kgh6tEhD0dFEb_7UU0-UspeN4pUdINCcCrD64W74,1228
808
- vellum/client/types/workflow_sandbox_example.py,sha256=ZYFI7ZahyRYMNVmF8LZcF-_lkhqt95WiWXT6SpxnFHk,666
810
+ vellum/client/types/workflow_sandbox_example.py,sha256=XsKa7JvPFm0no8nh_q1DojwMd1ko8kV_xn3omFr4kW4,760
809
811
  vellum/client/types/workflow_sandbox_parent_context.py,sha256=C-2xW40XkbuzYxvsKetqYMiaoX3qNNXELFxQeqEP6Ow,1473
810
812
  vellum/client/types/workflow_stream_event.py,sha256=Wn3Yzuy9MqWAeo8tEaXDTKDEbJoA8DdYdMVq8EKuhu8,361
811
813
  vellum/client/types/workspace_read.py,sha256=ocPtWvOwadqkU3z21bJgE4JeLYTAkOqBlKkc9lDDFFg,697
@@ -1069,6 +1071,8 @@ vellum/types/generate_stream_result.py,sha256=vBOu0pNiY2ug93SiHiGqhSgBJsdyEoRKIF
1069
1071
  vellum/types/generate_stream_result_data.py,sha256=XAn14mXLHM-xS7FxEUwsLmytGsM2V6eGQj8G54gU4No,165
1070
1072
  vellum/types/google_vertex_ai_vectorizer_config.py,sha256=nDNO6tF63OQCQyg-dJ19fjkZwLqZBIOo5bQYxFPOKKQ,172
1071
1073
  vellum/types/google_vertex_ai_vectorizer_config_request.py,sha256=C-_QO4my1I_JSKKhmfQzVbscm2bQjlM28tdXWMGa5Bk,180
1074
+ vellum/types/google_vertex_ai_vectorizer_gemini_embedding_001.py,sha256=d659izQ4HuqwxBOrOAbrUdcUWcRhRQd0m3Xnz36LSiQ,186
1075
+ vellum/types/google_vertex_ai_vectorizer_gemini_embedding_001_request.py,sha256=j4-BAEKGyX7lQ23PMD6P49uijwXW7GftMlS1BBCNqFw,194
1072
1076
  vellum/types/google_vertex_ai_vectorizer_text_embedding_004.py,sha256=rCnT091xK4wHvdDmdcdqVCXKWnrQTdeXgCVJL2mHetQ,184
1073
1077
  vellum/types/google_vertex_ai_vectorizer_text_embedding_004_request.py,sha256=kWWQEv3ExPkMZm4-eC_WWsLepEWJAnFXEwSG4cnXVow,192
1074
1078
  vellum/types/google_vertex_ai_vectorizer_text_multilingual_embedding_002.py,sha256=eNnwV4nsAu8pVj9bhDIk-lGxZXp2n58QaAhOh8JjWQ0,197
@@ -1650,7 +1654,7 @@ vellum/workflows/nodes/displayable/guardrail_node/test_node.py,sha256=SAGv6hSFcB
1650
1654
  vellum/workflows/nodes/displayable/guardrail_node/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1651
1655
  vellum/workflows/nodes/displayable/guardrail_node/tests/test_node.py,sha256=X2pd6TI8miYxIa7rgvs1pHTEreyWcf77EyR0_Jsa700,2055
1652
1656
  vellum/workflows/nodes/displayable/inline_prompt_node/__init__.py,sha256=gSUOoEZLlrx35-tQhSAd3An8WDwBqyiQh-sIebLU9wU,74
1653
- vellum/workflows/nodes/displayable/inline_prompt_node/node.py,sha256=ApPcHc5beGL2ReONT6MF-A4DGWZFCdKJ4ha-204bRoU,3053
1657
+ vellum/workflows/nodes/displayable/inline_prompt_node/node.py,sha256=LkFaS7GDPdhqMjQ3duHPX6pjl0z6xKzGxDueQC4aeA0,2999
1654
1658
  vellum/workflows/nodes/displayable/inline_prompt_node/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1655
1659
  vellum/workflows/nodes/displayable/inline_prompt_node/tests/test_node.py,sha256=bBHs90mV5SZ3rJPAL0wx4WWyawUA406LgMPOdvpZC_A,10923
1656
1660
  vellum/workflows/nodes/displayable/merge_node/__init__.py,sha256=J8IC08dSH7P76wKlNuxe1sn7toNGtSQdFirUbtPDEs0,60
@@ -1658,7 +1662,7 @@ vellum/workflows/nodes/displayable/merge_node/node.py,sha256=nZtGGVAvY4fvGg8vwV6
1658
1662
  vellum/workflows/nodes/displayable/note_node/__init__.py,sha256=KWA3P4fyYJ-fOTky8qNGlcOotQ-HeHJ9AjZt6mRQmCE,58
1659
1663
  vellum/workflows/nodes/displayable/note_node/node.py,sha256=sIN1VBQ7zeT3GhN0kupXbFfdpvgedWV79k4woJNp5IQ,394
1660
1664
  vellum/workflows/nodes/displayable/prompt_deployment_node/__init__.py,sha256=krX1Hds-TSVYZsx0wJFX4wsAKkEFYOX1ifwRGiIM-EA,82
1661
- vellum/workflows/nodes/displayable/prompt_deployment_node/node.py,sha256=KBMylYcEIoqTG438s5I-rv4uRejB8-Yc_4QA7XyALy0,3453
1665
+ vellum/workflows/nodes/displayable/prompt_deployment_node/node.py,sha256=rRUIM-zbVCV_0odyPExEZay0k4VCjsYyZ3OC9ZpHQsc,3399
1662
1666
  vellum/workflows/nodes/displayable/prompt_deployment_node/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1663
1667
  vellum/workflows/nodes/displayable/prompt_deployment_node/tests/test_node.py,sha256=c_nuuqrwiIjgj4qIbVypfDuOc-3TlgO6CbXFqQl2Nqw,19725
1664
1668
  vellum/workflows/nodes/displayable/search_node/__init__.py,sha256=hpBpvbrDYf43DElRZFLzieSn8weXiwNiiNOJurERQbs,62
@@ -1685,6 +1689,7 @@ vellum/workflows/nodes/experimental/__init__.py,sha256=k7VQEyvgEdnrEZ-icXx3fiByP
1685
1689
  vellum/workflows/nodes/experimental/openai_chat_completion_node/__init__.py,sha256=lsyD9laR9p7kx5-BXGH2gUTM242UhKy8SMV0SR6S2iE,90
1686
1690
  vellum/workflows/nodes/experimental/openai_chat_completion_node/node.py,sha256=cKI2Ls25L-JVt4z4a2ozQa-YBeVy21Z7BQ32Sj7iBPE,10460
1687
1691
  vellum/workflows/nodes/experimental/tool_calling_node/__init__.py,sha256=8R5HQtDDfo0hgFX6VdM45-FiyxK-IMTI9B9LL4TRUbw,112
1692
+ vellum/workflows/nodes/experimental/tool_calling_node/node.py,sha256=8R5HQtDDfo0hgFX6VdM45-FiyxK-IMTI9B9LL4TRUbw,112
1688
1693
  vellum/workflows/nodes/mocks.py,sha256=a1FjWEIocseMfjzM-i8DNozpUsaW0IONRpZmXBoWlyc,10455
1689
1694
  vellum/workflows/nodes/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1690
1695
  vellum/workflows/nodes/tests/test_mocks.py,sha256=mfPvrs75PKcsNsbJLQAN6PDFoVqs9TmQxpdyFKDdO60,7837
@@ -1752,8 +1757,8 @@ vellum/workflows/workflows/event_filters.py,sha256=GSxIgwrX26a1Smfd-6yss2abGCnad
1752
1757
  vellum/workflows/workflows/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1753
1758
  vellum/workflows/workflows/tests/test_base_workflow.py,sha256=fROqff6AZpCIzaSwOKSdtYy4XR0UZQ6ejxL3RJOSJVs,20447
1754
1759
  vellum/workflows/workflows/tests/test_context.py,sha256=VJBUcyWVtMa_lE5KxdhgMu0WYNYnUQUDvTF7qm89hJ0,2333
1755
- vellum_ai-0.14.82.dist-info/LICENSE,sha256=hOypcdt481qGNISA784bnAGWAE6tyIf9gc2E78mYC3E,1574
1756
- vellum_ai-0.14.82.dist-info/METADATA,sha256=GhPQ5ikBeUMKXXz9PYx9SzIWCkT1puQg6cdTzveC7Zk,5556
1757
- vellum_ai-0.14.82.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
1758
- vellum_ai-0.14.82.dist-info/entry_points.txt,sha256=HCH4yc_V3J_nDv3qJzZ_nYS8llCHZViCDP1ejgCc5Ak,42
1759
- vellum_ai-0.14.82.dist-info/RECORD,,
1760
+ vellum_ai-0.14.84.dist-info/LICENSE,sha256=hOypcdt481qGNISA784bnAGWAE6tyIf9gc2E78mYC3E,1574
1761
+ vellum_ai-0.14.84.dist-info/METADATA,sha256=MZecdz_oBhQUa1mWyrgseH2vWifoSF8qhkeEU4dxzf4,5556
1762
+ vellum_ai-0.14.84.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
1763
+ vellum_ai-0.14.84.dist-info/entry_points.txt,sha256=HCH4yc_V3J_nDv3qJzZ_nYS8llCHZViCDP1ejgCc5Ak,42
1764
+ vellum_ai-0.14.84.dist-info/RECORD,,
@@ -916,11 +916,16 @@ class BaseWorkflowDisplay(Generic[WorkflowType]):
916
916
 
917
917
  if not should_ignore:
918
918
  for serialized_pattern in self._serialized_files:
919
- if fnmatch.fnmatch(relative_path, serialized_pattern) or fnmatch.fnmatch(
920
- filename, serialized_pattern
921
- ):
922
- should_ignore = True
923
- break
919
+ if "*" in serialized_pattern:
920
+ if fnmatch.fnmatch(relative_path, serialized_pattern) or fnmatch.fnmatch(
921
+ filename, serialized_pattern
922
+ ):
923
+ should_ignore = True
924
+ break
925
+ else:
926
+ if relative_path == serialized_pattern:
927
+ should_ignore = True
928
+ break
924
929
 
925
930
  if should_ignore:
926
931
  continue
@@ -39,7 +39,7 @@ def test_serialize_module_includes_additional_files():
39
39
 
40
40
  assert "workflow.py" not in additional_files
41
41
  assert "__init__.py" not in additional_files
42
- assert "utils/__init__.py" not in additional_files
42
+ assert "utils/__init__.py" in additional_files
43
43
  assert "nodes/test_node.py" not in additional_files
44
44
 
45
45
  assert "def helper_function():" in additional_files["helper.py"]