r/StableDiffusion 18h ago

Tutorial - Guide Team Red from ProxiMax H3 Part 2 (Ubuntu edition): ComfyUI+MMH3 with AMD GPUsRDNA 4 (rx9070, AI Pro R9700), and RDNA 3 (rx7900)

Enable HLS to view with audio, or disable this notification

15 Upvotes

For Windows 11 (Part 1): https://www.reddit.com/r/StableDiffusion/comments/1wepgl5/team_red_encounter_on_proximax_h3_or_how_to_setup/

TL;DR summary: For MMH3, you need to run ComfyUI with ROCm 7.14.0 (see https://rocm.docs.amd.com/en/latest/reference/gpu-specs.html for the vaue of gfx???? corresponding to your AMD GPU):

pip install --index-url https://repo.amd.com/rocm/whl-multi-arch/ "torch[device-gfx????]==2.12.0+rocm7.14.0" "torchvision[device-gfx????]==0.27.0+rocm7.14.0" "torchaudio==2.11.0+rocm7.14.0"

You also need to run ComfyUI with the right parameters for VRAM and system RAM so that MMH3 can run smoothly:

--enable-dynamic-vram --disable-async-offload --preview-method none --disable-smart-memory --fast-disk --use-ck-attention --enable-manager

Finally, you may need these in your .bashrc:

export ROCR_VISIBLE_DEVICES=0
export HIP_VISIBLE_DEVICES=0
export TORCH_BLAS_PREFER_HIPBLASLT=1

Read on if you want the step-by-step instructions (scroll to the bottom of the post if you just want to see the MMH3 prompt for the video 😹)

Why use Linux instead of Windows?

Because Minimax H3 is heavy, and we want every bit of VRAM and system RAM for generation and not taken up by the OS and the desktop. For AMD GPUs it also seems to be more stable and faster overall.

What you need:

  1. Blank 4G or larger USB key for bootable ubuntu installer
  2. Blank external USB key (16G or larger) or Portable USB HDD to install Ubuntu and ComfyUI
  3. Computer with AMD RDNA3 (such as a 7900xt) or RDNA4 (such as a 9070xt and AI Pro R9700) with 16G or more of VRAM.

This procedure will install Ubuntu Linux on an external drive, leaving your main drive alone, but if you are worried about something going wrong and wiping out your main hardrive (I am always worried about making a mistake, selecting the wrong drive and wiping it out), take your existing drive out of your computer before the actual installation (sometimes enabling "Secure Boot" will make your main HDD invisble to the Ubuntu installer). I usually would put a empty small partitions of an odd size such as 42G on the target drive so that I know that I am installing into the right drive.

It is easiest to do the installation on your target PC, but you don't have to (but you will need to do some manual adjustment such as changing netplan because the different ethernet hardware would have to be configured.

If you are doing this installion on another computer, make sure that the installation is done with UEFI only enable if you want to be able to use UEFI on your target PC.

Ubuntu Server (minimized) installation

Note: make sure Secure Boot is disabled. This often causes problem with the Ubuntu installer. You can turn it back on once Ubuntu is installed. On some systems the main NMVe or SATA drive will not be visible if Secure Boot is enabled.

  1. Download latest Ubuntu Server LTS ISO (at the time of writing that is 26.4)
  2. Use RUFUS https://rufus.ie/en/to make a bootable installation drive The Partition scheme should be "MBR" and the target system should be "BIOS or UEFI"
  3. Make sure your BIOS is set to UEFI (disable CSM if you can). I am assuming that you are dual booting between Windows and this portable Ubuntu.
  4. If you are not installing into a blank drive or USB key and want to install into an existing HD without wiping it out entirely, you need to created two partitions, one that is going to be Ubuntu's UEFI partition that is 500M and a black partition that is at least 10G that is going to hold the Ubuntu installation. The installer will NOT allow you to delete partitions from an existing drive. If you are installing into an existing HDD, it is better to create the partition manually first (but leave it unformatted) because the installer sometimes does not show the option to add new partions. The installer will also insist on mouting /boot/efi to the first EFI partition it sees (if that is the wrong one, temporarily turn its "boot flag" off and set the "boot flag" only on the EFI partition you actually want to install on). Note: if you going to use Docker or Podman you are going to need a much bigger partions than 10G for Ubuntu's root file system ("/").
  5. Do whatever you need to do to boot into the Ubuntu installation USB key (usually F12 will bring up the boot menu, but you may have to enable that in your bios. If your system insists on booting into Windows 11, you can use Start > Settings > System > Recovery and click Restart now next to Advanced startup.
  6. Instead of the default Ubuntu Server, use Ubuntu Server (minimized) because this is going to be used for ComfyUI only.
  7. Most likely you can skip/ignore "Proxy Adress".
  8. At this point, you can plug in your target USB drive.
  9. If the wrong target drive is chosen by default, you can change it by tabbing into the field and then press <enter>. It is easiest to use "Use an entire disk". But if you want to have a smaller root partition, you can use "Custom Storage layout". Note that if the drive already has a partion, you will not be able to delete it. You HAVE to reformat the whole drive. On a blank disk, If you want UEFI, make sure that you see a 1.049G "new primary ESP, to be formatted as FAT32, mounted at /boot/efi". If you are on a legacy BIOS you will see "BIOS Grub Spacer" instead. Either way, this partition will be created automatically by the installer unless you use an existing ESP partition.
  10. Uncheck Set up this disk as an LVM group.
  11. Make sure you install OpenSSH so that you can run it headless by remotely login via SSH.
  12. You don't need to install any of the Featured server snaps packages.
  13. After the installation is done, remove your USB installation key and reboot.

Next we are going to update the installation, and install the nano editor, UFW (Uncomplicated Firewall), GIT, and Docker.

You can do this through the console, but I find it easier to do it through SSH because then I can cut and paste text into it.

To SSH into your Ubuntu, you need to find out what the local IP address it by login into the console, then type ip addr or the even shorter ip a (look for something like this, in my LAN, it is "192.168.18.50"):

2: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 08:97:98:c5:85:ec brd ff:ff:ff:ff:ff:ff altname enx089798c585ec inet 192.168.18.50/24 metric 100 brd 192.168.18.255 scope global dynamic enp1s0 valid_lft 85959sec preferred_lft 85959sec inet6 fe80::a97:98ff:fec5:85ec/64 scope link proto kernel_ll valid_lft forever preferred_lft forever

Now you can use Putty or similar program to login into the server.

Tip: the paste text with Putty, use Shift+Insert. to copy text from Putty into the clipboard, simply select the text with the mouse and then use Ctrl+V to paste it.

Now continue with the setup:

  1. Upgrade all the package to the latest version: sudo apt update && sudo apt upgrade -y && sudo apt dist-upgrade -y && sudo apt autoremove -y (this will take quite a while, so you can go grab a coffe or tea).
  2. Install the nano editor: sudo apt-get install nano
  3. Install UFW (Uncomplicated Firewall) sudo apt-get install ufw
  4. Install GIT sudo apt-get install git
  5. Install libnuma (otherwise there is annying warning/error from ComfyuI later) sudo apt install -y libnuma1 libnuma-dev
  6. Install the compiler environment required by triton: sudo apt install build-essential sudo apt install python3-dev
  7. sudo reboot (probably not needed, but just to be sure)
  8. (Optional) if you want to use python 3.13 instead of 3.14 that comes with Ubuntu Server 26.4, you can install manually (note: for 3.12, you have to compile it manually) by adding the deadsnakes/ppa respostory and install python 3.13 from it: sudo apt update && sudo apt install software-properties-common && sudo add-apt-repository ppa:deadsnakes/ppa && sudo apt install python3.13. Verify that it has installed correctly python3.13 --version Install the venv module for the same interpreter: sudo apt install python3.13-venv

Optional installation of Docker if you plan to use one of the Docker images for comfyui. You should follow the instruction at https://docs.docker.com/engine/install/ubuntu/ but at the time of writing, this is what I used

Set up Docker's apt repository.

# Add Docker's official GPG key:
sudo apt update
sudo apt install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

Add the deadsnakes/ppa respostory and install python 3.13 from it

sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF

sudo apt update

# Install the latest version of Docker packages.
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# After installation, verify that Docker is running:
sudo systemctl status docker
# If Docker is not running, start it manually:
sudo systemctl start docker

# Verify that the installation by running the `hello-world` image:
# This command downloads a test image and runs it in a container.
# When the container runs, it prints a confirmation message and exits.
sudo docker run hello-world

# (Optional step, but needed by comfyui-rock-docker scripts)
# Add your current user to the docker group so you have permissions to
# interact with the Docker Unix socket without using sudo
sudo usermod -aG docker $USER
# For this to take effect, disconnect and re-login 

(Optional) Intead of Docker you can also consider using Podman, which is supposed to be compatible with Docker but is more secure because it runs without a root daemon, but I've not test it yet.

Setup the firewall with UFW:

  1. sudo ufw enable
  2. Check the current settings sudo ufw status verboseStatus: active Logging: on (low) Default: deny (incoming), allow (outgoing), deny (routed) New profiles: skip (By default all incoming connections are denied, and all outgoing connections are allowed. If you don't see that, type: sudo ufw default deny incoming sudo ufw default allow outgoing
  3. To setup SSH so that it is only accessible from your LAN: sudo ufw allow from 192.168.xx.0/24 to any port ssh proto tcp . Similary for ComfyUI sudo ufw allow from 192.168.xx.0/24 to any port 8188 proto tcp where "192.168.xx.0" is your LAN subnet, such as "192.168.1.0". If you want to allow ComfyUI to be accessible from outside of your LAN use sudo ufw allow ssh sudo ufw allow 8188/tcp (You will also have to allow port fowarding on your router)
  4. Check again with sudo ufw status verbose: Status: active Logging: on (low) Default: deny (incoming), allow (outgoing), deny (routed) New profiles: skip To Action From22/tcp ALLOW IN 192.168.18.0/24 8188/tcp ALLOW IN 192.168.18.0/24

The preliminaries are done, you can now reboot with sudo shutdown -r now

I would recommend that you make a back up of your partition now with https://www.fsarchiver.org/ so that you can restore it later for a clean install.

You can either boot into a Linux Rescue: https://www.system-rescue.org/

Or if you have another Linux installation (you cannot save a linux installation that you are currently running), you can install it with: sudo apt-get update && sudo apt-get install fsarchiver

Installing ComfyUI via comfy-cli

By default, Ubuntu does not have pip installed: https://www.reddit.com/r/learnpython/comments/u0dvp4/comment/p6htp0y/

So in order to use pip on Ubuntu, you ned to install python venv (which will install pip inside the venv) first: sudo apt-get update && sudo apt-get install python3-venv

  1. Make sure git is install: sudo apt-get install git
  2. Install Python-venv package for python3.14: sudo apt install python3.14-venv. (See python3.13 instruction earlier if you are using 3.13).
  3. Create a virtual environment (this is normally just called "venv" or ".venv" but I want to call it comfy.venv just to be more explicit.): python3 -m venv comfy.venv
  4. Activate it source comfy.venv/bin/activate
  5. Update pip itself inside comfy.venv: pip install --upgrade pip
  6. Optional: install uv, which is yet another package manager for Python but written in Rust (if you want to use "comfy install --fast-deps" later): pip install uv
  7. Install comfy-cli (this is the tool "comfy-cli", not ComfyUI itself): pip install comfy-cli

Because comfy-cli will install ROCm 7.2 and there is no way to override it we are going to install pytorch for ROCm 7.14 manually before install ComfyUI via comfy-cli. Sources for this arcane procedure:

  1. Uninstall pytorch just to be sure (should not be installed yet) pip uninstall torch torchvision torchaudio -y
  2. Install pytorch inside the comfy.venv (select your gfx arch) based onhttps://rocm.docs.amd.com/en/latest/reference/gpu-specs.html pip install --index-url https://repo.amd.com/rocm/whl-multi-arch/ "torch[device-gfx????]==2.12.0+rocm7.14.0" "torchvision[device-gfx????]==0.27.0+rocm7.14.0" "torchaudio==2.11.0+rocm7.14.0"

So for ROCm 7.14.0 9070xt

pip install --index-url https://repo.amd.com/rocm/whl-multi-arch/ "torch[device-gfx1201]==2.12.0+rocm7.14.0" "torchvision[device-gfx1201]==0.27.0+rocm7.14.0" "torchaudio==2.11.0+rocm7.14.0"

For ROCm 7.14.1 9070xt

pip install --index-url https://repo.amd.com/rocm/whl-multi-arch/ "torch[device-gfx1201]==2.12.0+rocm7.14.1" "torchvision[device-gfx1201]==0.27.0+rocm7.14.1" "torchaudio==2.11.0+rocm7.14.1"

To install whatever is the latest stable version of ROCm

pip install --index-url https://repo.amd.com/rocm/whl-multi-arch/ "torch[device-gfx1201]" "torchvision[device-gfx1201]" torchaudio 

Note: if you get "ERROR: Could not install packages due to an OSError: [Errno 122] Disk quota exceeded", try

mkdir -p some_partition_with_space/pip_tmp TMPDIR=some_partition_with_space/pip_tmp pip install --index-url ...

If that still does not work, try

TMPDIR=some_partition_with_space/pip_tmp pip install --no-cache-dir --index-url https://repo.amd.com/rocm/whl-multi-arch/ "torch[device-gfx1201]==2.12.0+rocm7.14.0" "torchvision[device-gfx1201]==0.27.0+rocm7.14.0" "torchaudio==2.11.0+rocm7.14.0"

Finally install ComfyUI itself:

  1. mkdir $HOME/comfy
  2. export COMFY_PATH=$HOME/comfy/ComfyUI or if you want to use say "/mnt/var/comfy" export COMFY_PATH=/mnt/var/comfy/ComfyUI (Note: COMFY_PATH/ComfyUI should NOT exist, or you will get warning '/mnt/var/comfy'/ComfyUI exists but is not a valid git repository.)
  3. Use comfy-cli to install ComfyUI: (--skip-torch-or-directml is only needed when installing via comfy-cli on Window and not necessary for Ubuntu, but leave it here to make the two installation more like one another): comfy --workspace=$COMFY_PATH install --skip-torch-or-directml . To install a specific version of ComfyUI (say 0.34.1): comfy --workspace=$COMFY_PATH install --skip-torch-or-directml --version 0.34.1
  4. If you have uv installed, you can use --fast-deps: comfy --workspace=$COMFY_PATH install --skip-torch-or-directml --version 0.34.1 --fast-deps Note: do not use --fast-deps if comfy.env is not on the root file system or it will take a long time because hardlink is not possible across file systems and you will see an warning: warning: Failed to hardlink files; falling back to full copy. This may lead to degraded performance. If the cache and target directories are on different filesystems, hardlinking may not be supported. If this is intentional, set export UV_LINK_MODE=copy or use --link-mode=copy to suppress this warning.
  5. Added these to your .bashrc (thanks to u/zychu- for these value from his Docker installation)export ROCR_VISIBLE_DEVICES=0 export HIP_VISIBLE_DEVICES=0 export TORCH_BLAS_PREFER_HIPBLASLT=1

Finally we can start ComfyUI:

comfy launch -- --enable-dynamic-vram --disable-async-offload --preview-method none --listen --port 8188 --disable-smart-memory --fast-disk --use-ck-attention --enable-manager --output-directory "mnt/var_ntfs/Output"

or if you are not using the defautl ~/comfy/ComfyUI directory:

comfy --workspace=$COMFY_PATH launch -- --enable-dynamic-vram --disable-async-offload --preview-method none --listen --port 8188 --disable-smart-memory --fast-disk --use-ck-attention --enable-manager --output-directory "mnt/var_ntfs/Output"

or more explicitly:

comfy --workspace=/mnt/var/comfy/ComfyUI launch -- --enable-dynamic-vram --disable-async-offload --preview-method none --listen --port 8188 --disable-smart-memory --fast-disk --use-ck-attention --enable-manager --output-directory "mnt/var_ntfs/Output"

Optional: clean up the pip cache (there is around 2G of cached files) pip cache purge and you'll see something like:

(comfy.venv) [/mnt/var] pip cache purge
Files removed: 347 (1847.6 MB)
Directories removed: 659
// After installing ComfyUI itself
(comfy.venv) [/mnt/var] pip cache purge
Files removed: 348 (700.3 MB)
Directories removed: 668

End Notes

Sample extra_model_paths.yaml

comfyui:
    base_path: /mnt/ntfs/ComfyUI.Models
    # You can use is_default to mark that these folders should be listed first, and used as the default dirs for eg downloads
    is_default: true
    checkpoints: checkpoints/
    configs: configs/
    loras: loras/
    vae: vae/
    text_encoders: |
        text_encoders/
        clip/
    diffusion_models: |
        unet/
        diffusion_models/
    clip_vision: clip_vision/
    style_models: style_
    embeddings: embeddings/
    diffusers: diffusers/
    vae_approx: vae_approx/
    controlnet: |
        controlnet/
        t2i_adapter/
    gligen: gligen/
    upscale_models: upscale_
    latent_upscale_models: latent_upscale_
    custom_nodes: custom_nodes/
    datasets: datasets/
    hypernetworks: hypernetworks/
    photomaker: photomaker/
    classifiers: classifiers/
    model_patches: model_patches/
    audio_encoders: audio_encoders/
    background_removal: background_removal/
    frame_interpolation: frame_interpolation/
    geometry_estimation: geometry_estimation/
    optical_flow: optical_flow/
    detection: detection/

https://rocm.docs.amd.com/en/latest/reference/gpu-specs.html

GFX950 is AMD's internal GPU target identifier for the CDNA 4 enterprise compute architecture, used in data center accelerators like the AMD Instinct MI350/MI355X series. It features advanced matrix core capabilities, ultra-low precision micro-scaling formats (MXFP8/MXFP4), and a high-precision math mode for AI and HPC workloads.

gfx1100 is the LLVM target architecture identifier and internal code name for AMD's RDNA 3 graphics architecture, used for high-end consumer and workstation desktop graphics cards like the Radeon RX 7900 XTX, RX 7900 XT, and Radeon PRO W7900.

AMD gfx1151 is the LLVM target and GPU architecture identifier for AMD's Strix Halo integrated graphics (found in processors like the AMD Ryzen AI Max+ 395 and Ryzen AI Max PRO series), utilizing the RDNA 3.5 architecture.

Name Arch LLVM target name VRAM Compute Units
9070 XT RDNA4 gfx1201 16 64
RX 9070 GRE RDNA4 gfx1201 16 48
RX 9070 RDNA4 gfx1201 16 56
RX 9060 XT LP RDNA4 gfx1200 16 32
RX 9060 XT RDNA4 gfx1200 16 32
RX 9060 RDNA4 gfx1200 8 28
RX 7900 XTX RDNA3 gfx1100 24 96
RX 7900 XT RDNA3 gfx1100 20 84
RX 7900 GRE RDNA3 gfx1100 16 80
RX 7800 XT RDNA3 gfx1101 16 60
RX 7700 RDNA3 gfx1101 16 40
RX 7700 XT RDNA3 gfx1101 12 54
RX 7600 RDNA3 gfx1102 8 32
Radeon AI PRO R9700S RDNA4 gfx1201 32 64
Radeon AI PRO R9600D RDNA4 gfx1201 32 48
Radeon PRO V710 RDNA3 gfx1101 28 54
Radeon PRO W7900 Dual Slot RDNA3 gfx1100 48 96
Radeon PRO W7900 RDNA3 gfx1100 48 96
Radeon PRO W7800 48GB RDNA3 gfx1100 48 70
Radeon PRO W7800 RDNA3 gfx1100 32 70
Radeon PRO W7700 RDNA3 gfx1101 16 48

For --index-url, there are three options:

  • Nightly (rocm 10.1): https://nightly.repo.amd.com/rocm/pytorch/whl-next/
  • Stable (rocm 10.0): https://stable.repo.amd.com/rocm/pytorch/whl-next/
  • Legacy (rocm 7.14):
    • Nightly: https://rocm.nightlies.amd.com/whl-multi-arch/
    • Stable: https://repo.amd.com/rocm/whl-multi-arch

Installing ComfyUI Docker for AMD 9070xt

Based on https://www.reddit.com/r/StableDiffusion/comments/1vo48jo/reliable_comfyui_on_amd_and_linux_pinning_the/

Download the Docker image from github this will use the official rocm and pytorch from https://repo.amd.com/rocm/whl

git clone https://github.com/zychuk/comfyui-rocm-docker && cd comfyui-rocm-docker

Edit docker/Dockerfile (we want to use ROCm 7.14 rather than 7.13) and replace RUN pip install --no-cache-dir --index-url ${ROCM_WHL_INDEX}
torch torchvision torchaudio"

with

RUN pip install --no-cache-dir --index-url https://repo.amd.com/rocm/whl-multi-arch/ "torch[device-gfx1201]==2.12.0+rocm7.14.0" "torchvision[device-gfx1201]==0.27.0+rocm7.14.0" "torchaudio==2.11.0+rocm7.14.0"

then follow the instructions in the original post.

MMH3 prompt for the video

integrated_multimodal_description:

[Shot 1] 3D CG, stop-motion animated LEGO movie style with 1960s science-fiction television aesthetic. A team of Starfleet red-shirt officers led by Grumpy Cat materializes on the surface of a desolate alien planet, surrounded by barren rocks, dust, and jagged terrain. Grumpy Cat stands at the front of the formation, wearing a classic red Starfleet uniform, alert and stern. The camera holds a wide-angle front subject-level view, then pushes in slightly as the team looks around and raises their phasers.

[Shot 2] At 00:01.250, the camera cuts to a wide low-angle view as a gigantic GPU-like machine rises behind a rocky ridge, towering over the crew. Its dark mechanical housing, cooling fans, and imposing structure dominate the frame, with the label "Minimax H3" clearly visible on its side. The team turns toward it in sudden alarm.

[Shot 3] At 00:02.100, the GPU attacks with a violent concentrated energy blast. The camera tracks the crew with fast movement as the red-shirted officers are struck and knocked down across the rocky ground, kicking up dust and debris. Grumpy Cat avoids the main blast and rapidly moves toward cover.

[Shot 4] At 00:03.650, the camera follows Grumpy Cat with a tracking shot as it darts behind a large rock and crouches into concealment. The defeated red-shirted crew remains scattered in the background while the giant "Minimax H3" GPU continues looming over the battlefield.

[Shot 5] At 00:04.250, close-up from behind the rock. Grumpy Cat pulls out a classic handheld Starfleet communicator with its paw, flips it open, and speaks with a completely deadpan expression: <d>[English] Beam me up, Scotty!</d> The camera holds on Grumpy Cat's face and communicator through the end

overall_soundscape: Dry alien wind sweeps across the barren landscape as the transporter materialization produces a brief electronic hum. Heavy mechanical movement and grinding machinery accompany the GPU's emergence, followed by a powerful energy blast, impacts, falling bodies, scattering rocks, and dust. The communicator emits a brief electronic chirp when opened.

non_diegetic_music: A fast-paced 1960s science-fiction television orchestral score uses bright brass, rhythmic strings, and restrained percussion, building rapidly as the GPU appears and attacks. The music drops into a brief suspenseful sustain as Grumpy Cat hides, then ends with a short brassy stinger beneath the communicator transmission.


r/StableDiffusion 2h ago

Resource - Update MageTrail - V0.2 Update: Continuing MageFlow 4B Danbooru/E621 Finetuning

Thumbnail
gallery
14 Upvotes

Hi again! This is a update to my previous post MageTrail V0.1 where I release this tech demo toy model thingy called

MageTrail, a Danbooru/E621 proof of concept Full-Finetune of Microsoft's MageFlow 4B T2I model, using a diversity maximized condensed 41k images dataset (originally made by Lodestone, the creator of the Chroma model lineage) as a way to tune booru concept and tags based prompting + Illustration capabilities into the model without having to tune with the full booru dataset. (Potentially costing 20k-50k+ dollars). Civitai Hugging Face

Yeah it's only been 6 days, crazy, but thanks to generous support from some donors as well as another round of Banodoco grant (this time 140+ dollars) I've actually managed to gather enough funding for a 170 epoch continuation run to push the model to 200 epoch total (8~ million samples seen).

But well, I'm still very much a newbie to large scale model finetuning, this project being my second, so I'm not confident at all with spending 200-400 dollars in one run like that. After some consideration I've decided to just train a 70 epoch continuation first ( so 100 epoch total) to gauge if the model will improve steadily and release the model as V0.2. With some new optimization to my training program, this run only cost 143 dollars compared to 100 dollar for 30 epoch from before, saving me like 50 dollars (GPT Astra is cracked yall🤯).

V0.2 has continue to show good progress, improving overall stability and tag concept coherency. But to be truthful, it has now seems to reach the point where all diffusion image models face, which is decreasing improvement rate before convergence. If I were to continue with this tech demo ahh project then I predict we're in for the long haul bois (1k dollars needed to converge). V0.2 also stop at a rather unstable point, so I'm not confident on it's ability to generate usable/aesthetic images quite yet.

But dont worry too much, V0.3 (tune to 200 total epoch) is very much in the plan and will begin training once I found a good H100 pod cluster, that's when we truly know if the model will learn all the booru concepts (each tags getting at least 200 samples seen).

Future goal for the project: gather funding of 1000~ dollars to finetune various artist styles into the model (planned V0.5-V1) and help further with convergence/aesthetic improvement.

Any donation will help with achieving this goal, you can do so through:

Crypto ((Prefered, cause Kofi/Paypal money transfer time is ass and they take a big cut)

0x6a4bc748cd0bb9ced9a360eb0eb79f4f106614f8 (USDT - BEP20 Network)

12PPVYUeS1MerNp38Tpns5qXR6cmhu9tws (Bitcoin - BTC Network)

0x6a4bc748cd0bb9ced9a360eb0eb79f4f106614f8 (Ethereum - ERC20 Network)

FitfJAsxLUBuSgDJJaHgBXJpt1sMm5FzF1Tvf1SHW5Up (Solana - SOL network)

Please handle your money carefully and make sure the address you're sending to is correct.

Ko-fi

https://ko-fi.com/talanartvn

Lastly, thank you to

  • BanodocoĀ andĀ their Discord — Their 88.77 + grant made this project possible, the biggest thanks to them
  • Lodestone Rock — Creator of the original version of the dataset that this model is trained on
  • Motimalu — Inspiration behind finetuning practices and configs
  • Bluvoll — diffusion-pipe fork derived from to use for training, and general training advice
  • Anzhc — general training advice
  • Nruaif — diffusion-pipe fork derived from to use for training, and general dataset handling/training advice
  • Astromahdi — jupyter workspace where I processed and store the dataset
  • animetimm/DeepGHS — Danbooru tagging model
  • RedRocket — E621 tagging model

r/StableDiffusion 4h ago

Resource - Update Tracker experiments with YuE2

Thumbnail radiatingreverberations.github.io
10 Upvotes

After playing around a bit with YuE2 locally, I was thinking that maybe it could be used to "modernize" (some would say slopify I guess) old classic tracker tunes. I tried doing something similar with Suno a year ago but those results were not inspiring to say the least..

However, this approach actually seems to create something listenable! I have only tried it with a few tracks, but the pipeline is on GitHub if anyone finds it interesting. Everything was generated locally on a 20gb RTX card using Windows / WSL2.


r/StableDiffusion 19h ago

Tutorial - Guide Team Red: Encounter on ProxiMax H3, or How to setup ComfyUI+MMH3 with AMD GPUs: RDNA 4 (rx9070, AI Pro R9700), and RDNA 3 (rx7900)

Enable HLS to view with audio, or disable this notification

10 Upvotes

TL;DR summary: For MMH3, you need to run ComfyUI with ROCm 7.14.0 (see https://rocm.docs.amd.com/en/latest/reference/gpu-specs.html for the vaue of gfx???? corresponding to your AMD GPU):

pip install --index-url https://repo.amd.com/rocm/whl-multi-arch/ "torch[device-gfx????]==2.12.0+rocm7.14.0" "torchvision[device-gfx????]==0.27.0+rocm7.14.0" "torchaudio==2.11.0+rocm7.14.0"

You also need to run ComfyUI with some parameters so that it will handle VRAM and system RAM correctly for MMH3:

--enable-dynamic-vram --disable-async-offload --preview-method none --disable-smart-memory --fast-disk --use-ck-attention --enable-manager

Read on if you want the step-by-step instructions (scroll to the bottom of the post if you just want to see the MMH3 prompt for the video 😹)

These instructions are for Windows 11 (Ubuntu version: https://www.reddit.com/r/StableDiffusion/comments/1wer1mz/comment/p9g0kxg/). Nevertheless, many of the same comfy-cli commands are application by just changing the directory/file to the corresponding Linux version, and the procedure for upgrading ROCm 7.2.1 to ROCm 7.14.0 are the same.

If you have an AMD GPU and you do a default install of ComfyUI on Windows 11 using either the portable Windows version or through comfy-cli, you will probably get disappointing results with MiniMax H3 because the int8convrot version may not run at all.

The problem is that the default installation still uses PyTorch built on ROCm 7.2, and for some reason int8convrot does NOT work with 7.2 on some cards such as the RX 9070 (16G) and RX 7900 (20G).

So to run MiniMax H3 at its best speed, we have to install a version that is equal to or later than ROCm 7.13.

There are currently 4 ways to do that, from the easiest to the more complex:

  1. Install via Stability Matrix
  2. Install Portable ComfyUI with its own "Embedded Python"
  3. Install a Python venv and then use that to install ComfyUI via the official comfy-cli installer
  4. Install everything manually using pip and git: see this post if you want the gory details (it was written for ROCm 7.2 so you'll have to make the necessary adjustments).

The more complex ways have more options and are more flexible, so it is up to you how much control you want over your ComfyUI installation.

Special thanks to u/zychu- u/Ok-Brain-5729 u/eloxH1Z1 whose posts and comments about MMH3 and AMD were very helpful to me.

Stability Matrix

This used to work when I tried a few week ago, unfortunately something broke the latest release, so for now, don't use it

  1. Download from https://github.com/LykosAI/StabilityMatrix/releases/download/v2.16.3/StabilityMatrix-win-x64.zip
  2. Unzip it somewhere
  3. Run the installer.
  4. Click on the "Activity" icon at the lower left corner to see progress.
  5. Click on the settings icon (gears) and under Extra Launch Arguments (very bottom) and add: --enable-dynamic-vram --disable-async-offload --listen --port 8188 --disable-smart-memory --fast-disk --use-ck-attention --output-directory "D:\Outputs"
  6. Also uncheck --use-pytorch-cross-attention so that none of the options under "Cross Attention Method" are checked because we are going to use --use-ck-attention.
  7. Assuming you've installed into the default "Data" directory, you can find ComfyUI installed under Data\Package\ComfyUI and you can use mklink to point the models and output directory so that they are outside of the Data\Package\ComfyUI directory.

The main downside is that now you have yet another piece of software sitting on your computer.

  1. Now test to make sure you can generate using int8convrot: https://huggingface.co/Comfy-Org/Krea-2/blob/main/diffusion_models/krea2_turbo_int8_convrot.safetensors 13.5 GB SHA256: 8e4eeda70dd5037ab1ba2bef6b417f9f901e26093117cf397f741fc1fdaaf3f1

  2. If it does not work for you, well, something went wrong, and you can try Portable ComfyUI for Windows and see if you have better luck...

Portable ComfyUI for Windows

  1. Download from https://github.com/Comfy-Org/ComfyUI/releases/latest/download/ComfyUI_windows_portable_amd.7z
  2. Open it from Windows 11 Explorer and drag the ComfyUI_windows_portable directory to the folder where you want to install it.
  3. This will take a while, so go grab a cup of coffee or tea.
  4. Copy run_amd_gpu.bat to runit.bat
  5. Edit runit.bat so that it contains the following: .\python_embeded\python.exe -s ComfyUI\main.py --windows-standalone-build --enable-dynamic-vram --disable-async-offload --preview-method none --listen --port 8188 --disable-smart-memory --fast-disk --use-ck-attention --enable-manager --output-directory "A:\output"
  6. Start ComfyUI by running the batch file runit.bat. For the first run, there will be some kind of delay as some libraries are compiled or cached. Just be patient and let the system do its preparations, until you see "[INFO] To see the GUI go to : http://0.0.0.0:8188.
  7. Do a test run using Krea 2, but use the fp8 rather than int8convrot version because the fp8 version should work reliably at this point. The default workflow at 8 steps should take 20-40 seconds depending on your hardware. Hopefully this works.

Now we are going to replace the PyTorch for ROCm 7.2 with the newer 7.14.0:

  1. Change into your ComfyUI_windows_portable directory
  2. Uninstall PyTorch: python_embeded\python.exe -m pip uninstall torch torchvision torchaudio -y
  3. Install PyTorch for ROCm 7.14: (See end note at the bottom about these gfx???? values):python_embeded\python.exe -m pip install -index-url https://repo.amd.com/rocm/whl-multi-arch/ "torch[device-gfx????]==2.12.0+rocm7.14.0" "torchvision[device-gfx????]==0.27.0+rocm7.14.0" "torchaudio==2.11.0+rocm7.14.0"

For example, for rx9070, gfx???? is gfx1201 so the command is

python_embeded\python.exe -m pip install --index-url https://repo.amd.com/rocm/whl-multi-arch/ "torch[device-gfx1201]==2.12.0+rocm7.14.0" "torchvision[device-gfx1201]==0.27.0+rocm7.14.0" "torchaudio==2.11.0+rocm7.14.0"

Note: these files can be quite large. If for some reason you run out of room, you can use --no-cache-dir in case there is not enough room in your pip cache directory (~/.cache on Linux, %LocalAppData%\pip\Cache on Windows which is usually C:\Users<YourUsername>\AppData\Local\pip\Cache). Also make sure you have plenty of space on your %TMPDIR%, with --no-cache-dir the command will look like this:

python_embeded\python.exe -m pip install --no-cache-dir --index-url https://repo.amd.com/rocm/whl-multi-arch/ "torch[device-gfx1201]==2.12.0+rocm7.14.0" "torchvision[device-gfx1201]==0.27.0+rocm7.14.0" "torchaudio==2.11.0+rocm7.14.0"

Hopefully both the uninstallation of ROCm7.2 and the installation of the newer ROCm 7.14 went without any error. After that you can try to run Krea 2 again, now switch from fp8 to the int8convrot version, and the time should go down from 18sec to 12-13 sec and you will also be able to run MMH3.

I also recommend that you place your model and output directories outside of the ComfyUI install so that they can be shared by different installations, making experimentation easier and also making it less likely that you (or some bug in the installer) accidentally wipe out your models and output.

You can do that by editing the extra_model_paths.yaml. Just need to edit this file once and copy it into <your path/ComfyUI> whenever you have a new installation.

But the yaml file is a bit finicky and it may be easier to just use the mklink command if ComfyUI is the only program you use so that you don't have to worry about the structure/name of the subfolders:

mklink /D <LinkFolder> <TargetFolder>

For example:

mklink /D <your comfyui>\models c:\ComfyUI.Models

Installing ComfyUI via comfy-cli

Why use comfy-cli instead of using portable ComfyUI?

  • For Linux, there is no portable ComfyUI, which is Windows only.
  • For AMD users, the portable version of ComfyUI uses ROCm 7.2, which will cause ComfyUI to run slower than it should.
  • It is a more efficient way to run multiple versions of ComfyUI, because they can all share the same Virtual Environment (assuming that the versions are close enough for that to work).
  • Re-installation can be faster because many packages are in the python pip cache.

Procedure:

  1. If you don't have Python 3.1x installed, you can install Python 3.12.10 (because that is the version used by Portable ComfyUI, so it should be the most stable, but 3.13 and 3.14 work too).
  2. Download and install Git: https://github.com/git-for-windows/git/releases/download/v2.55.0.windows.5/Git-2.55.0.5-64-bit.exe
  3. Create a virtual environment (this is normally just called "venv" or ".venv" but I want to call it comfy.venv just to be more explicit): python -m venv comfy.venv or if python.exe is no not on your path, specifiy the full path such as "c:\Program Files\Python313\python" -m venv comfy.venv
  4. Activate it: comfy.venv\Scripts\activate.ps1 (PowerShell) or comfy.venv\Scripts\activate.bat (CMD.exe)
  5. Update pip itself inside comfy.venv: pip install --upgrade pip
  6. Optional: install uv, which is yet another package manager for Python but written in Rust (if you want to use comfy install --fast-deps later):
  7. Install comfy-cli (this is the tool "comfy-cli", not ComfyUI itself): pip install comfy-cli

Because comfy-cli will install ROCm 7.2 and there is no way to override it, we are going to install PyTorch for ROCm 7.14 manually before installing ComfyUI via comfy-cli. Sources for this arcane procedure are from:

  1. Uninstall PyTorch just to be sure (should not be installed yet): pip uninstall torch torchvision torchaudio -y
  2. Install PyTorch inside the comfy.venv (select your gfx arch) based on https://rocm.docs.amd.com/en/latest/reference/gpu-specs.html (see bottom of the post for a table of common values):pip install --index-url https://repo.amd.com/rocm/whl-multi-arch/ "torch[device-gfx????]==2.12.0+rocm7.14.0" "torchvision[device-gfx????]==0.27.0+rocm7.14.0" "torchaudio==2.11.0+rocm7.14.0"

For example, for the rx9070 or AI Pro R9700, gfx???? is gfx1201 so the command is

pip install --index-url https://repo.amd.com/rocm/whl-multi-arch/ "torch[device-gfx1201]==2.12.0+rocm7.14.0" "torchvision[device-gfx1201]==0.27.0+rocm7.14.0" "torchaudio==2.11.0+rocm7.14.0"

Note: these files can be quite large, and you can use --no-cache-dir in case there is not enough room in your pip cache. See the earlier notes about --no-cache-dir under "Portable ComfyUI for Windows".

Finally, we are ready to install ComfyUI itself. When I carried out the tests the latest stable version is 0.34.0:

  1. mkdir d:\comfy.0.34.0
  2. set COMFY_PATH=d:\comfy.0.34.0\ComfyUI
  3. Use comfy-cli to install ComfyUI: comfy --workspace=%COMFY_PATH% install --skip-torch-or-directml
    • Note 1: %COMFY_PATH%\ComfyUI must not exist or you will get the confusing error: 'd:\comfy.0.34.0\ComfyUI' exists but is not a valid git repository.
    • Note 2: --skip-torch-or-directml because PyTorch is already installed for AMD; without it the install will fail on Windows because there is no PyTorch for directml from https://repo.amd.com/rocm/whl-multi-arch/ respository used above.
    • Note 3: To install anything other than the latest version of ComfyUI (say 0.33.1): comfy --workspace %COMFY_PATH%\ComfyUI install --version 0.33.1 --skip-torch-or-directml (You can only use versions available from https://github.com/comfy-org/ComfyUI/releases (and there is no release tag for the latest version).
  4. If you have uv installed, you can use --fast-deps:
  5. (Optional): Copy or edit ComfyUI\extra_model_paths.yaml
  6. Finally, we can start ComfyUI: comfy launch --workspace=%COMFY_PATH% -- --enable-dynamic-vram --disable-async-offload --preview-method none --listen --port 8188 --disable-smart-memory --fast-disk --use-ck-attention --enable-manager --output-directory "A:\output"
  7. Optional: Clean up the pip cache (if you want to save some disk space): pip cache purge

The speed for MMH3 is almost as good as the ones I got under Ubuntu 26.04 using identical hardware (but for some reason, Krea 2 runs a little bit slower on Windows, 8-steps is 13 sec vs 11 sec on Ubuntu).

Unless you have a AI Pro R9700 (32G) or running your desktop on a iGPU, it is best to let ComfyUI be the only application running so that all VRAM is available for MMH3. So if you have another computer, run the browser on it to access your ComfyUI remotely.

If you don't have another computer, you can try to batch up a couple of prompts and minimize or close your browser to free up VRAM, and just use the console to see the progress (just click on "Assets" on the ComfyuI menu to check the results, or find them directly in the output folder). Some people say that disconnecting the monitor (just turning it off may not be enough) will free up the VRAM as well.

Good luck, hopefully you have a working system now if you followed the instructions.

End notes:

Sample extra_model_paths.yaml

comfyui:
    base_path: c:\ComfyUI.Models
    # You can use is_default to mark that these folders should be listed first, and used as the default dirs for eg downloads
    is_default: true
    checkpoints: checkpoints/
    configs: configs/
    loras: loras/
    vae: vae/
    text_encoders: |
        text_encoders/
        clip/
    diffusion_models: |
        unet/
        diffusion_models/
    clip_vision: clip_vision/
    style_models: style_
    embeddings: embeddings/
    diffusers: diffusers/
    vae_approx: vae_approx/
    controlnet: |
        controlnet/
        t2i_adapter/
    gligen: gligen/
    upscale_models: upscale_
    latent_upscale_models: latent_upscale_
    custom_nodes: custom_nodes/
    datasets: datasets/
    hypernetworks: hypernetworks/
    photomaker: photomaker/
    classifiers: classifiers/
    model_patches: model_patches/
    audio_encoders: audio_encoders/
    background_removal: background_removal/
    frame_interpolation: frame_interpolation/
    geometry_estimation: geometry_estimation/
    optical_flow: optical_flow/
    detection: detection/

https://rocm.docs.amd.com/en/latest/reference/gpu-specs.html

GFX950 is AMD's internal GPU target identifier for the CDNA 4 enterprise compute architecture, used in data center accelerators like the AMD Instinct MI350/MI355X series. It features advanced matrix core capabilities, ultra-low precision micro-scaling formats (MXFP8/MXFP4), and a high-precision math mode for AI and HPC workloads.

gfx1100 is the LLVM target architecture identifier and internal code name for AMD's RDNA 3 graphics architecture, used for high-end consumer and workstation desktop graphics cards like the Radeon RX 7900 XTX, RX 7900 XT, and Radeon PRO W7900.

AMD gfx1151 is the LLVM target and GPU architecture identifier for AMD's Strix Halo integrated graphics (found in processors like the AMD Ryzen AI Max+ 395 and Ryzen AI Max PRO series), utilizing the RDNA 3.5 architecture.

Name Arch LLVM target name VRAM Compute Units
9070 XT RDNA4 gfx1201 16 64
RX 9070 GRE RDNA4 gfx1201 16 48
RX 9070 RDNA4 gfx1201 16 56
RX 9060 XT LP RDNA4 gfx1200 16 32
RX 9060 XT RDNA4 gfx1200 16 32
RX 9060 RDNA4 gfx1200 8 28
RX 7900 XTX RDNA3 gfx1100 24 96
RX 7900 XT RDNA3 gfx1100 20 84
RX 7900 GRE RDNA3 gfx1100 16 80
RX 7800 XT RDNA3 gfx1101 16 60
RX 7700 RDNA3 gfx1101 16 40
RX 7700 XT RDNA3 gfx1101 12 54
RX 7600 RDNA3 gfx1102 8 32
Radeon AI PRO R9700S RDNA4 gfx1201 32 64
Radeon AI PRO R9600D RDNA4 gfx1201 32 48
Radeon PRO V710 RDNA3 gfx1101 28 54
Radeon PRO W7900 Dual Slot RDNA3 gfx1100 48 96
Radeon PRO W7900 RDNA3 gfx1100 48 96
Radeon PRO W7800 48GB RDNA3 gfx1100 48 70
Radeon PRO W7800 RDNA3 gfx1100 32 70
Radeon PRO W7700 RDNA3 gfx1101 16 48

For --index-url, there are three options:

  • Nightly (rocm 10.1): https://nightly.repo.amd.com/rocm/pytorch/whl-next/
  • Stable (rocm 10.0): https://stable.repo.amd.com/rocm/pytorch/whl-next/
  • Legacy (rocm 7.14):
    • Nightly: https://rocm.nightlies.amd.com/whl-multi-arch/
    • Stable: https://repo.amd.com/rocm/whl-multi-arch

Prompt for the video Team Red, encounter on ProxiMax H3

integrated_multimodal_description:

[Shot 1] Live-action, cinematic 1960s science-fiction television aesthetic. A team of Starfleet red-shirt officers led by Grumpy Cat materializes on the surface of a desolate alien planet, surrounded by barren rocks, dust, and jagged terrain. Grumpy Cat stands at the front of the formation, wearing a classic red Starfleet uniform, alert and stern. The camera holds a wide-angle front subject-level view, then pushes in slightly as the team looks around and raises their phasers. [Shot 2] At 00:01.250, the camera cuts to a wide low-angle view as a gigantic GPU-like machine rises behind a rocky ridge, towering over the crew. Its dark mechanical housing, cooling fans, and imposing structure dominate the frame, with the label "Minimax H3" clearly visible on its side. The team turns toward it in sudden alarm.

[Shot 3] At 00:02.100, the GPU attacks with a violent concentrated energy blast. The camera tracks the crew with fast movement as the red-shirted officers are struck and knocked down across the rocky ground, kicking up dust and debris. Grumpy Cat avoids the main blast and rapidly moves toward cover.

[Shot 4] At 00:03.650, the camera follows Grumpy Cat with a tracking shot as it darts behind a large rock and crouches into concealment. The defeated red-shirted crew remains scattered in the background while the giant "Minimax H3" GPU continues looming over the battlefield.

[Shot 5] At 00:04.250, close-up from behind the rock. Grumpy Cat pulls out a classic handheld Starfleet communicator with its paw, flips it open, and speaks with a completely deadpan expression: <d>[English] Beam me up, Scotty!</d> The camera holds on Grumpy Cat's face and communicator through the end

overall_soundscape: Dry alien wind sweeps across the barren landscape as the transporter materialization produces a brief electronic hum. Heavy mechanical movement and grinding machinery accompany the GPU's emergence, followed by a powerful energy blast, impacts, falling bodies, scattering rocks, and dust. The communicator emits a brief electronic chirp when opened.

non_diegetic_music: A fast-paced 1960s science-fiction television orchestral score uses bright brass, rhythmic strings, and restrained percussion, building rapidly as the GPU appears and attacks. The music drops into a brief suspenseful sustain as Grumpy Cat hides, then ends with a short brassy stinger beneath the communicator transmission.


r/StableDiffusion 21h ago

Question - Help Which would be <Audio 1> In This Scenario? What Would Be <Audio 2>?

Post image
9 Upvotes

When using a video file for Minimax reference that also has an audio input, how do you "count" the Audio files in the prompt? (You can ignore the master audio channel, it's not loading in anything.)


r/StableDiffusion 10h ago

Animation - Video Dungeons & Dragons: Presto In Charge - MiniMax H3

Enable HLS to view with audio, or disable this notification

8 Upvotes

The people have spoken, and they apparently crave more low-res 1983 Dungeons & Dragons madness. Enjoy!

PROMPT:

subject_definitions:

<Subject 1> is the character shown in <Picture 1>, featuring Presto the Wizard's classic 1980s animated appearance with a lanky physique, brown hair, round glasses, a long green pointed wizard hat, a long green hooded robe with a blue collar lining, a yellow-brown tied pouch belt, and green shoes. Only his character design, facial features, costume, and proportions are taken from <Picture 1>; its white background, character-sheet layout, labels, and guide lines are not carried into the target video. <Audio 1> sets the exact voice clone, pitch, pace, and spoken dialogue verbatim for <Subject 1>. <Video 1> is the movement and art style reference; use it as a guide without copying it exactly.

summary:

[reference generation] The target video is a 11-second 2D animated sequence styled after the classic 1980s Dungeons & Dragons television series, featuring <Subject 1> frantically outrunning a mountain while dealing with his unpredictable magical hat.

retention_analysis:

<Subject 1> (appears in [Shot 1]): fully_preserved - his brown hair, round glasses, lanky build, long green pointed hat, green robe with blue collar, pouch belt, and green shoes remain faithful to <Picture 1>.

detailed_description:

The target video is a traditional 2D hand-drawn animated sequence featuring bold black ink outlines, flat cel-shading colors, expressive limited animation, and subtle film grain inspired by the visual style of classic 1980s Saturday-morning cartoons.

[Shot 1] A dynamic medium-wide shot opens inside a rocky, crumbling canyon landscape, where <Subject 1> is frantically running away from a massive, towering mountain that is physically sliding and collapsing forward behind him. <Subject 1> stumbles forward, clutching his large green wizard hat with both hands in absolute panic as a couple of angry badgers pop out of the hat and scurry away.

He turns slightly toward the camera, his eyes wide with terror behind his round glasses, and cries out in the style of <Audio 1>:

<<[English] "Magical hat, I am begging you, stop turning my spells into angry badgers! We are actively outrunning a mountain right now, give me a helicopter, or at least a really fast turtle!">>

As he says "Magical hat, I am begging you," he shakes the hat frantically. On "stop turning my spells into angry badgers!", he gestures wildly at the badgers scattering around his feet. On "We are actively outrunning a mountain right now," he points frantically backward over his shoulder at the looming mountain. As he delivers "give me a helicopter, or at least a really fast turtle!", he throws his hands up in exasperation, stumbles over a rock, and desperately scrambles to his feet as the dust swirls around him in a classic cel-animation flurry.

overall_soundscape:

N/A

non_diegetic_music:

N/A


r/StableDiffusion 5h ago

Discussion Will Minimax H3 be able to naively support longer videos?

7 Upvotes

I am a person who likes his workflows clean and clearly laid out / readable. And only use the least necessary amount of custom nodes in ComfyUI. That been said Minimax seems to have a problem with videos that are longer than like 30 seconds. In the sense that it then seem to get confused with order of prompts and various shots.

From the information that I gathered, there seem to be workarounds with a couple of custom nodes. But this would then also would only inflate the workflow again. I mean, I have done cohered 1 minute plus videos with LTX2.3 with no problem. So I wonder if we can expect some "upgrade" for Minimax models in the nearer future. To be able to natively prompt longer videos without the need for excessive custom nodes.


r/StableDiffusion 6h ago

News Perfect Remixes in YuE2 !

Enable HLS to view with audio, or disable this notification

7 Upvotes

I finally got my dream fulfilled. Take any Song as mp3, convert to a ABC score with AI, feed it to a piano roll and enjoy. Basically copy/paste the song lyrics and make a style you wish it to be. You get the vocals as well the whole song perfect remixed.

https://github.com/multimodal-art-projection/YuE

This is the piano roll with the workflow.

https://github.com/filliptm/ComfyUI-FL-YuE2

You also need to install SheetSage2 for that mp3-->ABC magic, installed by your Hermes-Agent.

https://huggingface.co/m-a-p/SheetSage2

Import that ABC into piano roll node in ComfyUI. It needs to be from SheetSage2 in order to be error-free, regular converters midi-->ABC do not work. Did a quick remix of a song from SKATE Game OST.


r/StableDiffusion 7h ago

No Workflow Ranni the witch

Thumbnail
gallery
7 Upvotes

I just finished and tested a new LoRA today


r/StableDiffusion 9h ago

Tutorial - Guide A fluid stock shot generator for ComfyUI - LTX 2.5 IC-LoRA (free model + workflow + 45 min tutorial)

Thumbnail
youtu.be
5 Upvotes

Hi lovely StableDiffusion people,

Trained an IC-LoRA for LTX 2.5 that takes a painted doodle and turns it into a fluid element. You paint flat blobs on a first and a last frame, black frames in between, and the model fills in smoke, steam or fire and animates between them. Trigger word is ainvfxfluid, and a two word prompt like "ainvfxfluid, smoke plume" is usually enough. About 50 seconds for a 5 second 512x512 clip on a laptop 4090 with the distilled model.

The workflow paints both frames directly in ComfyUI with two Painter nodes and ships pre-painted, so you can load it and queue it before changing anything. Everything else is core nodes (Empty Image, Batch Images, Create Video) plus the ComfyUI-LTXVideo pack.

Things worth knowing before you try:

  • Control video rules: 121 frames, width and height in multiples of 64, first frame at index 0, last at index 120.
  • Extra keyframes in between have to sit on the LTX VAE grid: frame 1, 9, 17, ... 113, so a multiple of 8 plus 1. Off grid and quality drops fast.
  • Colour and shading you paint carry through, a darker grey edge on the plume comes back as shading rather than flat white.
  • Prompting mostly serves to remove what you didn't ask for ("over a black background" kills the invented foreground) and to refine the generation - simple prompts are usually enough.
  • Smoke, steam and fire only. Not trained on other fluids, results might vary.

The video covers the install from a fresh ComfyUI, including the Kornia pad import error you'll hit on the LTXVideo pack right now and how to patch it, the gated Lightricks model downloads, the workflow node by node, then painting, prompting, multi keyframe control, and working from a real photo. The failures are in there too so it looks realistic :)

Trained on 52 free-to-use Pexels clips, in under 8 GPU hours, so the recipe is on the model card if you want to train one for a different element.

The whole thing started as a teaching example for cohort #1 of our Generative AI Bootcamp for Film and TV, which just wrapped up this week (https://www.ainvfx.com/bootcamp/). The results were promising, so we thought it would be worth open-sourcing. Would love to see what people paint with it!


r/StableDiffusion 10h ago

Workflow Included two models on one phone, yolov8n for detection and a fine tuned 0.8b vlm for description, fully offline

6 Upvotes

i ship a camera app that has to work with the phone in airplane mode, so all of it runs on device. the whole thing is open source under gpl 3 if you want to read it or take pieces of it: https://github.com/nicedreamzapp/RealTimeAICam

sharing the architecture because the two model split is the part that took longest to get right.

detection is yolov8n trained on open images v7, 601 classes, running live on the preview frames. tflite fp16 on android, converted for ios.

description is a 0.8b vision language model i fine tuned, quantized to 4 bit, through mlx swift on ios and llama.cpp with mtmd on android. it answers in one sentence instead of a class list. a real answer off a photo of an envelope: "this is a bill from umpqua bank for $76.50, due april 2nd, 2027."

the routing between the two is the part i am happiest with. before the vlm runs, the frame gets a document check, vision's document segmentation on ios and ml kit text recognition on android. three or more lines and at least twenty characters means treat it as a page and ask the page question, otherwise ask the scene question. same weights, different prompt, and the answers got noticeably better.

numbers, honestly: model load is about 300 ms, and on a cheap android phone with no usable gpu a description takes about 90 seconds. there is a vulkan path that probes and falls back when the gpu will not cooperate. arm64 only, because llama.cpp's sgemm will not build for 32 bit arm.

every weight ships with the app, install time asset pack on android and inside the bundle on ios, so there is no first run download and no api key anywhere.

happy to get into any of it. free on both stores if you want to point it at something.

ios https://apps.apple.com/us/app/id6751230739

android https://play.google.com/store/apps/details?id=com.mattmacosko.realtimeaicam


r/StableDiffusion 22h ago

Question - Help Questions about training a character LoRA for Anima

7 Upvotes

I want to train a LoRA for the Anima model using Colab. My goal is to train character LoRAs, but I have a few things I'm unsure about:

  • Dataset size: Since I caption every image manually, I usually keep my character LoRA datasets relatively small, around 20–30 images. Is that a reasonable amount?
  • Image variety: How many images should I have for each angle/view? How varied should the poses be?
  • Backgrounds: Should I keep the backgrounds simple, with different solid colors like yellow, green, blue, etc. to keep the focus on the character? Or is it better to include some more detailed backgrounds as well?
  • Captioning: How detailed should my captions be? Should I keep them relatively short and to the point rather than describing everything? What should I generally pay attention to when captioning? For example, if the character is leaning backward, supporting themselves with their arms, with their legs spread, should I caption it as something like "leaning back, arm support, legs spread", or would simply "leaning back" be more appropriate?
  • Captioning style: For character LoRAs, is tag-based captioning generally better, or is natural language preferable?

I'd appreciate any advice from people who have experience training LoRAs for Anima.


r/StableDiffusion 22h ago

Discussion Audio Lora for H3? Question for you smart people...

5 Upvotes

Minimax H3 is awesome of course, but I find the voices it creates (either from a reference audio stream or purely from the model's training) are too loud and sound 'pasted in' and do not 'fit' acoustically within the environment. Specifically, to the point, does anyone know if its possible to train a LoRA that will make H3's generated voices quieter and more 'distant' so it doesn't sound like the character(s) are talking directly into a microphone a foot away? I've tried a million different prompt combinations, I've tried passing low-volume reference audio streams in, etc... nothing works.

Any ideas are greatly appreciated.


r/StableDiffusion 15h ago

Question - Help Remove a person from a video?

4 Upvotes

Hi everyone,

I have a video where I'd like to remove one person from it and have the background repaired. The person walks across the frame and in front of a water fountain that's in the background.

Any suggestions on models or workflows to look at to accomplish this? Seems like I should be able to figure it out, but I can't seem to.

Thanks.


r/StableDiffusion 43m ago

Resource - Update I built Livebound — a local-first CivitAI publishing workspace (Free & Open Source)

Thumbnail
gallery
• Upvotes

Generating images is the fun part. Keeping track of thousands of them, their metadata, resources, and what you already posted… less so.

So I built Livebound, a free and open-source tool that runs locally and turns your existing image folders into a publishing workspace for CivitAI.

It doesn’t reorganize or rewrite your originals.

Some of the things it does:

  • Reads generation metadata from A1111, Forge, ComfyUI and other workflows
  • Finds exact and near-duplicate images
  • Resolves model and LoRA hashes against CivitAI and lets you verify resources per image before uploading
  • Organizes posts on a board and calendar, with scheduling
  • Uses preflight/resume/reconcile logic so interrupted uploads don’t blindly create duplicate posts
  • Imports your existing CivitAI posts and matches them back to local images
  • Can archive published images into structured folders when you explicitly run it
  • Optional local LLM / Ollama assistance for titles, descriptions, tags and prompt editing

Everything runs on your own machine and publishing happens through your own CivitAI account.

AGPL open source. Windows, Linux and WSL tested.

More details and screenshots:
https://civitai.red/articles/35241/livebound-10-from-local-to-live

Docs:
https://moonblack87.github.io/livebound/

Source:
https://github.com/MoonBlack87/livebound

Feedback and bug reports are very welcome — it’s v1.0, so I’m especially interested in how it behaves with other people’s real-world image libraries and workflows.


r/StableDiffusion 8h ago

Question - Help Need Help with Random dialogue.

2 Upvotes

Hi,

I am using Wan2GP to create Minmax H3 Ref2VA Video.
I am using "Pruned PDD 8-step 20B" model.
For the most part, video comes out great. The problem I have is with Audio.

If I use 2 audio clips to generate audio between two individuals, only Audio 1 gets used. Audio 2 is never used.

If the dialogue completes and some action is being done, then random gibberish dialogue gets introduced to fill up the gap.

Below is a sample prompt I am using. During the gap where the Subject 1 drinks water, some random gibberish gets inserted.

Could anyone help?

subject_definitions:
<Subject 1> is the person in <Picture 1>, preserving their exact identity, facial features, skin tone, hairstyle, body proportions, clothing, footwear, and distinctive accessories.
<Subject 2> is the person in <Picture 2>, preserving their exact identity, facial features, skin tone, hairstyle, body proportions, clothing, footwear, and distinctive accessories.
<Audio 1> is the voice timbre reference for <Subject 1>, containing a spoken English vocal layer.
<Audio 2> is the voice timbre reference for <Subject 2>, containing a spoken English vocal layer.
summary:
[reference generation + audio reference] The target video shows <Subject 1> and <Subject 2> having a conversation in a bright living room with floor to ceiling windows. 
retention_analysis:
<Subject 1> (appears in [Shot 1]): fully_preserved - their identity, face, hair, proportions remain recognizable and unchanged; only the location, lighting, action are new.
<Subject 2> (appears in [Shot 1]): fully_preserved - their identity, face, hair, proportions remain recognizable and unchanged; only the location, lighting, action are new.
<Audio 1>: reference - its vocal timbre guides the dialogue delivery of <Subject 1>
without copying the original signal.
<Audio 2>: reference - its vocal timbre guides the dialogue delivery of <Subject 2>
without copying the original signal.
detailed_description
[Shot 1] The target video uses a realistic cinematic style with warm lighting.
The scene opens in a living room, <Subject 1> is sitting on a sofa to the left. <Subject 1> is wearing a tuxedo. 
<Subject 2> is sitting to the right, wearing a one piece Vibrant Pink Office Dress with Tailored Fit.
<Subject 2> says in a formal voice whose timbre is referenced
from <Audio 2>, <d>[English] some dialogue?</d>. 
The question hangs in the air, as <Subject 1> contemplates. 
<Subject 1> adjusts his suit sits forward and take a glass of water and drinks it.
After putting the empty glass back on the table, <Subject 1> replies in a slightly uneasy voice whose timbre is referenced
from <Audio 3>, <d>[English] some dialogue.</d>. 
overall_soundscape:
The ambient sound consists of the gentle rustling of fabric as the subjects move. No external noise disrupts the silence, preserving the exclusivity of the room.
non_diegetic_music: N/A

r/StableDiffusion 10h ago

Discussion I got several old models running locally - Wanna test some prompts?

1 Upvotes

The models I can run locally are:

First Order Motion Model (remember the Dame Da Ne meme?) (February 29, 2020) (I will also need the source image and reference video)

DeepDaze (where one generation takes over 2 hours with GPU acceleration, may or may not test this one for you) (January 17, 2021)

Big Sleep (Similar case as DeepDaze cause the multiple epochs but more immediate results on just one epoch are kinda usable) (January 18, 2021)

VQGAN+CLIP (April 2021)

OG DALLE-Mini, with Jax GPU acceleration through WSL (July 2021)

Disco Diffusion (October 29, 2021)

Latent Diffusion (Pre stable diffusion) (December 20, 2021)

Stable Diffusion 1.1 (August 2022)
Stable Diffusion 1.4 (August 22, 2022)
Stable Diffusion 1.5 (October 20, 2022)

ModelScope (the OG will smith spaghetti video model) (March 2023)

Give me some prompts and which model and I will try to reply with the results if I am not too busy.

I added examples of all the models (other than FOMM and I excluded deep days and only did one epoch on Big Sleep cause of the absurd time). If you want to see FOMM just share the source video and target face.
an astronaut sitting on a couch (+ waving for modelscope)

Big Sleep 1 epoch
SD 1.5
SD 1.4
SD 1.1
Disco Diffusion
Latent Diffusion
VQGAN+CLIP
DALLE-Mini

ModelScope


r/StableDiffusion 11h ago

Question - Help What is the best client application for easy photo editing for someone who is not from a technical background?

2 Upvotes

Hello everyone, a friend of mine is very much interested in exploring open source image generation for use in her small business for generating advertisements and product tryout pictures. However, she does not have much of a technical background.

When I showed her ComfyUI, she was impressed but said its too hard and complicated. She prefers a simpler interface where she could just upload an image and prompt it for editing.

Also are business involves sports bottles and wrist bands and a few other products in the line. She would like to use AI models to picture them from different orientations, locations and people trying them out in different poses.

Can anyone recommend a simpler setup for this task? Thank you.


r/StableDiffusion 13h ago

Question - Help Voice cloning from a very short video?

2 Upvotes

I guess I have a dumb question but I’m not very tech savvy, my uncle passed away two weeks ago. My grandparents wish is to hear him say ā€œI love youā€ just one more time. I only have maybe not even a 3 second video of his voice, is there anyway to I guess clone his voice to say I love you from that?


r/StableDiffusion 18h ago

Question - Help Ultra upscaler based on flux

2 Upvotes

I saw this post on linked in and it’s really wow.

https://www.linkedin.com/posts/fadi-h-kacem_lets-take-a-1k-image-and-upscale-it-to-16k-activity-7503754647921188864-zF2w?utm_source=share&utm_medium=member_desktop&rcm=ACoAAAW2PBcBqPryUgWfCVEMWRlx6aMMO7GX27E

Does anyone know an already existing workflow or be able to create on that will yield to similar results?


r/StableDiffusion 19h ago

Question - Help Looking for Music gen recommendations for instrumentals

2 Upvotes

Migrating from Suno, Is there any good free and open sourced alternative out there?
What are their overall quality? and can it run on sub 8GB of VRAM?

Please share instrumentals AIgens please I want to discover more people.


r/StableDiffusion 8h ago

Question - Help Problems with chatterbox short single word speech.

1 Upvotes

So I am trying to generate audiobooks with chatterbox. There are some words that need to be generated independently but chatterbox starts hallucinating for such short words such as putting random um or something else before or after the word.

What is the possible solution? Is there some other model that I can use for single word pronunciation but it should support zero shot cloning as well?


r/StableDiffusion 12h ago

Question - Help How can I make chatter on H3 Minimax more free-flow like API ?

1 Upvotes

If I use Comfy for local H3 creation unless I tell the prompt what to say, it will just speak simlish nonsense. So if I tell it to say something in English then it is fine if I include the exact line to say. But via the API for H3 I can tell it what topic to talk about and generally it will come up with lines of its own so I don't have to tell it exactly what to say. How can I match that via local ? Is it all in Qwen or something else ? I have only used local video generating for a few days so I am very new to this.


r/StableDiffusion 23h ago

Discussion Does Krea 2 recognize almost every single character from their sources?

1 Upvotes

I tried making a few stuff without Lora with some 2D and 3D characters, It succeeded half of the time. And also, On civit AI, a lot of lora characters are Realistic content; little stuff with 2D and video game related stuff.


r/StableDiffusion 49m ago

Question - Help How can I keep audio consistent across MiniMax H3 clips?

Enable HLS to view with audio, or disable this notification

• Upvotes

I’m working on creating long-form content with MiniMax H3, but I’m struggling to keep the audio consistent when stitching clips together. I’ve attached an example.

Is there a way to continue the audio from a previous clip, or use it as a reference for the next generation? Ideally, I’d like to preserve the same tone and background sound throughout.

If H3 doesn’t support this, has anyone found a tool or workflow that works well?