[project]
name = "yg-ft-backend"
version = "0.1.0"
description = "Backend service for the model fine-tuning platform"
requires-python = ">=3.12"
dependencies = [
  "fastapi>=0.111.0",
  "uvicorn[standard]>=0.30.0",
  "python-multipart>=0.0.9",
  "pydantic>=2.7.0",
  "sqlalchemy>=2.0.30",
  "psycopg[binary]>=3.2.1",
  "alembic>=1.13.1",
  "redis>=5.0.4",
  "httpx>=0.27.0",
  "PyJWT>=2.8.0",
  "passlib[bcrypt]>=1.7.4",
  "python-dotenv>=1.0.1",
  "pypdf[crypto]>=5.0.0",
  "python-docx>=1.1.2",
  "openpyxl>=3.1.5",
  "python-pptx>=1.0.2",
  "llama-index-core==0.14.23",
  "llama-index-embeddings-huggingface==0.6.1",
  "docling==2.115.0",
  "tiktoken>=0.7.0",
]

[project.optional-dependencies]
dev = [
  "pytest>=8.2.0",
  "ruff>=0.5.0",
]

[tool.ruff]
line-length = 100
target-version = "py312"

[tool.pytest.ini_options]
testpaths = ["tests"]
