| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- [build-system]
- requires = ["setuptools>=68.0"]
- build-backend = "setuptools.backends._legacy:_Backend"
- [project]
- name = "peft-finetune-platform"
- version = "0.1.0"
- description = "PEFT-based fine-tuning platform with frontend-backend separation"
- requires-python = ">=3.10"
- dependencies = [
- "fastapi>=0.115.0",
- "uvicorn[standard]>=0.30.0",
- "pydantic>=2.0",
- "pydantic-settings>=2.0",
- "python-dotenv>=1.0",
- "sqlalchemy[asyncio]>=2.0",
- "aiosqlite>=0.20.0",
- "alembic>=1.13.0",
- "python-multipart>=0.0.9",
- "websockets>=12.0",
- # ML stack
- "torch>=2.4.0",
- "transformers>=4.45.0",
- "peft>=0.13.0",
- "trl>=0.12.0",
- "datasets>=3.0.0",
- "accelerate>=1.0.0",
- "bitsandbytes>=0.44.0",
- "scipy>=1.14.0",
- "scikit-learn>=1.5.0",
- "pillow>=10.4.0",
- ]
- [project.optional-dependencies]
- unsloth = ["unsloth"]
- openclip = ["open-clip-torch"]
- dev = [
- "pytest>=8.0",
- "pytest-asyncio>=0.23",
- "httpx>=0.27",
- "ruff>=0.6.0",
- ]
- [tool.setuptools.packages.find]
- where = ["backend"]
- include = ["app*"]
- [tool.ruff]
- target-version = "py310"
- line-length = 120
- [tool.ruff.lint]
- select = ["E", "F", "I", "N", "W"]
- ignore = ["E501"]
- [tool.pytest.ini_options]
- asyncio_mode = "auto"
- testpaths = ["backend/tests"]
|