设置指南
使用任何其他模型
本页面向扩展未直接列出的模型。接入方式有两种: 其一, LiteLLM 代理在您已持有密钥的服务商 (ElevenLabs、MiniMax、Vertex AI/Gemini 等) 前面架起一个 OpenAI 兼容端点, 除了代理本身无需托管任何东西; 其二, 在自己的电脑上托管开源模型, 数据不离开您的电脑, 也没有按字符收费。只要您会用终端, 两种方式都大约 10 分钟即可完成。
您需要准备
- 走代理路线: 您要接入的服务商的 API 密钥 (按其费率计费)
- 自行托管: 一台能运行推理引擎的电脑 (有些模型需要 GPU, 小一些的不需要)
- 一个终端, 以及视路线而定的 Python 或 Docker
- 大约 10 分钟
路线 1: 架设 LiteLLM 代理
LiteLLM 代理在您已持有密钥的服务商 (OpenAI、Azure、AWS Polly、Vertex AI/Gemini、ElevenLabs 或 MiniMax) 前提供一个统一的 OpenAI 兼容端点。您托管的是代理而不是模型, 所以它在任何电脑上都能运行。
1. 安装
需要 Python 3.10 或更新版本。然后:
pip install 'litellm[proxy]'
2. 单个后端快速上手
导出后端的密钥, 用您要路由到的模型启动代理。它监听 4000 端口:
export OPENAI_API_KEY=sk-...
litellm --model openai/tts-1
# RUNNING on http://0.0.0.0:4000
3. 或者路由到多个服务商
把每个后端写进 config.yaml。您在这里起的 model_name 别名, 就是之后要填进扩展模型栏的内容:
model_list:
- model_name: tts
litellm_params:
model: openai/tts-1
api_key: os.environ/OPENAI_API_KEY
- model_name: eleven
litellm_params:
model: elevenlabs/eleven_multilingual_v2
api_key: os.environ/ELEVENLABS_API_KEY
# optional: require a key from clients (paste it into the
# extension's API key field)
general_settings:
master_key: sk-your-proxy-key
litellm --config config.yaml
MiniMax、Vertex AI/Gemini、Azure 和 Polly 条目遵循同样的写法; 具体的模型字符串见 LiteLLM TTS 文档 及其各服务商页面。
4. 把扩展指向代理
服务器 URL 填 http://localhost:4000/v1; 只有设置了 master key 才需要填 API 密钥; 模型栏填 tts, eleven (您起的别名)。 语音方面, alloy 等 OpenAI 名称在所有后端都可用, LiteLLM 会按后端逐一映射 (对 ElevenLabs, 原始语音 ID 也会原样传递)。
路线 2: 自行托管开源模型 (可选)
如果代理路线已经满足需求, 可以跳过本节。自己托管引擎能让每个请求都留在您的电脑上, 也没有按字符的费用。常见选择:
- LocalAI: 完整的本地 OpenAI 替代品, 可加载 Kokoro、Piper、Coqui 等多个 TTS 后端
- Speaches: 更轻量的服务器, 用一个端点运行 Kokoro 和 Piper 语音
- Kokoro-FastAPI: 如果只需要 Kokoro 模型, 这是最快的上手方式
- openedai-speech: 一个用这种 API 提供开源 TTS 模型的小型服务器
对 Kokoro-FastAPI, 一条 Docker 命令即可在 8880 端口启动服务器:
docker run -d --name kokoro -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu
其他引擎各有自己的安装文档: 参见LocalAI或Speaches的入门页面。它们大多以 Docker 容器或 Python 包的形式运行, 并监听一个本地端口。
连接扩展
- 点击浏览器工具栏中的扩展图标
- 打开设置 → OpenAI 兼容
- 粘贴服务器 URL: LiteLLM 用 http://localhost:4000/v1, Kokoro-FastAPI 用 http://localhost:8880/v1, 其他引擎按其端口填写
- 仅当服务器要求时才填写 API 密钥 (本地服务器通常不需要)
- 可选: 填写用逗号分隔的语音名称, 以及一个或多个同样用逗号分隔的 模型 (默认为 tts-1, 大多数服务器都接受)
- 点击保存并测试
扩展会先向服务器请求它的语音列表, 所以语音栏通常可以留空。如果服务器不报告语音, 就回退到 OpenAI 的九个标准语音名称, 而您在该栏输入的内容优先级最高。您列出的每个模型都会在语音选择器中为每个语音单独占一行, 因此一台服务器可以同时暴露多个模型, 每次朗读都能切换。测试通过后, 在任意页面上选中文字, 点击右键选择朗读, 或按 Ctrl/Cmd+Shift+S。
费用
两条路线的计费方式不同。经 LiteLLM 代理, 每个请求由它路由到的后端按该服务商自己的费率计费, 您的文字也会发送给该服务商; LiteLLM 本身是免费软件。自行托管的引擎在硬件就位后即可免费运行, 没有按字符的费用, 数据也不离开您的电脑。各服务商的费率见我们的服务商对比。
用完后移除访问权限
- 停止服务器进程 (Ctrl+C), 或删除它的容器。
- 在扩展中打开设置 → OpenAI 兼容, 清除已保存的字段 (或关闭该服务商)。
疑难解答
连接被拒绝或网络错误
保存的 URL 上没有可访问的服务器。请检查它确实在运行、URL 中的端口与服务器监听的端口一致, 且 URL 以 /v1 结尾。然后再次点击保存并测试。
401 或未授权错误
服务器要求提供 API 密钥。请把它粘贴到扩展的 API 密钥栏; 对启用了认证的 LiteLLM 代理, 这里填的是代理的 master key 或虚拟密钥, 而不是后端服务商的密钥。
语音选择器中没有语音, 或语音不对
扩展会先向服务器请求语音列表, 失败时回退到 OpenAI 的标准名称。如果您服务器上的语音没有显示出来, 请自己把它们的名称用逗号分隔填入语音名称栏, 然后重新保存。
没有声音、语音丢失或键盘快捷键问题, 请参阅疑难解答指南。
不想自己搭建? 托管服务用同样的扩展设置即可, 见OpenAI 兼容。也可以选择一家云服务商: Amazon Polly、Azure Speech、Google Cloud TTS或OpenAI。