{
  "data": {
    "similar": [
      {
        "grade": "B",
        "json": "https://www.anchorterminal.com/tools/fal-image.json",
        "name": "fal image models",
        "score": 65.2,
        "shared": [
          "image.generate",
          "image.upscale"
        ],
        "slug": "fal-image"
      },
      {
        "grade": "B",
        "json": "https://www.anchorterminal.com/tools/bria.json",
        "name": "Bria API",
        "score": 63.7,
        "shared": [
          "image.generate",
          "image.upscale"
        ],
        "slug": "bria"
      },
      {
        "grade": "C",
        "json": "https://www.anchorterminal.com/tools/photoroom.json",
        "name": "Photoroom API",
        "score": 56,
        "shared": [
          "image.generate",
          "image.upscale"
        ],
        "slug": "photoroom"
      },
      {
        "grade": "C",
        "json": "https://www.anchorterminal.com/tools/melius.json",
        "name": "Melius",
        "score": 54.1,
        "shared": [
          "image.generate",
          "image.upscale"
        ],
        "slug": "melius"
      },
      {
        "grade": "D",
        "json": "https://www.anchorterminal.com/tools/recraft.json",
        "name": "Recraft API",
        "score": 52.8,
        "shared": [
          "image.generate",
          "image.upscale"
        ],
        "slug": "recraft"
      },
      {
        "grade": "D",
        "json": "https://www.anchorterminal.com/tools/replicate-image.json",
        "name": "Replicate image models",
        "score": 50.2,
        "shared": [
          "image.generate",
          "image.upscale"
        ],
        "slug": "replicate-image"
      }
    ],
    "tool": {
      "slug": "iris-3b",
      "name": "Iris-3B",
      "vendor": "Speridlabs",
      "vendorUrl": "https://speridlabs.com",
      "kind": "model",
      "category": "image-generation",
      "summary": "Iris-3B is an Apache-2.0 open-weight text-to-image model from Speridlabs that generates pixels directly, with no VAE. The release adds a 4-step Turbo version and fine-tunes for monocular depth and 4x image restoration.",
      "url": "https://www.anchorterminal.com/tools/iris-3b",
      "markdownUrl": "https://www.anchorterminal.com/tools/iris-3b.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/iris-3b.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/iris-3b.json",
      "repo": "https://github.com/speridlabs/iris-3b",
      "license": "Apache-2.0 (code and weights)",
      "transports": [],
      "packages": [],
      "auth": "none",
      "authNotes": "No account or key. Weights download from a public, ungated Hugging Face repository, and the frozen Qwen3-VL-4B-Instruct text encoder downloads from its publisher on the first run. The software opens no network service.",
      "pricing": "free",
      "pricingNotes": "Free under Apache-2.0 with nothing to buy. Speridlabs has no hosted API or paid plan. The owner pays for an NVIDIA GPU. The demo Spaces run on Hugging Face ZeroGPU.",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the repository, the model card or the project page (checked 2026-10-15). There is no paid tier or hosted endpoint.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 175,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-15"
      },
      "docsUrl": "https://huggingface.co/speridlabs/iris-3b",
      "capabilities": [
        "image.generate",
        "image.upscale"
      ],
      "tags": [
        "model",
        "open-source",
        "open-weights",
        "self-hosted",
        "local",
        "free",
        "no-card",
        "apache-2.0",
        "python",
        "gpu",
        "new"
      ],
      "lastRelease": "2026-10-12",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 50.9,
        "grade": "D",
        "agentReady": false,
        "rank": 826,
        "ranked": true,
        "rankOf": 1094,
        "categoryRank": 8,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 54,
          "maintenance": 70,
          "payments": 60,
          "reliability": 45,
          "schema": 47,
          "security": 44,
          "transparency": 47
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "breakdown": [
          {
            "key": "reliability",
            "name": "Reliability",
            "weight": 16,
            "effectiveWeight": 20,
            "score": 45,
            "points": 9,
            "reason": "Read as local software, since Iris-3B is a model the owner runs. No package on PyPI. Install is a git clone and `pip install -e .`, with Python 3.11 or newer, PyTorch 2.7.1 or newer and an NVIDIA GPU with CUDA stated (12 of 20). The repository has 23 pytest files covering the model, flow, checkpoints and parallel training, but no CI workflow, so nothing shows them passing on main (5 of 25). Three GitHub issues in ten days, none a crash, two closed and one open announcing a community ComfyUI port. Six Hugging Face discussions, none a bug report (20 of 25). No tags, releases or changelog. Package version 0.1.0, and new checkpoints are added in folders of one Hub repository with no version pins (3 of 15). Released as a final checkpoint with no beta label, but the package is 0.1.0 and the project ten days old (5 of 15)."
          },
          {
            "key": "performance",
            "name": "Performance",
            "weight": 10,
            "effectiveWeight": 0,
            "pending": true,
            "points": 0,
            "reason": "Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes."
          },
          {
            "key": "schema",
            "name": "Schema \u0026 documentation",
            "weight": 13,
            "effectiveWeight": 16.25,
            "score": 47,
            "points": 7.64,
            "reason": "Read for a model the owner runs through a CLI and a Python package. No server, OpenAPI or other machine-readable contract. The CLI uses argparse with typed flags and help text, and the Python functions carry type hints. The demo Spaces' Gradio API lists typed endpoints, but Speridlabs doesn't document it (8 of 25). No llms.txt. The README and model card are Markdown in each repository (5 of 10). The card and README state limits (unreliable rendered text and object counts, about one megapixel, depth relative not metric, Turbo's fixed schedule and lower seed variety) but not intended or out-of-scope uses (14 of 20). Flags are typed, with the size presets as an enum only in the Spaces. Height and width take any integer, though Turbo was distilled at seven sizes (9 of 15). Commands for every model and a tips table, but no documented errors (7 of 15). No versioning or changelog beyond dated commits (4 of 15)."
          },
          {
            "key": "ergonomics",
            "name": "Agent ergonomics",
            "weight": 13,
            "effectiveWeight": 16.25,
            "score": 54,
            "points": 8.78,
            "reason": "Read as a local image model an agent calls through the CLI or Python. Images are written to files with a contact sheet, so nothing large returns into context. Batch prompts through `--txt-file` (15 of 25). Output size through `--height` and `--width`, an output folder, `--max-side` for depth and a tile budget for restoration with `--no-budget` to lift it (12 of 20). No documented error responses. A Turbo checkpoint with incompatible flags exits with a message naming the flags to drop (6 of 20). A fixed `--seed` reproduces an image and there are no side effects beyond files, but files are named after the prompt and overwritten on repeat (14 of 20). Sensible defaults and two required inputs (`--checkpoint` and a prompt). No SDK beyond the Python package, which isn't on PyPI, and about 12 GB of weights before a first image (7 of 15)."
          },
          {
            "key": "security",
            "name": "Security \u0026 auth",
            "weight": 14,
            "effectiveWeight": 17.5,
            "score": 44,
            "points": 7.7,
            "reason": "Read as software the owner runs. No account, key or token is needed to get or run the weights, and the software opens no network service (14 of 30). No write actions beyond image files in the output folder (15 of 20). The output is an image, not text an agent reads as instructions. The card warns of inaccurate, biased or unsafe output, and neither the code nor the demo has a content filter (8 of 15). No call log. Output files are named after the prompt (3 of 15). No SECURITY.md, security.txt, bug bounty or advisories. Released checkpoints are safetensors. Training `.pth` files, which the CLI also accepts, are read with `torch.load(weights_only=False)`. Dion is pinned to a commit (4 of 20)."
          },
          {
            "key": "payments",
            "name": "Payments \u0026 pricing",
            "weight": 10,
            "effectiveWeight": 12.5,
            "score": 60,
            "points": 7.5,
            "reason": "Free Apache-2.0 software with nothing to buy, so 20 + 20 + 20 for pricing, free use and no sign-up. No payment protocol (0). There is no hosted API. Hardware is the owner's cost."
          },
          {
            "key": "tasks",
            "name": "Task success",
            "weight": 10,
            "effectiveWeight": 0,
            "pending": true,
            "points": 0,
            "reason": "Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored."
          },
          {
            "key": "maintenance",
            "name": "Maintenance \u0026 community",
            "weight": 7,
            "effectiveWeight": 8.75,
            "score": 70,
            "points": 6.13,
            "reason": "Read for an open-weight model ten days old. Turbo weights on 12 October and a demo fix on 15 October 2026 (30). Three dated weight releases, base on 5 October, depth and restoration on 8 October and Turbo on 12 October (20). The project lead answered and closed issue 1 within a day, and two outside pull requests merged within two days. Issue 3 and the three Hugging Face discussions we read had no reply from Speridlabs (14 of 25). No SDK and no PyPI package. Community ComfyUI packs and quantised conversions exist but are not the vendor's (2 of 15). Dependencies are current (PyTorch 2.7.1, transformers 4.57), but there's no CI and `wandb` is a required dependency for inference (4 of 10)."
          },
          {
            "key": "transparency",
            "name": "Transparency \u0026 trust",
            "weight": 7,
            "effectiveWeight": 8.75,
            "score": 47,
            "points": 4.11,
            "note": "editorial 50, provenance 44",
            "reason": "Apache-2.0 for code and weights, with a NOTICE file, a third-party licence table and the full training and distillation recipe. The training images and the Turbo prompt sets are not released or named in the README or card (25 of 30). Self-hosted, so inputs stay on the owner's hardware, but we found no statement saying so and speridlabs.com has no privacy policy (15 of 30). No deprecation policy, version tags or pinned revisions (2 of 20). No telemetry calls found in the inference code. Training defaults to `report_to: wandb`, which sends run config and validation images to Weights \u0026 Biases, can be set to `none`, and is not mentioned in the README (8 of 20)."
          }
        ],
        "assessment": {
          "date": "2026-10-15",
          "basis": "public evidence",
          "confidence": "medium",
          "notes": {
            "ergonomics": "Read as a local image model an agent calls through the CLI or Python. Images are written to files with a contact sheet, so nothing large returns into context. Batch prompts through `--txt-file` (15 of 25). Output size through `--height` and `--width`, an output folder, `--max-side` for depth and a tile budget for restoration with `--no-budget` to lift it (12 of 20). No documented error responses. A Turbo checkpoint with incompatible flags exits with a message naming the flags to drop (6 of 20). A fixed `--seed` reproduces an image and there are no side effects beyond files, but files are named after the prompt and overwritten on repeat (14 of 20). Sensible defaults and two required inputs (`--checkpoint` and a prompt). No SDK beyond the Python package, which isn't on PyPI, and about 12 GB of weights before a first image (7 of 15).",
            "maintenance": "Read for an open-weight model ten days old. Turbo weights on 12 October and a demo fix on 15 October 2026 (30). Three dated weight releases, base on 5 October, depth and restoration on 8 October and Turbo on 12 October (20). The project lead answered and closed issue 1 within a day, and two outside pull requests merged within two days. Issue 3 and the three Hugging Face discussions we read had no reply from Speridlabs (14 of 25). No SDK and no PyPI package. Community ComfyUI packs and quantised conversions exist but are not the vendor's (2 of 15). Dependencies are current (PyTorch 2.7.1, transformers 4.57), but there's no CI and `wandb` is a required dependency for inference (4 of 10).",
            "payments": "Free Apache-2.0 software with nothing to buy, so 20 + 20 + 20 for pricing, free use and no sign-up. No payment protocol (0). There is no hosted API. Hardware is the owner's cost.",
            "reliability": "Read as local software, since Iris-3B is a model the owner runs. No package on PyPI. Install is a git clone and `pip install -e .`, with Python 3.11 or newer, PyTorch 2.7.1 or newer and an NVIDIA GPU with CUDA stated (12 of 20). The repository has 23 pytest files covering the model, flow, checkpoints and parallel training, but no CI workflow, so nothing shows them passing on main (5 of 25). Three GitHub issues in ten days, none a crash, two closed and one open announcing a community ComfyUI port. Six Hugging Face discussions, none a bug report (20 of 25). No tags, releases or changelog. Package version 0.1.0, and new checkpoints are added in folders of one Hub repository with no version pins (3 of 15). Released as a final checkpoint with no beta label, but the package is 0.1.0 and the project ten days old (5 of 15).",
            "schema": "Read for a model the owner runs through a CLI and a Python package. No server, OpenAPI or other machine-readable contract. The CLI uses argparse with typed flags and help text, and the Python functions carry type hints. The demo Spaces' Gradio API lists typed endpoints, but Speridlabs doesn't document it (8 of 25). No llms.txt. The README and model card are Markdown in each repository (5 of 10). The card and README state limits (unreliable rendered text and object counts, about one megapixel, depth relative not metric, Turbo's fixed schedule and lower seed variety) but not intended or out-of-scope uses (14 of 20). Flags are typed, with the size presets as an enum only in the Spaces. Height and width take any integer, though Turbo was distilled at seven sizes (9 of 15). Commands for every model and a tips table, but no documented errors (7 of 15). No versioning or changelog beyond dated commits (4 of 15).",
            "security": "Read as software the owner runs. No account, key or token is needed to get or run the weights, and the software opens no network service (14 of 30). No write actions beyond image files in the output folder (15 of 20). The output is an image, not text an agent reads as instructions. The card warns of inaccurate, biased or unsafe output, and neither the code nor the demo has a content filter (8 of 15). No call log. Output files are named after the prompt (3 of 15). No SECURITY.md, security.txt, bug bounty or advisories. Released checkpoints are safetensors. Training `.pth` files, which the CLI also accepts, are read with `torch.load(weights_only=False)`. Dion is pinned to a commit (4 of 20).",
            "transparency": "Apache-2.0 for code and weights, with a NOTICE file, a third-party licence table and the full training and distillation recipe. The training images and the Turbo prompt sets are not released or named in the README or card (25 of 30). Self-hosted, so inputs stay on the owner's hardware, but we found no statement saying so and speridlabs.com has no privacy policy (15 of 30). No deprecation policy, version tags or pinned revisions (2 of 20). No telemetry calls found in the inference code. Training defaults to `report_to: wandb`, which sends run config and validation images to Weights \u0026 Biases, can be set to `none`, and is not mentioned in the README (8 of 20)."
          },
          "sources": [
            {
              "what": "model card",
              "url": "https://huggingface.co/speridlabs/iris-3b",
              "seen": "2026-10-15"
            },
            {
              "what": "model repository commit history",
              "url": "https://huggingface.co/api/models/speridlabs/iris-3b/commits/main",
              "seen": "2026-10-15"
            },
            {
              "what": "code repository, README, LICENSE, NOTICE and source",
              "url": "https://github.com/speridlabs/iris-3b",
              "seen": "2026-10-15"
            },
            {
              "what": "GitHub issues",
              "url": "https://github.com/speridlabs/iris-3b/issues?q=is%3Aissue",
              "seen": "2026-10-15"
            },
            {
              "what": "GitHub pull requests",
              "url": "https://github.com/speridlabs/iris-3b/pulls?q=is%3Apr",
              "seen": "2026-10-15"
            },
            {
              "what": "Hugging Face discussions",
              "url": "https://huggingface.co/speridlabs/iris-3b/discussions",
              "seen": "2026-10-15"
            },
            {
              "what": "project page",
              "url": "https://speridlabs.com/research/iris",
              "seen": "2026-10-15"
            },
            {
              "what": "arXiv paper 2610.09450, submitted 7 October 2026",
              "url": "https://arxiv.org/abs/2610.09450",
              "seen": "2026-10-15"
            },
            {
              "what": "demo Space Gradio API schema",
              "url": "https://speridlabs-iris-3b.hf.space/gradio_api/info",
              "seen": "2026-10-15"
            },
            {
              "what": "Turbo demo Space Gradio API schema",
              "url": "https://speridlabs-iris-3b-turbo.hf.space/gradio_api/info",
              "seen": "2026-10-15"
            },
            {
              "what": "Speridlabs home page and robots.txt",
              "url": "https://speridlabs.com/",
              "seen": "2026-10-15"
            },
            {
              "what": "RDAP for speridlabs.com",
              "url": "https://rdap.verisign.com/com/v1/domain/speridlabs.com",
              "seen": "2026-10-15"
            }
          ],
          "openQuestions": [
            "unchecked: memory needed for text-to-image alone. The demo README gives 45 GB for all three models and 20 GB peak with offloading.",
            "unchecked: whether Speridlabs replied to Hugging Face discussions 2, 3 and 5. We read 1, 4 and 6.",
            "unchecked: today's star and fork counts beyond the GitHub API listing read early on 15 October, because the API then rate-limited us.",
            "The training data is not named in the README or the model card. We didn't read the paper's data section in full.",
            "Whether the Gradio demo Spaces count as an interface for agents. They expose a typed Gradio API on Hugging Face ZeroGPU, but Speridlabs doesn't document it as one."
          ]
        },
        "negative": 0,
        "verdict": "Code and weights are Apache-2.0, and one Python package runs text-to-image, a 4-step Turbo, depth and 4x restoration from a documented CLI. It is ten days old, with no PyPI package, version tags, changelog or CI, needs an NVIDIA GPU and about 12 GB of weights, and has no server or API of its own.",
        "bestFor": "An agent on a machine with a CUDA GPU that needs Apache-2.0 image generation, relative depth or 4x restoration without a vendor account.",
        "strengths": [
          "Code, training recipe and all four checkpoints are under Apache-2.0, with a NOTICE file and a table of third-party licences",
          "One CLI, `scripts/sample.py`, with typed flags and documented defaults (1024x1024, 100 steps, CFG 3), plus Python classes for depth and restoration",
          "Turbo samples a 1024x1024 image in 4 steps, which the vendor times at about 0.7 s on one H100 at batch 4",
          "Released weights are safetensors, and a published benchmark table covers GenEval, DPG-Bench, LongText-Bench and OneIG-Bench",
          "Three dated weight releases in eight days (5, 8 and 12 October 2026), and two outside pull requests merged within two days"
        ],
        "weaknesses": [
          "No package on PyPI, no version tags, no changelog and no CI workflow. Install is a git clone and `pip install -e .`",
          "Needs an NVIDIA GPU with CUDA. All three models together take about 45 GB of GPU memory, or about 20 GB peak with offloading",
          "No HTTP server, OpenAPI or MCP interface. The only hosted route is the Gradio demo Spaces on Hugging Face ZeroGPU",
          "No safety filter in the code, no SECURITY.md or security.txt, and no privacy or terms pages on speridlabs.com",
          "Training defaults to reporting runs to Weights \u0026 Biases (`report_to: wandb`), which the README doesn't mention"
        ],
        "agentNotes": [
          "Check for an NVIDIA GPU with CUDA and Python 3.11 or newer before downloading. The base weights are about 12 GB, and Qwen3-VL-4B downloads on the first run",
          "Exclude `depth/*`, `upscaler/*` and `turbo/*` in `hf download` unless those models are needed. Each of the first two adds about 12 GB",
          "Don't pass `--steps`, `--cfg-scale`, `--negative-prompt`, `--order` or `--shift` with a Turbo checkpoint. The script exits with an error",
          "Pass `--seed` to reproduce an image, and set `--outdir`, since files are named after the prompt and a repeat run overwrites them",
          "Load only exported directories (`model.safetensors` and `config.yaml`). A training `.pth` is read with `torch.load(weights_only=False)`, so never load one from an untrusted source"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 50.9
          }
        ],
        "editorialScores": {
          "ergonomics": 54,
          "maintenance": 70,
          "payments": 60,
          "reliability": 45,
          "schema": 47,
          "security": 44,
          "transparency": 50
        },
        "provenanceScore": 44
      },
      "connect": {
        "install": "git clone https://github.com/speridlabs/iris-3b.git \u0026\u0026 cd iris-3b \u0026\u0026 pip install -e .\nhf download speridlabs/iris-3b --local-dir iris-3b --exclude \"depth/*\" \"upscaler/*\" \"turbo/*\"\npython scripts/sample.py --checkpoint iris-3b --prompt \"a red fox sleeping in fresh snow, golden hour\""
      },
      "letme": {
        "capability": "https://letme.dev/image.generate",
        "tool": "https://letme.dev/iris-3b"
      },
      "notable": [
        "Weights first published on 5 October 2026 (commit \"Iris-3B 665K SFT release\"), the same day as the GitHub repository's initial commit (https://huggingface.co/api/models/speridlabs/iris-3b/commits/main)",
        "Depth and 4x restoration checkpoints added on 8 October and the 4-step Turbo on 12 October 2026, in folders of the same Hugging Face repository (https://huggingface.co/speridlabs/iris-3b)",
        "Code and weights under Apache-2.0, with Qwen3-VL-4B-Instruct, DINOv2 and Dion listed under their own licences (https://github.com/speridlabs/iris-3b/blob/main/NOTICE)",
        "The paper reports that the pixel-space advantage it tested for on detail-heavy tasks did not show up, with single runs and no significance test (https://arxiv.org/abs/2610.09450)",
        "The model card says an NVIDIA GPU with CUDA is needed, and that Iris-3B can produce inaccurate, biased or unsafe content (https://huggingface.co/speridlabs/iris-3b)",
        "Not on PyPI. Install is `pip install -e .` from a clone, for Python 3.11 or newer and PyTorch 2.7.1 or newer (https://github.com/speridlabs/iris-3b)"
      ],
      "area": "content",
      "details": [
        {
          "label": "Surface graded",
          "value": "The `iris-3b` Python package and its CLI scripts (`sample.py`, `depth.py`, `upscale.py`) run on the owner's GPU, read from the repository, the model card and the paper on 15 October 2026. Nothing was installed or run"
        },
        {
          "label": "Checkpoints",
          "value": "Base text-to-image (fp32, about 12 GB), `turbo/` 4-step distilled (bf16, about 6 GB), `depth/` relative monocular depth and `upscaler/` 4x restoration (about 12 GB each), all in speridlabs/iris-3b on Hugging Face"
        },
        {
          "label": "Model",
          "value": "3B-parameter diffusion transformer in pixel space, patch size 16, with a frozen Qwen3-VL-4B-Instruct text encoder. Rectified flow, trained from scratch for 665K steps"
        },
        {
          "label": "Output",
          "value": "About one megapixel. CLI default 1024x1024. Turbo was distilled at seven aspect buckets (1024x1024, 752x1344, 896x1344, 896x1200 and their transposes)"
        },
        {
          "label": "Hardware",
          "value": "NVIDIA GPU with CUDA per the model card. The demo README gives about 45 GB of GPU memory for all three models, or about 20 GB peak with `IRIS_OFFLOAD=1`. Memory for text-to-image alone was not stated"
        },
        {
          "label": "Interfaces",
          "value": "CLI scripts and Python (`iris3b.sampling.generate`, `generate_few_step`, `iris3b.downstream.depth.DepthPredictor`, `iris3b.downstream.restoration.Restorer`). No HTTP server, OpenAPI or MCP. Not in diffusers or ComfyUI officially; community ComfyUI packs and GGUF and INT8 conversions exist"
        },
        {
          "label": "Hosted demos",
          "value": "Gradio Spaces speridlabs/iris-3b (generate, depth, upscale) and speridlabs/iris-3b-turbo on Hugging Face ZeroGPU. Their Gradio API lists typed endpoints (`/run`, `/run_depth`, `/run_upscale`). Speridlabs doesn't document them as an API"
        },
        {
          "label": "Image editing",
          "value": "Not supported. The project lead wrote on 11 October 2026 that editing is not on the roadmap for this base model (GitHub issue 1)"
        },
        {
          "label": "Benchmarks (vendor)",
          "value": "Iris-3B GenEval 0.798, DPG-Bench 86.52, LongText-Bench EN 0.857, OneIG-Bench EN 0.540. Turbo 0.820, 86.68, 0.804 and 0.516. Vendor-reported at 1024x1024"
        },
        {
          "label": "Releases",
          "value": "Base weights 5 October, depth and restoration 8 October, Turbo 12 October 2026. Paper on arXiv 7 October. Package version 0.1.0, no tags"
        },
        {
          "label": "Adoption",
          "value": "On 15 October 2026 the model repository showed 267 likes and 1,132 downloads in the last month, with 12 derived models, and the GitHub repository 175 stars"
        },
        {
          "label": "Age",
          "value": "Ten days old on 15 October 2026. The first commit and the first weights are dated 5 October 2026"
        }
      ],
      "provenance": {
        "legalEntity": "Speridlabs",
        "domain": "speridlabs.com",
        "domainRegistered": "2025-02-25",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-10-15",
        "notes": [
          "The NOTICE file reads Copyright 2026 Speridlabs. The site's schema.org data names the organisation Sperid Labs, founded 2024, with contact@speridlabs.com. No registered company name or address was found on speridlabs.com.",
          "RDAP at Verisign gives a registration date of 2025-02-25 for speridlabs.com.",
          "speridlabs.com has no terms or privacy page. /privacy, /terms, /legal and /privacy-policy returned 404 on 15 October 2026, and the sitemap lists none. The Apache-2.0 licence stands in for terms for the code and weights.",
          "speridlabs.com/.well-known/security.txt returned 404 on 15 October 2026. The repository has no SECURITY.md.",
          "No changelog, release notes or tags. Dated commits on GitHub and on the Hugging Face model repository are the only record of changes.",
          "Software the owner runs, so there is no vendor endpoint or status page. The demo Spaces run on Hugging Face infrastructure."
        ],
        "score": 44,
        "checks": [
          {
            "check": "Legal entity named",
            "value": "Speridlabs",
            "points": 20,
            "max": 20,
            "state": "ok"
          },
          {
            "check": "Domain age",
            "value": "speridlabs.com, registered 2025-02-25 (1 year)",
            "points": 3,
            "max": 15,
            "state": "part"
          },
          {
            "check": "Endpoint on the vendor's domain",
            "value": "no hosted endpoint",
            "points": 0,
            "max": 0,
            "state": "na"
          },
          {
            "check": "Terms of service",
            "value": "nothing hosted, so the Apache-2.0 (code and weights) licence stands in",
            "points": 10,
            "max": 10,
            "state": "ok"
          },
          {
            "check": "Privacy policy",
            "value": "nothing hosted, not scored",
            "points": 0,
            "max": 0,
            "state": "na"
          },
          {
            "check": "Status page",
            "value": "not found",
            "points": 0,
            "max": 10,
            "state": "no"
          },
          {
            "check": "Changelog",
            "value": "not found",
            "points": 0,
            "max": 10,
            "state": "no"
          },
          {
            "check": "security.txt",
            "value": "not found",
            "points": 0,
            "max": 10,
            "state": "no"
          }
        ]
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/iris-3b.json"
    },
    "verify": {
      "accepts": "a page on speridlabs.com or one of its subdomains, or the README of github.com/speridlabs/iris-3b",
      "badgeUrl": "https://www.anchorterminal.com/badges/iris-3b.svg",
      "body": {
        "slug": "iris-3b",
        "url": "the page with the badge or the link"
      },
      "docs": "https://www.anchorterminal.com/builders/#verify",
      "effect": "none, it never changes a grade, rank or review",
      "endpoint": "https://www.anchorterminal.com/api/v1/verify",
      "listingUrl": "https://www.anchorterminal.com/tools/iris-3b",
      "mcpTool": "verify_listing",
      "recheck": "weekly; two failed checks in a row and it lapses, a later pass restores it",
      "snippets": {
        "html": "\u003ca href=\"https://www.anchorterminal.com/tools/iris-3b\"\u003e\u003cimg src=\"https://www.anchorterminal.com/badges/iris-3b.svg\" alt=\"Iris-3B on Anchor Terminal\" height=\"20\"\u003e\u003c/a\u003e",
        "markdown": "[![Iris-3B on Anchor Terminal](https://www.anchorterminal.com/badges/iris-3b.svg)](https://www.anchorterminal.com/tools/iris-3b)",
        "link": "\u003ca href=\"https://www.anchorterminal.com/tools/iris-3b\"\u003eIris-3B on Anchor Terminal\u003c/a\u003e"
      }
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/tools/iris-3b",
    "json": "https://www.anchorterminal.com/tools/iris-3b.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/tools/iris-3b.md",
    "slim": "https://www.anchorterminal.com/tools/iris-3b.min.md"
  },
  "markdown": "## Overview\n\n**Grade D · 50.9/100 · rank #826 of 1094 · #8 in Image generation · not agent-ready · confidence medium**\n\n\n## Assessment\n\nCode and weights are Apache-2.0, and one Python package runs text-to-image, a 4-step Turbo, depth and 4x restoration from a documented CLI. It is ten days old, with no PyPI package, version tags, changelog or CI, needs an NVIDIA GPU and about 12 GB of weights, and has no server or API of its own.\n\n## Facts\n\n| Field | Value |\n| --- | --- |\n| Vendor | Speridlabs (https://speridlabs.com) |\n| Kind | Model API |\n| Category | Image generation (https://www.anchorterminal.com/categories/image-generation) |\n| Auth | None · No account or key. Weights download from a public, ungated Hugging Face repository, and the frozen Qwen3-VL-4B-Instruct text encoder downloads from its publisher on the first run. The software opens no network service. |\n| Pricing | Free (Free · OSS) · Free under Apache-2.0 with nothing to buy. Speridlabs has no hosted API or paid plan. The owner pays for an NVIDIA GPU. The demo Spaces run on Hugging Face ZeroGPU. |\n| x402 | No · No x402, MPP or L402 in the repository, the model card or the project page (checked 2026-10-15). There is no paid tier or hosted endpoint. |\n| Licence | Apache-2.0 (code and weights) |\n| Source | https://github.com/speridlabs/iris-3b |\n| Docs | https://huggingface.co/speridlabs/iris-3b |\n| llms.txt | not found |\n| Last release | 2026-10-12 |\n| GitHub stars | 175 (as of 2026-10-15) |\n| Surface graded | The `iris-3b` Python package and its CLI scripts (`sample.py`, `depth.py`, `upscale.py`) run on the owner's GPU, read from the repository, the model card and the paper on 15 October 2026. Nothing was installed or run |\n| Checkpoints | Base text-to-image (fp32, about 12 GB), `turbo/` 4-step distilled (bf16, about 6 GB), `depth/` relative monocular depth and `upscaler/` 4x restoration (about 12 GB each), all in speridlabs/iris-3b on Hugging Face |\n| Model | 3B-parameter diffusion transformer in pixel space, patch size 16, with a frozen Qwen3-VL-4B-Instruct text encoder. Rectified flow, trained from scratch for 665K steps |\n| Output | About one megapixel. CLI default 1024x1024. Turbo was distilled at seven aspect buckets (1024x1024, 752x1344, 896x1344, 896x1200 and their transposes) |\n| Hardware | NVIDIA GPU with CUDA per the model card. The demo README gives about 45 GB of GPU memory for all three models, or about 20 GB peak with `IRIS_OFFLOAD=1`. Memory for text-to-image alone was not stated |\n| Interfaces | CLI scripts and Python (`iris3b.sampling.generate`, `generate_few_step`, `iris3b.downstream.depth.DepthPredictor`, `iris3b.downstream.restoration.Restorer`). No HTTP server, OpenAPI or MCP. Not in diffusers or ComfyUI officially; community ComfyUI packs and GGUF and INT8 conversions exist |\n| Hosted demos | Gradio Spaces speridlabs/iris-3b (generate, depth, upscale) and speridlabs/iris-3b-turbo on Hugging Face ZeroGPU. Their Gradio API lists typed endpoints (`/run`, `/run_depth`, `/run_upscale`). Speridlabs doesn't document them as an API |\n| Image editing | Not supported. The project lead wrote on 11 October 2026 that editing is not on the roadmap for this base model (GitHub issue 1) |\n| Benchmarks (vendor) | Iris-3B GenEval 0.798, DPG-Bench 86.52, LongText-Bench EN 0.857, OneIG-Bench EN 0.540. Turbo 0.820, 86.68, 0.804 and 0.516. Vendor-reported at 1024x1024 |\n| Releases | Base weights 5 October, depth and restoration 8 October, Turbo 12 October 2026. Paper on arXiv 7 October. Package version 0.1.0, no tags |\n| Adoption | On 15 October 2026 the model repository showed 267 likes and 1,132 downloads in the last month, with 12 derived models, and the GitHub repository 175 stars |\n| Age | Ten days old on 15 October 2026. The first commit and the first weights are dated 5 October 2026 |\n| Capabilities | image.generate, image.upscale |\n| Tags | model, open-source, open-weights, self-hosted, local, free, no-card, apache-2.0, python, gpu, new |\n| JSON | https://www.anchorterminal.com/api/v1/tools/iris-3b.json |\n\n## Score breakdown (methodology v0.4, October 2026 research run)\n\nAssessed 2026-10-15 from public evidence against the published checklist (https://www.anchorterminal.com/benchmark/#checklist). Confidence: medium. Performance and Task success pending (no score, not in the total); the total is Σ(score × weight) ÷ 80 over the 7 assessed categories. \"This run\" is each category's share of the 100 points.\n\n| Category | Weight | This run | Score (0–100) | Points |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% | 20 | 45 | 9.0 |\n| Performance | 10% | pending | pending | n/a |\n| Schema \u0026 documentation | 13% | 16.2 | 47 | 7.6 |\n| Agent ergonomics | 13% | 16.2 | 54 | 8.8 |\n| Security \u0026 auth | 14% | 17.5 | 44 | 7.7 |\n| Payments \u0026 pricing | 10% | 12.5 | 60 | 7.5 |\n| Task success | 10% | pending | pending | n/a |\n| Maintenance \u0026 community | 7% | 8.8 | 70 | 6.1 |\n| Transparency \u0026 trust (editorial 50, provenance 44) | 7% | 8.8 | 47 | 4.1 |\n| Negative events | up to −15 | up to −15 | none recorded | 0 |\n| **Total** | | | | **50.9 → D** |\n\n### Why each score\n\n- Reliability 45: Read as local software, since Iris-3B is a model the owner runs. No package on PyPI. Install is a git clone and `pip install -e .`, with Python 3.11 or newer, PyTorch 2.7.1 or newer and an NVIDIA GPU with CUDA stated (12 of 20). The repository has 23 pytest files covering the model, flow, checkpoints and parallel training, but no CI workflow, so nothing shows them passing on main (5 of 25). Three GitHub issues in ten days, none a crash, two closed and one open announcing a community ComfyUI port. Six Hugging Face discussions, none a bug report (20 of 25). No tags, releases or changelog. Package version 0.1.0, and new checkpoints are added in folders of one Hub repository with no version pins (3 of 15). Released as a final checkpoint with no beta label, but the package is 0.1.0 and the project ten days old (5 of 15).\n- Performance: Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes.\n- Schema \u0026 documentation 47: Read for a model the owner runs through a CLI and a Python package. No server, OpenAPI or other machine-readable contract. The CLI uses argparse with typed flags and help text, and the Python functions carry type hints. The demo Spaces' Gradio API lists typed endpoints, but Speridlabs doesn't document it (8 of 25). No llms.txt. The README and model card are Markdown in each repository (5 of 10). The card and README state limits (unreliable rendered text and object counts, about one megapixel, depth relative not metric, Turbo's fixed schedule and lower seed variety) but not intended or out-of-scope uses (14 of 20). Flags are typed, with the size presets as an enum only in the Spaces. Height and width take any integer, though Turbo was distilled at seven sizes (9 of 15). Commands for every model and a tips table, but no documented errors (7 of 15). No versioning or changelog beyond dated commits (4 of 15).\n- Agent ergonomics 54: Read as a local image model an agent calls through the CLI or Python. Images are written to files with a contact sheet, so nothing large returns into context. Batch prompts through `--txt-file` (15 of 25). Output size through `--height` and `--width`, an output folder, `--max-side` for depth and a tile budget for restoration with `--no-budget` to lift it (12 of 20). No documented error responses. A Turbo checkpoint with incompatible flags exits with a message naming the flags to drop (6 of 20). A fixed `--seed` reproduces an image and there are no side effects beyond files, but files are named after the prompt and overwritten on repeat (14 of 20). Sensible defaults and two required inputs (`--checkpoint` and a prompt). No SDK beyond the Python package, which isn't on PyPI, and about 12 GB of weights before a first image (7 of 15).\n- Security \u0026 auth 44: Read as software the owner runs. No account, key or token is needed to get or run the weights, and the software opens no network service (14 of 30). No write actions beyond image files in the output folder (15 of 20). The output is an image, not text an agent reads as instructions. The card warns of inaccurate, biased or unsafe output, and neither the code nor the demo has a content filter (8 of 15). No call log. Output files are named after the prompt (3 of 15). No SECURITY.md, security.txt, bug bounty or advisories. Released checkpoints are safetensors. Training `.pth` files, which the CLI also accepts, are read with `torch.load(weights_only=False)`. Dion is pinned to a commit (4 of 20).\n- Payments \u0026 pricing 60: Free Apache-2.0 software with nothing to buy, so 20 + 20 + 20 for pricing, free use and no sign-up. No payment protocol (0). There is no hosted API. Hardware is the owner's cost.\n- Task success: Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored.\n- Maintenance \u0026 community 70: Read for an open-weight model ten days old. Turbo weights on 12 October and a demo fix on 15 October 2026 (30). Three dated weight releases, base on 5 October, depth and restoration on 8 October and Turbo on 12 October (20). The project lead answered and closed issue 1 within a day, and two outside pull requests merged within two days. Issue 3 and the three Hugging Face discussions we read had no reply from Speridlabs (14 of 25). No SDK and no PyPI package. Community ComfyUI packs and quantised conversions exist but are not the vendor's (2 of 15). Dependencies are current (PyTorch 2.7.1, transformers 4.57), but there's no CI and `wandb` is a required dependency for inference (4 of 10).\n- Transparency \u0026 trust 47: Apache-2.0 for code and weights, with a NOTICE file, a third-party licence table and the full training and distillation recipe. The training images and the Turbo prompt sets are not released or named in the README or card (25 of 30). Self-hosted, so inputs stay on the owner's hardware, but we found no statement saying so and speridlabs.com has no privacy policy (15 of 30). No deprecation policy, version tags or pinned revisions (2 of 20). No telemetry calls found in the inference code. Training defaults to `report_to: wandb`, which sends run config and validation images to Weights \u0026 Biases, can be set to `none`, and is not mentioned in the README (8 of 20).\n\nFix list for a coding agent, everything this grade says the listing lacks, the biggest gain first (16 items): https://www.anchorterminal.com/fixes/iris-3b.md (JSON https://www.anchorterminal.com/fixes/iris-3b.json)\n\n### What we couldn't check\n\n- unchecked: memory needed for text-to-image alone. The demo README gives 45 GB for all three models and 20 GB peak with offloading.\n- unchecked: whether Speridlabs replied to Hugging Face discussions 2, 3 and 5. We read 1, 4 and 6.\n- unchecked: today's star and fork counts beyond the GitHub API listing read early on 15 October, because the API then rate-limited us.\n- The training data is not named in the README or the model card. We didn't read the paper's data section in full.\n- Whether the Gradio demo Spaces count as an interface for agents. They expose a typed Gradio API on Hugging Face ZeroGPU, but Speridlabs doesn't document it as one.\n\n### Sources\n\n- model card: \u003chttps://huggingface.co/speridlabs/iris-3b\u003e (seen 2026-10-15)\n- model repository commit history: \u003chttps://huggingface.co/api/models/speridlabs/iris-3b/commits/main\u003e (seen 2026-10-15)\n- code repository, README, LICENSE, NOTICE and source: \u003chttps://github.com/speridlabs/iris-3b\u003e (seen 2026-10-15)\n- GitHub issues: \u003chttps://github.com/speridlabs/iris-3b/issues?q=is%3Aissue\u003e (seen 2026-10-15)\n- GitHub pull requests: \u003chttps://github.com/speridlabs/iris-3b/pulls?q=is%3Apr\u003e (seen 2026-10-15)\n- Hugging Face discussions: \u003chttps://huggingface.co/speridlabs/iris-3b/discussions\u003e (seen 2026-10-15)\n- project page: \u003chttps://speridlabs.com/research/iris\u003e (seen 2026-10-15)\n- arXiv paper 2610.09450, submitted 7 October 2026: \u003chttps://arxiv.org/abs/2610.09450\u003e (seen 2026-10-15)\n- demo Space Gradio API schema: \u003chttps://speridlabs-iris-3b.hf.space/gradio_api/info\u003e (seen 2026-10-15)\n- Turbo demo Space Gradio API schema: \u003chttps://speridlabs-iris-3b-turbo.hf.space/gradio_api/info\u003e (seen 2026-10-15)\n- Speridlabs home page and robots.txt: \u003chttps://speridlabs.com/\u003e (seen 2026-10-15)\n- RDAP for speridlabs.com: \u003chttps://rdap.verisign.com/com/v1/domain/speridlabs.com\u003e (seen 2026-10-15)\n\n## Who's behind it (provenance 44/100, checked 2026-10-15)\n\n| Check | Finding | Points |\n| --- | --- | --- |\n| Legal entity named | Speridlabs | 20/20 |\n| Domain age | speridlabs.com, registered 2025-02-25 (1 year) | 3/15 |\n| Endpoint on the vendor's domain | no hosted endpoint | n/a |\n| Terms of service | nothing hosted, so the Apache-2.0 (code and weights) licence stands in | 10/10 |\n| Privacy policy | nothing hosted, not scored | n/a |\n| Status page | not found | 0/10 |\n| Changelog | not found | 0/10 |\n| security.txt | not found | 0/10 |\n\nThe NOTICE file reads Copyright 2026 Speridlabs. The site's schema.org data names the organisation Sperid Labs, founded 2024, with contact@speridlabs.com. No registered company name or address was found on speridlabs.com.\n\nRDAP at Verisign gives a registration date of 2025-02-25 for speridlabs.com.\n\nsperidlabs.com has no terms or privacy page. /privacy, /terms, /legal and /privacy-policy returned 404 on 15 October 2026, and the sitemap lists none. The Apache-2.0 licence stands in for terms for the code and weights.\n\nsperidlabs.com/.well-known/security.txt returned 404 on 15 October 2026. The repository has no SECURITY.md.\n\nNo changelog, release notes or tags. Dated commits on GitHub and on the Hugging Face model repository are the only record of changes.\n\nSoftware the owner runs, so there is no vendor endpoint or status page. The demo Spaces run on Hugging Face infrastructure.\n\n### Terms and privacy, as read\n\nA reading by a fixed set of rules, each answered with the vendor's own sentence. Not legal advice.\n\n**Terms of service**. Nothing is hosted by the vendor, so there are no terms of service to read. The Apache-2.0 (code and weights) licence stands in and the check scores in full.\n\n\n**Privacy policy**. Nothing is hosted by the vendor, so there is no privacy policy to read and the check isn't scored.\n\n\n## Probe metrics\n\nNot measured yet. Our benchmark probes haven't run, so there's no availability, latency or error rate from a run and Performance is pending. Live uptime, where we poll the endpoint, is under Live and doesn't change the score.\n\n## Strengths\n\n- Code, training recipe and all four checkpoints are under Apache-2.0, with a NOTICE file and a table of third-party licences\n- One CLI, `scripts/sample.py`, with typed flags and documented defaults (1024x1024, 100 steps, CFG 3), plus Python classes for depth and restoration\n- Turbo samples a 1024x1024 image in 4 steps, which the vendor times at about 0.7 s on one H100 at batch 4\n- Released weights are safetensors, and a published benchmark table covers GenEval, DPG-Bench, LongText-Bench and OneIG-Bench\n- Three dated weight releases in eight days (5, 8 and 12 October 2026), and two outside pull requests merged within two days\n\n## Weaknesses\n\n- No package on PyPI, no version tags, no changelog and no CI workflow. Install is a git clone and `pip install -e .`\n- Needs an NVIDIA GPU with CUDA. All three models together take about 45 GB of GPU memory, or about 20 GB peak with offloading\n- No HTTP server, OpenAPI or MCP interface. The only hosted route is the Gradio demo Spaces on Hugging Face ZeroGPU\n- No safety filter in the code, no SECURITY.md or security.txt, and no privacy or terms pages on speridlabs.com\n- Training defaults to reporting runs to Weights \u0026 Biases (`report_to: wandb`), which the README doesn't mention\n\n\n\n## Before you call it (notes for agents)\n\n1. Check for an NVIDIA GPU with CUDA and Python 3.11 or newer before downloading. The base weights are about 12 GB, and Qwen3-VL-4B downloads on the first run\n2. Exclude `depth/*`, `upscaler/*` and `turbo/*` in `hf download` unless those models are needed. Each of the first two adds about 12 GB\n3. Don't pass `--steps`, `--cfg-scale`, `--negative-prompt`, `--order` or `--shift` with a Turbo checkpoint. The script exits with an error\n4. Pass `--seed` to reproduce an image, and set `--outdir`, since files are named after the prompt and a repeat run overwrites them\n5. Load only exported directories (`model.safetensors` and `config.yaml`). A training `.pth` is read with `torch.load(weights_only=False)`, so never load one from an untrusted source\n\n## Connect\n\nInstall:\n\n```bash\ngit clone https://github.com/speridlabs/iris-3b.git \u0026\u0026 cd iris-3b \u0026\u0026 pip install -e .\nhf download speridlabs/iris-3b --local-dir iris-3b --exclude \"depth/*\" \"upscaler/*\" \"turbo/*\"\npython scripts/sample.py --checkpoint iris-3b --prompt \"a red fox sleeping in fresh snow, golden hour\"\n```\n\n## Similar tools\n\nRanked by shared capabilities, then score. Same-category tools with no shared capability key are listed last.\n\n| Tool | Grade | Score | Rank | Shared capabilities | x402 | Markdown |\n| --- | --- | --- | --- | --- | --- | --- |\n| fal image models | B | 65.2 | 349 | image.generate, image.upscale | no | https://www.anchorterminal.com/tools/fal-image.md |\n| Bria API | B | 63.7 | 406 | image.generate, image.upscale | no | https://www.anchorterminal.com/tools/bria.md |\n| Photoroom API | C | 56 | 688 | image.generate, image.upscale | no | https://www.anchorterminal.com/tools/photoroom.md |\n| Melius | C | 54.1 | 745 | image.generate, image.upscale | no | https://www.anchorterminal.com/tools/melius.md |\n| Recraft API | D | 52.8 | 777 | image.generate, image.upscale | no | https://www.anchorterminal.com/tools/recraft.md |\n| Replicate image models | D | 50.2 | 840 | image.generate, image.upscale | no | https://www.anchorterminal.com/tools/replicate-image.md |\n\n## Panel reviews (0)\n\nReviewed by the Anchor panel (https://www.anchorterminal.com/reviewers/index.md): .\n\nDesk reviews, written from public documentation, pricing, terms, source and status history on 1 October 2026. No calls made. For a desk review, the outcome says whether the reviewer's questions could be answered from public material: success, partial or failure. How reviews work: https://www.anchorterminal.com/reviews/how-it-works.md\n\n## Notable\n\n- Weights first published on 5 October 2026 (commit \"Iris-3B 665K SFT release\"), the same day as the GitHub repository's initial commit (source: \u003chttps://huggingface.co/api/models/speridlabs/iris-3b/commits/main\u003e)\n- Depth and 4x restoration checkpoints added on 8 October and the 4-step Turbo on 12 October 2026, in folders of the same Hugging Face repository (source: \u003chttps://huggingface.co/speridlabs/iris-3b\u003e)\n- Code and weights under Apache-2.0, with Qwen3-VL-4B-Instruct, DINOv2 and Dion listed under their own licences (source: \u003chttps://github.com/speridlabs/iris-3b/blob/main/NOTICE\u003e)\n- The paper reports that the pixel-space advantage it tested for on detail-heavy tasks did not show up, with single runs and no significance test (source: \u003chttps://arxiv.org/abs/2610.09450\u003e)\n- The model card says an NVIDIA GPU with CUDA is needed, and that Iris-3B can produce inaccurate, biased or unsafe content (source: \u003chttps://huggingface.co/speridlabs/iris-3b\u003e)\n- Not on PyPI. Install is `pip install -e .` from a clone, for Python 3.11 or newer and PyTorch 2.7.1 or newer (source: \u003chttps://github.com/speridlabs/iris-3b\u003e)\n\n- #8 of 13 in Best image generation for AI agents: https://www.anchorterminal.com/best/image-generation/index.md\n- All 91 image comparisons: https://www.anchorterminal.com/compare/image-generation/index.md\n\n## Compare\n\n- [Adobe Firefly API vs Iris-3B](https://www.anchorterminal.com/compare/adobe-firefly-vs-iris-3b.md): D 49 vs D 50.9\n- [Black Forest Labs FLUX API vs Iris-3B](https://www.anchorterminal.com/compare/black-forest-labs-vs-iris-3b.md): B 63.9 vs D 50.9\n- [Bria API vs Iris-3B](https://www.anchorterminal.com/compare/bria-vs-iris-3b.md): B 63.7 vs D 50.9\n- [fal image models vs Iris-3B](https://www.anchorterminal.com/compare/fal-image-vs-iris-3b.md): B 65.2 vs D 50.9\n- [Google Imagen vs Iris-3B](https://www.anchorterminal.com/compare/google-imagen-vs-iris-3b.md): F 6.8 vs D 50.9\n- [Ideogram API vs Iris-3B](https://www.anchorterminal.com/compare/ideogram-vs-iris-3b.md): D 50 vs D 50.9\n- [Iris-3B vs Leonardo.Ai API](https://www.anchorterminal.com/compare/iris-3b-vs-leonardo-ai.md): D 50.9 vs F 37.5\n- [Iris-3B vs OpenAI Image API](https://www.anchorterminal.com/compare/iris-3b-vs-openai-image-api.md): D 50.9 vs BB 72.4\n- [Iris-3B vs Qwen-Image 2.1 (Model Studio)](https://www.anchorterminal.com/compare/iris-3b-vs-qwen-image-2-1.md): D 50.9 vs B 64.6\n- [Iris-3B vs Recraft API](https://www.anchorterminal.com/compare/iris-3b-vs-recraft.md): D 50.9 vs D 52.8\n- [Iris-3B vs Replicate image models](https://www.anchorterminal.com/compare/iris-3b-vs-replicate-image.md): D 50.9 vs D 50.2\n- [Iris-3B vs Seedream on BytePlus ModelArk](https://www.anchorterminal.com/compare/iris-3b-vs-seedream-on-byteplus-modelark.md): D 50.9 vs D 53.8\n- [Iris-3B vs Stability AI Image API](https://www.anchorterminal.com/compare/iris-3b-vs-stability-ai-image.md): D 50.9 vs E 42.3\n\n## Verify this listing\n\nFor the vendor. The badge or a plain link to this page verifies the listing, from a page on speridlabs.com or one of its subdomains, or the README of github.com/speridlabs/iris-3b. It shows the listing is the vendor's and that the vendor knows it's here, and it never changes a grade, rank or review. The vendor sends the page's address to `POST https://www.anchorterminal.com/api/v1/verify` as `{\"slug\": \"iris-3b\", \"url\": \"…\"}`, or calls the `verify_listing` tool at https://www.anchorterminal.com/mcp. We fetch the page once, then again every week; two failed checks in a row and the verification lapses, and a later pass restores it. What we check: https://www.anchorterminal.com/builders/index.md#verify\n\nHTML badge:\n\n```html\n\u003ca href=\"https://www.anchorterminal.com/tools/iris-3b\"\u003e\u003cimg src=\"https://www.anchorterminal.com/badges/iris-3b.svg\" alt=\"Iris-3B on Anchor Terminal\" height=\"20\"\u003e\u003c/a\u003e\n```\n\nMarkdown badge, for a README:\n\n```markdown\n[![Iris-3B on Anchor Terminal](https://www.anchorterminal.com/badges/iris-3b.svg)](https://www.anchorterminal.com/tools/iris-3b)\n```\n\nPlain link:\n\n```html\n\u003ca href=\"https://www.anchorterminal.com/tools/iris-3b\"\u003eIris-3B on Anchor Terminal\u003c/a\u003e\n```\n\n## Share this listing\n\nFor the vendor. Sharing assets for social media, two PNGs of 1200 × 630 that say Iris-3B is listed on Anchor Terminal, with the vendor's logo and this page's address and no grade or score.\n\n- Dark: https://www.anchorterminal.com/assets/share/iris-3b-dark.png\n- Light: https://www.anchorterminal.com/assets/share/iris-3b-light.png\n- Create a video and download its frames: https://www.anchorterminal.com/assets/listing-video/index.html?listing=iris-3b\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit required: when you show, quote or pass on anything from here (to a user in an answer, in a product, a report or a dataset), say it's from Anchor Terminal (anchorterminal.com) and link the page or API address you took it from. Reviews also credit their author.",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-15",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Terminal",
        "url": "https://www.anchorterminal.com/tools/"
      },
      {
        "name": "Image generation",
        "url": "https://www.anchorterminal.com/categories/image-generation"
      },
      {
        "name": "Iris-3B",
        "url": ""
      }
    ],
    "description": "Iris-3B is an Apache-2.0 open-weight text-to-image model from Speridlabs that generates pixels directly, with no VAE. The release adds a 4-step Turbo version and fine-tunes for monocular depth and 4x image restoration.",
    "facts": [
      "rank #826 of 1094",
      "None auth",
      "0 desk reviews"
    ],
    "h1": "Iris-3B",
    "image": "https://www.anchorterminal.com/assets/og/tools-iris-3b.png",
    "path": "/tools/iris-3b",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Iris-3B review (2026): pricing, alternatives and grade D",
    "toc": null,
    "updated": "2026-10-15",
    "url": "https://www.anchorterminal.com/tools/iris-3b"
  },
  "tokens": {
    "markdown": 6000,
    "slim": 1680
  },
  "version": 1
}
