跳到主要内容

🗨️ 使用 Docker 的 Kokoro-FastAPI

警告

本教程是社区贡献,不受 Open WebUI 团队支持。它仅用于演示如何为您的特定用例自定义 Open WebUI。想贡献吗?请查看贡献教程。

什么是 Kokoro-FastAPI?

Kokoro-FastAPIKokoro-82M 文本转语音模型的 Docker 化 FastAPI 包装器,它实现了 OpenAI API 端点规范。它提供高性能的文本转语音,生成速度惊人。

主要功能

  • 兼容 OpenAI 的语音端点,支持在线语音组合
  • NVIDIA GPU 加速或 CPU Onnx 推理
  • 支持流式传输和可变分块
  • 支持多种音频格式(.mp3, .wav, .opus, .flac, .aac, .pcm
  • 集成的 Web 界面,地址为 localhost:8880/web(或仓库中的 Gradio 附加容器)
  • 用于转换和生成的音素端点

声音

  • af
  • af_bella
  • af_irulan
  • af_nicole
  • af_sarah
  • af_sky
  • am_adam
  • am_michael
  • am_gurney
  • bf_emma
  • bf_isabella
  • bm_george
  • bm_lewis

语言

  • en_us
  • en_uk

要求

  • 您的系统上安装了 Docker
  • Open WebUI 正在运行
  • 对于 GPU 支持:带有 CUDA 12.3 的 NVIDIA GPU
  • 仅用于 CPU:无特殊要求

⚡️ 快速入门

您可以选择 GPU 或 CPU 版本

GPU 版本(需要带有 CUDA 12.8 的 NVIDIA GPU)

使用 docker run

docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu

或者 docker compose,通过创建一个 docker-compose.yml 文件并运行 docker compose up。例如

name: kokoro
services:
kokoro-fastapi-gpu:
ports:
- 8880:8880
image: ghcr.io/remsky/kokoro-fastapi-gpu:v0.2.1
restart: always
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: all
capabilities:
- gpu
信息

您可能需要安装和配置NVIDIA Container Toolkit

CPU 版本(ONNX 优化推理)

使用 docker run

docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu

使用 docker compose

name: kokoro
services:
kokoro-fastapi-cpu:
ports:
- 8880:8880
image: ghcr.io/remsky/kokoro-fastapi-cpu
restart: always

设置 Open WebUI 使用 Kokoro-FastAPI

要将 Kokoro-FastAPI 与 Open WebUI 一起使用,请按照以下步骤操作

  • 打开管理面板并转到 设置 -> 音频
  • 将您的 TTS 设置匹配如下
    • 文本转语音引擎:OpenAI
    • API 基本 URL:http://localhost:8880/v1 # 您可能需要使用 host.docker.internal 代替 localhost
    • API 密钥:not-needed
    • TTS 模型:kokoro
    • TTS 声音:af_bella # 也接受现有 OAI 声音的映射以实现兼容性
信息

默认 API 密钥是字符串 not-needed。如果您不需要额外的安全性,则无需更改该值。

构建 Docker 容器

git clone https://github.com/remsky/Kokoro-FastAPI.git
cd Kokoro-FastAPI
cd docker/cpu # or docker/gpu
docker compose up --build

就是这样!

有关构建 Docker 容器(包括更改端口)的更多信息,请参阅Kokoro-FastAPI 仓库