[build-system]
requires = ["setuptools>=45", "setuptools_scm[toml]>=6.2"]
build-backend = "setuptools.build_meta"

[tool.setuptools_scm]

[project]
dynamic = ["version"]
name = "nnsight"
authors = [
  { name="Jaden Fiotto-Kaufman", email="jadenfk@outlook.com" },
]
description = "Package for interpreting and manipulating the internals of deep learning models."
readme = "README.md"
requires-python = ">=3.7"
license = { text = "MIT License" }

classifiers = [
    "Programming Language :: Python :: 3",
    "License :: OSI Approved :: MIT License",
    "Operating System :: OS Independent",
]

dependencies = [
    "transformers",
    "protobuf", 
    "python-socketio[client]",
    "tokenizers>=0.13.0",
    "pydantic>=2.9.0",
    "torch>=2.4.0",
    "sentencepiece",
    "torchvision",
    "accelerate",
    "diffusers",
    "einops",
    "msgspec",
    "toml",
    "ipython",
    ]

[project.optional-dependencies]
test = [
  "pytest",
  "toml"
]

[project.urls]
"Homepage" = "https://github.com/ndif-team/nnsight"
"Website" = "https://nnsight.net/"
"Documentation" = "https://nnsight.net/documentation/"
"Changelog" = "https://github.com/ndif-team/nnsight/CHANGELOG.md"
"Releases" = "https://github.com/ndif-team/nnsight/releases"

[tool.setuptools]
include-package-data = true
license-files = ["LICENSE"]

[tool.setuptools.package-data]
nnsight = ["config.yaml", "nnsight.log"]
