Nodes/ComfyUI_Step_Audio_EditX_SM/Step_Audio_EditX_SM_Model
ComfyUI Node

Step_Audio_EditX_SM_Model

The boring half of Step-Audio-EditX that makes the interesting half work

By smthemex·Created 10 months ago·Updated 10 months ago· 28
Step_Audio_EditX_SM_Model
    • model
    model_source

    Every ComfyUI workflow has a loader node you'll never think about again, and this is that node for Step-Audio-EditX. The pack is only two nodes: this one loads the model, and the Step_Audio_EditX_SM_KSampler does the actual voice cloning and audio editing. Loader first, always - the sampler can't do anything until this node has done its slow, heavy lifting.

    What it's actually loading is more interesting than it looks. Step-Audio-EditX, from StepFun, is an LLM-based audio model: an LLM core that emits audio tokens, plus a separate Step-Audio-Tokenizer that turns those tokens into sound. That's why this node has one job and two models. It also spins up a FunASR Paraformer transcription model (engcunqin/speech_paraformer-…) so the pipeline can figure out what your input audio says - that transcription is what gets edited. So when you hit "Queue" and stare at the loading bar, you're actually waiting on three models, not one.

    The one input that matters

    The only knob is model_source, a dropdown with four values:

    • local - read from ComfyUI/models/SAEditX/ (see below). This is the one to use once you've downloaded the models once.
    • auto - default-ish behavior, tries to pull from Hugging Face automatically.
    • huggingface / modelscope - force-download from one or the other. ModelScope is the one to pick if you're on a slow connection to HF, common in Asia.

    The output is a single model object (type Step_Audio_EditX_SM_Model), which wires straight into the sampler's model input. Nothing else connects to it. That's the whole graph: loader → sampler.

    Installing and getting the models

    This is the same install as the whole pack, so it's worth doing right once:

    cd ComfyUI/custom_nodes
    git clone https://github.com/smthemex/ComfyUI_Step_Audio_EditX_SM
    cd ComfyUI_Step_Audio_EditX_SM
    pip install -r requirements.txt
    

    Restart ComfyUI, then grab two model directories. The layout is exact - subdirectories included, no nesting shortcuts:

    ComfyUI/models/SAEditX/
    ├── Step-Audio-EditX/        # all files, incl. subdirs
    └── Step-Audio-Tokenizer/    # all files, incl. subdirs
    

    Both come from stepfun-ai/Step-Audio-EditX and stepfun-ai/Step-Audio-Tokenizer on Hugging Face (ModelScope mirrors exist). Between the two you're looking at tens of GB - this is an fp16 LLM, so plan your disk. If you'd rather let the node download them itself, set model_source to auto or huggingface and skip the manual step.

    Where people get burned

    • "Node does not find my models" - the classic. Either the files aren't exactly under ComfyUI/models/SAEditX/Step-Audio-EditX / Step-Audio-Tokenizer, or the download never completed. Check the folder names byte-for-byte, then try model_source = auto to force a clean download.
    • Silent audio. The requirements pin transformers==4.53.3 and it's not an accident: the README is blunt that newer transformers breaks token handling and you get no sound, no error. If your environment drifts past 4.53.x, that's your first suspect.
    • funasr installs, then the console hints you're missing one more library. The README literally says "I forget which one" - read the console output at load time and pip install whatever it names.

    This is the highest-friction node in the pack to set up, and it's one-time friction. Get the loader green and the sampler is the fun part.

    CategoryStep_Audio_EditX

    Inputs (1)

    NameTypeDefaultDescription
    model_sourceCOMBO4 options: local, auto, modelscope, huggingface

    Outputs (1)

    NameTypeDescription
    modelStep_Audio_EditX_SM_Model