mixpeek 0.20.20__py3-none-any.whl → 0.21.6__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.
- mixpeek/_version.py +3 -3
- mixpeek/{assets.py → bucketobjects.py} +309 -793
- mixpeek/buckets.py +1292 -0
- mixpeek/clusters.py +306 -0
- mixpeek/collectioncache.py +820 -0
- mixpeek/{taxonomyentities.py → collectiondocuments.py} +305 -559
- mixpeek/collections.py +120 -994
- mixpeek/features.py +45 -991
- mixpeek/models/__init__.py +625 -570
- mixpeek/models/aggregationtype.py +13 -0
- mixpeek/models/apikeyupdate.py +1 -1
- mixpeek/models/attributebasedconfig.py +21 -0
- mixpeek/models/automaticnaming.py +29 -0
- mixpeek/models/basicfeatureextractor.py +35 -0
- mixpeek/models/{classify_features_v1_entities_taxonomies_taxonomy_classify_postop.py → batch_delete_documents_v1_collections_collection_identifier_documents_batch_deleteop.py} +17 -15
- mixpeek/models/{update_collection_v1_collections_collection_putop.py → batch_update_documents_v1_collections_collection_identifier_documents_batch_putop.py} +29 -19
- mixpeek/models/blobdetails.py +72 -0
- mixpeek/models/blobmodel.py +107 -0
- mixpeek/models/bucketcreaterequest.py +75 -0
- mixpeek/models/bucketresponse.py +90 -0
- mixpeek/models/bucketschema_input.py +37 -0
- mixpeek/models/bucketschema_output.py +37 -0
- mixpeek/models/{featureresponse.py → bucketschemafield_input.py} +45 -18
- mixpeek/models/bucketschemafield_output.py +101 -0
- mixpeek/models/bucketschemafieldtype.py +29 -0
- mixpeek/models/bucketupdaterequest.py +68 -0
- mixpeek/models/cachestats.py +40 -0
- mixpeek/models/{list_collections_v1_collections_getop.py → cleanup_cache_v1_collections_cache_cleanup_postop.py} +23 -12
- mixpeek/models/{inputtype.py → clusteringmethod.py} +3 -5
- mixpeek/models/clustertype.py +9 -0
- mixpeek/models/collectioncacheconfig_input.py +92 -0
- mixpeek/models/collectioncacheconfig_output.py +92 -0
- mixpeek/models/collectionconfig.py +32 -0
- mixpeek/models/collectionmodel.py +79 -8
- mixpeek/models/{create_taxonomy_v1_entities_taxonomies_postop.py → create_bucket_v1_buckets_create_postop.py} +7 -7
- mixpeek/models/{search_assets_v1_assets_search_postop.py → create_cluster_v1_clusters_postop.py} +7 -7
- mixpeek/models/{create_collection_v1_collections_postop.py → create_collection_v1_collections_create_postop.py} +3 -3
- mixpeek/models/{ingest_video_url_v1_ingest_videos_url_postop.py → create_interaction_v1_retrievers_interactions_postop.py} +7 -7
- mixpeek/models/{partial_asset_update_v1_assets_asset_id_patchop.py → create_object_v1_buckets_bucket_identifier_objects_create_postop.py} +11 -9
- mixpeek/models/{ingest_text_v1_ingest_text_postop.py → create_retriever_v1_retrievers_retrievers_postop.py} +10 -7
- mixpeek/models/{ingest_image_url_v1_ingest_images_url_postop.py → create_taxonomy_v1_taxonomies_postop.py} +7 -7
- mixpeek/models/createblobrequest.py +80 -0
- mixpeek/models/createclusterrequest.py +74 -0
- mixpeek/models/createcollectionrequest.py +72 -3
- mixpeek/models/createnamespacerequest.py +14 -8
- mixpeek/models/createobjectrequest.py +75 -0
- mixpeek/models/createretrieverrequest.py +90 -0
- mixpeek/models/{taxonomyupdate.py → createtaxonomyrequest.py} +15 -13
- mixpeek/models/{delete_asset_v1_assets_asset_id_deleteop.py → delete_bucket_v1_buckets_bucket_identifier_deleteop.py} +5 -5
- 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
- mixpeek/models/{get_taxonomy_v1_entities_taxonomies_taxonomy_getop.py → delete_interaction_v1_retrievers_interactions_interaction_id_deleteop.py} +7 -7
- mixpeek/models/delete_object_v1_buckets_bucket_identifier_objects_object_identifier_deleteop.py +70 -0
- mixpeek/models/{featureextractionembeddingrequest.py → documenthandlingconfig.py} +12 -15
- mixpeek/models/documentinputhandling.py +11 -0
- mixpeek/models/{jsontextoutputsettings.py → documentlistresponse.py} +15 -14
- mixpeek/models/documentoutputhandling.py +10 -0
- mixpeek/models/documentoutputtype.py +11 -0
- mixpeek/models/documentresponse.py +87 -0
- mixpeek/models/{nodeupdate.py → documentupdate.py} +22 -13
- mixpeek/models/enrichmentfield.py +25 -0
- mixpeek/models/errordetail.py +1 -1
- mixpeek/models/{update_node_v1_entities_taxonomies_nodes_node_patchop.py → execute_retriever_v1_retrievers_retrievers_retriever_id_execute_postop.py} +11 -11
- mixpeek/models/featureextractorconfig.py +116 -0
- mixpeek/models/featureextractordefinition.py +192 -0
- mixpeek/models/filtercondition.py +25 -25
- mixpeek/models/filteroperator.py +24 -0
- mixpeek/models/generativemodels.py +10 -0
- mixpeek/models/{delete_feature_v1_features_feature_id_deleteop.py → get_bucket_v1_buckets_bucket_identifier_getop.py} +5 -5
- mixpeek/models/{list_taxonomies_v1_entities_taxonomies_getop.py → get_cache_stats_v1_collections_cache_stats_getop.py} +16 -14
- mixpeek/models/get_collection_v1_collections_collection_id_getop.py +59 -0
- mixpeek/models/get_document_v1_collections_collection_identifier_documents_document_id_getop.py +70 -0
- mixpeek/models/get_feature_extractor_v1_features_extractors_feature_id_getop.py +16 -0
- mixpeek/models/get_interaction_v1_retrievers_interactions_interaction_id_getop.py +57 -0
- mixpeek/models/{delete_collection_v1_collections_collection_deleteop.py → get_object_v1_buckets_bucket_identifier_objects_object_identifier_getop.py} +16 -7
- mixpeek/models/get_research_v1_research_getop.py +52 -0
- mixpeek/models/get_retriever_stages_v1_retrievers_stages_getop.py +52 -0
- mixpeek/models/{delete_taxonomy_v1_entities_taxonomies_taxonomy_deleteop.py → get_retriever_v1_retrievers_retrievers_retriever_id_getop.py} +5 -7
- mixpeek/models/get_task_v1_tasks_task_id_getop.py +1 -1
- mixpeek/models/getusagerequestmodel.py +91 -0
- mixpeek/models/hdbscanparameters.py +26 -0
- mixpeek/models/interactionresponse.py +86 -0
- mixpeek/models/interactiontype.py +22 -0
- mixpeek/models/{search_features_v1_features_search_postop.py → invalidate_cache_v1_collections_cache_invalidate_postop.py} +60 -34
- mixpeek/models/invalidationevent.py +67 -0
- mixpeek/models/invalidationstrategy.py +12 -0
- mixpeek/models/kill_task_v1_tasks_task_id_deleteop.py +1 -1
- mixpeek/models/list_active_tasks_v1_tasks_getop.py +1 -1
- mixpeek/models/{list_assets_v1_assets_postop.py → list_buckets_v1_buckets_postop.py} +18 -18
- mixpeek/models/{list_features_v1_features_postop.py → list_documents_v1_collections_collection_identifier_documents_getop.py} +54 -19
- mixpeek/models/list_interactions_v1_retrievers_interactions_getop.py +96 -0
- mixpeek/models/{list_classifications_v1_entities_taxonomies_taxonomy_classifications_postop.py → list_objects_v1_buckets_bucket_identifier_objects_postop.py} +22 -29
- mixpeek/models/{groupbyoptionsasset.py → listbucketsrequest.py} +19 -28
- mixpeek/models/listbucketsresponse.py +23 -0
- mixpeek/models/{groupbyoptions.py → listobjectsrequest.py} +19 -28
- mixpeek/models/listobjectsresponse.py +25 -0
- mixpeek/models/listtasksresponse.py +3 -6
- mixpeek/models/{logicaloperator.py → logicaloperator_input.py} +42 -24
- mixpeek/models/logicaloperator_output.py +121 -0
- mixpeek/models/multivectorindex.py +25 -0
- mixpeek/models/namespaceresponse.py +1 -1
- mixpeek/models/namespaceusage.py +45 -0
- mixpeek/models/namingmethod.py +8 -0
- mixpeek/models/objectresponse.py +124 -0
- mixpeek/models/{db_model_paginationresponse.py → paginationresponse.py} +3 -3
- mixpeek/models/payloadindexconfig.py +1 -1
- mixpeek/models/plan.py +82 -0
- mixpeek/models/recomputestrategy.py +12 -0
- mixpeek/models/resourcetotals.py +39 -0
- mixpeek/models/{jsonvideooutputsettings.py → retrieverbinding.py} +19 -11
- mixpeek/models/{logodetectsettings.py → retrievercacheconfig.py} +20 -11
- mixpeek/models/retrievermodel.py +95 -0
- mixpeek/models/retrieverqueryrequest.py +114 -0
- mixpeek/models/retrieverresponse.py +24 -0
- mixpeek/models/searchinteraction.py +81 -0
- mixpeek/models/singlelineageentry.py +99 -0
- mixpeek/models/sortdirection.py +11 -0
- mixpeek/models/sortoption.py +20 -12
- mixpeek/models/sourceconfig_input.py +72 -0
- mixpeek/models/sourceconfig_output.py +75 -0
- mixpeek/models/sourcetype.py +11 -0
- mixpeek/models/stageconfig_input.py +111 -0
- mixpeek/models/stageconfig_output.py +114 -0
- mixpeek/models/stagedefinition.py +110 -0
- mixpeek/models/{jsonimageoutputsettings.py → stageresponse.py} +21 -11
- mixpeek/models/taskresponse.py +1 -1
- mixpeek/models/taskstatus.py +1 -0
- mixpeek/models/{assetfeatures.py → taxonomyapplicationconfig.py} +23 -15
- mixpeek/models/taxonomyconfig.py +19 -0
- mixpeek/models/timeseriesdatapoint.py +25 -0
- mixpeek/models/timeseriesusage.py +36 -0
- mixpeek/models/{full_asset_update_v1_assets_asset_id_putop.py → update_bucket_v1_buckets_bucket_identifier_putop.py} +9 -9
- mixpeek/models/{update_taxonomy_v1_entities_taxonomies_taxonomy_patchop.py → update_document_v1_collections_collection_identifier_documents_document_id_putop.py} +25 -13
- mixpeek/models/{full_feature_update_v1_features_feature_id_putop.py → update_object_v1_buckets_bucket_identifier_objects_object_identifier_putop.py} +20 -9
- mixpeek/models/updatenamespacerequest.py +1 -1
- mixpeek/models/updateobjectrequest.py +75 -0
- mixpeek/models/usageresponse.py +86 -0
- mixpeek/models/usagesummary.py +39 -0
- mixpeek/models/usagetimerange.py +16 -0
- mixpeek/models/usermodel_input.py +3 -0
- mixpeek/models/usermodel_output.py +3 -0
- mixpeek/models/vectorbasedconfig.py +60 -0
- mixpeek/models/{collectionresult.py → vectorindex.py} +20 -15
- mixpeek/models/vectorindexdefinition.py +43 -0
- mixpeek/models/vectortype.py +4 -1
- mixpeek/namespaces.py +26 -480
- mixpeek/organizationnotifications.py +214 -0
- mixpeek/organizations.py +6 -210
- mixpeek/{featureextractors.py → organizationsusage.py} +31 -39
- mixpeek/research.py +228 -0
- mixpeek/retrieverinteractions.py +1036 -0
- mixpeek/{ingestassets.py → retrievers.py} +209 -271
- mixpeek/retrieverstages.py +232 -0
- mixpeek/sdk.py +40 -23
- mixpeek/taxonomies.py +43 -513
- mixpeek/types/basemodel.py +3 -3
- mixpeek/utils/enums.py +67 -27
- {mixpeek-0.20.20.dist-info → mixpeek-0.21.6.dist-info}/METADATA +68 -50
- mixpeek-0.21.6.dist-info/RECORD +216 -0
- {mixpeek-0.20.20.dist-info → mixpeek-0.21.6.dist-info}/WHEEL +1 -1
- mixpeek/models/actionusage.py +0 -16
- mixpeek/models/assetresponse.py +0 -166
- mixpeek/models/assets_model_searchquery.py +0 -21
- mixpeek/models/assetupdate.py +0 -28
- mixpeek/models/assignmentconfig.py +0 -67
- mixpeek/models/assignmentmode.py +0 -11
- mixpeek/models/availablemodels.py +0 -16
- mixpeek/models/availablemodelsresponse.py +0 -27
- mixpeek/models/classificationmatch.py +0 -77
- mixpeek/models/classificationwithfeature.py +0 -73
- mixpeek/models/collectiondetailsresponse.py +0 -83
- mixpeek/models/dateusage.py +0 -22
- mixpeek/models/denseembedding.py +0 -16
- mixpeek/models/discoverrequest.py +0 -64
- mixpeek/models/embeddingconfig.py +0 -33
- mixpeek/models/embeddingrequest.py +0 -92
- mixpeek/models/embeddingresponse.py +0 -64
- mixpeek/models/entitysettings.py +0 -50
- mixpeek/models/featureoptions.py +0 -25
- mixpeek/models/features_model_paginationresponse.py +0 -59
- mixpeek/models/featureupdaterequest.py +0 -21
- mixpeek/models/get_asset_v1_assets_asset_id_getop.py +0 -73
- mixpeek/models/get_asset_with_features_v1_assets_asset_id_features_getop.py +0 -73
- mixpeek/models/get_collection_details_v1_collections_collection_details_getop.py +0 -59
- mixpeek/models/get_collection_details_v1_collections_collection_getop.py +0 -59
- mixpeek/models/get_feature_v1_features_feature_id_getop.py +0 -70
- mixpeek/models/get_taxonomy_node_v1_entities_taxonomies_nodes_node_getop.py +0 -59
- mixpeek/models/groupedassetdata.py +0 -18
- mixpeek/models/imagedescribesettings.py +0 -82
- mixpeek/models/imagedetectsettings.py +0 -47
- mixpeek/models/imagereadsettings.py +0 -71
- mixpeek/models/imagesettings.py +0 -92
- mixpeek/models/listassetsrequest.py +0 -75
- mixpeek/models/listassetsresponse.py +0 -22
- mixpeek/models/listclassificationsrequest.py +0 -69
- mixpeek/models/listclassificationsresponse.py +0 -31
- mixpeek/models/listcollectionsresponse.py +0 -22
- mixpeek/models/listfeaturesrequest.py +0 -77
- mixpeek/models/listfeaturesresponse.py +0 -22
- mixpeek/models/listtaxonomiesresponse.py +0 -24
- mixpeek/models/modality.py +0 -13
- mixpeek/models/modeldetails.py +0 -61
- mixpeek/models/nodeoptions.py +0 -16
- mixpeek/models/patch_namespace_v1_namespaces_namespace_patchop.py +0 -28
- mixpeek/models/payloadindextype.py +0 -17
- mixpeek/models/processimageurlinput.py +0 -87
- mixpeek/models/processtextinput.py +0 -82
- mixpeek/models/processvideourlinput.py +0 -87
- mixpeek/models/querysettings.py +0 -56
- mixpeek/models/rerankingoptions.py +0 -47
- mixpeek/models/search_model_searchquery.py +0 -76
- mixpeek/models/searchassetsrequest.py +0 -78
- mixpeek/models/searchrequestfeatures.py +0 -153
- mixpeek/models/sparseembedding.py +0 -21
- mixpeek/models/taxonomycreate.py +0 -20
- mixpeek/models/taxonomyextractionconfig.py +0 -26
- mixpeek/models/taxonomymodel.py +0 -27
- mixpeek/models/taxonomynode.py +0 -101
- mixpeek/models/taxonomynodecreate.py +0 -63
- mixpeek/models/textsettings.py +0 -67
- mixpeek/models/updateassetrequest.py +0 -60
- mixpeek/models/usage.py +0 -18
- mixpeek/models/vectormodel.py +0 -15
- mixpeek/models/videodescribesettings.py +0 -82
- mixpeek/models/videodetectsettings.py +0 -47
- mixpeek/models/videoreadsettings.py +0 -71
- mixpeek/models/videosettings.py +0 -115
- mixpeek/models/videotranscriptionsettings.py +0 -69
- mixpeek-0.20.20.dist-info/RECORD +0 -201
@@ -1,10 +1,7 @@
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
2
|
|
3
3
|
from __future__ import annotations
|
4
|
-
from .
|
5
|
-
ListClassificationsRequest,
|
6
|
-
ListClassificationsRequestTypedDict,
|
7
|
-
)
|
4
|
+
from .listobjectsrequest import ListObjectsRequest, ListObjectsRequestTypedDict
|
8
5
|
from mixpeek.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
|
9
6
|
from mixpeek.utils import (
|
10
7
|
FieldMetadata,
|
@@ -19,40 +16,31 @@ from typing import Optional
|
|
19
16
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
20
17
|
|
21
18
|
|
22
|
-
class
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
list_classifications_request: ListClassificationsRequestTypedDict
|
28
|
-
page: NotRequired[Nullable[int]]
|
29
|
-
page_size: NotRequired[int]
|
19
|
+
class ListObjectsV1BucketsBucketIdentifierObjectsPostRequestTypedDict(TypedDict):
|
20
|
+
bucket_identifier: str
|
21
|
+
r"""Identifier of the bucket"""
|
22
|
+
limit: NotRequired[Nullable[int]]
|
23
|
+
offset: NotRequired[Nullable[int]]
|
30
24
|
x_namespace: NotRequired[Nullable[str]]
|
31
25
|
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."""
|
26
|
+
list_objects_request: NotRequired[ListObjectsRequestTypedDict]
|
32
27
|
|
33
28
|
|
34
|
-
class
|
35
|
-
|
36
|
-
):
|
37
|
-
taxonomy: Annotated[
|
29
|
+
class ListObjectsV1BucketsBucketIdentifierObjectsPostRequest(BaseModel):
|
30
|
+
bucket_identifier: Annotated[
|
38
31
|
str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
|
39
32
|
]
|
40
|
-
r"""
|
41
|
-
|
42
|
-
list_classifications_request: Annotated[
|
43
|
-
ListClassificationsRequest,
|
44
|
-
FieldMetadata(request=RequestMetadata(media_type="application/json")),
|
45
|
-
]
|
33
|
+
r"""Identifier of the bucket"""
|
46
34
|
|
47
|
-
|
35
|
+
limit: Annotated[
|
48
36
|
OptionalNullable[int],
|
49
37
|
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
50
38
|
] = UNSET
|
51
39
|
|
52
|
-
|
53
|
-
|
40
|
+
offset: Annotated[
|
41
|
+
OptionalNullable[int],
|
54
42
|
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
55
|
-
] =
|
43
|
+
] = UNSET
|
56
44
|
|
57
45
|
x_namespace: Annotated[
|
58
46
|
OptionalNullable[str],
|
@@ -61,17 +49,22 @@ class ListClassificationsV1EntitiesTaxonomiesTaxonomyClassificationsPostRequest(
|
|
61
49
|
] = UNSET
|
62
50
|
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."""
|
63
51
|
|
52
|
+
list_objects_request: Annotated[
|
53
|
+
Optional[ListObjectsRequest],
|
54
|
+
FieldMetadata(request=RequestMetadata(media_type="application/json")),
|
55
|
+
] = None
|
56
|
+
|
64
57
|
@model_serializer(mode="wrap")
|
65
58
|
def serialize_model(self, handler):
|
66
|
-
optional_fields = ["
|
67
|
-
nullable_fields = ["
|
59
|
+
optional_fields = ["limit", "offset", "X-Namespace", "ListObjectsRequest"]
|
60
|
+
nullable_fields = ["limit", "offset", "X-Namespace"]
|
68
61
|
null_default_fields = []
|
69
62
|
|
70
63
|
serialized = handler(self)
|
71
64
|
|
72
65
|
m = {}
|
73
66
|
|
74
|
-
for n, f in self.model_fields.items():
|
67
|
+
for n, f in type(self).model_fields.items():
|
75
68
|
k = f.alias or n
|
76
69
|
val = serialized.get(k)
|
77
70
|
serialized.pop(k, None)
|
@@ -1,56 +1,47 @@
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
2
|
|
3
3
|
from __future__ import annotations
|
4
|
+
from .logicaloperator_input import LogicalOperatorInput, LogicalOperatorInputTypedDict
|
4
5
|
from .sortoption import SortOption, SortOptionTypedDict
|
5
6
|
from mixpeek.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
|
6
7
|
from pydantic import model_serializer
|
7
8
|
from typing_extensions import NotRequired, TypedDict
|
8
9
|
|
9
10
|
|
10
|
-
class
|
11
|
-
|
12
|
-
r"""
|
13
|
-
Field to group by
|
11
|
+
class ListBucketsRequestTypedDict(TypedDict):
|
12
|
+
r"""Request model for listing buckets"""
|
14
13
|
|
15
|
-
|
16
|
-
|
17
|
-
Please contact us to add additional fields for grouping.
|
18
|
-
|
19
|
-
"""
|
20
|
-
max_assets: NotRequired[Nullable[int]]
|
21
|
-
r"""Maximum number of assets to group"""
|
14
|
+
filters: NotRequired[Nullable[LogicalOperatorInputTypedDict]]
|
15
|
+
r"""Filters to apply to the bucket list"""
|
22
16
|
sort: NotRequired[Nullable[SortOptionTypedDict]]
|
23
|
-
r"""Sort options for
|
24
|
-
|
17
|
+
r"""Sort options for the bucket list"""
|
18
|
+
search: NotRequired[Nullable[str]]
|
19
|
+
r"""Search term to filter buckets by name or description"""
|
25
20
|
|
26
|
-
class GroupByOptionsAsset(BaseModel):
|
27
|
-
field: OptionalNullable[str] = UNSET
|
28
|
-
r"""
|
29
|
-
Field to group by
|
30
21
|
|
31
|
-
|
32
|
-
|
33
|
-
Please contact us to add additional fields for grouping.
|
22
|
+
class ListBucketsRequest(BaseModel):
|
23
|
+
r"""Request model for listing buckets"""
|
34
24
|
|
35
|
-
|
36
|
-
|
37
|
-
max_assets: OptionalNullable[int] = UNSET
|
38
|
-
r"""Maximum number of assets to group"""
|
25
|
+
filters: OptionalNullable[LogicalOperatorInput] = UNSET
|
26
|
+
r"""Filters to apply to the bucket list"""
|
39
27
|
|
40
28
|
sort: OptionalNullable[SortOption] = UNSET
|
41
|
-
r"""Sort options for
|
29
|
+
r"""Sort options for the bucket list"""
|
30
|
+
|
31
|
+
search: OptionalNullable[str] = UNSET
|
32
|
+
r"""Search term to filter buckets by name or description"""
|
42
33
|
|
43
34
|
@model_serializer(mode="wrap")
|
44
35
|
def serialize_model(self, handler):
|
45
|
-
optional_fields = ["
|
46
|
-
nullable_fields = ["
|
36
|
+
optional_fields = ["filters", "sort", "search"]
|
37
|
+
nullable_fields = ["filters", "sort", "search"]
|
47
38
|
null_default_fields = []
|
48
39
|
|
49
40
|
serialized = handler(self)
|
50
41
|
|
51
42
|
m = {}
|
52
43
|
|
53
|
-
for n, f in self.model_fields.items():
|
44
|
+
for n, f in type(self).model_fields.items():
|
54
45
|
k = f.alias or n
|
55
46
|
val = serialized.get(k)
|
56
47
|
serialized.pop(k, None)
|
@@ -0,0 +1,23 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from .bucketresponse import BucketResponse, BucketResponseTypedDict
|
5
|
+
from .paginationresponse import PaginationResponse, PaginationResponseTypedDict
|
6
|
+
from mixpeek.types import BaseModel
|
7
|
+
from typing import List
|
8
|
+
from typing_extensions import TypedDict
|
9
|
+
|
10
|
+
|
11
|
+
class ListBucketsResponseTypedDict(TypedDict):
|
12
|
+
r"""Response model for listing buckets"""
|
13
|
+
|
14
|
+
results: List[BucketResponseTypedDict]
|
15
|
+
pagination: PaginationResponseTypedDict
|
16
|
+
|
17
|
+
|
18
|
+
class ListBucketsResponse(BaseModel):
|
19
|
+
r"""Response model for listing buckets"""
|
20
|
+
|
21
|
+
results: List[BucketResponse]
|
22
|
+
|
23
|
+
pagination: PaginationResponse
|
@@ -1,56 +1,47 @@
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
2
|
|
3
3
|
from __future__ import annotations
|
4
|
+
from .logicaloperator_input import LogicalOperatorInput, LogicalOperatorInputTypedDict
|
4
5
|
from .sortoption import SortOption, SortOptionTypedDict
|
5
6
|
from mixpeek.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
|
6
7
|
from pydantic import model_serializer
|
7
8
|
from typing_extensions import NotRequired, TypedDict
|
8
9
|
|
9
10
|
|
10
|
-
class
|
11
|
-
|
12
|
-
r"""
|
13
|
-
Field to group by
|
11
|
+
class ListObjectsRequestTypedDict(TypedDict):
|
12
|
+
r"""Request model for listing objects in a bucket"""
|
14
13
|
|
15
|
-
|
16
|
-
|
17
|
-
Please contact us to add additional fields for grouping.
|
18
|
-
|
19
|
-
"""
|
20
|
-
max_features: NotRequired[Nullable[int]]
|
21
|
-
r"""Maximum number of features to group"""
|
14
|
+
filters: NotRequired[Nullable[LogicalOperatorInputTypedDict]]
|
15
|
+
r"""Filters to apply to the object list"""
|
22
16
|
sort: NotRequired[Nullable[SortOptionTypedDict]]
|
23
|
-
r"""Sort options for
|
24
|
-
|
17
|
+
r"""Sort options for the object list"""
|
18
|
+
search: NotRequired[Nullable[str]]
|
19
|
+
r"""Search term to filter objects by key or metadata"""
|
25
20
|
|
26
|
-
class GroupByOptions(BaseModel):
|
27
|
-
field: OptionalNullable[str] = UNSET
|
28
|
-
r"""
|
29
|
-
Field to group by
|
30
21
|
|
31
|
-
|
32
|
-
|
33
|
-
Please contact us to add additional fields for grouping.
|
22
|
+
class ListObjectsRequest(BaseModel):
|
23
|
+
r"""Request model for listing objects in a bucket"""
|
34
24
|
|
35
|
-
|
36
|
-
|
37
|
-
max_features: OptionalNullable[int] = UNSET
|
38
|
-
r"""Maximum number of features to group"""
|
25
|
+
filters: OptionalNullable[LogicalOperatorInput] = UNSET
|
26
|
+
r"""Filters to apply to the object list"""
|
39
27
|
|
40
28
|
sort: OptionalNullable[SortOption] = UNSET
|
41
|
-
r"""Sort options for
|
29
|
+
r"""Sort options for the object list"""
|
30
|
+
|
31
|
+
search: OptionalNullable[str] = UNSET
|
32
|
+
r"""Search term to filter objects by key or metadata"""
|
42
33
|
|
43
34
|
@model_serializer(mode="wrap")
|
44
35
|
def serialize_model(self, handler):
|
45
|
-
optional_fields = ["
|
46
|
-
nullable_fields = ["
|
36
|
+
optional_fields = ["filters", "sort", "search"]
|
37
|
+
nullable_fields = ["filters", "sort", "search"]
|
47
38
|
null_default_fields = []
|
48
39
|
|
49
40
|
serialized = handler(self)
|
50
41
|
|
51
42
|
m = {}
|
52
43
|
|
53
|
-
for n, f in self.model_fields.items():
|
44
|
+
for n, f in type(self).model_fields.items():
|
54
45
|
k = f.alias or n
|
55
46
|
val = serialized.get(k)
|
56
47
|
serialized.pop(k, None)
|
@@ -0,0 +1,25 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from .objectresponse import ObjectResponse, ObjectResponseTypedDict
|
5
|
+
from .paginationresponse import PaginationResponse, PaginationResponseTypedDict
|
6
|
+
from mixpeek.types import BaseModel
|
7
|
+
from typing import List
|
8
|
+
from typing_extensions import TypedDict
|
9
|
+
|
10
|
+
|
11
|
+
class ListObjectsResponseTypedDict(TypedDict):
|
12
|
+
r"""Response model for listing objects in a bucket"""
|
13
|
+
|
14
|
+
results: List[ObjectResponseTypedDict]
|
15
|
+
r"""List of objects matching the query"""
|
16
|
+
pagination: PaginationResponseTypedDict
|
17
|
+
|
18
|
+
|
19
|
+
class ListObjectsResponse(BaseModel):
|
20
|
+
r"""Response model for listing objects in a bucket"""
|
21
|
+
|
22
|
+
results: List[ObjectResponse]
|
23
|
+
r"""List of objects matching the query"""
|
24
|
+
|
25
|
+
pagination: PaginationResponse
|
@@ -1,10 +1,7 @@
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
2
|
|
3
3
|
from __future__ import annotations
|
4
|
-
from .
|
5
|
-
DbModelPaginationResponse,
|
6
|
-
DbModelPaginationResponseTypedDict,
|
7
|
-
)
|
4
|
+
from .paginationresponse import PaginationResponse, PaginationResponseTypedDict
|
8
5
|
from .taskresponse import TaskResponse, TaskResponseTypedDict
|
9
6
|
from mixpeek.types import BaseModel
|
10
7
|
from typing import List
|
@@ -13,10 +10,10 @@ from typing_extensions import TypedDict
|
|
13
10
|
|
14
11
|
class ListTasksResponseTypedDict(TypedDict):
|
15
12
|
results: List[TaskResponseTypedDict]
|
16
|
-
pagination:
|
13
|
+
pagination: PaginationResponseTypedDict
|
17
14
|
|
18
15
|
|
19
16
|
class ListTasksResponse(BaseModel):
|
20
17
|
results: List[TaskResponse]
|
21
18
|
|
22
|
-
pagination:
|
19
|
+
pagination: PaginationResponse
|
@@ -9,41 +9,59 @@ from typing import List, Union
|
|
9
9
|
from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
|
10
10
|
|
11
11
|
|
12
|
-
class
|
13
|
-
|
14
|
-
|
12
|
+
class LogicalOperatorInputTypedDict(TypedDict):
|
13
|
+
r"""Represents a logical operation (AND, OR, NOT) on filter conditions.
|
14
|
+
|
15
|
+
Attributes:
|
16
|
+
AND: List of conditions that must all be true
|
17
|
+
OR: List of conditions where at least one must be true
|
18
|
+
NOT: List of conditions that must all be false
|
19
|
+
case_sensitive: Whether string comparisons are case sensitive
|
20
|
+
"""
|
21
|
+
|
15
22
|
and_: NotRequired[Nullable[List[AndTypedDict]]]
|
16
|
-
r"""Logical AND operation"""
|
23
|
+
r"""Logical AND operation - all conditions must be true"""
|
17
24
|
or_: NotRequired[Nullable[List[OrTypedDict]]]
|
18
|
-
r"""Logical OR operation"""
|
19
|
-
|
20
|
-
r"""Logical
|
25
|
+
r"""Logical OR operation - at least one condition must be true"""
|
26
|
+
not_: NotRequired[Nullable[List[NotTypedDict]]]
|
27
|
+
r"""Logical NOT operation - all conditions must be false"""
|
28
|
+
case_sensitive: NotRequired[Nullable[bool]]
|
29
|
+
r"""Whether to perform case-sensitive matching"""
|
21
30
|
|
22
31
|
|
23
|
-
class
|
24
|
-
|
25
|
-
|
32
|
+
class LogicalOperatorInput(BaseModel):
|
33
|
+
r"""Represents a logical operation (AND, OR, NOT) on filter conditions.
|
34
|
+
|
35
|
+
Attributes:
|
36
|
+
AND: List of conditions that must all be true
|
37
|
+
OR: List of conditions where at least one must be true
|
38
|
+
NOT: List of conditions that must all be false
|
39
|
+
case_sensitive: Whether string comparisons are case sensitive
|
40
|
+
"""
|
26
41
|
|
27
42
|
and_: Annotated[OptionalNullable[List[And]], pydantic.Field(alias="AND")] = UNSET
|
28
|
-
r"""Logical AND operation"""
|
43
|
+
r"""Logical AND operation - all conditions must be true"""
|
29
44
|
|
30
45
|
or_: Annotated[OptionalNullable[List[Or]], pydantic.Field(alias="OR")] = UNSET
|
31
|
-
r"""Logical OR operation"""
|
46
|
+
r"""Logical OR operation - at least one condition must be true"""
|
32
47
|
|
33
|
-
|
34
|
-
r"""Logical
|
48
|
+
not_: Annotated[OptionalNullable[List[Not]], pydantic.Field(alias="NOT")] = UNSET
|
49
|
+
r"""Logical NOT operation - all conditions must be false"""
|
50
|
+
|
51
|
+
case_sensitive: OptionalNullable[bool] = UNSET
|
52
|
+
r"""Whether to perform case-sensitive matching"""
|
35
53
|
|
36
54
|
@model_serializer(mode="wrap")
|
37
55
|
def serialize_model(self, handler):
|
38
|
-
optional_fields = ["
|
39
|
-
nullable_fields = ["
|
56
|
+
optional_fields = ["AND", "OR", "NOT", "case_sensitive"]
|
57
|
+
nullable_fields = ["AND", "OR", "NOT", "case_sensitive"]
|
40
58
|
null_default_fields = []
|
41
59
|
|
42
60
|
serialized = handler(self)
|
43
61
|
|
44
62
|
m = {}
|
45
63
|
|
46
|
-
for n, f in self.model_fields.items():
|
64
|
+
for n, f in type(self).model_fields.items():
|
47
65
|
k = f.alias or n
|
48
66
|
val = serialized.get(k)
|
49
67
|
serialized.pop(k, None)
|
@@ -65,24 +83,24 @@ class LogicalOperator(BaseModel):
|
|
65
83
|
|
66
84
|
|
67
85
|
AndTypedDict = TypeAliasType(
|
68
|
-
"AndTypedDict", Union[FilterConditionTypedDict, "
|
86
|
+
"AndTypedDict", Union[FilterConditionTypedDict, "LogicalOperatorInputTypedDict"]
|
69
87
|
)
|
70
88
|
|
71
89
|
|
72
|
-
And = TypeAliasType("And", Union[FilterCondition, "
|
90
|
+
And = TypeAliasType("And", Union[FilterCondition, "LogicalOperatorInput"])
|
73
91
|
|
74
92
|
|
75
93
|
OrTypedDict = TypeAliasType(
|
76
|
-
"OrTypedDict", Union[FilterConditionTypedDict, "
|
94
|
+
"OrTypedDict", Union[FilterConditionTypedDict, "LogicalOperatorInputTypedDict"]
|
77
95
|
)
|
78
96
|
|
79
97
|
|
80
|
-
Or = TypeAliasType("Or", Union[FilterCondition, "
|
98
|
+
Or = TypeAliasType("Or", Union[FilterCondition, "LogicalOperatorInput"])
|
81
99
|
|
82
100
|
|
83
|
-
|
84
|
-
"
|
101
|
+
NotTypedDict = TypeAliasType(
|
102
|
+
"NotTypedDict", Union[FilterConditionTypedDict, "LogicalOperatorInputTypedDict"]
|
85
103
|
)
|
86
104
|
|
87
105
|
|
88
|
-
|
106
|
+
Not = TypeAliasType("Not", Union[FilterCondition, "LogicalOperatorInput"])
|
@@ -0,0 +1,121 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from .filtercondition import FilterCondition, FilterConditionTypedDict
|
5
|
+
from mixpeek.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
|
6
|
+
import pydantic
|
7
|
+
from pydantic import model_serializer
|
8
|
+
from typing import List, Union
|
9
|
+
from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
|
10
|
+
|
11
|
+
|
12
|
+
class LogicalOperatorOutputTypedDict(TypedDict):
|
13
|
+
r"""Represents a logical operation (AND, OR, NOT) on filter conditions.
|
14
|
+
|
15
|
+
Attributes:
|
16
|
+
AND: List of conditions that must all be true
|
17
|
+
OR: List of conditions where at least one must be true
|
18
|
+
NOT: List of conditions that must all be false
|
19
|
+
case_sensitive: Whether string comparisons are case sensitive
|
20
|
+
"""
|
21
|
+
|
22
|
+
and_: NotRequired[Nullable[List[LogicalOperatorOutputANDTypedDict]]]
|
23
|
+
r"""Logical AND operation - all conditions must be true"""
|
24
|
+
or_: NotRequired[Nullable[List[LogicalOperatorOutputORTypedDict]]]
|
25
|
+
r"""Logical OR operation - at least one condition must be true"""
|
26
|
+
not_: NotRequired[Nullable[List[LogicalOperatorOutputNOTTypedDict]]]
|
27
|
+
r"""Logical NOT operation - all conditions must be false"""
|
28
|
+
case_sensitive: NotRequired[Nullable[bool]]
|
29
|
+
r"""Whether to perform case-sensitive matching"""
|
30
|
+
|
31
|
+
|
32
|
+
class LogicalOperatorOutput(BaseModel):
|
33
|
+
r"""Represents a logical operation (AND, OR, NOT) on filter conditions.
|
34
|
+
|
35
|
+
Attributes:
|
36
|
+
AND: List of conditions that must all be true
|
37
|
+
OR: List of conditions where at least one must be true
|
38
|
+
NOT: List of conditions that must all be false
|
39
|
+
case_sensitive: Whether string comparisons are case sensitive
|
40
|
+
"""
|
41
|
+
|
42
|
+
and_: Annotated[
|
43
|
+
OptionalNullable[List[LogicalOperatorOutputAND]], pydantic.Field(alias="AND")
|
44
|
+
] = UNSET
|
45
|
+
r"""Logical AND operation - all conditions must be true"""
|
46
|
+
|
47
|
+
or_: Annotated[
|
48
|
+
OptionalNullable[List[LogicalOperatorOutputOR]], pydantic.Field(alias="OR")
|
49
|
+
] = UNSET
|
50
|
+
r"""Logical OR operation - at least one condition must be true"""
|
51
|
+
|
52
|
+
not_: Annotated[
|
53
|
+
OptionalNullable[List[LogicalOperatorOutputNOT]], pydantic.Field(alias="NOT")
|
54
|
+
] = UNSET
|
55
|
+
r"""Logical NOT operation - all conditions must be false"""
|
56
|
+
|
57
|
+
case_sensitive: OptionalNullable[bool] = UNSET
|
58
|
+
r"""Whether to perform case-sensitive matching"""
|
59
|
+
|
60
|
+
@model_serializer(mode="wrap")
|
61
|
+
def serialize_model(self, handler):
|
62
|
+
optional_fields = ["AND", "OR", "NOT", "case_sensitive"]
|
63
|
+
nullable_fields = ["AND", "OR", "NOT", "case_sensitive"]
|
64
|
+
null_default_fields = []
|
65
|
+
|
66
|
+
serialized = handler(self)
|
67
|
+
|
68
|
+
m = {}
|
69
|
+
|
70
|
+
for n, f in type(self).model_fields.items():
|
71
|
+
k = f.alias or n
|
72
|
+
val = serialized.get(k)
|
73
|
+
serialized.pop(k, None)
|
74
|
+
|
75
|
+
optional_nullable = k in optional_fields and k in nullable_fields
|
76
|
+
is_set = (
|
77
|
+
self.__pydantic_fields_set__.intersection({n})
|
78
|
+
or k in null_default_fields
|
79
|
+
) # pylint: disable=no-member
|
80
|
+
|
81
|
+
if val is not None and val != UNSET_SENTINEL:
|
82
|
+
m[k] = val
|
83
|
+
elif val != UNSET_SENTINEL and (
|
84
|
+
not k in optional_fields or (optional_nullable and is_set)
|
85
|
+
):
|
86
|
+
m[k] = val
|
87
|
+
|
88
|
+
return m
|
89
|
+
|
90
|
+
|
91
|
+
LogicalOperatorOutputANDTypedDict = TypeAliasType(
|
92
|
+
"LogicalOperatorOutputANDTypedDict",
|
93
|
+
Union[FilterConditionTypedDict, "LogicalOperatorOutputTypedDict"],
|
94
|
+
)
|
95
|
+
|
96
|
+
|
97
|
+
LogicalOperatorOutputAND = TypeAliasType(
|
98
|
+
"LogicalOperatorOutputAND", Union[FilterCondition, "LogicalOperatorOutput"]
|
99
|
+
)
|
100
|
+
|
101
|
+
|
102
|
+
LogicalOperatorOutputORTypedDict = TypeAliasType(
|
103
|
+
"LogicalOperatorOutputORTypedDict",
|
104
|
+
Union[FilterConditionTypedDict, "LogicalOperatorOutputTypedDict"],
|
105
|
+
)
|
106
|
+
|
107
|
+
|
108
|
+
LogicalOperatorOutputOR = TypeAliasType(
|
109
|
+
"LogicalOperatorOutputOR", Union[FilterCondition, "LogicalOperatorOutput"]
|
110
|
+
)
|
111
|
+
|
112
|
+
|
113
|
+
LogicalOperatorOutputNOTTypedDict = TypeAliasType(
|
114
|
+
"LogicalOperatorOutputNOTTypedDict",
|
115
|
+
Union[FilterConditionTypedDict, "LogicalOperatorOutputTypedDict"],
|
116
|
+
)
|
117
|
+
|
118
|
+
|
119
|
+
LogicalOperatorOutputNOT = TypeAliasType(
|
120
|
+
"LogicalOperatorOutputNOT", Union[FilterCondition, "LogicalOperatorOutput"]
|
121
|
+
)
|
@@ -0,0 +1,25 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from .vectorindex import VectorIndex, VectorIndexTypedDict
|
5
|
+
from mixpeek.types import BaseModel
|
6
|
+
from typing import Dict
|
7
|
+
from typing_extensions import TypedDict
|
8
|
+
|
9
|
+
|
10
|
+
class MultiVectorIndexTypedDict(TypedDict):
|
11
|
+
r"""Configuration for multi-vector indexes"""
|
12
|
+
|
13
|
+
name: str
|
14
|
+
description: str
|
15
|
+
vectors: Dict[str, VectorIndexTypedDict]
|
16
|
+
|
17
|
+
|
18
|
+
class MultiVectorIndex(BaseModel):
|
19
|
+
r"""Configuration for multi-vector indexes"""
|
20
|
+
|
21
|
+
name: str
|
22
|
+
|
23
|
+
description: str
|
24
|
+
|
25
|
+
vectors: Dict[str, VectorIndex]
|
@@ -0,0 +1,45 @@
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
from datetime import datetime
|
5
|
+
from mixpeek.types import BaseModel
|
6
|
+
from typing_extensions import TypedDict
|
7
|
+
|
8
|
+
|
9
|
+
class NamespaceUsageTypedDict(TypedDict):
|
10
|
+
r"""Usage statistics for a single namespace"""
|
11
|
+
|
12
|
+
namespace_id: str
|
13
|
+
r"""Namespace ID"""
|
14
|
+
namespace_name: str
|
15
|
+
r"""Namespace name"""
|
16
|
+
storage_used_gb: float
|
17
|
+
r"""Storage used in GB"""
|
18
|
+
api_calls_30d: int
|
19
|
+
r"""API calls in the last 30 days"""
|
20
|
+
documents_count: int
|
21
|
+
r"""Number of documents"""
|
22
|
+
last_activity: datetime
|
23
|
+
r"""Timestamp of last activity"""
|
24
|
+
|
25
|
+
|
26
|
+
class NamespaceUsage(BaseModel):
|
27
|
+
r"""Usage statistics for a single namespace"""
|
28
|
+
|
29
|
+
namespace_id: str
|
30
|
+
r"""Namespace ID"""
|
31
|
+
|
32
|
+
namespace_name: str
|
33
|
+
r"""Namespace name"""
|
34
|
+
|
35
|
+
storage_used_gb: float
|
36
|
+
r"""Storage used in GB"""
|
37
|
+
|
38
|
+
api_calls_30d: int
|
39
|
+
r"""API calls in the last 30 days"""
|
40
|
+
|
41
|
+
documents_count: int
|
42
|
+
r"""Number of documents"""
|
43
|
+
|
44
|
+
last_activity: datetime
|
45
|
+
r"""Timestamp of last activity"""
|