mixpeek 0.20.19__py3-none-any.whl → 0.21.1__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 (228) hide show
  1. mixpeek/_version.py +3 -3
  2. mixpeek/{assets.py → bucket_objects.py} +309 -793
  3. mixpeek/buckets.py +1292 -0
  4. mixpeek/clusters.py +306 -0
  5. mixpeek/collection_cache.py +820 -0
  6. mixpeek/{taxonomyentities.py → collection_documents.py} +305 -559
  7. mixpeek/collections.py +122 -996
  8. mixpeek/features.py +45 -991
  9. mixpeek/models/__init__.py +625 -570
  10. mixpeek/models/aggregationtype.py +13 -0
  11. mixpeek/models/apikeyupdate.py +1 -1
  12. mixpeek/models/attributebasedconfig.py +21 -0
  13. mixpeek/models/automaticnaming.py +29 -0
  14. mixpeek/models/basicfeatureextractor.py +35 -0
  15. mixpeek/models/{classify_features_v1_entities_taxonomies_taxonomy_classify_postop.py → batch_delete_documents_v1_collections_collection_identifier_documents_batch_deleteop.py} +17 -15
  16. mixpeek/models/{update_collection_v1_collections_collection_putop.py → batch_update_documents_v1_collections_collection_identifier_documents_batch_putop.py} +29 -19
  17. mixpeek/models/blobdetails.py +72 -0
  18. mixpeek/models/blobmodel.py +107 -0
  19. mixpeek/models/bucketcreaterequest.py +75 -0
  20. mixpeek/models/bucketresponse.py +90 -0
  21. mixpeek/models/bucketschema_input.py +37 -0
  22. mixpeek/models/bucketschema_output.py +37 -0
  23. mixpeek/models/{featureresponse.py → bucketschemafield_input.py} +45 -18
  24. mixpeek/models/bucketschemafield_output.py +101 -0
  25. mixpeek/models/bucketschemafieldtype.py +29 -0
  26. mixpeek/models/bucketupdaterequest.py +68 -0
  27. mixpeek/models/cachestats.py +40 -0
  28. mixpeek/models/{list_collections_v1_collections_getop.py → cleanup_cache_v1_collections_cache_cleanup_postop.py} +23 -12
  29. mixpeek/models/{inputtype.py → clusteringmethod.py} +3 -5
  30. mixpeek/models/clustertype.py +9 -0
  31. mixpeek/models/collectioncacheconfig_input.py +92 -0
  32. mixpeek/models/collectioncacheconfig_output.py +92 -0
  33. mixpeek/models/collectionconfig.py +32 -0
  34. mixpeek/models/collectionmodel.py +79 -8
  35. mixpeek/models/{create_taxonomy_v1_entities_taxonomies_postop.py → create_bucket_v1_buckets_create_postop.py} +7 -7
  36. mixpeek/models/{search_assets_v1_assets_search_postop.py → create_cluster_v1_clusters_postop.py} +7 -7
  37. mixpeek/models/{create_collection_v1_collections_postop.py → create_collection_v1_collections_create_postop.py} +3 -3
  38. mixpeek/models/{ingest_video_url_v1_ingest_videos_url_postop.py → create_interaction_v1_retrievers_interactions_postop.py} +7 -7
  39. mixpeek/models/{partial_asset_update_v1_assets_asset_id_patchop.py → create_object_v1_buckets_bucket_identifier_objects_create_postop.py} +11 -9
  40. mixpeek/models/{ingest_text_v1_ingest_text_postop.py → create_retriever_v1_retrievers_retrievers_postop.py} +10 -7
  41. mixpeek/models/{ingest_image_url_v1_ingest_images_url_postop.py → create_taxonomy_v1_taxonomies_postop.py} +7 -7
  42. mixpeek/models/createblobrequest.py +80 -0
  43. mixpeek/models/createclusterrequest.py +74 -0
  44. mixpeek/models/createcollectionrequest.py +72 -3
  45. mixpeek/models/createnamespacerequest.py +14 -8
  46. mixpeek/models/createobjectrequest.py +75 -0
  47. mixpeek/models/createretrieverrequest.py +90 -0
  48. mixpeek/models/{taxonomyupdate.py → createtaxonomyrequest.py} +15 -13
  49. mixpeek/models/{delete_asset_v1_assets_asset_id_deleteop.py → delete_bucket_v1_buckets_bucket_identifier_deleteop.py} +5 -5
  50. mixpeek/models/{delete_classifications_v1_entities_taxonomies_taxonomy_classifications_classification_id_deleteop.py → delete_document_v1_collections_collection_identifier_documents_document_id_deleteop.py} +11 -11
  51. mixpeek/models/{get_taxonomy_v1_entities_taxonomies_taxonomy_getop.py → delete_interaction_v1_retrievers_interactions_interaction_id_deleteop.py} +7 -7
  52. mixpeek/models/delete_object_v1_buckets_bucket_identifier_objects_object_identifier_deleteop.py +70 -0
  53. mixpeek/models/{featureextractionembeddingrequest.py → documenthandlingconfig.py} +12 -15
  54. mixpeek/models/documentinputhandling.py +11 -0
  55. mixpeek/models/{jsontextoutputsettings.py → documentlistresponse.py} +15 -14
  56. mixpeek/models/documentoutputhandling.py +10 -0
  57. mixpeek/models/documentoutputtype.py +11 -0
  58. mixpeek/models/documentresponse.py +87 -0
  59. mixpeek/models/{nodeupdate.py → documentupdate.py} +22 -13
  60. mixpeek/models/enrichmentfield.py +25 -0
  61. mixpeek/models/errordetail.py +1 -1
  62. mixpeek/models/{update_node_v1_entities_taxonomies_nodes_node_patchop.py → execute_retriever_v1_retrievers_retrievers_retriever_id_execute_postop.py} +11 -11
  63. mixpeek/models/featureextractorconfig.py +116 -0
  64. mixpeek/models/featureextractordefinition.py +192 -0
  65. mixpeek/models/filtercondition.py +25 -25
  66. mixpeek/models/filteroperator.py +24 -0
  67. mixpeek/models/generativemodels.py +10 -0
  68. mixpeek/models/{delete_feature_v1_features_feature_id_deleteop.py → get_bucket_v1_buckets_bucket_identifier_getop.py} +5 -5
  69. mixpeek/models/{list_taxonomies_v1_entities_taxonomies_getop.py → get_cache_stats_v1_collections_cache_stats_getop.py} +16 -14
  70. mixpeek/models/get_collection_v1_collections_collection_id_getop.py +59 -0
  71. mixpeek/models/get_document_v1_collections_collection_identifier_documents_document_id_getop.py +70 -0
  72. mixpeek/models/get_feature_extractor_v1_features_extractors_feature_id_getop.py +16 -0
  73. mixpeek/models/get_interaction_v1_retrievers_interactions_interaction_id_getop.py +57 -0
  74. mixpeek/models/{delete_collection_v1_collections_collection_deleteop.py → get_object_v1_buckets_bucket_identifier_objects_object_identifier_getop.py} +16 -7
  75. mixpeek/models/get_research_v1_research_getop.py +52 -0
  76. mixpeek/models/get_retriever_stages_v1_retrievers_stages_getop.py +52 -0
  77. mixpeek/models/{delete_taxonomy_v1_entities_taxonomies_taxonomy_deleteop.py → get_retriever_v1_retrievers_retrievers_retriever_id_getop.py} +5 -7
  78. mixpeek/models/get_task_v1_tasks_task_id_getop.py +1 -1
  79. mixpeek/models/getusagerequestmodel.py +91 -0
  80. mixpeek/models/hdbscanparameters.py +26 -0
  81. mixpeek/models/interactionresponse.py +86 -0
  82. mixpeek/models/interactiontype.py +22 -0
  83. mixpeek/models/{search_features_v1_features_search_postop.py → invalidate_cache_v1_collections_cache_invalidate_postop.py} +60 -34
  84. mixpeek/models/invalidationevent.py +67 -0
  85. mixpeek/models/invalidationstrategy.py +12 -0
  86. mixpeek/models/kill_task_v1_tasks_task_id_deleteop.py +1 -1
  87. mixpeek/models/list_active_tasks_v1_tasks_getop.py +1 -1
  88. mixpeek/models/{list_assets_v1_assets_postop.py → list_buckets_v1_buckets_postop.py} +18 -18
  89. mixpeek/models/{list_features_v1_features_postop.py → list_documents_v1_collections_collection_identifier_documents_getop.py} +54 -19
  90. mixpeek/models/list_interactions_v1_retrievers_interactions_getop.py +96 -0
  91. mixpeek/models/{list_classifications_v1_entities_taxonomies_taxonomy_classifications_postop.py → list_objects_v1_buckets_bucket_identifier_objects_postop.py} +22 -29
  92. mixpeek/models/{groupbyoptionsasset.py → listbucketsrequest.py} +19 -28
  93. mixpeek/models/listbucketsresponse.py +23 -0
  94. mixpeek/models/{groupbyoptions.py → listobjectsrequest.py} +19 -28
  95. mixpeek/models/listobjectsresponse.py +25 -0
  96. mixpeek/models/listtasksresponse.py +3 -6
  97. mixpeek/models/{logicaloperator.py → logicaloperator_input.py} +42 -24
  98. mixpeek/models/logicaloperator_output.py +121 -0
  99. mixpeek/models/multivectorindex.py +25 -0
  100. mixpeek/models/namespaceresponse.py +1 -1
  101. mixpeek/models/namespaceusage.py +45 -0
  102. mixpeek/models/namingmethod.py +8 -0
  103. mixpeek/models/objectresponse.py +124 -0
  104. mixpeek/models/{db_model_paginationresponse.py → paginationresponse.py} +3 -3
  105. mixpeek/models/payloadindexconfig.py +1 -1
  106. mixpeek/models/plan.py +82 -0
  107. mixpeek/models/recomputestrategy.py +12 -0
  108. mixpeek/models/resourcetotals.py +39 -0
  109. mixpeek/models/{jsonvideooutputsettings.py → retrieverbinding.py} +19 -11
  110. mixpeek/models/{logodetectsettings.py → retrievercacheconfig.py} +20 -11
  111. mixpeek/models/retrievermodel.py +95 -0
  112. mixpeek/models/retrieverqueryrequest.py +114 -0
  113. mixpeek/models/retrieverresponse.py +24 -0
  114. mixpeek/models/searchinteraction.py +81 -0
  115. mixpeek/models/singlelineageentry.py +99 -0
  116. mixpeek/models/sortdirection.py +11 -0
  117. mixpeek/models/sortoption.py +20 -12
  118. mixpeek/models/sourceconfig_input.py +72 -0
  119. mixpeek/models/sourceconfig_output.py +75 -0
  120. mixpeek/models/sourcetype.py +11 -0
  121. mixpeek/models/stageconfig_input.py +111 -0
  122. mixpeek/models/stageconfig_output.py +114 -0
  123. mixpeek/models/stagedefinition.py +110 -0
  124. mixpeek/models/{jsonimageoutputsettings.py → stageresponse.py} +21 -11
  125. mixpeek/models/taskresponse.py +1 -1
  126. mixpeek/models/taskstatus.py +1 -0
  127. mixpeek/models/{assetfeatures.py → taxonomyapplicationconfig.py} +23 -15
  128. mixpeek/models/taxonomyconfig.py +19 -0
  129. mixpeek/models/timeseriesdatapoint.py +25 -0
  130. mixpeek/models/timeseriesusage.py +36 -0
  131. mixpeek/models/{full_asset_update_v1_assets_asset_id_putop.py → update_bucket_v1_buckets_bucket_identifier_putop.py} +9 -9
  132. mixpeek/models/{update_taxonomy_v1_entities_taxonomies_taxonomy_patchop.py → update_document_v1_collections_collection_identifier_documents_document_id_putop.py} +25 -13
  133. mixpeek/models/{full_feature_update_v1_features_feature_id_putop.py → update_object_v1_buckets_bucket_identifier_objects_object_identifier_putop.py} +20 -9
  134. mixpeek/models/updatenamespacerequest.py +1 -1
  135. mixpeek/models/updateobjectrequest.py +75 -0
  136. mixpeek/models/usageresponse.py +86 -0
  137. mixpeek/models/usagesummary.py +39 -0
  138. mixpeek/models/usagetimerange.py +16 -0
  139. mixpeek/models/usermodel_input.py +3 -0
  140. mixpeek/models/usermodel_output.py +3 -0
  141. mixpeek/models/vectorbasedconfig.py +60 -0
  142. mixpeek/models/{collectionresult.py → vectorindex.py} +20 -15
  143. mixpeek/models/vectorindexdefinition.py +43 -0
  144. mixpeek/models/vectortype.py +4 -1
  145. mixpeek/namespaces.py +26 -480
  146. mixpeek/organization_notifications.py +214 -0
  147. mixpeek/organizations.py +6 -210
  148. mixpeek/{featureextractors.py → organizations_usage.py} +31 -39
  149. mixpeek/research.py +228 -0
  150. mixpeek/retriever_interactions.py +1036 -0
  151. mixpeek/retriever_stages.py +232 -0
  152. mixpeek/{ingestassets.py → retrievers.py} +209 -271
  153. mixpeek/sdk.py +40 -23
  154. mixpeek/taxonomies.py +43 -513
  155. mixpeek/types/basemodel.py +3 -3
  156. mixpeek/utils/enums.py +67 -27
  157. {mixpeek-0.20.19.dist-info → mixpeek-0.21.1.dist-info}/METADATA +68 -50
  158. mixpeek-0.21.1.dist-info/RECORD +216 -0
  159. {mixpeek-0.20.19.dist-info → mixpeek-0.21.1.dist-info}/WHEEL +1 -1
  160. mixpeek/models/actionusage.py +0 -16
  161. mixpeek/models/assetresponse.py +0 -166
  162. mixpeek/models/assets_model_searchquery.py +0 -21
  163. mixpeek/models/assetupdate.py +0 -28
  164. mixpeek/models/assignmentconfig.py +0 -67
  165. mixpeek/models/assignmentmode.py +0 -11
  166. mixpeek/models/availablemodels.py +0 -16
  167. mixpeek/models/availablemodelsresponse.py +0 -27
  168. mixpeek/models/classificationmatch.py +0 -77
  169. mixpeek/models/classificationwithfeature.py +0 -73
  170. mixpeek/models/collectiondetailsresponse.py +0 -83
  171. mixpeek/models/dateusage.py +0 -22
  172. mixpeek/models/denseembedding.py +0 -16
  173. mixpeek/models/discoverrequest.py +0 -64
  174. mixpeek/models/embeddingconfig.py +0 -33
  175. mixpeek/models/embeddingrequest.py +0 -92
  176. mixpeek/models/embeddingresponse.py +0 -64
  177. mixpeek/models/entitysettings.py +0 -50
  178. mixpeek/models/featureoptions.py +0 -25
  179. mixpeek/models/features_model_paginationresponse.py +0 -59
  180. mixpeek/models/featureupdaterequest.py +0 -21
  181. mixpeek/models/get_asset_v1_assets_asset_id_getop.py +0 -73
  182. mixpeek/models/get_asset_with_features_v1_assets_asset_id_features_getop.py +0 -73
  183. mixpeek/models/get_collection_details_v1_collections_collection_details_getop.py +0 -59
  184. mixpeek/models/get_collection_details_v1_collections_collection_getop.py +0 -59
  185. mixpeek/models/get_feature_v1_features_feature_id_getop.py +0 -70
  186. mixpeek/models/get_taxonomy_node_v1_entities_taxonomies_nodes_node_getop.py +0 -59
  187. mixpeek/models/groupedassetdata.py +0 -18
  188. mixpeek/models/imagedescribesettings.py +0 -82
  189. mixpeek/models/imagedetectsettings.py +0 -47
  190. mixpeek/models/imagereadsettings.py +0 -71
  191. mixpeek/models/imagesettings.py +0 -92
  192. mixpeek/models/listassetsrequest.py +0 -75
  193. mixpeek/models/listassetsresponse.py +0 -22
  194. mixpeek/models/listclassificationsrequest.py +0 -69
  195. mixpeek/models/listclassificationsresponse.py +0 -31
  196. mixpeek/models/listcollectionsresponse.py +0 -22
  197. mixpeek/models/listfeaturesrequest.py +0 -77
  198. mixpeek/models/listfeaturesresponse.py +0 -22
  199. mixpeek/models/listtaxonomiesresponse.py +0 -24
  200. mixpeek/models/modality.py +0 -13
  201. mixpeek/models/modeldetails.py +0 -61
  202. mixpeek/models/nodeoptions.py +0 -16
  203. mixpeek/models/patch_namespace_v1_namespaces_namespace_patchop.py +0 -28
  204. mixpeek/models/payloadindextype.py +0 -17
  205. mixpeek/models/processimageurlinput.py +0 -87
  206. mixpeek/models/processtextinput.py +0 -82
  207. mixpeek/models/processvideourlinput.py +0 -87
  208. mixpeek/models/querysettings.py +0 -56
  209. mixpeek/models/rerankingoptions.py +0 -47
  210. mixpeek/models/search_model_searchquery.py +0 -76
  211. mixpeek/models/searchassetsrequest.py +0 -78
  212. mixpeek/models/searchrequestfeatures.py +0 -153
  213. mixpeek/models/sparseembedding.py +0 -21
  214. mixpeek/models/taxonomycreate.py +0 -20
  215. mixpeek/models/taxonomyextractionconfig.py +0 -26
  216. mixpeek/models/taxonomymodel.py +0 -27
  217. mixpeek/models/taxonomynode.py +0 -101
  218. mixpeek/models/taxonomynodecreate.py +0 -63
  219. mixpeek/models/textsettings.py +0 -67
  220. mixpeek/models/updateassetrequest.py +0 -60
  221. mixpeek/models/usage.py +0 -18
  222. mixpeek/models/vectormodel.py +0 -15
  223. mixpeek/models/videodescribesettings.py +0 -82
  224. mixpeek/models/videodetectsettings.py +0 -47
  225. mixpeek/models/videoreadsettings.py +0 -71
  226. mixpeek/models/videosettings.py +0 -115
  227. mixpeek/models/videotranscriptionsettings.py +0 -69
  228. mixpeek-0.20.19.dist-info/RECORD +0 -201
