sahel-api / frontend-chat /pyproject.toml
Mohamed-20's picture
Deploy backend to HF Spaces
1337ed3
Raw
History Blame Contribute Delete
2.67 kB
[tool.poetry]
name = "chatbot"
version = "0.6.0"
description = "RAG ChatBot"
authors = ["Umberto Griffo <1609440+umbertogriffo@users.noreply.github.com>"]
readme = "README.md"
packages = [{ include = "chatbot" }]
[tool.poetry.dependencies]
python = ">=3.12,<3.13"
torch = [
{ version = "~=2.10.0", source = "pytorch", platform = "!=darwin" },
{ version = "~=2.10.0", source = "PyPI", platform = "darwin" }
]
sentence-transformers = { version = "~=5.1.2" }
peft = "~=0.18.1"
chromadb = "~=1.5.0"
grpcio = "==1.78.0" # 1.78.1 used by chromadb, is yanked.
rich = "~=13.4.2"
unstructured = { version = "~=0.20.2", extras = ["md"] }
docling = { version = "~=2.82.0", extras = ["vlm","rapidocr","easyocr"] }
transformers = "~=4.57.6"
numpy = "~=2.4.4"
requests = "~=2.33.0"
tqdm = "~=4.67.0"
clean-text = "~=0.7.1"
Unidecode = "~=1.3.6"
# backend dependencies
fastapi = { extras = ["standard"], version = "~=0.115.14" }
uvicorn = { version = "~=0.32.0", extras = ["standard"] }
pydantic-settings = "^2.6.0,<3.0.0"
python-multipart = "~=0.0.22"
sqlmodel = "~=0.0.37"
alembic = "^1.18.4,<2.0.0"
[tool.poetry.group.dev.dependencies]
pytest = "~=9.0.2"
pytest-cov = "~=7.0.0"
pytest-mock = "~=3.15.0"
pytest-asyncio = "~=1.3.0"
pre-commit = "~=3.6.0"
ruff = "~=0.14.10"
httpx = "~=0.28.1"
[[tool.poetry.source]]
name = "pytorch"
url = "https://download.pytorch.org/whl/cu126"
priority = "explicit"
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"
# https://docs.astral.sh/ruff/configuration/
# https://docs.astral.sh/ruff/settings/#lint_isort_known-first-party
[tool.ruff]
exclude = [
".venv",
".ruff_cache",
".pytest_cache",
"docs",
"frontend",
"backend/alembic/versions"
]
line-length = 120
indent-width = 4
[tool.ruff.lint]
# Enable Pyflakes (`F`) and a subset of the pycodestyle (`E`) codes by default.
# "I" is isort, C901 is McCabe complexity
select = [
# Pyflakes
"F",
# Pycodestyle
"E",
"W",
# isort
"I",
"C901"
]
ignore = []
# Allow fix for all enabled rules (when `--fix`) is provided.
fixable = ["ALL"]
unfixable = []
[tool.ruff.lint.mccabe]
# Flag errors (`C901`) whenever the complexity level exceeds 12.
max-complexity = 12
[tool.ruff.format]
# Like Black, use double quotes for strings.
quote-style = "double"
# Like Black, indent with spaces, rather than tabs.
indent-style = "space"
# Like Black, respect magic trailing commas.
skip-magic-trailing-comma = false
# Like Black, automatically detect the appropriate line ending.
line-ending = "auto"
[tool.pytest.ini_options]
pythonpath = [
".",
"chatbot",
"backend",
"tests"
]