115 lines
2.4 KiB
TOML
115 lines
2.4 KiB
TOML
[tool.poetry]
|
|||
|
|
name = "plantai-rag"
|
||
|
|
version = "0.1.0"
|
||
|
|
description = "Plant gene-family literature RAG and knowledge extraction system"
|
||
|
|
authors = ["PlantAI-rag maintainers"]
|
||
|
|
readme = "README.md"
|
||
|
|
packages = [{include = "src"}]
|
||
|
|
#package-mode = false
|
||
|
|
|
||
|
|
|
||
|
|
[tool.poetry.dependencies]
|
||
|
|
python = "^3.11"
|
||
|
|
# Core
|
||
|
|
pydantic = "^2.5.0"
|
||
|
|
pydantic-settings = "^2.1.0"
|
||
|
|
python-dotenv = "^1.0.0"
|
||
|
|
|
||
|
|
# LLM
|
||
|
|
openai = "^1.12.0"
|
||
|
|
zhipuai = "^2.0.0"
|
||
|
|
httpx = "^0.26.0"
|
||
|
|
|
||
|
|
# Agent Framework
|
||
|
|
langgraph = "^0.2.0"
|
||
|
|
langchain = "^0.3.0"
|
||
|
|
langchain-core = "^0.3.0"
|
||
|
|
langchain-community = "^0.3.0"
|
||
|
|
langsmith = "^0.1.0"
|
||
|
|
|
||
|
|
# Vector Store
|
||
|
|
qdrant-client = "^1.7.0"
|
||
|
|
pymilvus = "^2.3.0"
|
||
|
|
|
||
|
|
# Database
|
||
|
|
sqlalchemy = "^2.0.0"
|
||
|
|
asyncpg = "^0.29.0"
|
||
|
|
redis = "^5.0.0"
|
||
|
|
|
||
|
|
# Web Framework
|
||
|
|
fastapi = "^0.109.0"
|
||
|
|
uvicorn = "^0.27.0"
|
||
|
|
python-multipart = "^0.0.6"
|
||
|
|
websockets = "^12.0"
|
||
|
|
|
||
|
|
# Bioinformatics
|
||
|
|
biopython = "^1.83"
|
||
|
|
pymupdf = "^1.24.0"
|
||
|
|
pandas = "^2.1.0"
|
||
|
|
openpyxl = "^3.1.0"
|
||
|
|
xlrd = "^2.0.1"
|
||
|
|
python-docx = "^1.1.0"
|
||
|
|
requests = "^2.31.0"
|
||
|
|
|
||
|
|
# Utilities
|
||
|
|
pyyaml = "^6.0.1"
|
||
|
|
rich = "^13.7.0"
|
||
|
|
loguru = "^0.7.2"
|
||
|
|
tenacity = "^8.2.3"
|
||
|
|
aiofiles = "^23.2.1"
|
||
|
|
neo4j = "^6.1.0"
|
||
|
|
|
||
|
|
[tool.poetry.group.dev.dependencies]
|
||
|
|
pytest = "^7.4.0"
|
||
|
|
pytest-asyncio = "^0.23.0"
|
||
|
|
pytest-cov = "^4.1.0"
|
||
|
|
ruff = "^0.1.0"
|
||
|
|
mypy = "^1.8.0"
|
||
|
|
chardet = "^7.0.1"
|
||
|
|
jieba = "^0.42.1"
|
||
|
|
|
||
|
|
[tool.poetry.scripts]
|
||
|
|
start = "api.main:run"
|
||
|
|
|
||
|
|
[build-system]
|
||
|
|
requires = ["poetry-core"]
|
||
|
|
build-backend = "poetry.core.masonry.api"
|
||
|
|
|
||
|
|
[tool.ruff]
|
||
|
|
line-length = 100
|
||
|
|
target-version = "py311"
|
||
|
|
|
||
|
|
[tool.mypy]
|
||
|
|
python_version = "3.11"
|
||
|
|
strict = true
|
||
|
|
|
||
|
|
[tool.pytest.ini_options]
|
||
|
|
testpaths = ["tests"]
|
||
|
|
norecursedirs = [
|
||
|
|
"archive",
|
||
|
|
"tests/archive",
|
||
|
|
]
|
||
|
|
python_files = [
|
||
|
|
"test_functional_surface_parity.py",
|
||
|
|
"test_api_app.py",
|
||
|
|
"test_llm_definition_generator_config.py",
|
||
|
|
"test_llm_provider_guardrails.py",
|
||
|
|
"test_migration_requirements_audit.py",
|
||
|
|
"test_methodology_alignment_real_case.py",
|
||
|
|
"test_methodology_duplicate_rules.py",
|
||
|
|
"test_methodology_identification_inputs.py",
|
||
|
|
"test_methodology_mineru_gpu_preflight.py",
|
||
|
|
"test_methodology_plan_bridge.py",
|
||
|
|
"test_methodology_qa_sandbox.py",
|
||
|
|
"test_neo4j_config_env.py",
|
||
|
|
"test_open_source_audit.py",
|
||
|
|
"test_paper_metadata_enricher_identity.py",
|
||
|
|
"test_project_path_fallbacks.py",
|
||
|
|
"test_runtime_surface_manifest.py",
|
||
|
|
"test_temporal.py",
|
||
|
|
"test_vlm_image_extractor_config.py",
|
||
|
|
"test_v16_batch_runner.py",
|
||
|
|
"test_v16_local_baseline.py",
|
||
|
|
"test_v16_validation_contract.py",
|
||
|
|
]
|