Illustrious XL (custom model)
Danbooru tags, no VRAM
- seedImage
- maskImage
- outpaint
- lora
- controlNet
- ipAdapters
- embeddings
- refiner
- ultralytics
- acceleratorOptions
- advancedFeatures.watermark.image
- image
Illustrious XL is the anime model that made Danbooru tags the precision interface for anime generation - characters, poses, outfits, and artist styles resolve to exact tags, and anything with roughly 200+ Danbooru works is baked in. It's an SDXL fine-tune, and like its cousin NoobAI it's the kind of model where the community's knowledge lives in the prompt vocabulary, not in sliders. RunwareArch_illustrious is the pack's custom-model doorway to it: type or search an AIR into the model field and the checkpoint runs on Runware's hardware, no 7GB download, no VRAM check.
Worth knowing the family drama, because it explains why you'd pick this over the Pony node: Illustrious v0.1 was deliberately released under-trained so the community could finish it (they did - WAI, Hassaku, and the NoobAI fork all descend from it), then the developer paywalled v1.0 and retroactively changed v0.1's TOS. The family thrives through v0.1 fine-tunes, and this node lets you hop between them by swapping one AIR string. If your workflow runs on a specific Illustrious merge, this is the node that keeps it alive in the cloud.
What you set
Required: model (default civitai:140272@1617798 - use the search button to browse), positivePrompt, width, height (128–2048, step 8).
The settings are the full SDXL spread, with the anime-relevant ones front and center:
CFGScaletoggle +CFGScale_value- Illustrious likes around 4-6, a bit under Pony. Lower is safer than higher.clipSkip- the tag-model classic, usually 1-2. Illustrious's CLIP lives and breathes tags.promptWeighting-compelorsdEmbeds.vae- override for checkpoints that want a specific VAE.- Sockets:
lora,controlNet,ipAdapters,embeddings,refiner,outpaint,seedImage,maskImage. negativePrompt,steps(20-30 norm),scheduler,seed,numberResults(up to 20),outputFormat,outputQuality,advanced_json(hiresFix).
Output is image (IMAGE).
How it works
Identical plumbing to every Runware node: request with the model AIR + taskType over REST via the SDK, IMAGE downloaded back, cost on the title bar. Because Illustrious is SDXL architecture, the sampler and VAE handling are automatic - your job is the tags. And they are the job: on this model, the difference between a good image and a great one is whether you wrote score_9, score_8_up-style rating tags and proper Danbooru syntax, not whether you moved CFG by 0.5.
Installing
ComfyUI Manager → search Runware → install → restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/Runware/ComfyUI-Runware
pip install -r ComfyUI-Runware/requirements.txt
No model downloads; dependencies are runware-sdk, pillow, soundfile. API key via Settings → Runware API key, RUNWARE_API_KEY, or runware auth login.
Troubleshooting
AIR typos are the #1 failure - search, don't type from memory. If output looks underbaked, remember v0.1 was shipped under-trained by design: that's what fine-tunes fix, so switch AIR to a WAI or Hassaku merge rather than fighting the base. And negative prompt behaving oddly at low CFG is by design (ignored at CFGScale ≤ 1).
Inputs (45)
| Name | Type | Default | Description |
|---|---|---|---|
| model | STRING | civitai:140272@1617798 | AIR of any checkpoint of this architecture. Use the search button to browse the catalog. |
| positivePrompt | STRING | Text prompt describing elements to include in the generated output. | |
| width | INT | 1024128–2048 | Width of the generated media in pixels. |
| height | INT | 1024128–2048 | Height of the generated media in pixels. |
| seedImageopt | IMAGE | — | |
| maskImageopt | IMAGE | — | |
| outpaintopt | RUNWARE_OUTPAINT | — | |
| loraopt | RUNWARE_LORA | — | |
| controlNetopt | RUNWARE_CONTROLNET | — | |
| ipAdaptersopt | RUNWARE_IPADAPTERS | — | |
| embeddingsopt | RUNWARE_EMBEDDINGS | — | |
| refineropt | RUNWARE_REFINER | — | |
| ultralyticsopt | RUNWARE_ULTRALYTICS | — | |
| acceleratorOptionsopt | RUNWARE_ACCELERATOROPTIONS | — | |
| advancedFeatures.watermark.imageopt | IMAGE | — | |
| negativePromptopt | STRING | Prompt to guide what to exclude from generation. Ignored when guidance is disabled (CFGScale ≤ 1). | |
| seedopt | INT | 00–9223372036854776000 | Random seed for reproducible generation. When not provided, a random seed is generated in the unsigned 32-bit range. |
| stepsopt | BOOLEAN | false | Enable to set steps. Off uses the model's default. |
| steps_valueopt | INT | 11–50 | Total number of denoising steps. Higher values generally produce more detailed results but take longer. |
| scheduleropt | COMBO | (default) | Scheduler to use for the diffusion process. |
| CFGScaleopt | BOOLEAN | false | Enable to set CFGScale. Off uses the model's default. |
| CFGScale_valueopt | FLOAT | 0.000–30 | Guidance scale representing how closely the output will resemble the prompt. Higher values produce results more aligned with the prompt. |
| strengthopt | BOOLEAN | false | Enable to set strength. This setting has usage rules in this model, so it is off unless you enable it. |
| strength_valueopt | FLOAT | 0.800–1 | Strength of the transformation. Lower values result in more influence from the original input. |
| maskMarginopt | BOOLEAN | false | Enable to set maskMargin. Off uses the model's default. |
| maskMargin_valueopt | INT | 3232–128 | Extra context pixels around the masked region during inpainting. The model zooms into the masked area with these additional pixels for better integration. |
| clipSkipopt | BOOLEAN | false | Enable to set clipSkip. Off uses the model's default. |
| clipSkip_valueopt | INT | 00–4 | Number of layers to skip in the CLIP model. |
| vaeopt | STRING | VAE model identifier. Overrides the default VAE included with the base model. | |
| promptWeightingopt | COMBO | (default) | Syntax used for prompt weighting. |
| numberResultsopt | INT | 11–20 | Number of results to generate. Each result uses a different seed, producing variations of the same parameters. |
| advancedFeaturesopt | BOOLEAN | false | Enable to set advancedFeatures. Off uses the model's default. |
| advancedFeatures.watermark.bgColoropt | STRING | Background color in hex format. | |
| advancedFeatures.watermark.displayPositionopt | COMBO | (default) | Watermark position. |
| advancedFeatures.watermark.fontColoropt | STRING | Text color in hex format. | |
| advancedFeatures.watermark.opacityopt | BOOLEAN | false | Enable to set advancedFeatures.watermark.opacity. Off uses the model's default. |
| advancedFeatures.watermark.opacity_valueopt | FLOAT | 0.100.1–1 | Watermark opacity. |
| advancedFeatures.watermark.textopt | STRING | Watermark text. | |
| safetyopt | BOOLEAN | false | Enable to set safety. Off uses the model's default. |
| safety.checkContentopt | BOOLEAN | false | Enable or disable content safety checking. |
| ttlopt | BOOLEAN | false | Enable to set ttl. Off uses the model's default. |
| ttl_valueopt | INT | 60 | Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`. |
| outputFormatopt | COMBO | JPG | File format for the generated image. |
| outputQualityopt | INT | 9520–99 | Compression quality of the output. Higher values preserve quality but increase file size. |
| advanced_jsonopt | STRING | Optional JSON merged into the request. For: hiresFix |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |