PixAI Tagger (Deprecated)
Local Anime Tagging Without the ONNX Runtime Hassle (But It's Deprecated)
- image
- general
- character
- ip
- result_json
Anime taggers are the shortcut for turning an image into a prompt or a training caption: run the picture through a vision model, get back comma-separated Danbooru tags. The usual suspects (WD14 family) lean on ONNX runtime, which is exactly the dependency that fights with your ComfyUI Python environment on every update. IPT-PixAITagger - the pack's PixAI Tagger node - sidesteps that by running the PixAI Tagger v0.9 model on a pure PyTorch implementation, no onnxruntime required. It estimates tags from an image and outputs general / character / ip categories plus a raw JSON result.
The important asterisk, right up front: this specific node is deprecated. The author kept it around for existing workflows, and the current recommended PixAI Tagger in the pack is a separate node. If you're starting fresh, look for the non-deprecated one - but if you've got an old workflow wired to this class, it still runs, and this page is about what it does.
How it works
It loads the PixAI Tagger v0.9 bundle and classifies your image batch. Tag selection is controlled by mode: threshold keeps tags above per-category thresholds in score order, while topk keeps the top-K tags per category. Thresholds default to 0.3 for general and 0.85 for character - note the character bar is much higher, because character tags are usually either clearly present or not. Outputs are general, character, and ip (the IP tag, the artist-style identifier) as strings, plus result_json if you want the full raw output for your own processing. There's a device combo (default auto) for where the runtime executes.
Model files you must download
This is the node that requires manual model placement - the pack's README calls it out. Download the PixAI Tagger v0.9 bundle (model_v0.9.pth, tags_v0.9_13k.json, char_ip_map.json) from pixai-labs/pixai-tagger-v0.9 and put it in:
ComfyUI/models/pixai_tagger/
(or ComfyUI/models/pixai_tagger/v0.9/ - either is scanned). Without the files, the node fails on first run with a missing-bundle error.
Installing it
cd ComfyUI/custom_nodes
git clone https://github.com/kinorax/comfyui-info-prompt-toolkit.git
cd comfyui-info-prompt-toolkit
pip install -r requirements.txt
Restart, or ComfyUI Manager → "ComfyUI-Info-Prompt-Toolkit". ComfyUI 0.17.0+. The requirements file includes timm - that's for the tagger (and the vendored SAM3), so it should come in with the install.
Common issues
The PyTorch implementation means no ONNX runtime conflicts, but it also means a heavier load at inference than an ONNX-optimized tagger - on CPU this can be slow; device exists for a reason. Thresholds are the thing people tune constantly: at the default 0.3 general threshold you'll see a lot of tags, and if the output feels noisy, raise it. And don't forget the deprecation: if you're wiring a new workflow, the pack's current PixAI Tagger node is the maintained path - this one is frozen for backwards compatibility, not the place to build your future on.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | Input image batch to classify with the local PixAI tagger bundle. | |
| mode | COMBO | threshold | threshold keeps tags above category thresholds in score order. topk keeps the top-K tags per category. |
| threshold_general | FLOAT | 0.300–1 | Threshold for general tags when mode=threshold. |
| threshold_character | FLOAT | 0.850–1 | Threshold for character tags when mode=threshold. |
| topk_general | INT | 250–2048 | Number of general tags kept when mode=topk. |
| topk_character | INT | 100–2048 | Number of character tags kept when mode=topk. |
| device | COMBO | auto | Execution device for the local PixAI tagger runtime. |
Outputs (4)
| Name | Type | Description |
|---|---|---|
| general | STRING | — |
| character | STRING | — |
| ip | STRING | — |
| result_json | STRING | — |