🖥️Speech to Text Local Model
Run Whisper on your own GPU inside LLM Party
- audio
- text
This is the node that turns "type your prompt" into "talk to your agent." It runs OpenAI's Whisper speech-recognition model locally - no API key, no per-minute billing, no network call once the weights are on disk - and hands the transcript straight out as text you can feed into any LLM node in the pack. It's the entry point for the voice-driven workflows the README talks about: talk to a customer-service agent, dictate a prompt for an image workflow, feed a podcast clip in and get a summary out.
Unlike Weather Tool or Weekday Tool, this isn't a function-calling tool the agent decides to invoke - is_output_node is true, meaning it's a terminal node in its own right. Wire audio in, get text out, and use that text however you like downstream: as a prompt, as input to another LLM node, or just displayed as the transcription result.
Inputs and output
model_name_or_path(defaultopenai/whisper-small) - this follows the same pattern as the pack's other local model loaders: it takes either a Hugging Face repo id (like the default) or a local filesystem path to weights you've already downloaded.whisper-smallis a reasonable default - noticeably more accurate thantiny/base, still light enough to run on modest hardware. If you need better accuracy and have the VRAM, swapping inopenai/whisper-mediumoropenai/whisper-large-v3is a one-field change.audio- a native ComfyUIAUDIOsocket, so you can wire in whatever upstream node produced or loaded the clip.audio_path- a plain string, letting you point straight at a file on disk instead of routing anAUDIOsocket through your graph. Handy if the clip already lives on the filesystem and you don't want to build a load step just to feed this node.is_enable- boolean on/off, same as most nodes in this pack.
Output is a single text (STRING) - the transcript, ready to plug into a prompt field or another node.
How it actually works
Whisper is a real, well-known open speech-recognition model from OpenAI, and this node runs it through the standard local-inference path (Hugging Face transformers) rather than calling OpenAI's hosted API. That means the first time you run it with a given model id, expect a one-time download from the Hugging Face Hub - a few hundred MB for whisper-small, more for the larger checkpoints - before transcription can start. After that first pull it's fully offline.
Installing it
Standard LLM Party install: search comfyui_LLM_party in ComfyUI Manager and install, or clone it by hand -
cd ComfyUI/custom_nodes
git clone https://github.com/heshengtao/comfyui_LLM_party
then pip install -r requirements.txt inside your ComfyUI Python environment (via python_embeded\python.exe on the portable Windows build), and restart ComfyUI.
Where people get burned
Audio nodes across the whole ComfyUI ecosystem tend to hit the same wall, and Whisper is no exception: transcription libraries generally lean on ffmpeg to decode whatever audio format you feed them, and a missing or non-PATH ffmpeg install is one of the most common reasons a working-looking audio node throws an unhelpful error on the very first run. If transcription fails immediately with no obviously audio-specific error message, that's the first thing to check before you go chasing a model-loading bug.
Second: the first run needs internet access to pull model_name_or_path from Hugging Face, same as the pack's other local-model loaders - if you're running fully air-gapped, pre-download the weights and point model_name_or_path at the local folder instead of the repo id. And as with any of this pack's dependency-heavy nodes, if pip install -r requirements.txt chokes on version conflicts, try requirements_fixed.txt before you start hand-pinning packages yourself.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| model_name_or_path | STRING | openai/whisper-small | — |
| audio | AUDIO | — | |
| is_enable | BOOLEAN | true | — |
| audio_path | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| text | STRING | — |