CivArchive
    Preview undefined
    Preview undefined
    Preview undefined
    Preview undefined
    Preview undefined
    Preview undefined
    Preview undefined
    Preview undefined
    Preview undefined
    Preview undefined
    Preview undefined
    Preview undefined
    Preview undefined
    Preview undefined
    Preview undefined
    Preview undefined

    General Information:

    SNOFS was trained on natural language, 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

    More training

    FAQ

    Comments (62)

    OG_OGFeb 16, 2026· 1 reaction
    CivitAI

    THANS FOR LORA YOU ARE KING ! But I think this is Lokr too? There are tons of people waiting for the king's Lora :D

    Neon_signsFeb 16, 2026· 1 reaction
    CivitAI

    Please make a version for z base

    bloodforce88Feb 19, 2026

    :-D zimage only produces minced meat genitals .. it would be a waste of time for zimage to create such a lora .. just switch to flux2klein

    Neon_signsFeb 19, 2026

    @bloodforce88 I mean that's why the Lora is necessary lol,to fix that

    michifuzoteFeb 17, 2026
    CivitAI

    Pls on your next update full nelson, suspended congress, superman and if possible jack o pose <3 Thank you so much for your amazing work

    PrefoFeb 17, 2026· 1 reaction
    CivitAI

    The Klein 9b 1.1 lora really fills in the gaps on another lora that I'm using. Now I'm really happy with the results. So thank you. I highly recommend merging this one in if another lora isn't quite enough.

    babukajoeFeb 17, 2026
    CivitAI

    it could be lame question, but can klein v2 version be used in edit mode?

    Ashen3
    Author
    Feb 17, 2026

    I haven't tested it and it wasn't specifically trained on any types of edits, but it should. When I tested V1 I actually found the distilled model better than the base model for edits with the lokr, for what it's worth.

    NUGGZ1616Feb 17, 2026· 1 reaction

    @Ashen3 I have noticed this version alters faces from reference images more than the previous version. Its more times than not, but more than the old one.

    Vyxen808Feb 17, 2026· 3 reactions
    CivitAI

    V1.1 works very well with character LoRAs (using Klein 9B non-base). By the way, a small guide on how to properly train concepts for Klein 9B would be ideal for people like me who create LoRAs from time to time. What resolution do you train at with AI Toolkit? Is 512 only too low?

    Ashen3
    Author
    Feb 18, 2026· 3 reactions

    I'll probably do a training guide on my Patreon that now has a whopping 1 subscriber ;)

    But to answer your direct question, yeah, 512 is too low. I know people get away with it for small training runs but even for those I don't go (only) that low. All you need to do is look at a 512x512 image that's been downrezzed from 1024x1024 and see all of the detail you're missing. For large training runs like SNOFS though, models will often 'forget' how to do higher resolution images if you train for too long on a smaller resolution. SNOFS for Klein 9b was trained at 512, 768, 1024, and 1280 sizes so far. I'll probably do a 1536 run (lower batch size, higher gradient accumulation) at some point to finish it off.

    Technically these newer models are better with that sort of thing than older ones but, all said, you can't beat more pixels.

    RKT_BLUEFeb 18, 2026· 3 reactions
    CivitAI

    ok, you are in another level

    cobaltpixiv520Feb 18, 2026
    CivitAI

    I think this is the best lora/lokr of its kind so far.

    ForeverNecessary737716Feb 19, 2026
    CivitAI

    can it do futa?

    iluvlamiaMar 3, 2026

    yes, with balls

    ElZoz92Feb 19, 2026
    CivitAI

    Goat Klein Lora. Thanks for your work!

    sosydonFeb 20, 2026
    CivitAI

    goon quality increased

    thanks!

    valkenweissFeb 21, 2026
    CivitAI

    This lora works the best for me, but it forces pubic hair, no matter the prompt. Sometimes it'll make proper shaved smooth but it's random I feel, I haven't managed to get it to obey through prompting.

    beavis524Feb 22, 2026

    same. its my only real complaint about the lora, everything else is fantastic

    Ashen3
    Author
    Feb 23, 2026

    From what I've tested putting pubic hair in the negative prompt (as long as you're at a cfg higher than 1) should work/help. "Shaved pubic area" is usually how it's prompted in my dataset for the positive prompt.

    ajeasternellisFeb 22, 2026· 3 reactions
    CivitAI

    this model is seriously INCREDIBLE and I would highly recommend it to absolutely every body.

    bro if you can pledge to making it better at doing gay shit I will sign up to your Patreon RIGHT NOW.

    Ashen3
    Author
    Feb 23, 2026· 1 reaction

    If someone had a dataset out there that I could add in I'd consider it, but only if I knew the captions and images were perfect so they didn't screw up the rest of the model. Unfortunately I wouldn't know what to add myself - and, going to be honest - don't really feel like spending hours looking at gay porn/fixing the captions for it.

    fronyaxFeb 22, 2026· 4 reactions
    CivitAI

    V1.1 Workd amazingly well with the image edit also, the best spicy lora so far for klein 9B👍.

    snelson88638Feb 23, 2026· 3 reactions
    CivitAI

    I am trying to use this in Drawthings and it appears to do nothing (even when I turn it all the way up to 250%). Any ideas?

    snelson88638Feb 23, 2026

    (Flux Klein 9b)

    snelson88638Feb 23, 2026

    I figured it out - drawthings does not support LOKR

    OG_OGFeb 23, 2026

    this Lokr Not Lora. To use it in Draw Things, you first need to convert it to LoRa. Also, you need to either use the fp16 model or enable "Merge Always" in Draw Things settings for LoRa to work. You'll thank me. Because I try very and finally found the solution this way. https://github.com/kritikrap/LoKr-to-LoRa-Converter/tree/main

    bullshizFeb 23, 2026

    wait huh? the downloaded file just worked for me?....

    I can add it as a lora with no extra work but it works like absolute trash

    OG_OGFeb 23, 2026

    @bullshiz Check the file directory, it's probably 4KB.

    bullshizFeb 23, 2026

    @OG_OG the download came in as a safetensor file and was 1gb ... its still generating trash tho

    can you share your draw things ai settings? strength, sampler, steps, etc?

    OG_OGFeb 23, 2026

    @bullshiz You can find the answers here Because we shouldn't make noise under the model. https://discord.gg/fM5YBf3G

    OG_OGFeb 23, 2026

    @bullshiz And also read the readme section on GitHub. 

    Ashen3
    Author
    Feb 24, 2026· 2 reactions

    I'm not sure how well that person's conversion script works, but I also uploaded a version merged in with the base model here that should work with everything:
    https://civitai.com/models/2416142?modelVersionId=2716480

    snelson88638Feb 24, 2026· 1 reaction

    @Ashen3 Very kind thanks

    madeweerdFeb 23, 2026
    CivitAI

    LOVE this Lora. Gives the best results for women, but for some reason I often end up with some pretty disturbing interpretations of dicks. Any experience with this and tips on how to get normal looking dicks in my results? Thank you!

    Ashen3
    Author
    Feb 23, 2026

    Be sure to use the word "penis" instead of "dick" or "cock"

    aweir14150Mar 1, 2026

    Try the lora called Klein9BGeneralPenis-v1-0. Weight: 0.3

    bullshizFeb 23, 2026
    CivitAI

    suggested settings? can't get this to work

    BoredJakeFeb 23, 2026
    CivitAI

    Can't get neither Qwen nor Klein version to do anal, any tips?

    Ashen3
    Author
    Feb 23, 2026

    No tips, there just wasn't a ton of training data on that. I should improve more in the next version(s).

    BoredJakeFeb 24, 2026

    @Ashen3 Thanks for the reply, would be awesome!

    KitagawaYoshinoFeb 24, 2026· 4 reactions
    CivitAI

    Bro this looks SO GOOD! I've been waiting 3 years for something that can easily create real life looking porn like this. Thanks a lot!

    bullshizFeb 24, 2026· 3 reactions
    CivitAI

    keep getting missing anus/butthole

    Elmer588Feb 24, 2026· 2 reactions
    CivitAI

    What would be your setting for distilled ? Base with 50 steps gives good results, but so far anything with distilled at around 10 steps is worse.

    Soup_FusionMar 12, 2026

    for me i use SGM_Uniform for the scheduler and Deis for the sampler. i set aura flow to 40. and gen for 16 steps. not sure if that helps but it has been working for me.

    OrangeJuiceAlienMar 1, 2026· 10 reactions
    CivitAI

    this is the best NSFW lora for flux 2 klein, but facial variety gets reduced by alot if this is active. so it has a same-face problem. could you try to improve that in next version?

    liftweightsMar 2, 2026
    CivitAI

    Super good. Re-trained a character LoRA with this baked in, the results are much improved versus base.

    Mallek3Mar 2, 2026· 1 reaction

    How did you retrain your character lora with this baked in?

    liftweightsMar 3, 2026· 2 reactions

    @Mallek3 You can apply a "base LoRA" in OneTrainer, although I did have to remap the model.diffusion_model. keys to avoid an error. Probably works in musubi-tuner as well.

    Mallek3Mar 3, 2026· 1 reaction

    Appreciate it. I'm using AI-Toolkit currently, but I should clearly try the other options available for LoRA training as well. Thanks!

    Bobarker33Mar 12, 2026

    @liftweights is remapping a complicated process? I've wasted many hours trying to figure out how to train on a finetuned model with ai-toolkit and musubi with zero luck.

    liftweightsMar 12, 2026· 1 reaction

    @Bobarker33 Not especially complicated, no. I think it was a one-line code change in one of the dependencies. If you try applying this as a base LoRA and it gives you an error, I can probably point you in the right direction.

    Bobarker33Mar 12, 2026

    @liftweights This is the error I get when I run it with this lora as the lora base model

    Selected layers: 144

    Deselected layers: 9

    Note: Enable Debug mode to see the full list of layer names

    Traceback (most recent call last):

    File "E:\AI\OneTrainer\modules\module\LoRAModule.py", line 736, in load_state_dict

    module.load_state_dict(state_dict, strict=strict)

    File "E:\AI\OneTrainer\modules\module\LoRAModule.py", line 115, in load_state_dict

    return super().load_state_dict(state_dict, strict, assign)

    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    File "E:\AI\OneTrainer\venv\Lib\site-packages\torch\nn\modules\module.py", line 2629, in load_state_dict

    raise RuntimeError(

    RuntimeError: Error(s) in loading state_dict for LoRAModule:

    Missing key(s) in state_dict: "alpha", "lora_down.weight", "lora_up.weight".

    The above exception was the direct cause of the following exception:

    Traceback (most recent call last):

    File "E:\AI\OneTrainer\modules\ui\TrainUI.py", line 712, in __training_thread_function

    trainer.start()

    File "E:\AI\OneTrainer\modules\trainer\GenericTrainer.py", line 141, in start

    self.model_setup.setup_model(self.model, self.config)

    File "E:\AI\OneTrainer\modules\modelSetup\Flux2LoRASetup.py", line 62, in setup_model

    model.transformer_lora.load_state_dict(model.lora_state_dict)

    File "E:\AI\OneTrainer\modules\module\LoRAModule.py", line 738, in load_state_dict

    raise RuntimeError(f"Error during loading of module key \"{module.prefix}\"") from e

    RuntimeError: Error during loading of module key "transformer.transformer_blocks.0.attn.to_q."

    liftweightsMar 13, 2026

    @Bobarker33 You can remap the problematic keys here:

    ```
    OneTrainer\venv\src\diffusers\src\diffusers\loaders\single_file_utils.py
    ```

    Look for the FLUX2_TRANSFORMER_KEYS_RENAME_DICT and add an entry "model.diffusion_model.": "". This strips the prefix and allows the loader to proceed, at least on my machine.

    iluvlamiaMar 3, 2026· 15 reactions
    CivitAI

    will you train on z image too?

    goeypants400Mar 5, 2026· 8 reactions

    fuck z image

    SoulcodingMar 6, 2026· 6 reactions
    CivitAI

    Is it only me or it creates penisses upside down all the time. Penis canal is always top of penis.

    ObsidianDreamsMar 17, 2026

    Yes! I thought it was just me lol

    enrosten190Mar 18, 2026

    @ObsidianDreams Same same

    hasta_la_vista_babyMar 6, 2026· 10 reactions
    CivitAI

    Fantastic work, easily the best nudity LoRa for Flux2 Klein 9B. Just wow! Looking forward to further development and refinements.

    bloodforce88Mar 8, 2026· 7 reactions
    CivitAI

    Try the settings, I get more than just good results with them and almost the speed of the Distilled version.

    Take the base version fp8 use 2 k-sampler advance. Use the Turbo Lora with rank64 in the first with strength 0.15 in the second ksampler the Turbo Lora rank128 with strength 1. For the first ksampler you use cfg 3.5-4.0 for the second cfg 1.0. Steps a total of 10-12 steps divided between both samplers, for me it works well with 6 steps in the first and 4 in the second. Take Dpm++2m on both with SGM uniform. In addition, I have the custom node "Flux2-Klein-Enhancer" Contrast -0.5 normalize strength to 0.10 and simply leave the rest at default. So I have perfect prompt follow and the quality is more than just good. I also tested all the resolutions and have the best quality with 1248x1824 and prompt follow-up.

    user8912301927312Mar 8, 2026· 4 reactions

    can you share example workflow if possible?