Kokoro WebGPU: 브라우저에서 오프라인 작업을 위한 텍스트 음성 변환 서비스

최신 AI 리소스6개월 전 업데이트 AI 공유 서클
2K 00

일반 소개

코코로 WebGPU는 허깅 페이스 플랫폼에서 WebML 커뮤니티가 제공하는 Kokoro 텍스트 음성 변환(TTS) 모델의 WebGPU 버전입니다. 이 프로젝트는 WebGPU 기술을 활용하여 사용자가 브라우저에서 기본적으로 효율적인 텍스트 음성 변환을 실행할 수 있도록 합니다.WebGPU는 브라우저에서 고성능 계산 작업을 가능하게 하는 최신 그래픽 및 계산 API로, Kokoro WebGPU 모델은 사용자에게 오디오북, 팟캐스트, 교육 비디오 등 다양한 애플리케이션 시나리오에 빠르고 안정적인 텍스트 음성 변환 서비스를 제공할 수 있도록 설계되었습니다. 교육용 비디오 등

코코로는 8,200만 개의 파라미터를 갖춘 오픈 소스 TTS 모델입니다. 가벼운 아키텍처에도 불구하고 속도와 비용 측면에서 대형 모델에 필적하는 음성 합성 품질을 제공하며, Apache 2.0 라이선스에 따라 라이선스가 부여되므로 프로덕션 및 개인 프로젝트 등 다양한 환경에 자유롭게 배포할 수 있습니다.

Kokoro WebGPU:浏览器中离线运行的文本转语音服务

 

기능 목록

  • 효율적인 텍스트 음성 변환WebGPU 기술을 사용한 고성능 텍스트 음성 변환.
  • 브라우저가 실행됩니다.추가 소프트웨어 설치 없이 브라우저에서 바로 실행됩니다.
  • 다국어 지원여러 언어의 텍스트 음성 변환을 지원합니다.
  • 실시간 응답실시간 애플리케이션에 빠른 응답 시간을 제공합니다.
  • 오픈 소스 커뮤니티 지원WebML 커뮤니티의 지원을 통해 사용자는 커뮤니티 토론 및 개발에 참여할 수 있습니다.

 

도움말 사용

브라우저에서 실행할 샘플 코드

브라우저에서 코코로를 사용하려면 먼저 다음을 설치해야 합니다. kokoro-js 라이브러리.

npm install kokoro-js

그런 다음 다음 코드를 사용하여 음성을 생성할 수 있습니다:

import { KokoroTTS } from"kokoro-js";

const model_id = "onnx-community/Kokoro-82M-v1.0-ONNX";
const tts = await KokoroTTS.from_pretrained(model_id, {
dtype: "q8", // 可选值: "fp32", "fp16", "q8", "q4", "q4f16"
device: "wasm", // 可选值: "wasm", "webgpu" (web) 或 "cpu" (node)。如果使用 "webgpu",建议使用 dtype="fp32"。
});

const text = "生活就像一盒巧克力,你永远不知道你会得到什么。";
const audio = await tts.generate(text, {
// 使用 `tts.list_voices()` 列出所有可用的声音
voice: "af_heart",
});
audio.save("audio.wav");

위의 코드는 브라우저 환경에서 실행되며 효율적인 음성 합성을 위해 WebGPU 기술을 활용합니다.

파이썬 코드

Python 환경에서는 다음을 사용할 수 있습니다. kokoro 음성 합성 라이브러리입니다.

# 安装 kokoro 和 soundfile
!pip install kokoro>=0.7.11 soundfile
# 安装 espeak-ng,用于英语 OOD 回退和某些非英语语言
!apt-get -qq -y install espeak-ng > /dev/null 2>&1

from kokoro import KPipeline
from IPython.display import display, Audio
import soundfile as sf

# 初始化管道
pipeline = KPipeline(lang_code='a') # 'a' 表示美式英语

text = '''
天空的颜色像电视机调到没有信号的频道。
"这不像我在使用,"凯斯听到有人说,他挤过 Chat 门口的拥挤人群。"这就像我的身体产生了巨大的药物缺乏症。"
那是一个大都市的声音和笑话。Chatsubo 是一个为专业外籍人士开的酒吧;你可以在那喝上一周,却听不到两句日语。
'''

# 生成并保存音频
generator = pipeline(
    text, voice='af_heart', # 更改声音
    speed=1, split_pattern=r'\n+'
)
for i, (gs, ps, audio) in enumerate(generator):
    print(i)  # 索引
    print(gs) # 字符
    print(ps) # 音素
    display(Audio(data=audio, rate=24000, autoplay=i==0))
    sf.write(f'{i}.wav', audio, 24000) # 保存每个音频文件

위의 코드는 파이썬 환경에서 실행되며, 파이썬 환경에서는 kokoro 라이브러리를 통해 텍스트를 음성으로 변환할 수 있습니다.

브라우저에서 직접 체험해 보세요.

별도의 설치 없이 브라우저에서 바로 코코로 TTS를 체험할 수 있습니다. 아래 링크를 참조하세요:

https://huggingface.co/spaces/webml-community/kokoro-webgpu

애플리케이션의 용량이 약 300메가바이트 이상이며 완전히 로드해야 체험할 수 있다는 점에 유의하세요. 하지만 브라우저에서 완전히 실행되는 효율적인 TTS 모델인 만큼 기다릴 만한 가치가 있습니다.

주요 기능

텍스트 음성 변환

  1. 입력 텍스트: 입력 상자에 음성으로 변환할 텍스트를 입력합니다.
  2. 언어 선택: 변환할 언어(예: 영어, 프랑스어, 일본어 등)를 선택합니다.
  3. 운영 모델실행 버튼을 클릭하면 모델이 텍스트 음성 변환을 수행합니다.
  4. 결과 보기: 음성 결과가 페이지에 표시되며 사용자는 생성된 음성 파일을 재생하고 다운로드할 수 있습니다.

주요 기능

  • 온라인 전환Kokoro WebGPU는 빠른 응답 시간이 필요한 애플리케이션 시나리오에서 실시간 텍스트-음성 변환을 가능하게 하는 WebGPU 기술을 활용합니다.
  • 다국어 지원여러 언어로 텍스트 음성 변환을 지원하며, 사용자는 필요에 따라 다양한 언어를 선택할 수 있습니다.
  • 커뮤니티 지원WebML 커뮤니티를 통해 사용자는 커뮤니티 토론에 참여하고 기술 지원 및 업데이트를 받을 수 있습니다.
© 저작권 정책
AiPPT

관련 문서

댓글 없음

댓글에 참여하려면 로그인해야 합니다!
지금 로그인
없음
댓글 없음...