[build-system] requires = ["setuptools>=77"] build-backend = "setuptools.build_meta" [project] name = "prism-merge" dynamic = ["version"] description = "Predict and repair merge collapse in large language models" readme = "README.md" requires-python = ">=3.10" license = "MIT" license-files = ["LICENSE"] authors = [{ name = "Jungseob Lee" }] keywords = ["model-merging", "task-arithmetic", "task-vectors", "llm", "interference"] classifiers = [ "Programming Language :: Python :: 3", "Topic :: Scientific/Engineering :: Artificial Intelligence", ] # The core runs on numpy alone, so `import prism` works on any laptop. # Torch comes in with the merge extra and loads on first use. dependencies = ["numpy>=1.23"] [project.optional-dependencies] merge = ["torch>=2.1", "safetensors>=0.4", "huggingface_hub>=0.23", "transformers>=4.44"] eval = ["torch>=2.1", "transformers>=4.44", "accelerate>=0.30", "datasets>=2.20", "lm_eval>=0.4.5"] plot = ["matplotlib>=3.7"] test = ["pytest>=8"] [project.scripts] prism-merge = "prism.cli:main" [project.urls] Homepage = "https://github.com/js-lee-AI/PRISM" Issues = "https://github.com/js-lee-AI/PRISM/issues" [tool.setuptools.dynamic] version = { attr = "prism.__version__" } [tool.setuptools.packages.find] include = ["prism*"] [tool.pytest.ini_options] testpaths = ["tests"] markers = ["gpu: needs a CUDA device and the merge extra"] addopts = "-m 'not gpu'"