• https://elevenlabs.io/docs/developer-guides
  • Overview
    • Quickstart
    • Specifying Server Location
      • Using the closest servers (디폴트) : "api.elevenlabs.io" 으로 요청하면, 자동으로 가까운 서버에 라우팅 함.
      • Manually specifying the server location :
        • client library 옵션에서 environment 을 쓰거나...
        • "api.us.elevenlabs.io" 식으로 요청 하거나...
    • Reducing Latency
      • 1) "eleven_turbo_v2_5" 모델이 속도면에서 최적화 되있음.
      • 2) TTS endpoints 는 '레귤러', '스트리밍', '웹소켓' 3가지가 있는데~
        • '레귤러'는 파일 다 만든뒤 리턴,
        • '스트리밍'은 첫 바이트부터 바로 리턴!
        • '웹소켓'은 ...
      • 3) LLM 스트림 출력을 TTS 적용하는경우, 웹소켓을 활용하면 Speech 가 만들어지는 동안에도 Text 를 줄수있다.
        • LLM 스트림의 Chunk 를 잘게 쪼게서 주면 -> 해당 처리가 더 빠르게 렌더링 되는 식이라~
        • 단어 단위로 주는게 좋다. (model&tooling 이 맥락을 활용해서, 문장구조가 유지된 오디오 생성이 된다함 ㄷㄷ)
      • 4) "Enterprise plan" 는 렌더링 MQ 최우선 순위를 받아, 모델 사용 부하에 관계없이 항상 가능한 가장 낮은 지연 시간을 경험할수있!
      • --# 빠직!
      • 5) Default Voice > Synthetic Voice & Instant Voice Clone > Professional Voice Clone
      • 6) 웹소켓을 통해 스트리밍 할 때, HTTPS Sessions 을 재사용 하기.
        • SSL/TLS 세션을 재사용하면, 핸드셰이크 건너뛰니 대기시간이 줄어듬임.
        • 단, 첫 번째 세션 이후부터의 요청에 ​​대한 대기 시간이 개선되는거 겠죠... ㅎㅎ;
        • 즉, 웹소켓 경우 WSS 프로토콜을 활용! 연결시 매번 SSL/TLS 오버해드 발생하니
        • 기존 연결을 닫고/여는 횟수를 줄이는것이 좋타는 것이다. ㅎㅎ
      • 7) 미국 외부에서 통신하는 경우... 네트워크 라우팅이 증가하여 좀더 지연 될 수 있 다...
    • Models
  • Text to Speech
    • How to use text to speech with streaming
      • ...
    • How to use text-to-speech with websocket streaming
      • ...
    • Combine Multiple Generations
      • Stitching : 복수개의 텍스트를 각각 보내다 보면... 음조가 확 튈수 있어서~ 앞뒤 컨텍스트를 맞춰주도록 하는 작업.
      • previous_text, next_text : 해당 텍스트 음성이 생성되지 않았다면 이거라도 적용.
      • previous_request_ids, next_request_ids : 해당 텍스트 음성이 생성되었다면 이게 더 좋음. (순서맞춰서)
        • _text, _id 전부다 채워서 보내면, 제일 효과적 이라고 한다.
        • _id 가 틀려도 오류가 나지는 않고, 2시간 이상 오래되면 별로임. 또 스트리밍시에 해당 완성이 되야 활용가능.
        • Stitching 작동 방식은 사용된 모델, 음성, 음성설정에 따라 크게 다릅니다.
        • 개인정보 보호 요구사항이 높은 기업은 Stitching 을 못쓴다고 생각해라. (모든 기록을 못하게 되니)
    • How to Use Pronunciation Dictionaries
    • Integrating with Twilio
  • Text to Sound Effects
    • How to use text to effects
  • Dubbing
    • How to dub video and audio
  • https://github.com/elevenlabs/elevenlabs-examples

 

  • https://elevenlabs.io/docs/api-reference
  • [Websockets]
    • ...
  • [Text To Speech]
    • 생성시간 = 300ms + 네트워크 Latency (터보모델 기준, at 128kbps)
    • 단일요청Limit = 최대 10,000자(10분 분량의 오디오) , 동시요청Limit = Starter:3 Creator:5 Pro:10
    • Query Parameters
      • enable_logging : false 이면 -> 개인정보 보호 모드 -> 모든기록X -> Stitching 기능X
      • output_format : 디폴트 mp3_44100_128 
        • mp3_22050_32 ~ mp3_44100_192 (44.1kHz , 192kbps)
        • pcm_16000 ~ pcm_44100 (S16LE , 44.1kHz)
        • ulaw_8000 (μ-law , 8kHz)
    • Body
      • language_code : 모델에 언어(ISO 639-1) 를 적용하는데, Turbo v2.5 만 지원함. 예) en, ko, ja, ...
      • voice_settings :
        • stability : 안정성
        • similarity_boost : 유사성
        • style :
        • use_speaker_boost :
      • pronunciation_dictionary_locators :
        • pronunciation_dictionary_id
        • version_id
      • seed : 명시할 경우, 결정론적으로 동일한 결과를 만드는데 노력. (보장하지는 않음)
      • previous_text, next_text
      • previous_request_ids, next_request_ids
  • [...]
    • ...
  • https://github.com/elevenlabs/elevenlabs-python

-끝-

'AI' 카테고리의 다른 글

Elevenlabs Docs (conv ai)  (0) 2024.12.08
Lang🦜 (feat. teddynote)  (0) 2024.10.24
ElevenLabs Docs  (0) 2024.09.25
OpenAI Cookbook  (0) 2024.05.25
OpenAI Doc2  (0) 2024.05.25

+ Recent posts