음성 엔진
ElevenLabs로 자체 채팅 에이전트 또는 LLM에 음성을 추가하세요.
개요
ElevenLabs Speech Engine은 모든 채팅 에이전트에 음성 기능을 추가합니다. ElevenLabs가 음성 텍스트 변환과 텍스트 음성 변환을 처리하고, 서버는 LLM 로직을 제공합니다. SDK가 연결 수명 주기, 턴 관리, 인터럽트 감지를 관리하므로 에이전트의 동작에 집중할 수 있습니다.
작동 방식
Speech Engine은 WebSocket을 통해 서버를 ElevenLabs에 연결합니다. 각 연결은 하나의 대화를 나타냅니다.
- 사용자가 브라우저에서 말합니다. ElevenLabs가 오디오를 캡처하고 텍스트로 변환합니다.
- 전체 대화 기록과 함께 트랜스크립트가 서버로 전송됩니다.
- 서버가 트랜스크립트를 LLM에 전달하고 응답을 스트리밍하여 다시 보냅니다.
- ElevenLabs가 텍스트를 음성으로 변환하고 브라우저에서 재생합니다.
Speech Engine 사용 시점
Speech Engine은 자체 LLM을 사용하고 자체 서버에서 대화 로직을 제어하려는 개발자를 위해 설계되었습니다. 다음과 같은 경우에 사용하세요.
- 기존 텍스트 기반 채팅 에이전트에 음성 추가
- 특정 LLM, 파인튜닝된 모델 또는 맞춤형 추론 파이프라인 사용
- 대화 라우팅, 컨텍스트 관리 및 도구 호출을 완전히 제어
- 기존 서버 애플리케이션(Express, FastAPI 등)에 음성 통합
ElevenLabs가 LLM, 지식 베이스 및 도구를 제공하는 완전 호스팅 솔루션이 필요하다면 ElevenAgents를 대신 사용하세요.
주요 기능
- 모든 LLM - OpenAI, Anthropic, Google Gemini 또는 텍스트를 생성하는 모든 모델을 사용할 수 있습니다. SDK는 OpenAI, Anthropic 및 Gemini 스트림 형식에서 텍스트를 자동으로 추출합니다.
- 인터럽트 처리 - 사용자가 응답 도중 말하면 SDK가
AbortSignal(TypeScript) 또는 작업 취소(Python)를 통해 진행 중인 LLM 요청을 자동으로 취소합니다. - 스트리밍 - 응답은 생성되는 즉시 브라우저로 스트리밍됩니다. 문자열, 비동기 이터러블 또는 네이티브 LLM 스트림 객체를 전달하세요.
- 턴 관리 - SDK가 대화 턴을 관리하므로 서버는 트랜스크립트에만 응답하면 됩니다.
IP 허용 목록
서버가 방화벽 뒤에 있거나 IP 기반 액세스 제어를 사용하는 경우, ElevenLabs WebSocket 연결이 시작되는 고정 송신 IP를 허용 목록에 추가할 수 있습니다. 전체 IP 주소 목록은 IP 허용 목록을 참조하세요.
IP 허용 목록을 사용하면 서버는 ElevenLabs의 시스템에서 오는 WebSocket 연결만 수락합니다.
FAQ
어떤 LLM이 지원되나요?
텍스트를 생성하는 모든 LLM이 지원됩니다. SDK는 OpenAI(Responses API 및 Chat Completions API), Anthropic Messages API 및 Google Gemini API용 기본 스트림 추출 기능을 제공합니다. 다른 제공업체의 경우 일반 문자열 또는 문자열 청크의 비동기 이터러블을 전달하세요.
Speech Engine과 ElevenAgents의 차이점은 무엇인가요?
ElevenAgents는 ElevenLabs가 LLM, 지식 베이스 및 도구를 제공하는 완전 호스팅 플랫폼입니다. Speech Engine은 자체 LLM을 사용하고 자체 서버에서 대화 로직을 제어하려는 개발자를 위한 제품입니다.
어떤 서버 프레임워크가 지원되나요?
TypeScript에서는 Speech Engine을 모든 Node.js HTTP 서버(Express, Fastify 또는
일반 http.createServer())에 연결하거나 독립형 WebSocket 서버를 실행할 수 있습니다. Python에서는 SDK가
engine.serve()를 통한 독립형 서버를 제공하며, engine.create_session()을 사용해 FastAPI, Starlette 또는 모든
ASGI 프레임워크와 통합할 수도 있습니다.