Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
190 changes: 133 additions & 57 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,7 @@ include = ["vectordb_bench", "vectordb_bench.*"]

[project]
name = "vectordb-bench"
authors = [
{name="VDBBench teams", email="pymilvus@zilliz.com"},
]
authors = [{ name = "VDBBench teams", email = "pymilvus@zilliz.com" }]
description = "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."

readme = "README.md"
Expand All @@ -28,7 +26,7 @@ dependencies = [
"click",
"pyyaml",
"pytz",
"streamlit>=1.47,<2", # 1.47 fixes streamlit#11660
"streamlit>=1.47,<2", # 1.47 fixes streamlit#11660
"tqdm",
"s3fs",
"oss2",
Expand All @@ -38,54 +36,52 @@ dependencies = [
"environs",
"pydantic>=2.0,<3",
"scikit-learn",
"pymilvus<3.0.0", # with pandas, numpy
"pymilvus<3.0.0", # with pandas, numpy
"hdrhistogram>=0.10.1",
"ujson",
]
dynamic = ["version"]

[project.optional-dependencies]
test = [
"black",
"ruff",
"pytest",
]
restful = [ "flask" ]
qdrant = [ "qdrant-client" ]
pinecone = [ "pinecone" ]
weaviate = [ "weaviate-client" ]
elastic = [ "elasticsearch" ]
test = ["black", "ruff", "pytest"]
restful = ["flask"]
qdrant = ["qdrant-client"]
pinecone = ["pinecone"]
weaviate = ["weaviate-client"]
elastic = ["elasticsearch"]
# For elastic and aliyun_elasticsearch

pgvector = [ "psycopg", "psycopg-binary", "pgvector" ]
pgvector = ["psycopg", "psycopg-binary", "pgvector"]
# for pgvector, pgvectorscale, pgdiskann, and, alloydb

pgvecto_rs = [ "pgvecto_rs[psycopg3]>=0.2.2" ]
redis = [ "redis" ]
memorydb = [ "memorydb" ]
chromadb = [ "chromadb" ]
opensearch = [ "opensearch-py" ]
aliyun_opensearch = [ "alibabacloud_ha3engine_vector" ]
mongodb = [ "pymongo" ]
mariadb = [ "mariadb" ]
tidb = [ "PyMySQL" ]
cockroachdb = [ "psycopg[binary,pool]", "pgvector" ]
clickhouse = [ "clickhouse-connect" ]
vespa = [ "pyvespa" ]
lancedb = [ "lancedb" ]
oceanbase = [ "mysql-connector-python" ]
alisql = [ "mysql-connector-python" ]
polardb = [ "PyMySQL" ]
doris = [ "doris-vector-search" ]
turbopuffer = [ "turbopuffer" ]
zvec = [ "zvec" ]
endee = [ "endee==0.1.10" ]
lindorm = [ "opensearch-py" ]
seekdb = [ "mysql-connector-python" ]
pinot = [ "requests" ]
pgvecto_rs = ["pgvecto_rs[psycopg3]>=0.2.2"]
redis = ["redis"]
memorydb = ["memorydb"]
chromadb = ["chromadb"]
opensearch = ["opensearch-py"]
aliyun_opensearch = ["alibabacloud_ha3engine_vector"]
mongodb = ["pymongo"]
mariadb = ["mariadb"]
tidb = ["PyMySQL"]
cockroachdb = ["psycopg[binary,pool]", "pgvector"]
clickhouse = ["clickhouse-connect"]
vespa = ["pyvespa"]
lancedb = ["lancedb"]
oceanbase = ["mysql-connector-python"]
alisql = ["mysql-connector-python"]
polardb = ["PyMySQL"]
doris = ["doris-vector-search"]
turbopuffer = ["turbopuffer"]
zvec = ["zvec"]
endee = ["endee==0.1.10"]
lindorm = ["opensearch-py"]
seekdb = ["mysql-connector-python"]
pinot = ["requests"]

garnet = ["redis>=7.1.0"]

[project.urls]
Repository = "https://github.com/zilliztech/VectorDBBench"
Repository = "https://github.com/zilliztech/VectorDBBench"
Leaderborad = "https://zilliz.com/vdbbench-leaderboard"

[project.scripts]
Expand All @@ -107,28 +103,69 @@ lint.select = [
"C90",
"I",
"N",
"B", "C", "G",
"B",
"C",
"G",
"A",
"ANN001",
"S", "T", "W", "ARG", "BLE", "COM", "DJ", "EM", "ERA", "EXE", "FBT", "ICN", "INP", "ISC", "NPY", "PD", "PGH", "PIE", "PL", "PT", "PTH", "PYI", "RET", "RSE", "RUF", "SIM", "SLF", "TCH", "TID", "TRY", "UP", "YTT"
"S",
"T",
"W",
"ARG",
"BLE",
"COM",
"DJ",
"EM",
"ERA",
"EXE",
"FBT",
"ICN",
"INP",
"ISC",
"NPY",
"PD",
"PGH",
"PIE",
"PL",
"PT",
"PTH",
"PYI",
"RET",
"RSE",
"RUF",
"SIM",
"SLF",
"TCH",
"TID",
"TRY",
"UP",
"YTT",
]
lint.ignore = [
"BLE001", # blind-except (BLE001)
"SLF001", # SLF001 Private member accessed [E]
"TRY003", # [ruff] TRY003 Avoid specifying long messages outside the exception class [E]
"FBT001", "FBT002", "FBT003",
"G004", # [ruff] G004 Logging statement uses f-string [E]
"BLE001", # blind-except (BLE001)
"SLF001", # SLF001 Private member accessed [E]
"TRY003", # [ruff] TRY003 Avoid specifying long messages outside the exception class [E]
"FBT001",
"FBT002",
"FBT003",
"G004", # [ruff] G004 Logging statement uses f-string [E]
"UP031",
"RUF012",
"EM101",
"N805",
"ARG002",
"ARG003",
"PIE796", # https://github.com/zilliztech/VectorDBBench/issues/438
"INP001", # TODO
"TID252", # TODO
"N801", "N802", "N815",
"S101", "S108", "S603", "S311", "S608",
"PIE796", # https://github.com/zilliztech/VectorDBBench/issues/438
"INP001", # TODO
"TID252", # TODO
"N801",
"N802",
"N815",
"S101",
"S108",
"S603",
"S311",
"S608",
"PLR2004",
"RUF017",
"C416",
Expand All @@ -138,10 +175,49 @@ lint.ignore = [

# Allow autofix for all enabled rules (when `--fix`) is provided.
lint.fixable = [
"A", "B", "C", "D", "E", "F", "G", "I", "N", "Q", "S", "T", "W",
"ANN", "ARG", "BLE", "COM", "DJ", "DTZ", "EM", "ERA", "EXE", "FBT",
"ICN", "INP", "ISC", "NPY", "PD", "PGH", "PIE", "PL", "PT", "PTH",
"PYI", "RET", "RSE", "RUF", "SIM", "SLF", "TCH", "TID", "TRY", "UP",
"A",
"B",
"C",
"D",
"E",
"F",
"G",
"I",
"N",
"Q",
"S",
"T",
"W",
"ANN",
"ARG",
"BLE",
"COM",
"DJ",
"DTZ",
"EM",
"ERA",
"EXE",
"FBT",
"ICN",
"INP",
"ISC",
"NPY",
"PD",
"PGH",
"PIE",
"PL",
"PT",
"PTH",
"PYI",
"RET",
"RSE",
"RUF",
"SIM",
"SLF",
"TCH",
"TID",
"TRY",
"UP",
"YTT",
]
lint.unfixable = []
Expand Down Expand Up @@ -173,7 +249,7 @@ exclude = [
"venv",
"grpc_gen",
"__pycache__",
"frontend", # TODO
"frontend", # TODO
"tests",
]

Expand Down
Loading