[build-system] requires = ["setuptools>=61.0", "wheel"] build-backend = "setuptools.build_meta" [project] name = "minimind" version = "1.0.0" description = "MiniMind (Mind2) - Lightweight language models for edge deployment" readme = "README.md" license = {text = "Apache-2.0"} authors = [ {name = "Matrix Agent", email = "contact@minimind.ai"} ] requires-python = ">=3.9" classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Intended Audience :: Science/Research", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Topic :: Scientific/Engineering :: Artificial Intelligence", ] dependencies = [ "torch>=2.1.0", "numpy>=1.24.0", ] [project.optional-dependencies] train = [ "transformers>=4.35.0", "datasets>=2.14.0", "accelerate>=0.24.0", "wandb>=0.15.0", ] export = [ "onnx>=1.14.0", "onnxruntime>=1.16.0", ] dev = [ "pytest>=7.4.0", "black>=23.0.0", "isort>=5.12.0", "mypy>=1.5.0", "ruff>=0.1.0", ] all = [ "minimind[train,export,dev]", ] [project.scripts] minimind-train = "scripts.train:main" minimind-export = "scripts.export:main" [project.urls] Homepage = "https://github.com/minimind/minimind" Documentation = "https://github.com/minimind/minimind#readme" Repository = "https://github.com/minimind/minimind" Issues = "https://github.com/minimind/minimind/issues" [tool.setuptools.packages.find] exclude = ["tests*", "android*"] [tool.black] line-length = 100 target-version = ["py39", "py310", "py311", "py312"] include = '\.pyi?$' exclude = ''' /( \.git | \.mypy_cache | \.venv | build | dist | android )/ ''' [tool.isort] profile = "black" line_length = 100 skip = [".git", ".venv", "build", "dist", "android"] [tool.ruff] line-length = 100 target-version = "py39" exclude = [".git", ".venv", "build", "dist", "android"] [tool.ruff.lint] select = ["E", "F", "W", "I", "N", "B", "C4"] ignore = ["E501"] [tool.mypy] python_version = "3.9" warn_return_any = true warn_unused_configs = true ignore_missing_imports = true exclude = ["android", "build", "dist"] [tool.pytest.ini_options] testpaths = ["tests"] python_files = ["test_*.py"] python_functions = ["test_*"] addopts = "-v --tb=short"