업데이트
ElevenLabs Dialogue란?
ElevenLabs Dialogue는 {text, voice} 턴의 배열을 받아 대화 전체를 하나의 오디오 파일로 합쳐 돌려주는 다중 화자 오디오 엔드포인트입니다. 한 번의 호출에 최대 10개의 서로 다른 ElevenLabs 음성을 넣을 수 있고, 각 턴은 계정의 어떤 음성 ID(프리셋 또는 클론)든 선택할 수 있으며, 모델이 턴 사이의 이음새를 처리하므로 TTS 호출을 이어 붙인 결과가 아니라 실제 대화처럼 들립니다. 이 엔드포인트는 내부적으로 항상 eleven_v3 모델을 사용하므로 관리할 모델 선택기가 없습니다. 언어는 language_code(기본값 en)로, 안정감은 stability(0~1)로 제어합니다. 턴 시작 부분의 [excitedly]나 [whispered] 같은 인라인 감정 태그가 추가 파라미터 없이 전달 방식을 결정합니다.
주요 기능
일반적인 작업에서 설정하게 될 다섯 가지 기능입니다.
한 번의 호출에 최대 10명의 화자
dialogue 배열의 각 항목은 voice ID와 text를 지정합니다. 프리셋, 클론, 커스텀 음성을 같은 대화에서 자유롭게 섞을 수 있습니다. 모델은 턴별 렌더를 따로 주는 대신 하나로 합쳐진 오디오 파일을 반환합니다.
기본 지원되는 화자 전환
속도감, 숨소리, 룸 톤이 화자가 바뀌어도 이어집니다. 독립적인 TTS 호출을 이어 붙일 때 각 턴이 저마다의 배경음을 갖고 돌아와 이음새가 컷처럼 들리는 것과의 차이가 바로 이것입니다.
인라인 감정 태그
턴 시작 부분의 [excitedly], [warmly], [whispered], [shouted] 같은 대괄호 태그가 그 대사의 전달 방식을 조정합니다. 추가 필드도, 연출 메모를 위한 별도 스크립트도 필요 없습니다.
모델 선택기 없는 V3 품질
이 엔드포인트는 가장 표현력이 풍부한 ElevenLabs 모델인 eleven_v3를 항상 사용합니다. 선택할 model_id도, 폴백 경로도 없고, 긴 대화에서 턴마다 품질이 흔들리지도 않습니다.
대화 단위 언어 및 안정성 설정
language_code는 기본값이 en이며 다른 언어의 ISO 코드를 받습니다. stability(0~1)는 턴 전체의 음성 안정감을 제어하므로, 같은 페이로드 안에서 픽션에는 드라마틱하게, 내레이션에는 차분하게 조절할 수 있습니다.
이런 작업에 적합
대본 기반 팟캐스트
음색이 다른 진행자들이 번갈아 말하는 대화를 한 번의 API 호출로 생성합니다. 인라인 감정 태그가 별도 연출 메모 없이 톤 변화를 전달합니다.
오디오북 장면
대화 구간에는 여러 배역 음성을 쓰고 내레이터는 다른 ElevenLabs 음성으로 유지합니다. 브랜드 전용 내레이터 음성에는 클론을 섞어 쓰세요.
교육용 시뮬레이터
캐릭터마다 배역을 고정한 롤플레이 대사. 최대 10개 음성이면 일반적인 시나리오 스크립트(고객, 상담원, 관리자, 관찰자)에 충분합니다.
게임 NPC 대사와 짧은 장면
NPC 간의 짧은 턴 기반 대화를 한 번의 렌더로 생성합니다.
stability를 고정해 두면 패치가 거듭되어도 배역의 톤이 일관되게 유지됩니다.제품 안내 영상
단일 내레이터 보이스오버 대신 두 진행자가 대화하는 설명 형식. 튜토리얼보다는 팟캐스트처럼 들립니다.
언어 학습 대화
듣기 연습의 명료함을 위해 대화 단위로 안정성을 설정합니다. 장면마다
language_code를 바꿔 목표 언어로 콘텐츠를 전달하세요.
활용 사례
두 진행자 사이의 4턴 대화를 쓰고 필요한 대사에 [warmly]와 [excitedly] 태그를 넣어 팟캐스트 인트로를 만들어 보세요. 직원, 고객, 관리자 세 화자로 컴플라이언스 교육 시나리오를 구성하고, stability 값을 바꿔 가며 다시 렌더링해 배역이 얼마나 안정적으로 들려야 하는지 A/B 테스트하세요. NPC 대화를 Dialogue 호출 하나로 묶어 장면 전체의 룸 톤이 일치하도록 게임 내 대화 시스템을 추가하세요. 스크립트 구조는 그대로 두고 language_code와 턴별 voice ID만 바꿔 대화형 설명 콘텐츠를 현지화하세요.
API 예시
/v1/tasks에 POST 요청을 보내면 어떤 언어에서든 ElevenLabs Dialogue를 호출할 수 있습니다. 전체 파라미터 문서는 docs.unifically.com/models/audio/elevenlabs/text-to-dialogue에 있습니다.
curl -X POST https://api.unifically.com/v1/tasks \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "elevenlabs/text-to-dialogue",
"input": {
"stability": 0.5,
"language_code": "en",
"dialogue": [
{
"text": "[excitedly] Hey Jessica! Have you tried the new ElevenLabs V3?",
"voice": "TX3LPaxmHKxFdv7VOQHJ"
},
{
"text": "[curiously] Yeah, just got it! The emotion is so amazing.",
"voice": "cgSgspJ2msm6clMCkdW9"
}
]
}
}'
제출에 성공하면 task_id가 반환됩니다. GET /v1/tasks/<task_id>를 폴링하거나 요청에 callback_url을 설정하면 완성된 오디오 URL을 받을 수 있습니다.
FAQ
ElevenLabs Dialogue에 대해 자주 묻는 질문
ElevenLabs Dialogue는 {text, voice} 턴의 배열을 받아 대화 전체를 하나의 오디오 파일로 합쳐 돌려주는 다중 화자 오디오 엔드포인트입니다. 각 턴은 ElevenLabs 음성 ID를 지정하며, 모델이 턴 사이의 이음새를 처리하므로 TTS 호출을 이어 붙인 결과가 아니라 실제 대화처럼 들립니다.
최소한 화자 1과 화자 2를 채우세요. 선택 사항인 화자 3~10은 토글을 켜면 나타나며, 각각 고유한 음성과 텍스트 필드를 갖습니다. 이 입력이 API 호출의 dialogue 배열이 됩니다.
아니요. Dialogue는 내부적으로 항상 eleven_v3 모델을 사용하므로 설정할 model_id가 없습니다. 언어는 language_code(기본값 en)로, 음색의 안정감은 stability 필드로 제어합니다.
대화의 속도감과 화자 전환이 중요할 때 Dialogue를 사용하세요. TTS 렌더를 따로 만들어 이어 붙이면 턴 경계가 밋밋하고 룸 톤이 일정하지 않습니다. Dialogue는 이음새를 기본으로 처리해 화자 사이에 숨소리와 타이밍이 자연스럽게 들립니다.
턴 시작 부분에 대괄호로 넣는 인라인 태그로, [excitedly], [curiously], [warmly], [sadly], [angrily], [whispered], [shouted] 등이 있습니다. 텍스트 앞에 하나 붙이면 화자가 그 톤으로 대사를 전달합니다.
한 번의 호출에 최대 10개의 서로 다른 음성을 넣을 수 있습니다. 각 턴은 ElevenLabs 계정의 어떤 음성 ID든 선택할 수 있어, 클론 음성과 프리셋을 같은 대화에서 자유롭게 섞을 수 있습니다.
stability는 0부터 1 사이의 값을 받습니다(기본값 0.5). 값이 낮을수록 감정 표현의 폭과 변화가 커지고, 높을수록 턴 전체에서 음성이 더 안정적으로 유지됩니다. 드라마에는 낮은 값을, 내레이션처럼 일관성이 필요할 때는 높은 값을 사용하세요.