Krea 2 V1:
Krea has a ton of built in knowledge about this sort of thing, which is mostly good but has some downsides - a lot of what the training did was at least start to remove anime-type tendencies from photos, such as adding sweat. I find that a workflow where you use the raw model for a few steps and then switch to the raw model with an extracted turbo LoRA really helps with diversity of output - most of my examples use that workflow, so feel free to grab it from the images.
Ideogram V1:
Keep in mind this still needs more training, but I thought it was at a good enough point to post for people to have some fun with. I wasn't sure how best to define certain things in the JSON caption conversion and so I'm also not sure what's best as far as prompting goes. You'll need to play around with it. It was trained on JSON but in my limited tests you can also just try natural language and that seems to work as well. Expect some body horror with some concepts at this point, and some fine details just aren't there yet as well.
Text captions were converted to JSON using https://github.com/Auryg/Ideogram-Json-Captioner with a lot of specific prompting, some manual fixes, and I think I need to go back over the images with some more specific fixes that can hopefully be mostly done automatically.
General Information:
SNOFS was trained on natural language (or JSON, for Ideogram), not tags. It will work best if you use full sentences to describe what you want.
Want to support my work or help fund the training of this dataset on other models? Join the Patreon in my profile, and if you do - thank you!
Not using ComfyUI/your inference software doesn't support lokr? I've put up a merged version here. You can also use the merged base model to train off of: https://civarchive.com/models/2416142/snofs-sex-nudes-and-other-fun-stuff-flux-2-klein-9b-base-and-distilled?modelVersionId=2985440
Here's a list of some of the terms that work well:
anus
blowjob
boudoir
condoms
deepthroat
braless
cowgirl position
cum
cunnilingus (be specific and maybe put kissing in the negative prompt)
deepthroat
dildo
doggystyle position
fingering
hand in panties
handjob
hitachi magic wand
implied blowjob
ipcam / nightvision ipcam
masturbating (might want to put penis in negative prompt, or specify what she's rubbing for women)
massage
missionary position
naked, nude, etc.
penis
pregnant (and can specify trimester)
prone position
reverse cowgirl position
sex
sheer
snapchat (and caption/text/etc)
selfie (and mirror selfie)
spooning position
strap-on dildo
tentacles
licking testicles
undressing
vagina
wet clothes
Depending on the version, the following might kind of work:
anal sex
anilingus
But also keep in mind that it was trained on stuff like "her panties are pulled down to her thighs," not "panty pull."
These models are under the following license:
https://huggingface.co/Ashen3/SNOFS
Flux 2 Klein 9b V1.4:
Additional training. Some of the training was done using https://github.com/BuffaloBuffaloBuffaloBuffalo/ai-toolkit-perceptual , training against depth. Considering how much of SNOFS is two people intermingled with close skin colors, it seemed like a novel idea. It did seem to rapidly help with that sort of thing. On the downside, it seemed to create a bit of a texture issue on very close up images. I did some more training after to try to bring that back and was somewhat successful, but I think I'd need to increase the weight decay to really make that happen. Since everything else was in a good state I decided to release as-is. If you do have that texture issue, try adding "goosebumps" as a negative prompt.
Flux 2 Klein 9b V1.2:
More training - anal still doesn't work super reliably. Added images with terms like 'condom-wrapped penis,' 'boudoir' and 'anilingus' (again, doesn't work super great yet).
Flux 2 Klein 9b V1.1:
Additional training means far less body horror, even on the distilled version (but, you know, still some there). When using the distilled version of the model try playing around with more steps, adding a little cfg, etc.
Flux 2 Klein 9b V1:
Flux 2 Klein's awesome VAE means it picks up fine details incredibly well. While it still needs more training, I have some other stuff to train in the meantime so I thought it was worth it to push this out now as it can do some things incredibly well. Expect some body horror, especially if you use it with the distilled version of the model for text-to-image. I found that perhaps using more steps than 4 was helpful with the distilled version, but I also didn't try it much. Using this with the base model has far less anatomy issues. I expect them both to improve further with more training.
Right now, for text-to-image I recommend the base model. For editing, I recommend the distilled model. Note that SNOFS wasn't specifically trained on any image pairs for editing.
Training details (skip to the version 1.3 details below if you just want to know what this model can at least somewhat do right now):
I trained this as a factor 4 lokr using AI Toolkit this time. I used AI-Toolkit because when I started the training the other options had issues with their lycoris output and ComfyUI.
I think my starting learning rate was way too high at 1e-4 with an effective batch size of 4-6 or so. I quickly decreased it but it was perhaps still too high starting at 5e-5. I'm running a different training run at 1e-5 right now and it's still learning quite quickly. I might try to further train this at a very low LR and see what happens instead of starting fresh. Note: this is probably largely because of my large lokr size. I wanted to ensure I had "room" for all of the concepts but it can make things spicy.
I think the main issue people are coming into with training both this and Z-Image are what timesteps you train on. This was mostly trained on a high shift value of 3-5 as in inference Flux 2 Klein stays above the 800 timestep mark for most of the generation and maybe does 1 step out of 50 at below 200. I found I needed to test as I went and see where the generations went wrong and try to adjust on the fly.
Version 1.3:
Further training to further refine things. This might be the last version; I wasn't really making this for myself and I'm guessing the community wants me to make something for Z-Image. I'll at least try that out once the base model is out.
Note that the list is not exhaustive at all. It was trained on natural language (and that's how you should prompt!), so many concepts are in there.
Version 1.2:
Further training, expanded the dataset even more.
Also, I see a lot of people mixing this with other NSFW general loras. I'd recommend you try it by itself first.
Note: While you can use the lightning lora with this, keep in mind it won't lead to the best results. It's great for testing prompts, but it tends to mess with anatomy, smooth out texture, and lead to less variation on the same prompt.
Version 1:
This past weekend I was gone. I decided to let my 5090 chug along making a lokr for Qwen on ~5,000 hand fixed captions on sex, nudes, and other fun stuff of hand picked images with hand removed watermarks. I wasn't expecting it to get so good so quickly, so I did a few more night's worth of training. I'll do some additional training at some point here but it's already good enough to play around with.
It can do basic sex positions, blowjobs, cum, selfies, dildos, snapchat selfies with captions, etc. Female genitals are still a bit hit and miss, male genitals aren't bad. With it being a lokr and it being trained on so many images it's wildly flexible and can be used with perfect likeness of other loras.
Note that sometimes it'll do the wrong sex position even if you name it, and I'm unsure why as the captions have no errors. It will perhaps clear up a bit with more training.
I used Musubi Tuner and it was a heck of time getting it to train a lokr. I had to use another lycoris library for it (which is somewhere in the issues on the github page, IIRC), but it's possible the main one has Qwen support by now. Here are my training settings, though note that I reduced my LR over time and I also started with sigmoid timestep sampling. I was training at 640x640 and 1328x1328 buckets:
accelerate launch --num_cpu_threads_per_process 1 --mixed_precision bf16 src\musubi_tuner\qwen_image_train_network.py `
--dit Q:\AI\Models\DiffusionModels\qwen_image_bf16.safetensors `
--vae Q:\AI\Models\VAE\qwen_vae_for_training.safetensors `
--text_encoder Q:\AI\Models\CLIP\qwen_2.5_vl_7b.safetensors `
--dataset_config S:\AI\Musubi\datasetWoman.toml `
--sdpa --mixed_precision bf16 `
--gradient_accumulation_steps 4 `
--timestep_sampling qinglong_qwen `
--optimizer_type adamw8bit `
--learning_rate 3e-4 --lr_scheduler linear --lr_scheduler_min_lr_ratio=1e-5 --lr_warmup_steps 150 `
--blocks_to_swap 25 `
--gradient_checkpointing --gradient_checkpointing_cpu_offload --max_data_loader_n_workers 2 --persistent_data_loader_workers `
--network_module lycoris.kohya `
--network_args "algo=lokr" "factor=10" "bypass_mode=False" "use_fnmatch=True" "target_module=Linear" `
"target_name=unet.transformer_blocks.*.attn.to_q" `
"target_name=unet.transformer_blocks.*.attn.to_k" `
"target_name=unet.transformer_blocks.*.attn.to_v" `
"target_name=unet.transformer_blocks.*.attn.to_out.0" `
"target_name=unet.transformer_blocks.*.attn.add_q_proj" `
"target_name=unet.transformer_blocks.*.attn.add_k_proj" `
"target_name=unet.transformer_blocks.*.attn.add_v_proj" `
"target_name=unet.transformer_blocks.*.attn.to_add_out" `
"target_name=unet.transformer_blocks.*.img_mlp.net.0.proj" `
"target_name=unet.transformer_blocks.*.img_mlp.net.2" `
--network_dim 1000000000 `
--save_every_n_steps 250 --max_train_epochs 10--logging_dir=logs `
--output_dir Q:/AI/Models/Trained/Loras/Musubi/QwenWoman --output_name WomanGirls
Description
Initial Klein version
FAQ
Comments (69)
Thank you! This is one of the best loras on the site.
I can't seem to use the 9b Klein lora, a bunch of errors come out, also it's very big for Klein with 1gb normally they have around 50 to 100mb
It's a lokr. If you're using something other than ComfyUI they might not support it. It's also factor 4, so that makes it quite large. Think of it like a full finetune that's still potentially usable on the distilled model.
@Ashen3 ah sorry then I'm in wan2gp
@Ashen3 are you thinking about doing a normal. Lora too?
yeah, you should make this compatible with wanGP...
@NUGGZ1616 No, Wan2GP should implement support for lycoris.
@Ashen3 ahhh that's what it is... I'll make the recommendation
AWESOME!
You're a hero. Doing the hard work, being amongst the best trainers around, and neither spamming runpod links nor beggin on patreon. Thank you, 🙌
And to think, I'm currently unemployed!
Thanks a lot
very versatile lora, works great !
I am using K9bQuantized Version and so far really impressed!
Thanks. Besides Lokr, will you also be releasing it as Lora?
We'll see. I definitely wouldn't train as a lora, but if I can do a merge & then extract, maybe.
Why? They're the same effect. What would as lora get you?
@Ashen3 Why not train as lora? I get what merge and extra would do... but not what the difference would be in training that way to begin with.
@brnfd24434343d If they were the same nobody would bother using lokr. A lokr (depending on how it's configured) can be very similar to a full fine tune, meaning if a model is like a book it's like carefully rewriting pages of a book. A LoRA is more like putting the same post-it note on every page of the book.
A full fine tune is better yet still, but considering people might want to use the lokr with a distilled model it seems like a good compromise.
@Ashen3 We are eagerly waiting. :)
hah ha, I try very and finally found the solution this way. converter tool I made: LoKr To LoRa Converter;
https://github.com/kritikrap/LoKr-to-LoRa-Converter/tree/main
The lora size is justified lol..
Worked amazingly well, and It worked amazingly with the image edit also.
thank you for making this for klein.
Klein 9B variant affects body consistency if you just use one image. You will want to use four. Maybe more. This seems to bake away whatever bias that comes with the model and actually comes pretty close.
I suspect same may apply to Qwen Edit 2509/2511 but have not tested that post waist LoRA days...yet.
Bigger images does not help. But more does. Actually, it might make more sense to use eight 0.5 MP images than four 1 MP images. I'll have to give that a try.
But results are proportion-distorted (as with base model) and it needs my waist LoRA, the body size LoRA and/or creative prompting.
I suspect this actually may be far more useful in a two-step solution. The first half with this, and the latter half with a minimal dataset that only is trained on penises all the way in vaginas.
This actually might make a 4B version appealing as the smaller model could allow use of more reference images on consumer GPUs.
Actually 4B can't seem to draw hands right so I'm not so sure about that
It draws four fingers while Flux.1 draws six or seven. Maybe they can have a child so it balances out.
A LoRA might also work
this is briliant!
Perfect!!!
I'm getting lots and lots of anatomical issues with Klein 9B. Not especially with this LORA, but in general. Does anyone have tips to mitigate these issues.
Once I see a huge error, I usually try to specify exactly in my prompt where that body part should be. And if that doesn't work, I just have to cycle through new seeds. It's a frustrating problem
This is just the nature of Klein at the moment, it's reminiscent of early SDXL with regard to anatomy. I'm somewhat optimistic that a medium-scale finetune could fix it.
nice profile pic btw
Add another step or two, that's what has fixed this for me.
there is also one (ore more) anatomy helper lora
9 steps and cfg 1.2 fix it for me .
Thanks everyone for the help 😊. Although I feel like I might stay on qwen 2512 for the time being. Especially with the nunchaku version, it feels competitive with Klein for "people stuff"
It seems odd how quickly Klein has become popular even though it struggles with basics like two legs, two hands, etc.
@ss9999 Not so much. The realistic side of Klein outpasses Qwen Edit which was my go-to model before. Qwen Edit is great...but suffers from plastic skin look.
This lora is the start of something truly great. The power and intelligence of Flux Klein with a well-rounded nsfw lora. We are too lucky to have such things...
Klein is ok but the anatomy errors are annoying. Any chance you could train a Qwen 2512 version? Or resume training on top of it. The old ones work ok with 2512 but I imagine it would work better retrained.
this is an insanely good lora, it transforms klein into an early version of SDXL nsfw. so much potential.
Some prompts in exampples does't work with distilled. Is it base only?
I have mostly tested it with base. That said, try more steps or going up to cfg 1.5 or 2 and see what happens on distilled.
@Ashen3 On distilled even CFG 1.1 not working and resulting floating limbs.
cannot confirm the issues, full sentences work on 9b distill, maybe a little wonky though;
used settings:
steps: 4
classifier free guidance scale: 1
flux guidance scale: 4
sampler: euler
scheduler: Flux2
vae: Flux/Flux2
qwen model: 3_8b
Any chance we'll se a 4b version?
I tried to install your workflow and it wants "qwen_aspect_ratio_latent.py" but the linked git page doesn't seem to have a download actually available, every attempt to clone it fails and I can't find anything to manually download.
Please advise.
Just put in a resolution manually, or find another resolution picker node. It doesn't really matter.
@Ashen3 So the node isn't really necessary. Cool, I'll delete it and just use a Empty Latent Image Node.
so excited to try this with Klein, I'm so hoping you've got some gay and/or futa stuff in there. Every NSFW lora I try turns my bottoms feminine looking.
Well, when you ask lora creators for futa you're very very likely to get fully female characters with a penis stuck on. A real-like XXY person has a blend of male and female characteristics. For example, their face can look simultaneously like a man's and a woman's. It's difficult to describe unless you've seen the real thing. The interpretation of futa here is pure fantasy, the idea of an extremely feminine woman with a penis instead of a person who is a blend of male and female (i.e. breasts and male genitals, broader shoulders than most women but narrower than most men, buttocks that are more square than women's but with wider hips than most men, etc.)
I'm not sure Kline or z image are going to beat the OG Owen + loras. I always just go back to qwen.
edit: it worked once I used 9b distilled as base model
I hosted this privately on tensorhub and got bad results in img2img. The provided referance face is not consistent in the output. I am using the prompts provided in tthe examples here. I am wondering if I am doing something wrong. Did anyone else have this problem?
"it worked once I used 9b distilled as base model"
what do you mean by this? There's Klein 9B "distilled", and there's Klein 9B "base", correct? So when you say you used distilled as base, I don't know what that means. Maybe I am wrong about the Klein models that were released?
@Jellai Every lora has to have a base model. So klein 9b distilled was used as a base model in this case. You can see in the info of this model's page that there is a base mentioned. That's what I mean by base model.
@andreic1292265 Probably clearer to say "starting model."
Please make the testicles larger. The preview image that focuses on the penis has really small balls. Thank you. This is a very common issue with penises in AI loras/checkpoints.
"Please make the testicles larger" - being on the internet never ceases to crack me up.
This is a common problem with recent loras. It's bizarre, frankly, that so many think a penis matters and the testicles don't. I just looked at another lora that had really deformed balls — like four balls all jumbled up. It was horrid.
@jstchksomething If they have big balls their ladies don't take care of them well enough. Blue-balled and whining 😂
will you make a improved version for flux 2 9b base?
Yep, I'll do additional training here pretty soon.
I'm going back and forth between several LORA and yours is the most flexible. Please do a V2!!! Awaiting anxiously
It would be great if Lora did it instead of Lokr, we're waiting. :)
v1.1 is up!
@Ashen3 you are king
@og124749 It's not that simple - it wouldn't be as good as a LoRA. I will, however, test out merging it into the base and distilled models and see how that does.
@Ashen3 I think this is Lokr too? Am I wrong, because I can't import it.
@og124749 I think you misinterpreted my reply. I was replying to the comment saying "Please do a V2!!!," not your comment. Sorry.
Will you make this lora for z image base?
Damn this LoRA is good!
Details
Files
klein_snofs_v1.safetensors
Mirrors
klein_snofs_v1.safetensors
2-klein_snofs.safetensors
klein_snofs_v1.safetensors
snofs_v1.safetensors
klein_snofs_v1.safetensors
klein_snofs_v1.safetensors
klein_snofs_v1.safetensors
snofs_v1.3.safetensors
klein_snofs_v1.safetensors
klein_snofs_v1.safetensors
klein_snofs_v1.safetensors
klein_snofs_v1.safetensors
klein_snofs_v1-mid_1972981-vid_2653561.safetensors
klein9b_snofs_v1.safetensors
klein_snofs_v1-mid_1972981-vid_2653561.safetensors



















