This is it. The one you've been waiting for. We've retrained SDXL with 1.3M professional and amateur pornographic images. This model does softcore, hardcore, and everything in-between.
The model seems to do best with resolutions 832x1216 or 1216x832. My settings:
Sampler: dpmpp_2m_sde
Scheduler: Karras
Steps: 30
CFG: 7
The model isn't perfect. You'll get some strange anatomy at times. Experimentation says this is the result of TE2, which was likely trained without much NSFW content. Still, you can get great results with a bit of cherry-picking.
Recipe:
In each step, TE weights were frozen - this model modifies only the unet. Machine captioned images were used until the last step.
Retrained SDXL 1.0 on 1.3M images for eight epochs
bs=80, lr=1e-05, optimizer=AdamW8Bit, EMA=0.95
Finetuned on 50k images for ten epochs to help do some rebalancing
bs=80, lr=2e-06, optimizer=AdamW8Bit, EMA=0.95
Aesthetic training on 30k images for 14 epochs
bs=1, lr=1e-05, optimizer=Adafactor, no EMA
Final alignment using 600 hand-selected and captioned images
bs=1, lr=1e-05, optimizer=Adafactor, EMA=0.95
Feel free to make your own merges and finetunes based on this checkpoint for non-commercial purposes. I ask that, if you do, you include a recipe with a similar level of detail as what I provided above. There's too much secrecy around this topic.
I have made checkpoints from step 2 & 3 in the recipe above available. These are not recommended for general use - they do not make good images out of the box. They may be useful for model mergers and finetuners.
Description
FAQ
Comments (36)
Is there an available list of concepts / triggers the model has?
Here's a list of the top 100 terms in the captions. But remember, this was trained on 1.3M captions - don't restrict yourself to this list:
woman
naked woman
bed
woman sitting
woman laying
man
couch
woman posing
posing naked
chair
front
legs crossed
two women
picture
sitting
bed watermark
woman standing
room
big breast
hand
bikini posing
rock
man cock
blonde woman
beach
laying
sucking
floor
nude woman
man watermark
giving
leg
water
black lingerie
camera
picture watermark
lingerie posing
stocking
field
hairy ass
mirror
woman stand
bikini sitting
three women
holding
high heel
breast posing
big ass
couch watermark
background
blowjob
getting
table
head
woman lie
living room
towel
cock watermark
white dress
pool
legs spread
flower
grass
bikini laying
necklace
red hair
bathroom
dress posing
black dress
selfie
getting fucked
group
enjoying
licking
long hair
bra top
spread wide
wood
pink bikini
white sheet
white shirt
woman leaning
back
blanket
tattoo
face
red bikini
chest
bench
red dress
watermark two
woman sit
standing next
erect penis
room watermark
bathtub
window
pool watermark
lingerie sitting
ass fucked
@erotes_anteros I knew I forgot to try the red dress, thank you ;-)
need an fp16 version. 12.92GB fp32 model is unnecessarily large and doesn't add any quality to the generations.
Yup. I was about to hit that download button until I saw the size. Hopefully a smaller version is released.
You're right. I've added fp16 and bf16 versions.
@erotes_anteros Thank you!
more than happy with the 12gb size, keep the size as is.
All three variants are there - pick your poison
@erotes_anteros what is 'bf'?
@amazingbeauty another way to represent floating points with more precision at lower scales. It's only supported on some hardware though. If you don't know what to choose, get the 32-bit one. Your software will handle changing the precision for you.
@erotes_anteros i'm using CPU for learning and testing sd models , believe or not i don't have GPU ..
so always i ask what is better for my old CPU.
and thanks.
Having the ability to run fp32 run models, I noticed that these perform better. So, please keep the fp32 as a base and perhaps add a reduced fp16 version for those that can't run fp32.
@robbedoes really? My information could just be out of date then. I know the 8GB SD1.5 models produced only slightly different results from the 4GB versions and the images from the larger models weren't really considered "better." I saw that it was the same case for the SDXL models as well, but that was right after they came out. I'd be interested in seeing direct comparisons of the outputs between fp16 and fp32 versions of the same model.
@tacocat My conclusion is not based on extensive testing, comparing versions or anything logical, but simply testing how fine grained they respond to my prompts in comparison to fp16 models and the quality of the results. And subjectively the fp32 models seem to perform better. And I've tried nearly every realistic SDXL model released here. Also results may vary on how the models are used. I hardly use any LoRA's or ControlNet, I simply love to play around with concepts in one shot results switching between various models to see how they interpret my prompt and this model offers a wide variety listening very well to my prompts, but again this is subjective. So, I guess you could compare output between versions and maybe results are equal or sometimes better, it depends on what you prompt as well I think. My prompts are a lot like this reply, long :) If you plan going deep into testing, I'm interested in your findings, have fun generating.
can you post more diverse and different types of examples?
What, you don't share my specific fetish?
Just kidding. I uploaded some more to the gallery.
would you please comment on the parameters you have used?
with this amount of steps you obviously did not try 100 times and chose the best result, but knew what you are doing.
what is bs? why the different optimizers and EFA settings? which train tool did you use?
bs is batch size. The batches of 80 were done using 10x A40 GPUs with a bs=8 on each with accelerate's default multi-gpu training. Training done using Kohya.
As to the different optimizers - I found AdamW to work best for the large training, but it is hard to get the hyperparameters right when doing the later tuning.
@erotes_anteros thanks so much
interesting that this is possible on kind-of reasonably priced hardware
the model seems very different to the base model, insofar that LoRAs don't really work well anymore, even on concepts unrelated to NSFW. But I have re-trained one of my own LoRA (using DB, not LoRA-training) on your model and it worked perfectly again, so it isn't a problem with your model, but just that the neural net seems to be very different from sdxl base after all this training.
maybe the upcoming merges will change that...
@jAC3KMdz3M5H - I'm not surprised, the unet took a real beating in my training- it's clear SAI did some major censoring via finetuning. Any LORAs that relied more on TE changes would probably continue to work.
@erotes_anteros did you gain some insight what TE2 actually does? all the resources I can find are themselves confused
@jAC3KMdz3M5H Ultimately, we can't really know, but what I found was TE2 seemed to be a lot more confused about nsfw anatomy than TE1. That kinda makes sense, since we know TE1 was trained on OpenAI's dataset, which is probably whole-web scraped, vs LAION for TE2 - they filter heavily.
@erotes_anteros I can confirm, the Unet does indeed take a real beating when training for naughty bits. It takes a few epochs just to see the effect of SAI tuning reversed and then it starts progressing.
would be great if you could disable authentication. makes it easier to use on runpod
Sure thing bud, it's disabled now.
Like with all trained models, purely trained models are rough around the edges, and need to be fined tuned with several merges. Ive already merged this with my special custom merge that is unreleased and the initial results are quite good.
Like most trained models, if you use this model by itself it is unrefined, but serving as a base for NSFW model merges its AMAZING! and absolutely must have.
I will post a few example pics on my profile(https://civitai.com/posts/2491137) of how my merge with this model turned out. Its still fairly beta stage, needs more fine tuning to get the details and sharpness up. I also used two of my favorite NSFW loras to fix the vagina details. I will need to fine tune it some more, but the results are quite nice so far.
The example pics aren't even cherry picked, my merge came out very nice and I only see a deformation in 1 out of 10 generations.
Gotta go to work now, but I will be fine tuning this model throughout the month and hopefully have a polished merge. Im very busy so I only have 1-2 hours to tinker in SD each day.
Nice work! Hope to see your merge when it's ready.
you've already brought back the colors in your example pics!
see my xy grid
looking forward to the results of this merge, placing my comment here so i get notified if fox mentions it here. I personally tried to merge this with two checkpoints I like but I didn't get good results, I'm not really into merging or training yet so I'm probably doing it all wrong.
@fox23vang226 - I uploaded two new checkpoints from earlier phases in training this model. They're not good for general use, but figured it might be helpful for mergers like yourself. The versions from before my alignment pass have a wider range of knowledge, but generates worse images. Maybe you can do something with it.
@erotes_anteros Im still in testing phase, havent had much time to play with it as im very busy. Currently stuck and cannot improve anymore. Any further merges makes it worse. But the final model I have requires trained negatives and loras. Im trying to get it to where it doesn't need trained negatives or Loras. Im reluctant to release it due to how many loras its still requires to max out its quality. But with everything lined up it looks amazing. I'll post some recent pics. Im also using the 13gig version, I find it does slightly better with limb deformities. Im still not happy with my merge. Im sure someone else can do a better job.
Normally I use frontal squat shot poses as a litmus test for NSFW models because it has everything, from vagina, anus, feet, toes, full face, breasts. With side shots, rear shots, or standing shots you dont get all that stuff.https://civitai.com/posts/2580136
This model just obsoleted a few models I'm using regularly. Although slightly rough at the edges still, it shows a lot of flexibility. Thank you for the effort of training this model.
Tried several gens and samplers in ComfyUI but never had success in making usable output with this. Not sure why.
@fauxrealistic My opinion is based on using Invoke and Automatic1111, using Euler Ancestral, CFG 5 and 50 steps (which seems to be a nice value across all models). It also depends on what you prompt and when you call it a success I guess. I've had a quick look at the images you uploaded and I think you are a bit more artistic than I am. Love the quality. I call it a success when I can count 5 fingers on each hand instead of 3 or 7. I guess it depends on what you seek to generate.
@robbedoes Thank you for the response and for sharing what works for you!
Details
Files
Available On (1 platform)
Same model published on other platforms. May have additional downloads or version variants.



















