4.2 KiB
Raffle
A semi-random prompt generator for danbooru tags that works alongside your character prompts, allowing you to put your waifu in many situations. Made for Illustrious/Pony and any models supporting danbooru prompting.
Quick Start
- Add the Raffle node to your workflow
- Connect your Negative Prompt to the "negative_prompt" input (you may need to convert it to a
textnode first) - Use the "Filtered tags" output in your Positive Prompt (merge it with a
text concatorstring concatnode)
See the included workflow examples for detailed implementation.
How It Works
For offline use 400,000 taglists have been scraped from danbooru. Raffle randomly selects one of these taglists and filters it according to your preferences. A taglist is a collection of tags that have been applied to one image on danbooru, by using taglists we can be certain that the tags have good synergy with each other.
Selection Process
- Raffle first filters the pool of available taglists based on:
use_general,use_questionable,use_sensitive,use_explicitexclude_taglists_containingtaglists_must_includeexclude_tag_categories
- It randomly selects one taglist from this filtered pool using your provided seed
- That selected taglist is then filtered by:
negative_promptfilter_out_tags- if the tag isn't even in
categorized_tags.txtthen it's also filtered
- The final result is the
Filtered tagsoutput. You can use this in your Positive Prompt.
Node Options
- use_general: Enable selection from general.txt which contains 100,000 general taglists
- use_questionable: Enable selection from questionable.txt which contains 100,000 questionable taglists
- use_sensitive: Enable selection from sensitive.txt which contains 100,000 sensitive taglists
- use_explicit: Enable selection from explicit.txt which contains 100,000 explicit taglists
- seed: Controls which taglist is randomly selected from the filtered pool
- taglists_must_include: Only selects taglists that contain ALL of these tags. Use sparingly as each tag added severely reduces the available pool of taglists.
- negative_prompt: Connect your existing negative prompt here to ensure none of those tags appear in the output
- filter_out_tags: Additional tags to filter out from the final output without modifying your main negative prompt
- exclude_taglists_containing: If ANY of these tags appear in a taglist, the entire taglist is removed from consideration. Use with caution as this can significantly reduce options.
- exclude_tag_categories: Exclude entire categories of tags (e.g., "clothes_and_accessories", "standard_physical_descriptors") from the final output
Node Outputs
- Filtered tags: The final list of tags ready to use in your prompt
- Unfiltered tags: The complete original taglist before filtering (for debugging)
- Debug info: Information about the selection process, including available taglist count
Categories
I've used AI to help categorize 20,000 tags in categorized_tags.txt, this includes any tag with more than 100 entries on danbooru. The categorization method isn't perfect, but it's what I've ended up with:
abstract_symbolsactionsartstyle_techniquebackground_objectsbodily_fluidscamera_angle_perspectivecamera_focus_subjectcamera_framing_compositioncharacter_countclothes_and_accessoriescolor_schemecontent_censorship_methodsexpressions_and_mental_statefemale_intimate_anatomyfemale_physical_descriptorsformat_and_presentationgaze_direction_and_eye_contactgeneral_clothing_exposuregeneric_clothing_interactionsholding_large_itemsholding_small_itemsintentional_design_exposurelighting_and_vfxmale_intimate_anatomymale_physical_descriptorsmetadata_and_attributionnamed_garment_exposurenudity_and_absence_of_clothingone_handed_character_itemsphysical_locationsposespublicly_visible_anatomyrelationshipssex_actssfw_clothed_anatomyspecial_backgroundsspecific_garment_interactionsspeech_and_textstandard_physical_descriptorsthematic_settingstwo_handed_character_items