# ComfyUI-MiMoASR CLI Drives the `MiMoASRLoader` + `MiMoASRTranscribe` nodes over ComfyUI's HTTP + WebSocket API. Same `ComfyClient` template used across the other `ComfyUI-*` packages. ## Quick start ```bash # uv handles dependencies via the PEP 723 inline script metadata uv run python mimo_asr_cli.py /path/to/speech.wav --ip 10.8.0.12 # Explicit Chinese tag (useful for accented or noisy speech) uv run python mimo_asr_cli.py speech.wav --language Chinese --ip 10.8.0.12 # Pass model + repo paths if your ComfyUI server can't see the defaults uv run python mimo_asr_cli.py speech.wav \ --model-path /mnt/models/MiMo-V2.5-ASR \ --tokenizer-path /mnt/models/MiMo-Audio-Tokenizer \ --repo-path /mnt/repos/MiMo-V2.5-ASR \ --ip 10.8.0.12 # Save transcript to file uv run python mimo_asr_cli.py speech.wav --out transcript.txt --ip 10.8.0.12 ``` ## Flags | Flag | Default | Notes | |---|---|---| | `audio` (positional) | — | Local audio file. Uploaded to ComfyUI's `input/`. | | `--ip` | `127.0.0.1` | ComfyUI host. | | `--port` | `8188` | ComfyUI port. | | `--server` | — | Full `host:port`, overrides `--ip`/`--port`. | | `--out` | — | Write transcript to file. | | `--model-path` | `./models/MiMo-V2.5-ASR` | Relative to ComfyUI cwd, or absolute. | | `--tokenizer-path` | `./models/MiMo-Audio-Tokenizer` | Same. | | `--repo-path` | (env `MIMO_ASR_REPO`) | Local clone of [XiaomiMiMo/MiMo-V2.5-ASR](https://github.com/XiaomiMiMo/MiMo-V2.5-ASR). | | `--language` | `Auto` | `Auto` / `Chinese` / `English`. | | `--dump-workflow PATH` | — | Save the API-format JSON for inspection. | | `--no-run` | off | Combine with `--dump-workflow` to skip submission. | | `--timeout` | `600` | Seconds. | ## Server-side checklist ```bash # 1. ComfyUI is up curl -s -o /dev/null -w "HTTP %{http_code}\n" http://SERVER:8188/ # 2. Nodes loaded curl -s http://SERVER:8188/object_info | python3 -c " import json, sys d = json.load(sys.stdin) for n in ('MiMoASRLoader', 'MiMoASRTranscribe', 'LoadAudio', 'PreviewAny'): print(f' {n}: {\"✓\" if n in d else \"✗\"}')" ``` `PreviewAny` ships with `rgthree-comfy` (and several others). If it's not installed, swap the `preview` node in `build_workflow()` for whatever your environment provides — `ShowText|pysssss` is a drop-in replacement. ## Audio format notes `/upload/image` accepts any file (the endpoint's name is misleading). Audio gets stored under ComfyUI's `input/` folder, and `LoadAudio` handles decoding via torchaudio — so wav / mp3 / flac / m4a / ogg all work.