Summary: --> Unlock Klein for nude females (NSFW)
Version 2.0
This is a major upgrade with a much bigger model, more data, and a fix to a SimpleTuner caption UX glitch (*see note below). I'm really happy with this one. It triggers more reliably, leaks less when you don't want it, listens better to boob adjectives, and makes pretty nipples. In short, this model fucks.
Okay, it doesn't really fuck, because it doesn't do dicks. Only female nudity. But it really rocks. This upgrade puts it on par with the best nudity LoRAs on Civit, or at least in the ballpark based on your personal preference. I made a post comparing 20 such LoRAs here.
Comparison spoiler: UNCHAINED is the undisputed king for just absofuckinglutely putting tits and pussies everywhere you ask for them, and even places where you don't, but it does give a bit of porn look IMO. FLUX 4 PLAY is another one in that category, triggering very reliably but with effects like huge labia. "Realistic Nudes" and "Perfect Average Females" and this Party Time v2.0 LoRA are next in line, I think, and behave similarly according to my testing, with different looks. I recommend taking them all for a spin on your prompts, it's free!
Trigger Words
This is a style LoRA with no specific trigger word. The qwen3 embedding is good at picking up any nudity as described in your prompt, so anything in the realm of "naked" "topless" "nude" "tits out" etc. should get the job done just fine and trigger the LoRA. Also it can infer nudity from context, so if you just say "woman in sauna" or "woman showering" she might show up nude even if you didn't say so explicitly, whereas in the raw (non-LoRA) model she'll often be wearing a towel or swimsuit with that kind of prompt.
Settings
For Klein9: set lora_strength=1.0. I use that almost all of the time. (UPDATE: I bragged too soon. I do have to set strength back to 0.7 for some nipple bleed-through and unwanted topless girls in some non-nude scene where you just happen to mention some girl's "breasts" or similar, which over-triggers the LoRA.)
For Klein4: set lora_strength to either 0.7 or 1.0. I had a harder time getting this LoRA to trigger in Klein4 (vs. Klein9) so I pushed the training a little harder. As a result, about half the time I get some nip bleed through for "thin shirt" (or similar) and back off the strength to 0.7.
Version 1.0
Verison 1.0 was a first attempt and I kept it lightweight (rank=16) with a "do no harm" philosophy. It's a decent LoRA but compared to V2 it doesn't trigger nearly as reliably or produce as nice looking tits and pussies.
Bottom line: Version 1.0 is OBSOLETE! Use version 2.0!
Technical Notes
This model works for inference in both distilled and base Klein. It was trained on base. I've switched to using only the distilled models now for inference since they are much faster and produce better realism.
For training the LoRA, SimpleTuner really nailed me with what I would call a UX bug! The default python I used (which came from ChatGPT, maybe it's its fault) had the setting for multi-line caption splitting in the wrong config.json file, not the data config, and nobody threw any error about it. I only found it by seeing the text cache log lines being the wrong number of entries, one for each line instead of one for each file. So for version 1.0 when I had multi-line captions like a line at the bottom adding "Overcast sky and natural lighting" in the training text-image pairs, it would split that and (randomly) give only that single line as the caption for the whole image in some batches. Doh! Effectively it was a form of extreme caption regularization. Fixing that made version 2.0 much better! (Oh, and a side effect, fixing this also nukes any issues with generating fuzzy or vintage images that was noted in Version 1.0 and probably was real, since the "low resolution" caption was getting discarded often in the training data.)
Description
OBSOLETE! Use version 2.0. See notes on main page.
FAQ
Comments (8)
Regarding Version 1 (before v2 was released):
------
Seems to look good, but so many of your photos are really low quality. At first I thought it was because you prompted it to be low quality to make it look like an old photo, and some of them are on purpose, but many of the blurry images specifically say that the image must be a clear, modern photograph with no visual issues.
I just thought I'd mention this in case you didn't notice. Also, your model is still named "pytorch_model.safetensors".
FYI anybody reading this, this comment was for v1.0. I think it probably was a real issue and I fixed this in v2.0!!! See the notes on the page if you want details.
@whoforscuba I'll edit it to make this clear.
(UPDATE: This note was pertaining to Version 1, moot now with version 2)
Thanks Jellai! That's an interesting point. I do have a mix of blur levels in the training data but most are clear and the blurred ones are labeled as such in the captions so I thought it would figure it out. I wonder if it's picking that up as a style, so that when you say "nude" you end up with a blur as a side effect of the LoRA kicking in. I'll have to investigate more. But yeah, I'd like to fix that if it's a problem.
Also I didn't know I was supposed to rename the safetensors file :) maybe it's too late to change?
This was for v1.0. I fixed this in v2.0!
Confirming Higher CFG with K9b-Distilled.
Stack: x12 LoRA's & (res_multistep+Beta) @ CFG 1.5, 12~42 Steps = Pose Settles, Anatomy Aligns, Prompt Semantic flaws are easier to identify, Images feel much more Intent based than accidental.
Hey great!! Thanks for running that. I think if I read that correctly that things are working. I love that you put this LoRA into a stack of 12 others and they all behave! Wow. I gotta start trying that with a bunch of character LoRAs.
(UPDATE: This note was pertaining to Version 1, moot now with version 2)
Regarding quality (sharpness) I ran some tests at 2048x2048 and I think it looks fine. I posted the side-by-sides in the gallery below. At least they are as sharp as the original (no-LoRA) Klein-9B-Base model. So I think I'll keep on trucking and train this on Klein4B-Base model next.

















