vectordb-bench 0.0.29__py3-none-any.whl → 0.0.30__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 (28) hide show
  1. vectordb_bench/backend/clients/__init__.py +16 -0
  2. vectordb_bench/backend/clients/aws_opensearch/aws_opensearch.py +180 -15
  3. vectordb_bench/backend/clients/aws_opensearch/cli.py +51 -21
  4. vectordb_bench/backend/clients/aws_opensearch/config.py +37 -14
  5. vectordb_bench/backend/clients/lancedb/cli.py +62 -8
  6. vectordb_bench/backend/clients/lancedb/config.py +14 -1
  7. vectordb_bench/backend/clients/lancedb/lancedb.py +21 -9
  8. vectordb_bench/backend/clients/memorydb/memorydb.py +2 -2
  9. vectordb_bench/backend/clients/milvus/cli.py +30 -9
  10. vectordb_bench/backend/clients/milvus/config.py +2 -0
  11. vectordb_bench/backend/clients/milvus/milvus.py +7 -1
  12. vectordb_bench/backend/clients/qdrant_local/cli.py +60 -0
  13. vectordb_bench/backend/clients/qdrant_local/config.py +47 -0
  14. vectordb_bench/backend/clients/qdrant_local/qdrant_local.py +232 -0
  15. vectordb_bench/backend/clients/weaviate_cloud/cli.py +29 -3
  16. vectordb_bench/backend/clients/weaviate_cloud/config.py +2 -0
  17. vectordb_bench/backend/clients/weaviate_cloud/weaviate_cloud.py +5 -0
  18. vectordb_bench/cli/batch_cli.py +121 -0
  19. vectordb_bench/cli/vectordbbench.py +4 -0
  20. vectordb_bench/config-files/batch_sample_config.yml +17 -0
  21. vectordb_bench/frontend/config/dbCaseConfigs.py +113 -1
  22. vectordb_bench/models.py +7 -0
  23. {vectordb_bench-0.0.29.dist-info → vectordb_bench-0.0.30.dist-info}/METADATA +48 -2
  24. {vectordb_bench-0.0.29.dist-info → vectordb_bench-0.0.30.dist-info}/RECORD +28 -23
  25. {vectordb_bench-0.0.29.dist-info → vectordb_bench-0.0.30.dist-info}/WHEEL +1 -1
  26. {vectordb_bench-0.0.29.dist-info → vectordb_bench-0.0.30.dist-info}/entry_points.txt +0 -0
  27. {vectordb_bench-0.0.29.dist-info → vectordb_bench-0.0.30.dist-info}/licenses/LICENSE +0 -0
  28. {vectordb_bench-0.0.29.dist-info → vectordb_bench-0.0.30.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,121 @@
1
+ import logging
2
+ import time
3
+ from collections.abc import MutableMapping
4
+ from concurrent.futures import wait
5
+ from pathlib import Path
6
+ from typing import Annotated, Any, TypedDict
7
+
8
+ import click
9
+ from click.testing import CliRunner
10
+ from yaml import Loader, load
11
+
12
+ from .. import config
13
+ from ..cli.cli import (
14
+ cli,
15
+ click_parameter_decorators_from_typed_dict,
16
+ )
17
+
18
+ log = logging.getLogger(__name__)
19
+
20
+
21
+ def click_get_defaults_from_file(ctx, param, value): # noqa: ANN001, ARG001
22
+ if not value:
23
+ raise click.MissingParameter
24
+ path = Path(value)
25
+ input_file = path if path.exists() else Path(config.CONFIG_LOCAL_DIR, path)
26
+ try:
27
+ with input_file.open() as f:
28
+ _config: dict[str, list[dict[str, Any]]] = load(f.read(), Loader=Loader) # noqa: S506
29
+ ctx.default_map = _config
30
+ except Exception as e:
31
+ msg = f"Failed to load batch config file: {e}"
32
+ raise click.BadParameter(msg) from e
33
+ return value
34
+
35
+
36
+ class BatchCliTypedDict(TypedDict):
37
+ batch_config_file: Annotated[
38
+ bool,
39
+ click.option(
40
+ "--batch-config-file",
41
+ type=click.Path(),
42
+ callback=click_get_defaults_from_file,
43
+ is_eager=True,
44
+ expose_value=False,
45
+ help="Read batch configuration from yaml file",
46
+ ),
47
+ ]
48
+
49
+
50
+ def build_sub_cmd_args(batch_config: MutableMapping[str, Any] | None):
51
+ bool_options = {
52
+ "drop_old": True,
53
+ "load": True,
54
+ "search_serial": True,
55
+ "search_concurrent": True,
56
+ "dry_run": False,
57
+ "custom_dataset_use_shuffled": True,
58
+ "custom_dataset_with_gt": True,
59
+ }
60
+
61
+ def format_option(key: str, value: Any):
62
+ opt_name = key.replace("_", "-")
63
+
64
+ if key in bool_options:
65
+ return format_bool_option(opt_name, value, skip=False)
66
+
67
+ if key.startswith("skip_"):
68
+ raw_key = key[5:]
69
+ raw_opt = raw_key.replace("_", "-")
70
+ return format_bool_option(raw_opt, value, skip=True, raw_key=raw_key)
71
+
72
+ return [f"--{opt_name}", str(value)]
73
+
74
+ def format_bool_option(opt_name: str, value: Any, skip: bool = False, raw_key: str | None = None):
75
+ if isinstance(value, bool):
76
+ if skip:
77
+ if bool_options.get(raw_key, False):
78
+ return [f"--skip-{opt_name}"] if value else [f"--{opt_name}"]
79
+ return [f"--{opt_name}", str(value)]
80
+ if value:
81
+ return [f"--{opt_name}"]
82
+ if bool_options.get(opt_name.replace("-", "_"), False):
83
+ return [f"--skip-{opt_name}"]
84
+ return []
85
+ return [f"--{opt_name}", str(value)]
86
+
87
+ args_arr = []
88
+ for sub_cmd_key, sub_cmd_config_list in batch_config.items():
89
+ for sub_cmd_args in sub_cmd_config_list:
90
+ args = [sub_cmd_key]
91
+ for k, v in sub_cmd_args.items():
92
+ args.extend(format_option(k, v))
93
+ args_arr.append(args)
94
+
95
+ return args_arr
96
+
97
+
98
+ @cli.command()
99
+ @click_parameter_decorators_from_typed_dict(BatchCliTypedDict)
100
+ def BatchCli():
101
+ ctx = click.get_current_context()
102
+ batch_config = ctx.default_map
103
+
104
+ runner = CliRunner()
105
+
106
+ args_arr = build_sub_cmd_args(batch_config)
107
+
108
+ for args in args_arr:
109
+ log.info(f"got batch config: {' '.join(args)}")
110
+
111
+ for args in args_arr:
112
+ result = runner.invoke(cli, args)
113
+ time.sleep(5)
114
+
115
+ from ..interface import global_result_future
116
+
117
+ if global_result_future:
118
+ wait([global_result_future])
119
+
120
+ if result.exception:
121
+ log.exception(f"failed to run sub command: {args[0]}", exc_info=result.exception)
@@ -10,12 +10,14 @@ from ..backend.clients.pgvecto_rs.cli import PgVectoRSHNSW, PgVectoRSIVFFlat
10
10
  from ..backend.clients.pgvector.cli import PgVectorHNSW
11
11
  from ..backend.clients.pgvectorscale.cli import PgVectorScaleDiskAnn
12
12
  from ..backend.clients.qdrant_cloud.cli import QdrantCloud
13
+ from ..backend.clients.qdrant_local.cli import QdrantLocal
13
14
  from ..backend.clients.redis.cli import Redis
14
15
  from ..backend.clients.test.cli import Test
15
16
  from ..backend.clients.tidb.cli import TiDB
16
17
  from ..backend.clients.vespa.cli import Vespa
17
18
  from ..backend.clients.weaviate_cloud.cli import Weaviate
18
19
  from ..backend.clients.zilliz_cloud.cli import ZillizAutoIndex
20
+ from .batch_cli import BatchCli
19
21
  from .cli import cli
20
22
 
21
23
  cli.add_command(PgVectorHNSW)
@@ -37,6 +39,8 @@ cli.add_command(Clickhouse)
37
39
  cli.add_command(Vespa)
38
40
  cli.add_command(LanceDB)
39
41
  cli.add_command(QdrantCloud)
42
+ cli.add_command(QdrantLocal)
43
+ cli.add_command(BatchCli)
40
44
 
41
45
 
42
46
  if __name__ == "__main__":
@@ -0,0 +1,17 @@
1
+ pgvectorhnsw:
2
+ - db_label: pgConfigTest
3
+ user_name: vectordbbench
4
+ db_name: vectordbbench
5
+ host: localhost
6
+ m: 16
7
+ ef_construction: 128
8
+ ef_search: 128
9
+ milvushnsw:
10
+ - skip_search_serial: True
11
+ case_type: Performance1536D50K
12
+ uri: http://localhost:19530
13
+ m: 16
14
+ ef_construction: 128
15
+ ef_search: 128
16
+ drop_old: False
17
+ load: False
@@ -146,6 +146,7 @@ class InputType(IntEnum):
146
146
  Option = 20003
147
147
  Float = 20004
148
148
  Bool = 20005
149
+ Select = 20006
149
150
 
150
151
 
151
152
  class CaseConfigInput(BaseModel):
@@ -482,7 +483,7 @@ CaseConfigParamInput_EF_SEARCH_AWSOpensearch = CaseConfigInput(
482
483
  label=CaseConfigParamType.ef_search,
483
484
  inputType=InputType.Number,
484
485
  inputConfig={
485
- "min": 100,
486
+ "min": 1,
486
487
  "max": 1024,
487
488
  "value": 256,
488
489
  },
@@ -1264,6 +1265,87 @@ CaseConfigParamInput_EFConstruction_Vespa = CaseConfigInput(
1264
1265
  isDisplayed=lambda config: config[CaseConfigParamType.IndexType] == IndexType.HNSW.value,
1265
1266
  )
1266
1267
 
1268
+ CaseConfigParamInput_INDEX_THREAD_QTY_DURING_FORCE_MERGE_AWSOpensearch = CaseConfigInput(
1269
+ label=CaseConfigParamType.index_thread_qty_during_force_merge,
1270
+ displayLabel="Index Thread Qty During Force Merge",
1271
+ inputHelp="Thread count during force merge operations",
1272
+ inputType=InputType.Number,
1273
+ inputConfig={
1274
+ "min": 1,
1275
+ "max": 32,
1276
+ "value": 4,
1277
+ },
1278
+ )
1279
+
1280
+ CaseConfigParamInput_NUMBER_OF_INDEXING_CLIENTS_AWSOpensearch = CaseConfigInput(
1281
+ label=CaseConfigParamType.number_of_indexing_clients,
1282
+ displayLabel="Number of Indexing Clients",
1283
+ inputHelp="Number of concurrent clients for data insertion",
1284
+ inputType=InputType.Number,
1285
+ inputConfig={
1286
+ "min": 1,
1287
+ "max": 32,
1288
+ "value": 1,
1289
+ },
1290
+ )
1291
+
1292
+ CaseConfigParamInput_NUMBER_OF_SHARDS_AWSOpensearch = CaseConfigInput(
1293
+ label=CaseConfigParamType.number_of_shards,
1294
+ displayLabel="Number of Shards",
1295
+ inputHelp="Number of primary shards for the index",
1296
+ inputType=InputType.Number,
1297
+ inputConfig={
1298
+ "min": 1,
1299
+ "max": 32,
1300
+ "value": 1,
1301
+ },
1302
+ )
1303
+
1304
+ CaseConfigParamInput_NUMBER_OF_REPLICAS_AWSOpensearch = CaseConfigInput(
1305
+ label=CaseConfigParamType.number_of_replicas,
1306
+ displayLabel="Number of Replicas",
1307
+ inputHelp="Number of replica copies for each primary shard",
1308
+ inputType=InputType.Number,
1309
+ inputConfig={
1310
+ "min": 0,
1311
+ "max": 10,
1312
+ "value": 1,
1313
+ },
1314
+ )
1315
+
1316
+ CaseConfigParamInput_INDEX_THREAD_QTY_AWSOpensearch = CaseConfigInput(
1317
+ label=CaseConfigParamType.index_thread_qty,
1318
+ displayLabel="Index Thread Qty",
1319
+ inputHelp="Thread count for native engine indexing",
1320
+ inputType=InputType.Number,
1321
+ inputConfig={
1322
+ "min": 1,
1323
+ "max": 32,
1324
+ "value": 4,
1325
+ },
1326
+ )
1327
+
1328
+ CaseConfigParamInput_ENGINE_NAME_AWSOpensearch = CaseConfigInput(
1329
+ label=CaseConfigParamType.engine_name,
1330
+ displayLabel="Engine",
1331
+ inputHelp="HNSW algorithm implementation to use",
1332
+ inputType=InputType.Option,
1333
+ inputConfig={
1334
+ "options": ["faiss", "nmslib", "lucene"],
1335
+ "default": "faiss",
1336
+ },
1337
+ )
1338
+
1339
+ CaseConfigParamInput_METRIC_TYPE_NAME_AWSOpensearch = CaseConfigInput(
1340
+ label=CaseConfigParamType.metric_type_name,
1341
+ displayLabel="Metric Type",
1342
+ inputHelp="Distance metric type for vector similarity",
1343
+ inputType=InputType.Option,
1344
+ inputConfig={
1345
+ "options": ["l2", "cosine", "ip"],
1346
+ "default": "l2",
1347
+ },
1348
+ )
1267
1349
 
1268
1350
  MilvusLoadConfig = [
1269
1351
  CaseConfigParamInput_IndexType,
@@ -1612,6 +1694,32 @@ LanceDBLoadConfig = [
1612
1694
 
1613
1695
  LanceDBPerformanceConfig = LanceDBLoadConfig
1614
1696
 
1697
+ AWSOpensearchLoadingConfig = [
1698
+ CaseConfigParamInput_EFConstruction_AWSOpensearch,
1699
+ CaseConfigParamInput_M_AWSOpensearch,
1700
+ CaseConfigParamInput_ENGINE_NAME_AWSOpensearch,
1701
+ CaseConfigParamInput_METRIC_TYPE_NAME_AWSOpensearch,
1702
+ CaseConfigParamInput_INDEX_THREAD_QTY_DURING_FORCE_MERGE_AWSOpensearch,
1703
+ CaseConfigParamInput_NUMBER_OF_INDEXING_CLIENTS_AWSOpensearch,
1704
+ CaseConfigParamInput_NUMBER_OF_SHARDS_AWSOpensearch,
1705
+ CaseConfigParamInput_NUMBER_OF_REPLICAS_AWSOpensearch,
1706
+ CaseConfigParamInput_INDEX_THREAD_QTY_AWSOpensearch,
1707
+ ]
1708
+
1709
+ AWSOpenSearchPerformanceConfig = [
1710
+ CaseConfigParamInput_EFConstruction_AWSOpensearch,
1711
+ CaseConfigParamInput_M_AWSOpensearch,
1712
+ CaseConfigParamInput_EF_SEARCH_AWSOpensearch,
1713
+ CaseConfigParamInput_ENGINE_NAME_AWSOpensearch,
1714
+ CaseConfigParamInput_METRIC_TYPE_NAME_AWSOpensearch,
1715
+ CaseConfigParamInput_INDEX_THREAD_QTY_DURING_FORCE_MERGE_AWSOpensearch,
1716
+ CaseConfigParamInput_NUMBER_OF_INDEXING_CLIENTS_AWSOpensearch,
1717
+ CaseConfigParamInput_NUMBER_OF_SHARDS_AWSOpensearch,
1718
+ CaseConfigParamInput_NUMBER_OF_REPLICAS_AWSOpensearch,
1719
+ CaseConfigParamInput_INDEX_THREAD_QTY_AWSOpensearch,
1720
+ ]
1721
+
1722
+ # Map DB to config
1615
1723
  CASE_CONFIG_MAP = {
1616
1724
  DB.Milvus: {
1617
1725
  CaseLabel.Load: MilvusLoadConfig,
@@ -1676,4 +1784,8 @@ CASE_CONFIG_MAP = {
1676
1784
  CaseLabel.Load: LanceDBLoadConfig,
1677
1785
  CaseLabel.Performance: LanceDBPerformanceConfig,
1678
1786
  },
1787
+ DB.AWSOpenSearch: {
1788
+ CaseLabel.Load: AWSOpensearchLoadingConfig,
1789
+ CaseLabel.Performance: AWSOpenSearchPerformanceConfig,
1790
+ },
1679
1791
  }
vectordb_bench/models.py CHANGED
@@ -105,6 +105,13 @@ class CaseConfigParamType(Enum):
105
105
  num_partitions = "num_partitions"
106
106
  num_sub_vectors = "num_sub_vectors"
107
107
  sample_rate = "sample_rate"
108
+ index_thread_qty_during_force_merge = "index_thread_qty_during_force_merge"
109
+ number_of_indexing_clients = "number_of_indexing_clients"
110
+ number_of_shards = "number_of_shards"
111
+ number_of_replicas = "number_of_replicas"
112
+ index_thread_qty = "index_thread_qty"
113
+ engine_name = "engine_name"
114
+ metric_type_name = "metric_type_name"
108
115
 
109
116
  # mongodb params
110
117
  mongodb_quantization_type = "quantization"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: vectordb-bench
3
- Version: 0.0.29
3
+ Version: 0.0.30
4
4
  Summary: VectorDBBench is not just an offering of benchmark results for mainstream vector databases and cloud services, it's your go-to tool for the ultimate performance and cost-effectiveness comparison. Designed with ease-of-use in mind, VectorDBBench is devised to help users, even non-professionals, reproduce results or test new systems, making the hunt for the optimal choice amongst a plethora of cloud services and open-source vector databases a breeze.
5
5
  Author-email: XuanYang-cn <xuan.yang@zilliz.com>
6
6
  Project-URL: repository, https://github.com/zilliztech/VectorDBBench
@@ -295,9 +295,12 @@ Options:
295
295
  --force-merge-enabled BOOLEAN Whether to perform force merge operation
296
296
  --flush-threshold-size TEXT Size threshold for flushing the transaction
297
297
  log
298
+ --engine TEXT type of engine to use valid values [faiss, lucene]
298
299
  # Memory Management
299
300
  --cb-threshold TEXT k-NN Memory circuit breaker threshold
300
-
301
+
302
+ # Quantization Type
303
+ --quantization-type TEXT which type of quantization to use valid values [fp32, fp16]
301
304
  --help Show this message and exit.
302
305
  ```
303
306
 
@@ -339,6 +342,49 @@ milvushnsw:
339
342
  > - Options passed on the command line will override the configuration file*
340
343
  > - Parameter names use an _ not -
341
344
 
345
+ #### Using a batch configuration file.
346
+
347
+ The vectordbbench command can read a batch configuration file to run all the test cases in the yaml formatted configuration file.
348
+
349
+ By default, configuration files are expected to be in vectordb_bench/config-files/, this can be overridden by setting
350
+ the environment variable CONFIG_LOCAL_DIR or by passing the full path to the file.
351
+
352
+ The required format is:
353
+ ```yaml
354
+ commandname:
355
+ - parameter_name: parameter_value
356
+ another_parameter_name: parameter_value
357
+ ```
358
+ Example:
359
+ ```yaml
360
+ pgvectorhnsw:
361
+ - db_label: pgConfigTest
362
+ user_name: vectordbbench
363
+ password: vectordbbench
364
+ db_name: vectordbbench
365
+ host: localhost
366
+ m: 16
367
+ ef_construction: 128
368
+ ef_search: 128
369
+ milvushnsw:
370
+ - skip_search_serial: True
371
+ case_type: Performance1536D50K
372
+ uri: http://localhost:19530
373
+ m: 16
374
+ ef_construction: 128
375
+ ef_search: 128
376
+ drop_old: False
377
+ load: False
378
+ ```
379
+ > Notes:
380
+ > - Options can only be passed through configuration files
381
+ > - Parameter names use an _ not -
382
+
383
+ How to use?
384
+ ```shell
385
+ vectordbbench batchcli --batch-config-file <your-yaml-configuration-file>
386
+ ```
387
+
342
388
  ## Leaderboard
343
389
  ### Introduction
344
390
  To facilitate the presentation of test results and provide a comprehensive performance analysis report, we offer a [leaderboard page](https://zilliz.com/benchmark). It allows us to choose from QPS, QP$, and latency metrics, and provides a comprehensive assessment of a system's performance based on the test results of various cases and a set of scoring mechanisms (to be introduced later). On this leaderboard, we can select the systems and models to be compared, and filter out cases we do not want to consider. Comprehensive scores are always ranked from best to worst, and the specific test results of each query will be presented in the list below.
@@ -4,7 +4,7 @@ vectordb_bench/base.py,sha256=AgavIF0P9ku_RmCRk1KKziba-wI4ZpA2aJvjJzNhRSs,129
4
4
  vectordb_bench/interface.py,sha256=XaCjTgUeI17uVjsgOauPeVlkvnkuCyQOWyOaWhrgCt8,9811
5
5
  vectordb_bench/log_util.py,sha256=wDNaU_JBBOfKi_Z4vq7LDa0kOlLjoNNzDX3VZQn_Dxo,3239
6
6
  vectordb_bench/metric.py,sha256=pj-AxQHyIRHTaJY-wTIkTbC6TqEqMzt3kcEmMWEv71w,2063
7
- vectordb_bench/models.py,sha256=b-DaUopaf6qwuuEbl9wAHKZjuosmOi6gpebYz6iWvBU,12221
7
+ vectordb_bench/models.py,sha256=OOx9-hJmJBjDeyzBM8s4rTkWBGxjdYymU2As7oZ_6H0,12567
8
8
  vectordb_bench/backend/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
9
  vectordb_bench/backend/assembler.py,sha256=6GInRT7yBgfTaIPmo-XMkYX4pA8PJQmjMQInynwaunE,2047
10
10
  vectordb_bench/backend/cases.py,sha256=obDdY6g3p9Z2fog7qDwLLDuRMwo3LGQKMHsP66QZd2M,16296
@@ -13,7 +13,7 @@ vectordb_bench/backend/dataset.py,sha256=lH2Q01AEJxA-sYfZHzH2BM019mwuy9mB_i0VLhI
13
13
  vectordb_bench/backend/result_collector.py,sha256=mpROVdZ-HChKBVyMV5TZ5v7YGRb69bvfT7Gezn5F5sY,819
14
14
  vectordb_bench/backend/task_runner.py,sha256=HYZ5B9-qOKAKmrsk-nwVhmXEddf451o4P3xQuSiCTt8,11595
15
15
  vectordb_bench/backend/utils.py,sha256=R6THuJdZhiQYSSJTqv0Uegl2B20taV_QjwvFrun2yxE,1949
16
- vectordb_bench/backend/clients/__init__.py,sha256=4P4Y7qOIYBJqJENsfMNzD5L0C651ypcPr05M1-ph0LU,10549
16
+ vectordb_bench/backend/clients/__init__.py,sha256=X0BGPg2a5jaRC1pRoOo_rCF95YDl93oWNeH-V61eQUY,10996
17
17
  vectordb_bench/backend/clients/api.py,sha256=3AfO-EPNzosaIBfYX3U9HeOMO7Uw0muOZ0x4cqqSH34,6534
18
18
  vectordb_bench/backend/clients/aliyun_elasticsearch/aliyun_elasticsearch.py,sha256=7yPYaWoHeHNxDMtpReGXsdEPFD1e4vQblFor7TmLq5o,770
19
19
  vectordb_bench/backend/clients/aliyun_elasticsearch/config.py,sha256=d9RCgfCgauKvy6z9ig_wBormgwiGtkh8POyoHloHnJA,505
@@ -22,9 +22,9 @@ vectordb_bench/backend/clients/aliyun_opensearch/config.py,sha256=KSiuRu-p7oL2PE
22
22
  vectordb_bench/backend/clients/alloydb/alloydb.py,sha256=E24hxCUgpBCRiScdcS_iBk8n0wngUgVg8qujOWiUhw0,13009
23
23
  vectordb_bench/backend/clients/alloydb/cli.py,sha256=G6Q0WApoDXDG_pqmK2lEKFIvKB8qAsZFPM8TfsURydE,5086
24
24
  vectordb_bench/backend/clients/alloydb/config.py,sha256=PJs2wIJqwcG6UJ3T8R7Pi3xTMBfxTZiNkcWyhtHv5dc,5313
25
- vectordb_bench/backend/clients/aws_opensearch/aws_opensearch.py,sha256=iRtPmHZoVTpQ-3Q90nE70zy_XsklGlSSNgBOgeAtVzU,10047
26
- vectordb_bench/backend/clients/aws_opensearch/cli.py,sha256=G086STCoaTBkz2J5Qt42bnyhmcYbhl6XxTaLfeirkXQ,4065
27
- vectordb_bench/backend/clients/aws_opensearch/config.py,sha256=9meXQUOVFlk3UOAhvBhaghNm7TasDsA6-fXOY8C9gzU,2295
25
+ vectordb_bench/backend/clients/aws_opensearch/aws_opensearch.py,sha256=q_8JLZO5aVDSnhBa9pGsMCb6Mibj9BfpsqCQxZoqkgs,17472
26
+ vectordb_bench/backend/clients/aws_opensearch/cli.py,sha256=YV07EwgCLEyWXifr_PpcroQpNEHVpl5wX7OBSsyo4gQ,4951
27
+ vectordb_bench/backend/clients/aws_opensearch/config.py,sha256=zJv_S8Q76hJWlBR11muECl0yz4YCvIsAMRYCIup9ZgQ,3284
28
28
  vectordb_bench/backend/clients/aws_opensearch/run.py,sha256=Ry5aAlielWjq0hx7LnbdShfOwzZhz3Gq9WYu5U43x9s,5001
29
29
  vectordb_bench/backend/clients/chroma/chroma.py,sha256=Aqo6AlSWd0TG0SR4cr9AEoLzXtOJ5VNhbIucHnm8NxY,3619
30
30
  vectordb_bench/backend/clients/chroma/config.py,sha256=8nXpPdecQ5HrNqcsQwAVgacSz6uLgI-BI7v4tB8CeDk,347
@@ -33,18 +33,18 @@ vectordb_bench/backend/clients/clickhouse/clickhouse.py,sha256=1i-64mzluloJ3fXT7
33
33
  vectordb_bench/backend/clients/clickhouse/config.py,sha256=-waHUHrT9WwuSNjHYE7T5j8s8RTsHNTDFuzmqT4nQWI,2649
34
34
  vectordb_bench/backend/clients/elastic_cloud/config.py,sha256=_5Cz3__CbMU7zCizkhK1pGhH3TLJacn8efVueUZ0lnQ,1573
35
35
  vectordb_bench/backend/clients/elastic_cloud/elastic_cloud.py,sha256=FSslLDH2Yi9ZdUwaCbKC_IXxFbMvW-L1xB3YMU08MVI,5448
36
- vectordb_bench/backend/clients/lancedb/cli.py,sha256=j5eqb-_CSWF1rdxAj2Byut6albHEj0JF51wCruaJsu8,2688
37
- vectordb_bench/backend/clients/lancedb/config.py,sha256=Udd39FrYmIa9ZztmfAC0BLj0rBaPv3yd9XaF5VkCziU,2950
38
- vectordb_bench/backend/clients/lancedb/lancedb.py,sha256=9hFHtj_Ry44nVY1vX9FSnB_WAL6ih86Rx2qFiZgEkX0,3148
36
+ vectordb_bench/backend/clients/lancedb/cli.py,sha256=BxTkyNtOPXEogSoqBKrK9m_RF_WTXDvHg8HBFLNa1uw,4429
37
+ vectordb_bench/backend/clients/lancedb/config.py,sha256=NshH3VrJjy78aYBI-di33x4ko5xkTr16mkZ1liNu550,3233
38
+ vectordb_bench/backend/clients/lancedb/lancedb.py,sha256=bmwixs9KO9EObSYTRhM-wCug-jRxvkwrDl3hkXliG2k,4109
39
39
  vectordb_bench/backend/clients/mariadb/cli.py,sha256=nqV9V-gOSKGQ1y6VmxOMxGz0a3jz860Va55x7JBcuPk,2727
40
40
  vectordb_bench/backend/clients/mariadb/config.py,sha256=DNxo0i1c0wIfii78Luv9GeOFq-74yvkkg3Np9sNUyFI,1870
41
41
  vectordb_bench/backend/clients/mariadb/mariadb.py,sha256=O2PY7pP3dYdp-aTOQLDVckdNabCZscw5Xup7Z8LnWIg,7137
42
42
  vectordb_bench/backend/clients/memorydb/cli.py,sha256=mUpBN0VoE6M55AAEwyd20uEtPkOpckJzmcP2XXpue30,2659
43
43
  vectordb_bench/backend/clients/memorydb/config.py,sha256=D2Q-HkDwnmz98ek1e_iNu4o9CIRB14pOQWSZgRvd6oY,1500
44
- vectordb_bench/backend/clients/memorydb/memorydb.py,sha256=WrZhDYJqpwN173sk2lmPnOibHcQCPrq_PEAMFcL62U4,10219
45
- vectordb_bench/backend/clients/milvus/cli.py,sha256=junIvlQtDbOGscKqacferBETDR9SQ9FK3G7oVVO1_2s,9931
46
- vectordb_bench/backend/clients/milvus/config.py,sha256=h4OKAVE5FoSmaoppdFRcgeEMS96YcPWZat04496MrrA,12730
47
- vectordb_bench/backend/clients/milvus/milvus.py,sha256=DmyhqoMgGawwge3CnftaR1x0nmKDvs0rx_nSFbQk0ys,7053
44
+ vectordb_bench/backend/clients/memorydb/memorydb.py,sha256=5PPOSdFLQes6Gq5H3Yfi_q2m32eErMfNVO86qIjlnoc,10219
45
+ vectordb_bench/backend/clients/milvus/cli.py,sha256=Mtrp8mQF6z0PCnBV8hndkO2Rfj5n9qTGbUL1BoVoems,11043
46
+ vectordb_bench/backend/clients/milvus/config.py,sha256=2igb0O-G7shSWNLXYK9REY9IcaA6qsvuLOjhmNKq1-o,12797
47
+ vectordb_bench/backend/clients/milvus/milvus.py,sha256=t9fqxrCdOcn60nbgAmzuqicNeOaD1fNjobL3gcvBQwY,7260
48
48
  vectordb_bench/backend/clients/mongodb/config.py,sha256=7DZCh0bjPiqJW2luPypfpNeGfvKxVC4mdHLqgcjF1hA,1745
49
49
  vectordb_bench/backend/clients/mongodb/mongodb.py,sha256=ts2gpAzUTarpkfMFnM5ANi6T-xvcjS8kc4-apPt9jug,7225
50
50
  vectordb_bench/backend/clients/pgdiskann/cli.py,sha256=o5ddAp1Be2TOnm8Wh9IyIWUxdnw5N6v92Ms1s6CEwBo,3135
@@ -64,6 +64,9 @@ vectordb_bench/backend/clients/pinecone/pinecone.py,sha256=SeJ-XnuIZxFDYhgO8FlRN
64
64
  vectordb_bench/backend/clients/qdrant_cloud/cli.py,sha256=QoJ8t76mJmXrj-VJYn6-Atc1EryFhAApvtWUxei0wuo,1095
65
65
  vectordb_bench/backend/clients/qdrant_cloud/config.py,sha256=UWFctRQ03suEyASlbSg76dEi0s58tp5ERE-d5A9LuLg,1098
66
66
  vectordb_bench/backend/clients/qdrant_cloud/qdrant_cloud.py,sha256=VvE96WlEqbXCytwUGxLGt8AbuRvu1psF1weydb8MW_4,5431
67
+ vectordb_bench/backend/clients/qdrant_local/cli.py,sha256=V-3zYC7gNEJjCAktJ0JQZ4xuyMfnC1ESey7t95XVnsA,1698
68
+ vectordb_bench/backend/clients/qdrant_local/config.py,sha256=nw14pVVYtFmtm6Wr01m9Pt8Vn4J9twVJ2QwnTKOlbcE,1111
69
+ vectordb_bench/backend/clients/qdrant_local/qdrant_local.py,sha256=V2AAIrMuMoX_Ne-Y5-EpVldGON_OBTo4CSihAgNY1CQ,7891
67
70
  vectordb_bench/backend/clients/redis/cli.py,sha256=tFLXzNyvh_GYUZihqMvj65C5vBKPVVAYIXtbzGaVCcU,2167
68
71
  vectordb_bench/backend/clients/redis/config.py,sha256=xVSVC6xjjAKsiwJuJoLguCGhiiUT9w13Db_Up5ZqljY,1241
69
72
  vectordb_bench/backend/clients/redis/redis.py,sha256=39-JfyMQp584jLN5ltCKqyB-sNwC18VICd6Z1XpJNMg,6769
@@ -77,9 +80,9 @@ vectordb_bench/backend/clients/vespa/cli.py,sha256=beNzffELpFBKprcs33KJ8nhBt1CFN
77
80
  vectordb_bench/backend/clients/vespa/config.py,sha256=tDfGY-IiLGuByHImQY0YQ5ZgxonoJVCqzgQ1Vt5jP6c,1500
78
81
  vectordb_bench/backend/clients/vespa/util.py,sha256=hXTjhyQQsvxY_6GU-xLziMH5nz_O9uYNhDCS__WjlVI,446
79
82
  vectordb_bench/backend/clients/vespa/vespa.py,sha256=cCqVMni7CKsPOkwGjCMihXk9hlESn4vSspHEB-bGIj0,8857
80
- vectordb_bench/backend/clients/weaviate_cloud/cli.py,sha256=Cy9epFJgeImVa3STogZhEyFAePjCZ7LY_iDu8nRpiME,1047
81
- vectordb_bench/backend/clients/weaviate_cloud/config.py,sha256=kLSxWFtEr12WCF610SBGWyVRzXbgnO0PsftNPSIiBMM,1245
82
- vectordb_bench/backend/clients/weaviate_cloud/weaviate_cloud.py,sha256=aZqQcLQoaGl_4Fss93KnkBZos8i7sZnwzlQbCZRs-60,5195
83
+ vectordb_bench/backend/clients/weaviate_cloud/cli.py,sha256=PPkZgSMThFwgJUp8eIwKbJiCB_szP7jcRbYjctLX1cE,1926
84
+ vectordb_bench/backend/clients/weaviate_cloud/config.py,sha256=v7s0RCkg4R6Iw451Jynq2EqmiDqdkTV16DX_TOPLHOo,1315
85
+ vectordb_bench/backend/clients/weaviate_cloud/weaviate_cloud.py,sha256=HEzhkGHgEz2YyEV-6qV_JYx1cbvvol9nuOtSzZU6OxM,5347
83
86
  vectordb_bench/backend/clients/zilliz_cloud/cli.py,sha256=3_eD3ZG-FeTw1cenhbBFniPnVLgT_UQwdIuGmGDroJw,1551
84
87
  vectordb_bench/backend/clients/zilliz_cloud/config.py,sha256=-Qb50m-Hcz86OcMURU21n61Rz-RpFqKfUsmjna85OR8,909
85
88
  vectordb_bench/backend/clients/zilliz_cloud/zilliz_cloud.py,sha256=B9EUDmK11oQ2GIslVkbRVAitHT-NbRGxQD_Weia-vhY,681
@@ -90,8 +93,10 @@ vectordb_bench/backend/runner/read_write_runner.py,sha256=CXYBXEEkS1S7-NurdzN5Wh
90
93
  vectordb_bench/backend/runner/serial_runner.py,sha256=Y4Y2mSK8nU3hml7gliiF6BXUaW49sD-Ueci0xn62IL0,10290
91
94
  vectordb_bench/backend/runner/util.py,sha256=tjTFUxth6hNnVrlU82TqkHhfeZo4ymj7WlyK4zFyPTg,522
92
95
  vectordb_bench/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
96
+ vectordb_bench/cli/batch_cli.py,sha256=lnVrIP1rweoqfFkrdTLzxnLzy713xP2AnW6xmhd4bu0,3658
93
97
  vectordb_bench/cli/cli.py,sha256=1bZzK7uCwAi9ILtvlZiFAAMwJfwQec1HF3RRSpbqxKY,16000
94
- vectordb_bench/cli/vectordbbench.py,sha256=EA0x0vKDGIszAKstbnDtJz26U6_Wnl11W07PDukLNzo,1604
98
+ vectordb_bench/cli/vectordbbench.py,sha256=ZzDlcYwjUHrK2zvhTmNP3JHBUanQh2sEPhz70LR0lUw,1750
99
+ vectordb_bench/config-files/batch_sample_config.yml,sha256=3n0SfLgVWeboAZZcO8j_UP4A9CExHGPE8tOmtVPPFiA,370
95
100
  vectordb_bench/config-files/sample_config.yml,sha256=yw9ZgHczNi9PedNuTVxZKiOTI6AVoQS1h8INNgoDjPk,340
96
101
  vectordb_bench/custom/custom_case.json,sha256=uKo7NJgXDPPLtf_V6y1uc5w1aIcjLp-GCJEYOCty1As,475
97
102
  vectordb_bench/frontend/utils.py,sha256=8eb4I9F0cQdnPQiFX0gMEk1e2fdgultgTKzzY5zS0Q0,489
@@ -120,7 +125,7 @@ vectordb_bench/frontend/components/run_test/hideSidebar.py,sha256=vb5kzIMmbMqWX6
120
125
  vectordb_bench/frontend/components/run_test/initStyle.py,sha256=osPUgfFfH7rRlVNHSMumvmZxvKWlLxmZiNqgnMiUJEU,723
121
126
  vectordb_bench/frontend/components/run_test/submitTask.py,sha256=VZjkopkCBNhqLwGqsoM0hbPEeF6Q5UOQcdFUaegerxc,4094
122
127
  vectordb_bench/frontend/components/tables/data.py,sha256=5DdnC64BB7Aj2z9acht2atsPB4NabzQCZKALfIUnqtQ,1233
123
- vectordb_bench/frontend/config/dbCaseConfigs.py,sha256=DQrSuBVuTCjwS_I1hVNTnYygDu6Zkka7PLfLi7TNN3E,51023
128
+ vectordb_bench/frontend/config/dbCaseConfigs.py,sha256=Zi8ExIUMvDx5qFRLLEoPSxKLlPKi9UUPHkT5VxwDxbo,54798
124
129
  vectordb_bench/frontend/config/dbPrices.py,sha256=10aBKjVcEg8y7TPSda28opmBM1KmXNrvbU9WM_BsZcE,176
125
130
  vectordb_bench/frontend/config/styles.py,sha256=y-vYXCF4_o0-88BNzbKNKvfhvVxmz8BSr4v_E_Qv37E,2643
126
131
  vectordb_bench/frontend/pages/concurrent.py,sha256=bvoSafRSIsRzBQkI3uBwwrdg8jnhRUQG-epZbrJhGiE,2082
@@ -146,9 +151,9 @@ vectordb_bench/results/WeaviateCloud/result_20230808_standard_weaviatecloud.json
146
151
  vectordb_bench/results/ZillizCloud/result_20230727_standard_zillizcloud.json,sha256=-Mdm4By65XDRCrmVOCF8yQXjcZtH4Xo4shcjoDoBUKU,18293
147
152
  vectordb_bench/results/ZillizCloud/result_20230808_standard_zillizcloud.json,sha256=77XlHT5zM_K7mG5HfDQKwXZnSCuR37VUbt6-P3J_amI,15737
148
153
  vectordb_bench/results/ZillizCloud/result_20240105_standard_202401_zillizcloud.json,sha256=TualfJ0664Hs-vdIW68bdkqAEYyzotXmu2P0yIN-GHk,42526
149
- vectordb_bench-0.0.29.dist-info/licenses/LICENSE,sha256=HXbxhrb5u5SegVzeLNF_voVgRsJMavcLaOmD1N0lZkM,1067
150
- vectordb_bench-0.0.29.dist-info/METADATA,sha256=8ekrKUsItuE-dEvCBGOk1ktXNF19qSw8Qat9FRGG-o8,38448
151
- vectordb_bench-0.0.29.dist-info/WHEEL,sha256=Nw36Djuh_5VDukK0H78QzOX-_FQEo6V37m3nkm96gtU,91
152
- vectordb_bench-0.0.29.dist-info/entry_points.txt,sha256=Qzw6gVx96ui8esG21H6yHsI6nboEohRmV424TYhQNrA,113
153
- vectordb_bench-0.0.29.dist-info/top_level.txt,sha256=jnhZFZAuKX1J60yt-XOeBZ__ctiZMvoC_s0RFq29lpM,15
154
- vectordb_bench-0.0.29.dist-info/RECORD,,
154
+ vectordb_bench-0.0.30.dist-info/licenses/LICENSE,sha256=HXbxhrb5u5SegVzeLNF_voVgRsJMavcLaOmD1N0lZkM,1067
155
+ vectordb_bench-0.0.30.dist-info/METADATA,sha256=yrsk1c3mlsnnulXQvT-VaRVt52DLYQdROI5ZSxhuy9U,39780
156
+ vectordb_bench-0.0.30.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
157
+ vectordb_bench-0.0.30.dist-info/entry_points.txt,sha256=Qzw6gVx96ui8esG21H6yHsI6nboEohRmV424TYhQNrA,113
158
+ vectordb_bench-0.0.30.dist-info/top_level.txt,sha256=jnhZFZAuKX1J60yt-XOeBZ__ctiZMvoC_s0RFq29lpM,15
159
+ vectordb_bench-0.0.30.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.7.1)
2
+ Generator: setuptools (80.9.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5