content: [tool.black]
  line-length = 100
  include = '\.pyi?$'
  exclude = '''
  /(
      \.git
    | \.hg
    | \.mypy_cache
    | \.tox
    | \.venv
    | _build
    | buck-out
    | build
    | dist
  )/
  '''
  
  [tool.isort]
  profile = "black"
  line_length = 100
  known_first_party = [
      "mattergen",
  ]
  
  [project]
  name = "mattergen"
  version = "1.0.3"
  requires-python = ">= 3.10"
  description = "MatterGen is a generative model for inorganic materials design across the periodic table that can be fine-tuned to steer the generation towards a wide range of property constraints."
  readme = "README.md"
  license = "MIT"
  urls.repository = "https://github.com/microsoft/mattergen"
  classifiers = [
    "Intended Audience :: Science/Research",
    "Programming Language :: Python :: 3",
    "Programming Language :: Python :: 3.10",
    "Programming Language :: Python :: 3.11",
    "Programming Language :: Python :: 3.12",
    "Programming Language :: Python :: 3.13",
    "Topic :: Scientific/Engineering :: Chemistry",
    "Topic :: Scientific/Engineering :: Physics",
  ]
  
  dependencies = [
  "ase<=3.25.0",
  "autopep8",
  "cachetools",
  "contextlib2",
  "emmet-core>=0.84.2",  # keep up-to-date together with pymatgen, atomate2
  "fire", # see https://github.com/google/python-fire
  "huggingface-hub",
  "hydra-core==1.3.1",
  "hydra-joblib-launcher==1.1.5",
  "jupyterlab>=4.2.5",
  "lmdb",
  "matplotlib==3.8.4",
  "matscipy>=0.7.0",
  "mattersim>=1.1",
  "monty==2024.7.30 ",  # keep up-to-date together with pymatgen, atomate2
  "notebook>=7.2.2",
  "numpy<2.0",  # pin numpy before breaking changes in 2.0
  "omegaconf==2.3.0",
  "pymatgen>=2024.6.4",
  "pylint",
  "pytest",
  "pytorch-lightning==2.0.6",
  "seaborn>=0.13.2",  # for plotting
  "setuptools",
  "SMACT",
  "sympy>=1.11.1",
  "torch==2.2.1+cu118; sys_platform == 'linux'", 
  "torchvision==0.17.1+cu118; sys_platform == 'linux'",
  "torchaudio==2.2.1+cu118; sys_platform == 'linux'",
  "torch==2.4.1; sys_platform == 'darwin'",
  "torchvision==0.19.1; sys_platform == 'darwin'",
  "torchaudio==2.4.1; sys_platform == 'darwin'",
  "torch_cluster",
  "torch_geometric>=2.5",
  "torch_scatter",
  "torch_sparse",
  "tqdm",
  "wandb>=0.10.33",
  ]
  
  [project.scripts]
  mattergen-generate = "mattergen.scripts.generate:_main"
  mattergen-train = "mattergen.scripts.run:mattergen_main"
  mattergen-finetune = "mattergen.scripts.finetune:mattergen_finetune"
  mattergen-evaluate = "mattergen.scripts.evaluate:_main"
  csv-to-dataset = "mattergen.scripts.csv_to_dataset:main"
  
  
  [tool.setuptools.packages.find]
  include = ["mattergen*"]
  
  [tool.setuptools.package-data]
  "*" = ["**.yaml", "**.csv", "**.pt", "**.json"]
  
  [tool.uv.sources]
  torch = { index = "pytorch_linux",  marker = "sys_platform == 'linux'" }
  torchvision = { index = "pytorch_linux",  marker = "sys_platform == 'linux'" }
  torchaudio = { index = "pytorch_linux",  marker = "sys_platform == 'linux'" }
  pyg-lib = [
    { url = "https://data.pyg.org/whl/torch-2.2.0%2Bcu118/pyg_lib-0.4.0%2Bpt22cu118-cp310-cp310-linux_x86_64.whl",  marker = "sys_platform == 'linux'" },
    { url = "https://data.pyg.org/whl/torch-2.4.0%2Bcpu/pyg_lib-0.4.0%2Bpt24-cp310-cp310-macosx_14_0_universal2.whl",  marker = "sys_platform == 'darwin'" }
  ]
  torch_cluster = [
    { url = "https://data.pyg.org/whl/torch-2.2.0%2Bcu118/torch_cluster-1.6.3%2Bpt22cu118-cp310-cp310-linux_x86_64.whl",  marker = "sys_platform == 'linux'" },
    { url = "https://data.pyg.org/whl/torch-2.4.0%2Bcpu/torch_cluster-1.6.3-cp310-cp310-macosx_10_9_universal2.whl",  marker = "sys_platform == 'darwin'"  }
  ]
  
  torch_scatter = [
    { url = "https://data.pyg.org/whl/torch-2.2.0%2Bcu118/torch_scatter-2.1.2%2Bpt22cu118-cp310-cp310-linux_x86_64.whl",  marker = "sys_platform == 'linux'" },
    { url = "https://data.pyg.org/whl/torch-2.4.0%2Bcpu/torch_scatter-2.1.2-cp310-cp310-macosx_10_9_universal2.whl",  marker = "sys_platform == 'darwin'"  }
  ]
  
  torch_sparse = [
    { url = "https://data.pyg.org/whl/torch-2.2.0%2Bcu118/torch_sparse-0.6.18%2Bpt22cu118-cp310-cp310-linux_x86_64.whl",  marker = "sys_platform == 'linux'" },
    { url = "https://data.pyg.org/whl/torch-2.4.0%2Bcpu/torch_sparse-0.6.18-cp310-cp310-macosx_11_0_universal2.whl",  marker = "sys_platform == 'darwin'"  }
  ]
  
  [[tool.uv.index]]
  name = "pytorch_linux"
  url = "https://download.pytorch.org/whl/cu118"
  explicit = true
  
  
  [build-system]
  requires = ["setuptools >=77.0.3"]
  build-backend = "setuptools.build_meta"
  