[build-system] build-backend = "setuptools.build_meta" requires = ["setuptools ~= 67.1", "wheel"] [project] authors = [{name = "The InvokeAI Project", email = "lincoln.stein@gmail.com"}] classifiers = [ "Development Status :: 4 - Beta", "Environment :: GPU :: NVIDIA CUDA", "Environment :: GPU", "Environment :: MacOS X", "Intended Audience :: Developers", "Intended Audience :: End Users/Desktop", "License :: OSI Approved :: MIT License", "Operating System :: MacOS", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX :: Linux", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.9", "Programming Language :: Python", "Topic :: Artistic Software", "Topic :: Internet :: WWW/HTTP :: WSGI :: Application", "Topic :: Internet :: WWW/HTTP :: WSGI :: Server", "Topic :: Multimedia :: Graphics", "Topic :: Scientific/Engineering :: Artificial Intelligence", "Topic :: Scientific/Engineering :: Image Processing", ] dependencies = [ "accelerate", "albumentations", "click", "clip_anytorch", "compel==0.1.7", "datasets", "diffusers[torch]~=0.13", "dnspython==2.2.1", "einops", "eventlet", "facexlib", "flask==2.1.3", "flask_cors==3.0.10", "flask_socketio==5.3.0", "flaskwebgui==1.0.3", "getpass_asterisk", "gfpgan==1.3.8", "huggingface-hub>=0.11.1", "imageio", "imageio-ffmpeg", "k-diffusion", "kornia", "npyscreen", "numpy<1.24", "omegaconf", "opencv-python", "picklescan", "pillow", "prompt-toolkit", "pudb", "pypatchmatch", "pyreadline3", "pytorch-lightning==1.7.7", "realesrgan", "requests==2.28.2", "safetensors", "scikit-image>=0.19", "send2trash", "streamlit", "taming-transformers-rom1504", "test-tube>=0.7.5", "torch-fidelity", "torch>=1.13.1", "torchmetrics", "torchvision>=0.14.1", "transformers~=4.25", "windows-curses; sys_platform=='win32'", ] description = "An implementation of Stable Diffusion which provides various new features and options to aid the image generation process" dynamic = ["version"] keywords = ["AI", "stable-diffusion"] license = {text = "MIT"} name = "InvokeAI" readme = {content-type = "text/markdown", file = "README.md"} requires-python = ">=3.9, <3.11" [project.optional-dependencies] "dev" = [ "black[jupyter]", "flake8", "flake8-black", "flake8-bugbear", "isort", "pre-commit", ] "dist" = ["pip-tools", "pipdeptree", "twine"] "docs" = [ "mkdocs-git-revision-date-localized-plugin", "mkdocs-material==9.*", "mkdocs-redirects==1.2.0", ] "test" = ["pytest-cov", "pytest>6.0.0"] "xformers" = [ "triton; sys_platform=='linux'", "xformers~=0.0.16; sys_platform!='darwin'", ] [project.scripts] # legacy entrypoints; provided for backwards compatibility "configure_invokeai.py" = "ldm.invoke.config.invokeai_configure:main" "invoke.py" = "ldm.invoke.CLI:main" "merge_embeddings.py" = "ldm.invoke.merge_diffusers:main" "textual_inversion.py" = "ldm.invoke.training.textual_inversion:main" # modern entrypoints "invokeai" = "ldm.invoke.CLI:main" "invokeai-configure" = "ldm.invoke.config.invokeai_configure:main" "invokeai-merge" = "ldm.invoke.merge_diffusers:main" "invokeai-ti" = "ldm.invoke.training.textual_inversion:main" [project.urls] "Bug Reports" = "https://github.com/invoke-ai/InvokeAI/issues" "Discord" = "https://discord.gg/ZmtBAhwWhy" "Documentation" = "https://invoke-ai.github.io/InvokeAI/" "Homepage" = "https://invoke-ai.github.io/InvokeAI/" "Source" = "https://github.com/invoke-ai/InvokeAI/" [tool.setuptools] license-files = ["LICENSE"] [tool.setuptools.dynamic] version = {attr = "ldm.invoke.__version__"} [tool.setuptools.packages.find] "include" = [ "invokeai.assets.web", "invokeai.backend*", "invokeai.configs*", "invokeai.frontend.dist*", "ldm*", ] "where" = ["."] [tool.setuptools.package-data] "invokeai.assets.web" = ["**.png"] "invokeai.configs" = ["**.example", "**.txt", "**.yaml"] "invokeai.frontend.dist" = ["**"] [tool.black] extend-exclude = ''' /( # skip legacy scripts | scripts/orig_scripts )/ ''' line-length = 88 target-version = ['py39'] [tool.isort] atomic = true extend_skip_glob = ["scripts/orig_scripts/*"] filter_files = true line_length = 88 profile = "black" py_version = 39 remove_redundant_aliases = true skip_gitignore = true src_paths = ["installer", "invokeai", "ldm", "tests"] virtual_env = ".venv" [tool.coverage.run] branch = true parallel = true [tool.coverage.report] skip_covered = true skip_empty = true [tool.coverage.paths] source = ["invokeai/backend", "ldm/invoke"] [tool.pytest.ini_options] addopts = ["--cov=invokeai/backend", "--cov=ldm/invoke"]