Eleven v4: Text to Dialogue

This ComfyUI tutorial workflow turns a plain-text script into a polished, multi-speaker dialogue using ElevenLabs v4. Each line you write becomes a distinct “turn,” and each turn can use a different voice—either a preset selected with ElevenLabsVoiceSelector or a custom voice created on-the-fly with ElevenLabsInstantVoiceClone. The core ElevenLabsTextToDialogue node sequences your turns in order and synthesizes a single, continuous audio file, so you end up with one mix-ready track for podcasts, game dialogue, or character conversations. Delivery cues like [quietly] or [laughs] can be embedded directly in your script to influence performance.

Two grouped paths are included: Option 1: Use Preset Voice and Option 2: Create a Voice Clone. If you want clones, bring in a clean reference using LoadAudio or capture one with RecordAudio, feed it to ElevenLabsInstantVoiceClone, and wire that clone to any turns you want it to speak. The template’s inputs parameter sets how many dialogue turns to render (1–10). It ships with 4 turns that alternate two voices by default. SaveAudioAdvanced writes the final result to disk, while Note and MarkdownNote provide inline guidance. Some nodes are bypassed when the template opens—select them and press Ctrl-B to enable before running.

API

從程式碼使用此工作流

每個 Comfy 工作流都是一個 JSON 圖。下方的 payload 就是此工作流,與 ComfyUI 執行時完全相同 — 你可以從此 URL 取得、放入版本控制,或在 ComfyUI 載入並逐節點執行。

96d528e93204.json
正在取得工作流 JSON…

使用 Comfy SDK 以 TypeScript 或 Python 執行。相同程式碼可用於 Comfy Cloud 或你自架的 ComfyUI — 只需更改 base URL。

// Install (beta)
npm i @comfyorg/sdk

// Run this workflow (TypeScript)
import { Comfy } from "@comfyorg/sdk";

const client = new Comfy({ apiKey: "comfyui-..." });
const wf = await client.workflows.fromFile("workflow_api.json");
const job = await client.run(wf);
await job.getOutputs("<output-node-id>")[0].toFile("output.png");

SDK 需使用 API 格式的工作流:請在 ComfyUI 開啟此工作流,並使用 檔案 → 匯出工作流(API)。

Comfy Cloud API 存取需有 API 金鑰的方案。

查看所有工作流
Showing 30 of 30 templates