@@ -1,33 +0,0 @@
1
- """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
-
3
- from __future__ import annotations
4
- from .availablemodels import AvailableModels
5
- from enum import Enum
6
- from mixpeek.types import BaseModel
7
- from typing_extensions import TypedDict
8
-
9
-
10
- class EmbeddingConfigType(str, Enum):
11
- r"""Type of the input"""
12
-
13
- TEXT = "text"
14
- URL = "url"
15
- BASE64 = "base64"
16
-
17
-
18
- class EmbeddingConfigTypedDict(TypedDict):
19
- type: EmbeddingConfigType
20
- r"""Type of the input"""
21
- value: str
22
- r"""Value of the input"""
23
- embedding_model: AvailableModels
24
-
25
-
26
- class EmbeddingConfig(BaseModel):
27
- type: EmbeddingConfigType
28
- r"""Type of the input"""
29
-
30
- value: str
31
- r"""Value of the input"""
32
-
33
- embedding_model: AvailableModels
@@ -1,92 +0,0 @@
1
- """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
-
3
- from __future__ import annotations
4
- from .inputtype import InputType
5
- from .vectormodel import VectorModel
6
- from mixpeek.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
7
- from pydantic import model_serializer
8
- from typing_extensions import NotRequired, TypedDict
9
-
10
-
11
- class EmbeddingRequestTypedDict(TypedDict):
12
- r"""
13
- Request model for embedding generation.
14
-
15
- When multiple EmbeddingRequests use the same embedding_model:
16
- - All inputs will be embedded in the same vector space
17
- - The final embedding will be the average of all individual embeddings
18
- - Original values will be stored with a ' | ' separator
19
-
20
- Example:
21
- Two requests with same model \"clip\":
22
- 1. type: \"text\", value: \"a dog\", embedding_model: \"clip\"
23
- 2. type: \"url\", value: \"https://example.com/image.jpg\", embedding_model: \"clip\"
24
-
25
- Result:
26
- - vectors[\"clip\"] = average of both embeddings
27
- - embedding_configs[\"clip\"] = \"a dog | https://example.com/image.jpg\"
28
-
29
- """
30
-
31
- type: InputType
32
- embedding_model: VectorModel
33
- value: NotRequired[Nullable[str]]
34
- r"""The input content to embed. Could be a URL, text content, file path, or base64 encoded string"""
35
-
36
-
37
- class EmbeddingRequest(BaseModel):
38
- r"""
39
- Request model for embedding generation.
40
-
41
- When multiple EmbeddingRequests use the same embedding_model:
42
- - All inputs will be embedded in the same vector space
43
- - The final embedding will be the average of all individual embeddings
44
- - Original values will be stored with a ' | ' separator
45
-
46
- Example:
47
- Two requests with same model \"clip\":
48
- 1. type: \"text\", value: \"a dog\", embedding_model: \"clip\"
49
- 2. type: \"url\", value: \"https://example.com/image.jpg\", embedding_model: \"clip\"
50
-
51
- Result:
52
- - vectors[\"clip\"] = average of both embeddings
53
- - embedding_configs[\"clip\"] = \"a dog | https://example.com/image.jpg\"
54
-
55
- """
56
-
57
- type: InputType
58
-
59
- embedding_model: VectorModel
60
-
61
- value: OptionalNullable[str] = UNSET
62
- r"""The input content to embed. Could be a URL, text content, file path, or base64 encoded string"""
63
-
64
- @model_serializer(mode="wrap")
65
- def serialize_model(self, handler):
66
- optional_fields = ["value"]
67
- nullable_fields = ["value"]
68
- null_default_fields = []
69
-
70
- serialized = handler(self)
71
-
72
- m = {}
73
-
74
- for n, f in self.model_fields.items():
75
- k = f.alias or n
76
- val = serialized.get(k)
77
- serialized.pop(k, None)
78
-
79
- optional_nullable = k in optional_fields and k in nullable_fields
80
- is_set = (
81
- self.__pydantic_fields_set__.intersection({n})
82
- or k in null_default_fields
83
- ) # pylint: disable=no-member
84
-
85
- if val is not None and val != UNSET_SENTINEL:
86
- m[k] = val
87
- elif val != UNSET_SENTINEL and (
88
- not k in optional_fields or (optional_nullable and is_set)
89
- ):
90
- m[k] = val
91
-
92
- return m
@@ -1,64 +0,0 @@
1
- """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
-
3
- from __future__ import annotations
4
- from .denseembedding import DenseEmbedding, DenseEmbeddingTypedDict
5
- from .sparseembedding import SparseEmbedding, SparseEmbeddingTypedDict
6
- from mixpeek.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
7
- from pydantic import model_serializer
8
- from typing import Union
9
- from typing_extensions import NotRequired, TypeAliasType, TypedDict
10
-
11
-
12
- EmbeddingTypedDict = TypeAliasType(
13
- "EmbeddingTypedDict", Union[DenseEmbeddingTypedDict, SparseEmbeddingTypedDict]
14
- )
15
- r"""The embedding of the processed data, either dense or sparse format"""
16
-
17
-
18
- Embedding = TypeAliasType("Embedding", Union[DenseEmbedding, SparseEmbedding])
19
- r"""The embedding of the processed data, either dense or sparse format"""
20
-
21
-
22
- class EmbeddingResponseTypedDict(TypedDict):
23
- embedding: EmbeddingTypedDict
24
- r"""The embedding of the processed data, either dense or sparse format"""
25
- elapsed_time: NotRequired[Nullable[float]]
26
- r"""The time taken to process the data."""
27
-
28
-
29
- class EmbeddingResponse(BaseModel):
30
- embedding: Embedding
31
- r"""The embedding of the processed data, either dense or sparse format"""
32
-
33
- elapsed_time: OptionalNullable[float] = UNSET
34
- r"""The time taken to process the data."""
35
-
36
- @model_serializer(mode="wrap")
37
- def serialize_model(self, handler):
38
- optional_fields = ["elapsed_time"]
39
- nullable_fields = ["elapsed_time"]
40
- null_default_fields = []
41
-
42
- serialized = handler(self)
43
-
44
- m = {}
45
-
46
- for n, f in self.model_fields.items():
47
- k = f.alias or n
48
- val = serialized.get(k)
49
- serialized.pop(k, None)
50
-
51
- optional_nullable = k in optional_fields and k in nullable_fields
52
- is_set = (
53
- self.__pydantic_fields_set__.intersection({n})
54
- or k in null_default_fields
55
- ) # pylint: disable=no-member
56
-
57
- if val is not None and val != UNSET_SENTINEL:
58
- m[k] = val
59
- elif val != UNSET_SENTINEL and (
60
- not k in optional_fields or (optional_nullable and is_set)
61
- ):
62
- m[k] = val
63
-
64
- return m
@@ -1,50 +0,0 @@
1
- """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
-
3
- from __future__ import annotations
4
- from .taxonomyextractionconfig import (
5
- TaxonomyExtractionConfig,
6
- TaxonomyExtractionConfigTypedDict,
7
- )
8
- from mixpeek.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
9
- from pydantic import model_serializer
10
- from typing_extensions import NotRequired, TypedDict
11
-
12
-
13
- class EntitySettingsTypedDict(TypedDict):
14
- taxonomy_extraction: NotRequired[Nullable[TaxonomyExtractionConfigTypedDict]]
15
- r"""Settings for extracting entities using taxonomies"""
16
-
17
-
18
- class EntitySettings(BaseModel):
19
- taxonomy_extraction: OptionalNullable[TaxonomyExtractionConfig] = UNSET
20
- r"""Settings for extracting entities using taxonomies"""
21
-
22
- @model_serializer(mode="wrap")
23
- def serialize_model(self, handler):
24
- optional_fields = ["taxonomy_extraction"]
25
- nullable_fields = ["taxonomy_extraction"]
26
- null_default_fields = []
27
-
28
- serialized = handler(self)
29
-
30
- m = {}
31
-
32
- for n, f in self.model_fields.items():
33
- k = f.alias or n
34
- val = serialized.get(k)
35
- serialized.pop(k, None)
36
-
37
- optional_nullable = k in optional_fields and k in nullable_fields
38
- is_set = (
39
- self.__pydantic_fields_set__.intersection({n})
40
- or k in null_default_fields
41
- ) # pylint: disable=no-member
42
-
43
- if val is not None and val != UNSET_SENTINEL:
44
- m[k] = val
45
- elif val != UNSET_SENTINEL and (
46
- not k in optional_fields or (optional_nullable and is_set)
47
- ):
48
- m[k] = val
49
-
50
- return m
@@ -1,25 +0,0 @@
1
- """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
-
3
- from __future__ import annotations
4
- from mixpeek.types import BaseModel
5
- from typing import Optional
6
- from typing_extensions import NotRequired, TypedDict
7
-
8
-
9
- class FeatureOptionsTypedDict(TypedDict):
10
- r"""Controls what feature data to include in classification responses"""
11
-
12
- return_payload: NotRequired[bool]
13
- r"""Whether to include the full feature payload in the response"""
14
- return_url: NotRequired[bool]
15
- r"""Whether to include feature URLs in the response"""
16
-
17
-
18
- class FeatureOptions(BaseModel):
19
- r"""Controls what feature data to include in classification responses"""
20
-
21
- return_payload: Optional[bool] = False
22
- r"""Whether to include the full feature payload in the response"""
23
-
24
- return_url: Optional[bool] = False
25
- r"""Whether to include feature URLs in the response"""
@@ -1,59 +0,0 @@
1
- """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
-
3
- from __future__ import annotations
4
- from mixpeek.types import BaseModel, Nullable, UNSET_SENTINEL
5
- from pydantic import model_serializer
6
- from typing_extensions import TypedDict
7
-
8
-
9
- class FeaturesModelPaginationResponseTypedDict(TypedDict):
10
- total: int
11
- page_size: int
12
- total_pages: int
13
- current_page: int
14
- next_page: Nullable[str]
15
- previous_page: Nullable[str]
16
-
17
-
18
- class FeaturesModelPaginationResponse(BaseModel):
19
- total: int
20
-
21
- page_size: int
22
-
23
- total_pages: int
24
-
25
- current_page: int
26
-
27
- next_page: Nullable[str]
28
-
29
- previous_page: Nullable[str]
30
-
31
- @model_serializer(mode="wrap")
32
- def serialize_model(self, handler):
33
- optional_fields = []
34
- nullable_fields = ["next_page", "previous_page"]
35
- null_default_fields = []
36
-
37
- serialized = handler(self)
38
-
39
- m = {}
40
-
41
- for n, f in self.model_fields.items():
42
- k = f.alias or n
43
- val = serialized.get(k)
44
- serialized.pop(k, None)
45
-
46
- optional_nullable = k in optional_fields and k in nullable_fields
47
- is_set = (
48
- self.__pydantic_fields_set__.intersection({n})
49
- or k in null_default_fields
50
- ) # pylint: disable=no-member
51
-
52
- if val is not None and val != UNSET_SENTINEL:
53
- m[k] = val
54
- elif val != UNSET_SENTINEL and (
55
- not k in optional_fields or (optional_nullable and is_set)
56
- ):
57
- m[k] = val
58
-
59
- return m
@@ -1,21 +0,0 @@
1
- """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
-
3
- from __future__ import annotations
4
- from mixpeek.types import BaseModel
5
- from typing_extensions import TypedDict
6
-
7
-
8
- class FeatureUpdateRequestMetadataTypedDict(TypedDict):
9
- pass
10
-
11
-
12
- class FeatureUpdateRequestMetadata(BaseModel):
13
- pass
14
-
15
-
16
- class FeatureUpdateRequestTypedDict(TypedDict):
17
- metadata: FeatureUpdateRequestMetadataTypedDict
18
-
19
-
20
- class FeatureUpdateRequest(BaseModel):
21
- metadata: FeatureUpdateRequestMetadata
@@ -1,73 +0,0 @@
1
- """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
-
3
- from __future__ import annotations
4
- from mixpeek.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
5
- from mixpeek.utils import (
6
- FieldMetadata,
7
- HeaderMetadata,
8
- PathParamMetadata,
9
- QueryParamMetadata,
10
- )
11
- import pydantic
12
- from pydantic import model_serializer
13
- from typing import Optional
14
- from typing_extensions import Annotated, NotRequired, TypedDict
15
-
16
-
17
- class GetAssetV1AssetsAssetIDGetRequestTypedDict(TypedDict):
18
- asset_id: str
19
- r"""Unique identifier of the asset"""
20
- return_url: NotRequired[bool]
21
- r"""Whether to generate and return presigned S3 URLs for the asset and preview. Set to false to improve performance when URLs aren't needed"""
22
- x_namespace: NotRequired[Nullable[str]]
23
- r"""Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint."""
24
-
25
-
26
- class GetAssetV1AssetsAssetIDGetRequest(BaseModel):
27
- asset_id: Annotated[
28
- str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
29
- ]
30
- r"""Unique identifier of the asset"""
31
-
32
- return_url: Annotated[
33
- Optional[bool],
34
- FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
35
- ] = True
36
- r"""Whether to generate and return presigned S3 URLs for the asset and preview. Set to false to improve performance when URLs aren't needed"""
37
-
38
- x_namespace: Annotated[
39
- OptionalNullable[str],
40
- pydantic.Field(alias="X-Namespace"),
41
- FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
42
- ] = UNSET
43
- r"""Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint."""
44
-
45
- @model_serializer(mode="wrap")
46
- def serialize_model(self, handler):
47
- optional_fields = ["return_url", "X-Namespace"]
48
- nullable_fields = ["X-Namespace"]
49
- null_default_fields = []
50
-
51
- serialized = handler(self)
52
-
53
- m = {}
54
-
55
- for n, f in self.model_fields.items():
56
- k = f.alias or n
57
- val = serialized.get(k)
58
- serialized.pop(k, None)
59
-
60
- optional_nullable = k in optional_fields and k in nullable_fields
61
- is_set = (
62
- self.__pydantic_fields_set__.intersection({n})
63
- or k in null_default_fields
64
- ) # pylint: disable=no-member
65
-
66
- if val is not None and val != UNSET_SENTINEL:
67
- m[k] = val
68
- elif val != UNSET_SENTINEL and (
69
- not k in optional_fields or (optional_nullable and is_set)
70
- ):
71
- m[k] = val
72
-
73
- return m
@@ -1,73 +0,0 @@
1
- """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
-
3
- from __future__ import annotations
4
- from mixpeek.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
5
- from mixpeek.utils import (
6
- FieldMetadata,
7
- HeaderMetadata,
8
- PathParamMetadata,
9
- QueryParamMetadata,
10
- )
11
- import pydantic
12
- from pydantic import model_serializer
13
- from typing import Optional
14
- from typing_extensions import Annotated, NotRequired, TypedDict
15
-
16
-
17
- class GetAssetWithFeaturesV1AssetsAssetIDFeaturesGetRequestTypedDict(TypedDict):
18
- asset_id: str
19
- r"""Unique identifier of the asset"""
20
- return_url: NotRequired[bool]
21
- r"""Whether to generate and return presigned S3 URLs for the asset and preview. Set to false to improve performance when URLs aren't needed"""
22
- x_namespace: NotRequired[Nullable[str]]
23
- r"""Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint."""
24
-
25
-
26
- class GetAssetWithFeaturesV1AssetsAssetIDFeaturesGetRequest(BaseModel):
27
- asset_id: Annotated[
28
- str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
29
- ]
30
- r"""Unique identifier of the asset"""
31
-
32
- return_url: Annotated[
33
- Optional[bool],
34
- FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
35
- ] = False
36
- r"""Whether to generate and return presigned S3 URLs for the asset and preview. Set to false to improve performance when URLs aren't needed"""
37
-
38
- x_namespace: Annotated[
39
- OptionalNullable[str],
40
- pydantic.Field(alias="X-Namespace"),
41
- FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
42
- ] = UNSET
43
- r"""Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint."""
44
-
45
- @model_serializer(mode="wrap")
46
- def serialize_model(self, handler):
47
- optional_fields = ["return_url", "X-Namespace"]
48
- nullable_fields = ["X-Namespace"]
49
- null_default_fields = []
50
-
51
- serialized = handler(self)
52
-
53
- m = {}
54
-
55
- for n, f in self.model_fields.items():
56
- k = f.alias or n
57
- val = serialized.get(k)
58
- serialized.pop(k, None)
59
-
60
- optional_nullable = k in optional_fields and k in nullable_fields
61
- is_set = (
62
- self.__pydantic_fields_set__.intersection({n})
63
- or k in null_default_fields
64
- ) # pylint: disable=no-member
65
-
66
- if val is not None and val != UNSET_SENTINEL:
67
- m[k] = val
68
- elif val != UNSET_SENTINEL and (
69
- not k in optional_fields or (optional_nullable and is_set)
70
- ):
71
- m[k] = val
72
-
73
- return m
@@ -1,59 +0,0 @@
1
- """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
-
3
- from __future__ import annotations
4
- from mixpeek.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
5
- from mixpeek.utils import FieldMetadata, HeaderMetadata, PathParamMetadata
6
- import pydantic
7
- from pydantic import model_serializer
8
- from typing_extensions import Annotated, NotRequired, TypedDict
9
-
10
-
11
- class GetCollectionDetailsV1CollectionsCollectionDetailsGetRequestTypedDict(TypedDict):
12
- collection: str
13
- r"""Either the collection name or collection ID"""
14
- x_namespace: NotRequired[Nullable[str]]
15
- r"""Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint."""
16
-
17
-
18
- class GetCollectionDetailsV1CollectionsCollectionDetailsGetRequest(BaseModel):
19
- collection: Annotated[
20
- str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
21
- ]
22
- r"""Either the collection name or collection ID"""
23
-
24
- x_namespace: Annotated[
25
- OptionalNullable[str],
26
- pydantic.Field(alias="X-Namespace"),
27
- FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
28
- ] = UNSET
29
- r"""Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint."""
30
-
31
- @model_serializer(mode="wrap")
32
- def serialize_model(self, handler):
33
- optional_fields = ["X-Namespace"]
34
- nullable_fields = ["X-Namespace"]
35
- null_default_fields = []
36
-
37
- serialized = handler(self)
38
-
39
- m = {}
40
-
41
- for n, f in self.model_fields.items():
42
- k = f.alias or n
43
- val = serialized.get(k)
44
- serialized.pop(k, None)
45
-
46
- optional_nullable = k in optional_fields and k in nullable_fields
47
- is_set = (
48
- self.__pydantic_fields_set__.intersection({n})
49
- or k in null_default_fields
50
- ) # pylint: disable=no-member
51
-
52
- if val is not None and val != UNSET_SENTINEL:
53
- m[k] = val
54
- elif val != UNSET_SENTINEL and (
55
- not k in optional_fields or (optional_nullable and is_set)
56
- ):
57
- m[k] = val
58
-
59
- return m
@@ -1,59 +0,0 @@
1
- """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
-
3
- from __future__ import annotations
4
- from mixpeek.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
5
- from mixpeek.utils import FieldMetadata, HeaderMetadata, PathParamMetadata
6
- import pydantic
7
- from pydantic import model_serializer
8
- from typing_extensions import Annotated, NotRequired, TypedDict
9
-
10
-
11
- class GetCollectionDetailsV1CollectionsCollectionGetRequestTypedDict(TypedDict):
12
- collection: str
13
- r"""Either the collection name or collection ID"""
14
- x_namespace: NotRequired[Nullable[str]]
15
- r"""Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint."""
16
-
17
-
18
- class GetCollectionDetailsV1CollectionsCollectionGetRequest(BaseModel):
19
- collection: Annotated[
20
- str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
21
- ]
22
- r"""Either the collection name or collection ID"""
23
-
24
- x_namespace: Annotated[
25
- OptionalNullable[str],
26
- pydantic.Field(alias="X-Namespace"),
27
- FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
28
- ] = UNSET
29
- r"""Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint."""
30
-
31
- @model_serializer(mode="wrap")
32
- def serialize_model(self, handler):
33
- optional_fields = ["X-Namespace"]
34
- nullable_fields = ["X-Namespace"]
35
- null_default_fields = []
36
-
37
- serialized = handler(self)
38
-
39
- m = {}
40
-
41
- for n, f in self.model_fields.items():
42
- k = f.alias or n
43
- val = serialized.get(k)
44
- serialized.pop(k, None)
45
-
46
- optional_nullable = k in optional_fields and k in nullable_fields
47
- is_set = (
48
- self.__pydantic_fields_set__.intersection({n})
49
- or k in null_default_fields
50
- ) # pylint: disable=no-member
51
-
52
- if val is not None and val != UNSET_SENTINEL:
53
- m[k] = val
54
- elif val != UNSET_SENTINEL and (
55
- not k in optional_fields or (optional_nullable and is_set)
56
- ):
57
- m[k] = val
58
-
59
- return m