Files

81 lines
2.1 KiB
TOML

[project]
name = "md-vector-db"
version = "0.1.0"
description = "Markdown 文档向量数据库 — 语义检索、混合检索、REST API"
readme = "README.md"
license = {text = "MIT"}
authors = [
{name = "刘航宇", email = "3364451258@qq.com"},
]
keywords = ["vector-database", "semantic-search", "rag", "chromadb", "markdown"]
classifiers = [
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Programming Language :: Python :: 3.13",
"Topic :: Scientific/Engineering :: Artificial Intelligence",
"Topic :: Text Processing :: Markup",
]
requires-python = ">=3.13"
dependencies = [
"chromadb>=0.5.0",
"sentence-transformers>=3.0.0",
"fastapi>=0.115.0",
"uvicorn[standard]>=0.30.0",
"pyyaml>=6.0",
"markdown-it-py>=3.0.0",
"typer>=0.12.0",
"python-dotenv>=1.2.2",
"rank-bm25>=0.2.2",
]
[project.urls]
Homepage = "https://github.com/LHY0125/md-vector-db"
Documentation = "https://github.com/LHY0125/md-vector-db#readme"
Repository = "https://github.com/LHY0125/md-vector-db"
Issues = "https://github.com/LHY0125/md-vector-db/issues"
[project.scripts]
md-vector-db = "src.cli.main:app"
[project.optional-dependencies]
dev = ["pytest>=8.0", "httpx>=0.27.0", "pytest-cov>=5.0", "ruff>=0.8.0", "mypy>=1.13"]
pdf = ["pymupdf>=1.24.0"]
html = ["beautifulsoup4>=4.12.0"]
epub = ["ebooklib>=0.18"]
docx = ["markitdown>=0.1.0"]
bench = ["pytest-benchmark>=5.0"]
all = ["md-vector-db[pdf,html,epub,docx]", "requests>=2.31.0", "openai>=1.0.0"]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel]
packages = ["src/"]
[tool.uv]
find-links = ["D:/settings/Language/Python/库"]
index-strategy = "unsafe-best-match"
[tool.ruff]
line-length = 100
target-version = "py313"
[tool.ruff.format]
quote-style = "double"
indent-style = "space"
skip-magic-trailing-comma = false
[tool.ruff.lint]
select = ["E", "F", "I", "N", "W"]
[tool.mypy]
python_version = "3.13"
ignore_missing_imports = true
[tool.pytest.ini_options]
testpaths = ["tests"]
pythonpath = ["src"]
norecursedirs = ["tests/benchmarks"]