[build-system] requires = ["setuptools>=68", "wheel"] build-backend = "setuptools.build_meta" [project] name = "crom-efficientllm" version = "0.2.1" description = "CRoM (Context Rot Mitigation)-EfficientLLM: Budget packing, hybrid rerank, and drift estimation with observability" readme = "README.md" requires-python = ">=3.9" license = { text = "Apache-2.0" } authors = [ { name = "Your Name" } ] dependencies = [ "numpy>=1.24,<3", "scikit-learn>=1.3,<2", "transformers>=4.41,<5", "sentence-transformers>=2.2,<3", "flask>=3,<4", "prometheus-client>=0.20,<1" ] [project.optional-dependencies] dev = [ "pytest>=7", "ruff>=0.4", "black>=24.4", "pre-commit>=3.6", "matplotlib>=3.8,<4" ] plugins = [ "flashrank>=0.2; python_version>='3.9'", "llmlingua>=0.2; python_version>='3.9'", "evidently>=0.4; python_version>='3.9'" ] haystack = [ "farm-haystack[faiss,inference]>=1.26; python_version>='3.9'" ] [project.urls] Homepage = "https://github.com/Flamehaven/CRoM-Context-Rot-Mitigation--EfficientLLM" [project.scripts] "crom-demo" = "crom_efficientllm.demo:main" "crom-bench" = "crom_efficientllm.cli:main" [tool.setuptools] package-dir = {"" = "src"} packages = { find = { where = ["src"] } } [tool.pytest.ini_options] addopts = "-q" [tool.black] line-length = 100 [tool.ruff] target-version = "py39" [tool.ruff.lint] select = ["E","F","I","UP","B","C4","SIM","PL","PERF","RUF","ANN"] ignore = ["ANN101","ANN102"] [tool.ruff.lint.per-file-ignores] "tests/*" = ["S101","ANN","PLR2004"]