Skip to content
Back to skills

Inference Evaluation

ASecurity

"Run and troubleshoot DeepDanbooru image-tag inference through the

  • 247 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 8, 2026
toolspythonapi

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 9 files and shows the line behind each finding

Scanned September 8, 2026

npx -y skills add VectorSpaceLab/AREX-Skill --skill inference-evaluation --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Inference Evaluation?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Inference Evaluation
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-inference-evaluation/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-inference-evaluation)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: inference-evaluation
description: "Run and troubleshoot DeepDanbooru image-tag inference through the
  project or explicit model/tag APIs, including preprocessing, folder traversal,
  thresholds, and text outputs."
disable-model-invocation: true
metadata:
  disco-role: operating
license: MIT
---

# Inference and evaluation

Use this sub-skill when a trained DeepDanbooru model must turn one or more
images into tags. It covers the `evaluate` and `evaluate-project` CLI commands,
the corresponding Python functions, image preprocessing, recursive folder
selection, thresholds, and optional `.txt` sidecars.

This is an inference skill, not a training or dataset-preparation procedure.
For a missing or malformed project, tag file, or dataset, use
[project-data-setup](../project-data-setup/SKILL.md) first. For model conversion
or experimental Grad-CAM output, use
[post-training-tools](../post-training-tools/SKILL.md). The bundled smoke
scripts are tiny local checks; they do not download weights, contact a network,
or read the original checkout.

## Choose the entry point

| Situation | Entry point | Important constraint |
|---|---|---|
| Use a project to select both model and tags | `deepdanbooru evaluate TARGET --project-path PROJECT` | Project must contain `project.json`, `tags.txt`, and its selected model artifact. |
| Use an explicit saved model and tag file | `deepdanbooru evaluate TARGET --model-path MODEL --tags-path TAGS` | Without `--project-path`, **both** explicit paths are required. |
| Override only one project component | `evaluate` with project plus `--model-path` or `--tags-path` | A direct model or tags path takes precedence for that component. |
| Evaluate a file or recursively every recognized image below a folder | `deepdanbooru evaluate TARGET --project-path PROJECT --allow-folder` | This is the supported 1.0.0 project-folder path. Native `evaluate-project` is not recommended because its loader calls a missing symbol; see below. |
| Call inference from Python | `deepdanbooru.commands.evaluate_image` or `evaluate` | Match the model's NHWC input dimensions and tag-output dimension. |

The `evaluate` function accepts a folder only when `allow_folder=True`. The
Click CLI defaults that flag off, so passing a directory without `--allow-folder`
is a common mistake. In the exact 1.0.0 source revision, native
`evaluate-project` calls the missing `dd.data.load_tags_from_project` symbol and
raises `AttributeError` before inference. Use `evaluate` with `--project-path`
and `--allow-folder` for production. The bundled project smoke helper exercises
that supported fallback; it does not claim a native `evaluate-project` run.

## CPU-first prerequisites

The verified environment is Python 3.11 with TensorFlow 2.21.0 and no CUDA
libraries in the verification prefix. CPU correctness is required. By default,
`evaluate` sets `CUDA_VISIBLE_DEVICES=-1` before loading the model; do not remove
that safeguard for a CPU run. `--allow-gpu` only leaves device selection
unchanged. It is an opt-in switch, **not evidence that GPU support is ready**;
GPU readiness was not verified for this repository.

Before a real run, confirm:

1. `deepdanbooru --help` and `deepdanbooru evaluate --help` work in the chosen
   environment.
2. The model is loadable and has an image input shape with height at index 1 and
   width at index 2, for example `(None, 299, 299, 3)`.
3. The tag file is newline-separated and is the exact vocabulary used for the
   model's output units.
4. Target paths exist and contain decodable images. `--save-txt` writes beside
   each image and the native helper can overwrite an existing sidecar. For a
   guarded skill-layer write, use `scripts/save_txt_guard.py`: it rejects an
   empty selected-tag list, rejects a sibling directory even with overwrite
   enabled, and requires explicit overwrite permission for regular files.

## Fast, inspectable workflow

1. Start with one known image and `--threshold 0.5`, without `--save-txt`.
2. Choose the project route or provide both explicit model and tags paths. Use
   `--verbose` when diagnosing path selection or load failures.
3. Inspect the printed scores and tag order. If no tag is printed, rerun with a
   lower diagnostic threshold such as `0.0`; do not immediately assume the
   image decoder or model failed.
4. Add `--allow-folder` and a narrow `--folder-filters` only after one-file
   inference works. Confirm the discovered set and natural ordering.
5. Enable `--save-txt` only after output is useful, and verify each sidecar.
   The native path writes selected tag names only and replaces existing files;
   use the guard helper when empty output or replacement must be refused.
6. Use the deterministic helpers when the environment or a fixture is in doubt:
   `python scripts/image_preprocess_smoke.py`,
   `python scripts/dummy_evaluate_smoke.py`, and
   `python scripts/evaluate_project_smoke.py`.

Read the focused contracts before changing a command:

- [CLI reference](references/cli-reference.md)
- [Python API reference](references/api-reference.md)
- [Image inputs and tags](references/image-inputs-and-tags.md)
- [Troubleshooting](references/troubleshooting.md)

Files in this skill

  • SKILL.md5.1 KB
  • references/api-reference.md5.9 KB
  • references/cli-reference.md4.6 KB
  • references/image-inputs-and-tags.md4.3 KB
  • references/troubleshooting.md7.3 KB
  • scripts/dummy_evaluate_smoke.py1.7 KB
  • scripts/evaluate_project_smoke.py3.4 KB
  • scripts/image_preprocess_smoke.py1.9 KB
  • scripts/save_txt_guard.py2.3 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.