@@ -48,17 +48,20 @@ def __init__(self, index_name: str, pool_threads=1):
48
48
@sentry
49
49
@validate_and_convert_errors
50
50
def upsert (self , vectors , ** kwargs ):
51
+ _check_type = kwargs .pop ('_check_type' , False )
52
+
51
53
def _vector_transform (item ):
52
54
if isinstance (item , Vector ):
53
55
return item
54
56
if isinstance (item , tuple ):
55
57
id , values , metadata = fix_tuple_length (item , 3 )
56
- return Vector (id = id , values = values , metadata = metadata or {})
58
+ return Vector (id = id , values = values , metadata = metadata or {}, _check_type = _check_type )
57
59
raise ValueError (f"Invalid vector value passed: cannot interpret type { type (item )} " )
58
60
59
61
return self ._vector_api .upsert (
60
62
UpsertRequest (
61
63
vectors = list (map (_vector_transform , vectors )),
64
+ _check_type = _check_type ,
62
65
** {k : v for k , v in kwargs .items () if k not in _OPENAPI_ENDPOINT_PARAMS }
63
66
),
64
67
** {k : v for k , v in kwargs .items () if k in _OPENAPI_ENDPOINT_PARAMS }
@@ -77,19 +80,22 @@ def fetch(self, *args, **kwargs):
77
80
@sentry
78
81
@validate_and_convert_errors
79
82
def query (self , queries , ** kwargs ):
83
+ _check_type = kwargs .pop ('_check_type' , False )
84
+
80
85
def _query_transform (item ):
81
86
if isinstance (item , QueryVector ):
82
87
return item
83
88
if isinstance (item , tuple ):
84
89
values , filter = fix_tuple_length (item , 2 )
85
- return QueryVector (values = values , filter = filter )
90
+ return QueryVector (values = values , filter = filter , _check_type = _check_type )
86
91
if isinstance (item , Iterable ):
87
- return QueryVector (values = item )
92
+ return QueryVector (values = item , _check_type = _check_type )
88
93
raise ValueError (f"Invalid query vector value passed: cannot interpret type { type (item )} " )
89
94
90
95
return self ._vector_api .query (
91
96
QueryRequest (
92
97
queries = list (map (_query_transform , queries )),
98
+ _check_type = _check_type ,
93
99
** {k : v for k , v in kwargs .items () if k not in _OPENAPI_ENDPOINT_PARAMS }
94
100
),
95
101
** {k : v for k , v in kwargs .items () if k in _OPENAPI_ENDPOINT_PARAMS }
0 commit comments