Kokoro WebGPU: служба преобразования текста в речь для автономной работы в браузерах

Общее введение

Кокоро WebGPU - это WebGPU-версия модели преобразования текста в речь (TTS) Kokoro, предоставляемая WebML Community на платформе Hugging Face. Проект использует технологию WebGPU, чтобы дать пользователям возможность выполнять эффективные преобразования текста в речь в браузере. WebGPU - это современный графический и вычислительный API, который позволяет выполнять высокопроизводительные вычислительные задачи в браузере. Модель Kokoro WebGPU разработана для предоставления пользователям быстрых и надежных услуг преобразования текста в речь для различных сценариев применения, таких как аудиокниги, подкасты образовательные видео и т. д.

Kokoro - это TTS-модель с открытым исходным кодом и 82 миллионами параметров. Несмотря на свою легковесную архитектуру, Kokoro сравнима с более крупными моделями по качеству синтеза речи, при этом обладая преимуществами в скорости и стоимости. Kokoro лицензирована под лицензией Apache 2.0, что позволяет свободно использовать ее в различных средах, как в производстве, так и в личных проектах.

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

 

Список функций

  • Эффективная передача текста в речь: Высокопроизводительное преобразование текста в речь с помощью технологии WebGPU.
  • Браузер запускается: Не требует установки дополнительного программного обеспечения, запускается прямо в браузере.
  • Поддержка нескольких языков: Поддержка преобразования текста в речь на нескольких языках.
  • реагирование в режиме реального времени: Обеспечивает быстрое время отклика для приложений, работающих в режиме реального времени.
  • Поддержка сообщества с открытым исходным кодом: Поддерживается сообществом WebML, пользователи могут участвовать в обсуждениях и развитии сообщества.

 

Использование помощи

Пример кода для запуска в браузере

Чтобы использовать Kokoro в браузере, сначала нужно установить 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

В среде 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) # 保存每个音频文件

Приведенный выше код выполняется в среде Python с использованием kokoro Библиотека позволяет преобразовывать текст в речь.

Смотрите прямо в браузере

Вы можете пользоваться Kokoro TTS прямо в вашем браузере без установки. Перейдите по ссылке ниже:

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

Обратите внимание, что приложение занимает около 300 с лишним мегабайт и должно полностью загрузиться, прежде чем вы сможете им воспользоваться. Однако, поскольку это эффективная модель TTS, работающая полностью в браузере, ожидание того стоит.

Основные функции

преобразование текста в речь

  1. текст ввода: Введите текст для преобразования в речь в поле ввода.
  2. Выберите язык: Выберите язык для преобразования, например, английский, французский, японский и т.д.
  3. операционная модель: Нажмите кнопку Run, и модель выполнит преобразование текста в речь.
  4. Посмотреть результаты: Результат речи будет отображен на странице, и пользователь сможет воспроизвести и скачать сгенерированный файл речи.

Основные функции

  • он-лайн преобразованиеKokoro WebGPU использует технологию WebGPU для преобразования текста в речь в режиме реального времени в сценариях, требующих быстрого отклика.
  • Поддержка нескольких языков: Поддерживает преобразование текста в речь на нескольких языках, пользователи могут выбирать различные языки в соответствии со своими потребностями.
  • Поддержка общества: Работает WebML Community, пользователи могут участвовать в обсуждениях сообщества, получать техническую поддержку и обновления.
© заявление об авторских правах

Похожие статьи

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...