Spaces:
Running on CPU Upgrade
Running on CPU Upgrade
Download pyproject.toml from SMSD75/SynthScope: direct link, hf CLI and curl.
- Browser
- Download file 4.12 kB
-
https://huggingface.co/spaces/SMSD75/SynthScope/resolve/main/pyproject.toml
- Command line
-
hf download hf://spaces/SMSD75/SynthScope/pyproject.toml
-
curl -L -o pyproject.toml https://huggingface.co/spaces/SMSD75/SynthScope/resolve/main/pyproject.toml
4.12 kB
| [build-system] | |
| requires = ["setuptools>=64", "wheel"] | |
| build-backend = "setuptools.build_meta" | |
| [project] | |
| name = "synthscope" | |
| version = "0.1.0" | |
| description = "A unified library and benchmark for AI-generated image & video detection." | |
| readme = "README.md" | |
| requires-python = ">=3.10" | |
| license = { text = "Apache-2.0" } | |
| authors = [{ name = "Seyed Salehi Dehnavi", email = "s.salehidehnavi@uva.nl" }] | |
| keywords = [ | |
| "deepfake-detection", "ai-generated-images", "synthetic-image-detection", | |
| "ai-generated-video", "forensics", "benchmark", "pytorch", | |
| ] | |
| classifiers = [ | |
| "Development Status :: 3 - Alpha", | |
| "Intended Audience :: Science/Research", | |
| "License :: OSI Approved :: Apache Software License", | |
| "Programming Language :: Python :: 3", | |
| "Topic :: Scientific/Engineering :: Artificial Intelligence", | |
| "Topic :: Scientific/Engineering :: Image Recognition", | |
| ] | |
| # Core runtime: everything the public API (`import synthscope`) pulls at import/inference time. | |
| # `interface.backend.{engine,media}` import the repo decoders at module load, so torch/ | |
| # torchvision/decord/matplotlib are genuinely required, not optional. | |
| dependencies = [ | |
| "torch>=2.0", | |
| "torchvision>=0.15", | |
| "numpy", | |
| "Pillow", | |
| "matplotlib", | |
| "decord>=0.6", | |
| "tqdm", | |
| "hydra-core>=1.3,<2", | |
| "omegaconf>=2.3", | |
| "huggingface-hub>=0.20", | |
| "accelerate>=0.27", | |
| "transformers>=4.38", | |
| "torchmetrics>=1.0", | |
| "timm>=0.9", | |
| "open_clip_torch>=2.24", | |
| "diffusers>=0.27", | |
| "pytorch_wavelets>=1.3", | |
| "PyWavelets>=1.9", | |
| "opencv-python-headless", # CuRe preprocessing (JPEG round-trips, resizing) | |
| "setuptools<81", # pytorch_wavelets (SAFE) still imports pkg_resources, removed in setuptools 81 | |
| ] | |
| [project.optional-dependencies] | |
| # FastAPI + React web demo (interface/). Not imported by `import synthscope`. | |
| web = ["fastapi>=0.110", "uvicorn[standard]>=0.27", "python-multipart>=0.0.9"] | |
| # Training + dataset auto-download stack. | |
| train = ["wandb>=0.16", "gdown>=5"] | |
| # Gradio demo (demo/app.py, Hugging Face Spaces). | |
| demo = ["gradio>=4"] | |
| # Tooling for contributors / CI. | |
| dev = ["ruff>=0.4", "pytest>=7", "build>=1", "twine>=5"] | |
| all = [ | |
| "fastapi>=0.110", "uvicorn[standard]>=0.27", "python-multipart>=0.0.9", | |
| "wandb>=0.16", "gdown>=5", "gradio>=4", | |
| ] | |
| [project.urls] | |
| Homepage = "https://github.com/SMSD75/SynthScope" | |
| Repository = "https://github.com/SMSD75/SynthScope" | |
| Issues = "https://github.com/SMSD75/SynthScope/issues" | |
| [project.scripts] | |
| synthscope = "synthscope.cli:main" | |
| agid = "synthscope.cli:main" # deprecated alias | |
| # Flat (research) layout: top-level modules + the model/interface/synthscope packages. Editable | |
| # install (`pip install -e .`) is the supported path — it puts the repo root on sys.path so | |
| # the existing flat imports (dataset, trainer, models.*, config_utils, interface.*) all resolve. | |
| [tool.setuptools] | |
| py-modules = ["main", "trainer", "dataset", "metrics", "transformations", "logger", "config_utils", "_synthscope_env"] | |
| [tool.setuptools.packages.find] | |
| include = ["synthscope*", "agid*", "models*", "interface*", "conf*"] | |
| exclude = ["tests*", "outputs*", "wandb*", "docs*", "experiments*", "interface.frontend*"] | |
| namespaces = true | |
| # Non-Python files the library needs at run time: Hydra configs (conf/), model data (STALL statistics, D3 calibration), | |
| # the web page and its vendored scripts, and the leaderboard data. Without this a regular (non-editable) | |
| # install, e.g. `pip install git+https://github.com/SMSD75/SynthScope.git`, cannot build any detector. | |
| [tool.setuptools.package-data] | |
| "*" = ["*.yaml", "*.json", "*.npz", "*.html", "*.js", "*.css"] | |
| [tool.ruff] | |
| line-length = 110 | |
| target-version = "py310" | |
| # Heavy research / vendored model code is not held to the package lint bar; CI lints `synthscope`. | |
| extend-exclude = ["models", "outputs", "wandb", "experiments", "docs", "interface/frontend", ".cache"] | |
| [tool.ruff.lint] | |
| # Start conservative: real errors (pyflakes F + a few correctness rules), not style churn. | |
| select = ["E9", "F"] | |
| ignore = ["F401", "F403", "F405"] # research modules use re-export / star-import patterns | |