fot-recommender-api / pyproject.toml
chuckfinca's picture
Refactor: Polish project for review
d9d86e9
[build-system]
requires = ["setuptools>=61.0", "wheel"]
build-backend = "setuptools.build_meta"
[project]
name = "fot_intervention_recommender"
version = "0.1.0"
description = "Freshman On-Track Intervention Recommender PoC"
readme = "README.md"
requires-python = ">=3.12"
dependencies = [
"setuptools>=80.9.0",
# Pinned to v2.2.2 because the PyTorch team dropped support for macOS on Intel (x86_64)
# in subsequent releases. This is the last official version with a pre-built wheel
# that is compatible with older Mac hardware.
# See GitHub issue: https://github.com/pytorch/pytorch/issues/114602
"torch==2.2.2",
"numpy<2.0", # Pin to NumPy 1.x for compatibility with torch==2.2.2
"sentence-transformers",
"faiss-cpu",
"google-generativeai",
"python-dotenv",
"gradio",
"gradio_client",
]
[project.scripts]
fot-recommender = "fot_recommender.main:main"
[project.optional-dependencies]
dev = [
"black>=25.1.0",
"mypy>=1.16.1",
"pytest>=8.4.1",
"ruff>=0.12.2",
"jupyterlab>=4.0",
"notebook>=7.0",
"ipywidgets"
]
[tool.setuptools.packages.find]
where = ["src"]
[tool.setuptools.package-dir]
"" = "src"
[tool.ruff.lint]
# Add any specific rules you want to enforce here in the future.
# For now, we will just define what to exclude.
exclude = [
".venv",
"*/__pycache__/*",
"src/fot_intervention_recommender.egg-info",
"*.ipynb",
]