Nodes/comfyui_LLM_party/☁️Fish TTS
ComfyUI Node

☁️Fish TTS

Cloud voice cloning and text-to-speech inside ComfyUI

By heshengtao·Created 2 years ago·Updated 7 days ago· 2,321
☁️Fish TTS
    • audio_path
    • audio
    is_enabletrue
    input_string
    reference_audio_path
    reference_text
    reference_id
    api_key

    The README for comfyui_LLM_party describes the pack as covering everything from a first LLM chatbot to "the one-stop LLM + TTS + ComfyUI workflow required by streaming media workers" - and Fish TTS is the audio half of that promise. It's a text-to-speech node wired to Fish Audio's hosted API, and unlike EasyOCR or the pack's local model loaders, it's a cloud service through and through - the cloud emoji in its display name is the pack author's own shorthand for "this costs an API call, not local compute."

    Fish Audio (the company behind the open-source Fish Speech project) built a reputation on voice cloning quality - give it a short sample of a voice and it can speak new text in that voice. This node exposes that capability without leaving your ComfyUI graph.

    How it works

    You send text and get audio back. What makes it a cloning TTS node rather than a fixed-voice one is how you specify the voice: either an instant clone from a short reference clip, or a saved voice you've already set up on your Fish Audio account.

    The inputs and outputs that matter

    • input_string - the text to speak.
    • reference_audio_path + reference_text - the instant-cloning path: a short local audio sample plus its transcript, so the API knows what voice to imitate. Use these together, not as separate options.
    • reference_id - the alternative path: an existing voice model ID already saved on your Fish Audio account, if you've set one up there instead of cloning fresh each time.
    • api_key - your Fish Audio API key. Required; there's no free/keyless fallback for this node.

    Outputs: audio_path (STRING, the saved file location) and audio (the native ComfyUI AUDIO type) - wire the latter straight into Save Audio or Preview Audio.

    How to install it

    Search comfyui_LLM_party in ComfyUI Manager and install, restart, then set your Fish Audio api_key either directly on the node or in the pack's config.ini alongside your other provider keys. Manual install:

    cd ComfyUI/custom_nodes
    git clone https://github.com/heshengtao/comfyui_LLM_party.git
    

    Run pip install -r requirements.txt from the pack's folder using ComfyUI's own Python, then restart. No local model download is involved for this specific node - the heavy lifting happens on Fish Audio's servers - but the pack's shared requirements.txt still pulls in everything its local-model and OCR nodes need, so the install itself can take a while regardless of whether you end up using those.

    Common issues & troubleshooting

    Requests fail outright. Almost always a missing or invalid api_key - this node has no offline fallback, so an empty key means every call fails at the API boundary, not inside ComfyUI.

    Cloned voice sounds off. Voice cloning from a short reference is sensitive to sample quality - background noise, multiple speakers, or a clip that's too short will degrade the clone. A clean, single-speaker sample with an accurate reference_text transcript gives the best result.

    Unsure whether to use reference_id or reference_audio_path. Pick one path per run rather than filling in both - reference_id is for a voice you've already registered on the Fish Audio platform, reference_audio_path/reference_text is for cloning fresh from a local sample each time.

    Category大模型派对(llm_party)/音频(audio)

    Inputs (6)

    NameTypeDefaultDescription
    is_enableBOOLEANtrue
    input_stringSTRING
    reference_audio_pathoptSTRING
    reference_textoptSTRING
    reference_idoptSTRING
    api_keyoptSTRING

    Outputs (2)

    NameTypeDescription
    audio_pathSTRING
    audioAUDIO