• https://elevenlabs.io/docs
    • Documentation
      • Voices
      • Speech Synthesis
        • Voice Settings
          • Stability : 낮을수록 더 큰 감정의 범위로 흥분되게 말함. 높을수록 더 절제됨 감정으로 단조롭게 말함.
          • Similarity : 얼마나 밀접하게 따라할지를 정함. (원본 품질에 소음도 포함해서...)
          • Style Exaggeration : 더 극적인 과장을 적용함. (지연시간 추가 및 안정성 낮춤)
          • Speaker Boost : 더 많은 계산을 통해 미묘하게 유사성을 높임.
        • Models
          • Multilingual v2 :
          • Turbo v2.5 :
            • Multilingual v2 보다 300% 더 빠르며 32개 언어 지원.
            • Multilingual v2 보다 정확도는 약간 낮음.
      • ...
    • API Reference
      • Getting Started
      • How to use text to speech
      • Combining multiple generations
        • Stitching : 복수개의 텍스트를 각각 보내다 보면... 음조가 확 튈수 있어서~ 앞뒤 컨텍스트를 맞춰주도록 하는 작업.
        • previous_text, next_text : 해당 텍스트 음성이 생성되지 않았다면 이거라도 적용.
        • previous_request_ids, next_request_ids : 해당 텍스트 음성이 생성되었다면 이게 더 좋음. (순서맞춰서)
          • _text, _id 전부다 채워서 보내면, 제일 효과적 이라고 한다.
          • _id 가 틀려도 오류가 나지는 않고, 2시간 이상 오래되면 별로임. 또 스트리밍시에 해당 완성이 되야 활용가능.
          • Stitching 작동 방식은 사용된 모델, 음성, 음성설정에 따라 크게 다릅니다.
          • 개인정보 보호 요구사항이 높은 기업은 Stitching 을 못쓴다고 생각해라. (모든 기록을 못하게 되니)
      • How to use pronunciation dictionaries
      • How to use text to effects
      • Reducing Latency
        • 1) "eleven_turbo_v2_5" 모델이 속도면에서 최적화 되있음.
        • 2) TTS 엔드포인츠는 '레귤러', '스트리밍', '웹소켓' 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) 미국 외부에서 통신하는 경우... 네트워크 라우팅이 증가하여 좀더 지연 될 수 있 다...
      • How to use websocket
    • Python Library
    • ...
    • [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

-끝-

'AI' 카테고리의 다른 글

OpenAI Cookbook  (0) 2024.05.25
...  (0) 2024.05.25
OpenAI Cookbook (CHAT COMPLETIONS)  (0) 2024.05.24
OpenAI API, Lib, ...  (0) 2024.05.24
OpenAI Docs (재정리...)  (0) 2023.01.29

+ Recent posts