async def iter_query_vectors(
self,
top_k: "capo_s3vectors.types.top_k.TopK",
query_vector: "capo_s3vectors.types.vector_data.VectorData",
*,
config_overrides: Optional[AsyncS3VectorsClientConfig] = None,
vector_bucket_name: Optional[
"capo_s3vectors.types.vector_bucket_name.VectorBucketName"
] = None,
index_name: Optional["capo_s3vectors.types.index_name.IndexName"] = None,
index_arn: Optional["capo_s3vectors.types.index_arn.IndexArn"] = None,
filter: Optional[object] = None,
query_mode: Optional["capo_s3vectors.types.index_mode.IndexMode"] = None,
return_metadata: Optional[bool] = None,
return_distance: Optional[bool] = None,
next_token: Optional[
"capo_s3vectors.types.query_vectors_next_token.QueryVectorsNextToken"
] = None,
) -> "AsyncIterator[capo_s3vectors.types.query_output_vector.QueryOutputVector]":
_token = next_token
while True:
_response = await self.query_vectors(
top_k,
query_vector,
config_overrides=config_overrides,
vector_bucket_name=vector_bucket_name,
index_name=index_name,
index_arn=index_arn,
filter=filter,
query_mode=query_mode,
return_metadata=return_metadata,
return_distance=return_distance,
next_token=_token,
)
_page = _resolve_path(_response, ("vectors",))
for _item in _page or []:
yield _item
_token = _resolve_path(_response, ("next_token",))
if not _token:
break