Update qdrant-client minimum version from 1.7.0 to 1.11.0

• Bump qdrant-client to >=1.11.0
• Update pyproject.toml dependency
• Update requirements files
• Sync uv.lock with new version
• Maintain <2.0.0 upper bound

(cherry picked from commit e8f5f57ec7)
This commit is contained in:
yangdx 2025-11-10 11:54:48 +08:00 committed by Raphaël MANSUY
parent 00d51f9dba
commit 8bb23b9bfa
4 changed files with 2176 additions and 1043 deletions

View file

@ -23,13 +23,14 @@ classifiers = [
dependencies = [ dependencies = [
"aiohttp", "aiohttp",
"configparser", "configparser",
"dotenv",
"future", "future",
"google-api-core>=2.0.0,<3.0.0",
"google-genai>=1.0.0,<2.0.0",
"json_repair", "json_repair",
"nano-vectordb", "nano-vectordb",
"networkx", "networkx",
"numpy", "numpy",
"pandas>=2.0.0", "pandas>=2.0.0,<2.4.0",
"pipmaster", "pipmaster",
"pydantic", "pydantic",
"pypinyin", "pypinyin",
@ -45,14 +46,13 @@ api = [
# Core dependencies # Core dependencies
"aiohttp", "aiohttp",
"configparser", "configparser",
"dotenv",
"future", "future",
"json_repair", "json_repair",
"nano-vectordb", "nano-vectordb",
"networkx", "networkx",
"numpy", "numpy",
"openai", "openai>=1.0.0,<3.0.0",
"pandas>=2.0.0", "pandas>=2.0.0,<2.4.0",
"pipmaster", "pipmaster",
"pydantic", "pydantic",
"pypinyin", "pypinyin",
@ -61,6 +61,8 @@ api = [
"tenacity", "tenacity",
"tiktoken", "tiktoken",
"xlsxwriter>=3.1.0", "xlsxwriter>=3.1.0",
"google-api-core>=2.0.0,<3.0.0",
"google-genai>=1.0.0,<2.0.0",
# API-specific dependencies # API-specific dependencies
"aiofiles", "aiofiles",
"ascii_colors", "ascii_colors",
@ -72,7 +74,7 @@ api = [
"jiter", "jiter",
"passlib[bcrypt]", "passlib[bcrypt]",
"psutil", "psutil",
"PyJWT", "PyJWT>=2.8.0,<3.0.0",
"python-jose[cryptography]", "python-jose[cryptography]",
"python-multipart", "python-multipart",
"pytz", "pytz",
@ -82,35 +84,34 @@ api = [
# Offline deployment dependencies (layered design for flexibility) # Offline deployment dependencies (layered design for flexibility)
offline-docs = [ offline-docs = [
# Document processing dependencies # Document processing dependencies
"docling>=1.0.0", "openpyxl>=3.0.0,<4.0.0",
"pycryptodome>=3.0.0,<4.0.0",
"pypdf2>=3.0.0", "pypdf2>=3.0.0",
"python-docx>=0.8.11", "python-docx>=0.8.11,<2.0.0",
"python-pptx>=0.6.21", "python-pptx>=0.6.21,<2.0.0",
"openpyxl>=3.0.0",
] ]
offline-storage = [ offline-storage = [
# Storage backend dependencies # Storage backend dependencies
"redis>=5.0.0", "redis>=5.0.0,<8.0.0",
"neo4j>=5.0.0", "neo4j>=5.0.0,<7.0.0",
"pymilvus>=2.6.2", "pymilvus>=2.6.2,<3.0.0",
"protobuf>=5.27.2,<6.0.0", # Required for pymilvus compatibility "pymongo>=4.0.0,<5.0.0",
"pymongo>=4.0.0", "asyncpg>=0.29.0,<1.0.0",
"asyncpg>=0.29.0", "qdrant-client>=1.11.0,<2.0.0",
"qdrant-client>=1.7.0",
] ]
offline-llm = [ offline-llm = [
# LLM provider dependencies # LLM provider dependencies
"openai>=1.0.0", "openai>=1.0.0,<3.0.0",
"anthropic>=0.18.0", "anthropic>=0.18.0,<1.0.0",
"ollama>=0.1.0", "ollama>=0.1.0,<1.0.0",
"zhipuai>=2.0.0", "zhipuai>=2.0.0,<3.0.0",
"aioboto3>=12.0.0", "aioboto3>=12.0.0,<16.0.0",
"voyageai>=0.2.0", "voyageai>=0.2.0,<1.0.0",
"llama-index>=0.9.0", "llama-index>=0.9.0,<1.0.0",
"transformers>=4.30.0", "google-api-core>=2.0.0,<3.0.0",
"torch>=2.0.0", "google-genai>=1.0.0,<2.0.0",
] ]
offline = [ offline = [
@ -118,6 +119,20 @@ offline = [
"lightrag-hku[offline-docs,offline-storage,offline-llm]", "lightrag-hku[offline-docs,offline-storage,offline-llm]",
] ]
evaluation = [
# RAG evaluation dependencies (RAGAS framework)
"ragas>=0.3.7",
"datasets>=4.3.0",
"httpx>=0.28.1",
"pytest>=8.4.2",
"pytest-asyncio>=1.2.0",
]
observability = [
# LLM observability and tracing dependencies
"langfuse>=3.8.1",
]
[project.scripts] [project.scripts]
lightrag-server = "lightrag.api.lightrag_server:main" lightrag-server = "lightrag.api.lightrag_server:main"
lightrag-gunicorn = "lightrag.api.run_with_gunicorn:main" lightrag-gunicorn = "lightrag.api.run_with_gunicorn:main"
@ -131,6 +146,7 @@ Repository = "https://github.com/HKUDS/LightRAG"
[tool.setuptools.packages.find] [tool.setuptools.packages.find]
include = ["lightrag*"] include = ["lightrag*"]
exclude = ["data*", "tests*", "scripts*", "examples*", "dickens*", "reproduce*", "output_complete*", "rag_storage*", "inputs*"]
[tool.setuptools] [tool.setuptools]
include-package-data = true include-package-data = true
@ -139,7 +155,7 @@ include-package-data = true
version = {attr = "lightrag.__version__"} version = {attr = "lightrag.__version__"}
[tool.setuptools.package-data] [tool.setuptools.package-data]
lightrag = ["api/webui/**/*"] lightrag = ["api/webui/**/*", "api/static/**/*"]
[tool.ruff] [tool.ruff]
target-version = "py310" target-version = "py310"

View file

@ -3,12 +3,14 @@
# For offline installation: # For offline installation:
# pip download -r requirements-offline-storage.txt -d ./packages # pip download -r requirements-offline-storage.txt -d ./packages
# pip install --no-index --find-links=./packages -r requirements-offline-storage.txt # pip install --no-index --find-links=./packages -r requirements-offline-storage.txt
#
# Recommended: Use pip install lightrag-hku[offline-storage] for the same effect
# Or use constraints: pip install --constraint constraints-offline.txt -r requirements-offline-storage.txt
asyncpg>=0.29.0 # Storage backend dependencies (with version constraints matching pyproject.toml)
neo4j>=5.0.0 asyncpg>=0.29.0,<1.0.0
pymilvus>=2.6.2 neo4j>=5.0.0,<7.0.0
protobuf>=5.27.2,<6.0.0 # Required for pymilvus compatibility pymilvus>=2.6.2,<3.0.0
pymongo>=4.0.0 pymongo>=4.0.0,<5.0.0
qdrant-client>=1.7.0 qdrant-client>=1.11.0,<2.0.0
# Storage backend dependencies redis>=5.0.0,<8.0.0
redis>=5.0.0

View file

@ -4,30 +4,30 @@
# pip download -r requirements-offline.txt -d ./packages # pip download -r requirements-offline.txt -d ./packages
# pip install --no-index --find-links=./packages -r requirements-offline.txt # pip install --no-index --find-links=./packages -r requirements-offline.txt
# #
# Or use pip install lightrag-hku[offline] for the same effect # Recommended: Use pip install lightrag-hku[offline] for the same effect
# Or use constraints: pip install --constraint constraints-offline.txt -r requirements-offline.txt
aioboto3>=12.0.0 # LLM provider dependencies (with version constraints matching pyproject.toml)
anthropic>=0.18.0 aioboto3>=12.0.0,<16.0.0
asyncpg>=0.29.0 anthropic>=0.18.0,<1.0.0
# Document processing dependencies
docling>=1.0.0
llama-index>=0.9.0
neo4j>=5.0.0
ollama>=0.1.0
# LLM provider dependencies
openai>=1.0.0
openpyxl>=3.0.0
pymilvus>=2.6.2
pymongo>=4.0.0
pypdf2>=3.0.0
python-docx>=0.8.11
python-pptx>=0.6.21
qdrant-client>=1.7.0
# Storage backend dependencies # Storage backend dependencies
redis>=5.0.0 asyncpg>=0.29.0,<1.0.0
torch>=2.0.0 google-genai>=1.0.0,<2.0.0
transformers>=4.30.0
voyageai>=0.2.0 # Document processing dependencies
zhipuai>=2.0.0 llama-index>=0.9.0,<1.0.0
neo4j>=5.0.0,<7.0.0
ollama>=0.1.0,<1.0.0
openai>=1.0.0,<3.0.0
openpyxl>=3.0.0,<4.0.0
pycryptodome>=3.0.0,<4.0.0
pymilvus>=2.6.2,<3.0.0
pymongo>=4.0.0,<5.0.0
pypdf2>=3.0.0
python-docx>=0.8.11,<2.0.0
python-pptx>=0.6.21,<2.0.0
qdrant-client>=1.11.0,<2.0.0
redis>=5.0.0,<8.0.0
voyageai>=0.2.0,<1.0.0
zhipuai>=2.0.0,<3.0.0

3083
uv.lock generated

File diff suppressed because it is too large Load diff