中文 ▾
用于 TTS 管道的无审查文本 APIhttps://api.ttsapihub.com/v1

TTS API 基础 URL:是什么及如何填写

基础 URL 是每个接口地址的共享前缀。本页解释在此服务中应填写什么,该服务是文本 LLM API 而非语音接口,以及如何在常用工具中设置它。

更新于

发光的路径块拆分为接口,说明基础 URL 如何引导至 API 路由

要点

  • 此 API 的基础 URL 为 https://api.ttsapihub.com/v1;在其后添加 /chat/completions 等路径。
  • 尽管网站名称如此,该接口仅生成文本。没有语音或音频接口。
  • 大多数 OpenAI 兼容工具只需要三个值:基础 URL、API 密钥和模型 ID uncensored。
  • 两个常见错误是重复 /v1 并将完整的 /chat/completions 路径粘贴到基础 URL 字段中。

基础 URL,以及首先要了解的一点

如果你通过搜索 tts api base url 来到此页面,请在复制任何内容前检查一个细节:该网站背后的服务是文本语言模型 API,而非语音合成器。基础 URL 是 https://api.ttsapihub.com/v1,它暴露了 POST /v1/chat/completions 和 GET /v1/models 端点。没有 /audio/speech 路由,没有语音列表,也没有音频输出。

这很重要,因为许多工具将设置标记为通用名称。客户端中名为 base URL 的字段,无论后端服务器返回文本还是声音,工作方式相同。如果你的目标是将文本转为音频,此接口无法做到。如果你的目标是生成语音工具稍后朗读的文本(如脚本、对话或旁白草稿),它非常合适。当你规划此类工作流时,网站的 TTS 管道清单 是查看的地方,快速入门文档 列出了每个请求参数。

本页的其余部分适用于任何 OpenAI 兼容客户端,因此即使你只是来了解基础 URL 的工作原理,它也很有用。

基础 URL 实际上是什么

API 地址由两部分组成。第一部分标识服务和其接口的版本。第二部分命名操作。客户端库会将它们粘合在一起。使用 OpenAI SDK 时,这些部分如下所示:

部分说明
Base URLhttps://api.ttsapihub.com/v1
SDK 为聊天添加的路径/chat/completions
调用的完整地址https://api.ttsapihub.com/v1/chat/completions
模型列表的路径/models

由于 SDK 会自动追加路径,你只需提供前半部分。这正是通过修改一行代码即可切换提供商的核心思路:请求格式是通用的,因此唯一需要更改的是请求发送的位置。密钥也会发生变化,因为每个服务都会签发自己的密钥。模型名称也会改变,因为每个服务都会为自己的模型命名。对于此 API,模型 ID 为 uncensored。

两个小细节可以节省时间。版本段 /v1 属于基础 URL,因为它标记了接口代;未来不兼容的接口将位于不同的版本下,而你的代码在决定迁移之前不会改变。大多数 SDK 都容忍基础 URL 末尾的斜杠,但最好去掉它,以便连接后的路径永远不会包含双斜杠。

认证是标准的 Bearer 头:Authorization: Bearer YOUR_KEY。SDK 会根据你传入的密钥构建该头,因此除非使用 curl,否则你很少需要手动编写它。

在代码中设置基础 URL

Python

官方的 openai 包接受一个 base_url 参数。这是一个完整且可运行的调用示例:

from openai import OpenAI

client = OpenAI(
    base_url="https://api.ttsapihub.com/v1",
    api_key="YOUR_KEY",
)

resp = client.chat.completions.create(
    model="uncensored",
    messages=[{"role": "user", "content": "Write a two-line scene opening."}],
)
print(resp.choices[0].message.content)

Node

import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api.ttsapihub.com/v1",
  apiKey: process.env.API_KEY,
});

const resp = await client.chat.completions.create({
  model: "uncensored",
  messages: [{ role: "user", content: "Write a two-line scene opening." }],
});
console.log(resp.choices[0].message.content);

curl

使用 curl 时,你需要自己编写完整地址,因此包含路径:

curl https://api.ttsapihub.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "uncensored", "messages": [{"role": "user", "content": "Say hello."}]}'

环境变量

当你未在代码中传递它们时,官方 OpenAI SDK 的最新版本会从环境变量中读取 OPENAI_BASE_URL 和 OPENAI_API_KEY。当你希望将现有软件指向新接口而不编辑它时,这很方便。在 shell 或进程管理器中设置它们,然后像往常一样运行程序。如果 SDK 未读取这些变量,请查阅其文档。

在编辑器和应用程序中设置

接受自定义 OpenAI 接口的工具会询问相同的三个值。名称不同,因此寻找如下措辞:

  • Cursor: 在模型设置中,有一个选项可以覆盖 OpenAI 基础 URL。粘贴 https://api.ttsapihub.com/v1,添加你的密钥,并将 uncensored 添加为自定义模型名称。界面标签在 Cursor 不同版本间会有所变化,因此将这些名称视为参考指南。
  • SillyTavern: 选择 Chat Completion,然后选择 Custom (OpenAI-compatible) 源,并填写接口、密钥和模型。
  • Open WebUI 和类似的聊天前端: 添加一个 OpenAI 类型的连接,使用基础 URL 和密钥。
  • 你自己的脚本: 任何 HTTP 客户端都可以工作,因为接口是通过 HTTPS 传输的纯 JSON。

一些工具通过调用 GET /v1/models 来检查连接。此 API 支持该路由,因此检查通过。少数工具只允许你从固定列表中选择;如果你的工具是这样,请寻找自定义或手动模型字段,而不是下拉菜单。

记住工具的用途。像 Cursor 这样的编辑器会将代码问题发送到通用聊天模型,这没问题。但依赖于特殊端点的功能(例如用于代码搜索的嵌入向量)在此不可用,因为未提供嵌入功能。

导致大多数基础 URL 错误的错误

几乎每次首次连接失败都源于以下原因之一。

  1. 版本重复。 基础 URL 已以 /v1 结尾。如果你添加另一个,地址变为 /v1/v1/chat/completions,服务器会返回未找到错误。
  2. 粘贴完整路径。 基础 URL 字段需要 https://api.ttsapihub.com/v1,而不是 https://api.ttsapihub.com/v1/chat/completions。SDK 会再次追加路径。
  3. 使用网站地址。 你阅读的网站不是 API 主机。请求发送到上面显示的 api. 主机。
  4. 调用语音接口。 像 /audio/speech 这样的路径在这里不存在,并会返回错误。
  5. 错误或缺失的模型名称。 始终以小写形式发送 uncensored。
  6. 密钥问题。 手写头中的多余空格或缺少的 Bearer 前缀会导致身份验证错误。

要区分 URL 问题和密钥问题,请请求模型列表。正确的 URL 和错误的密钥会导致认证错误。错误的 URL 会导致未找到、DNS 错误或 HTML 页面而非 JSON。

curl https://api.ttsapihub.com/v1/models -H "Authorization: Bearer $API_KEY"
# then a minimal chat call with the model ID "uncensored":
curl https://api.ttsapihub.com/v1/chat/completions -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"uncensored","messages":[{"role":"user","content":"ping"}],"max_tokens":5}'

获取密钥及其费用

在这一切生效之前,你需要一个密钥。在 API 密钥页面 使用 Google 或电子邮件和密码注册,然后点击一次领取 $0.50 免费试用额度。有效期为 7 天,每人限领一次,无需银行卡。试用密钥允许 2 个并发请求和每分钟 60 个请求,而完整密钥允许 8 个并发请求和每分钟 300 个请求。

价格为每 1M 输入 token $0.15,每 1M 输出 token $0.50,从预付额度中扣除,无订阅。一次包含 2,000 个输入 token 和 500 个输出 token 的请求花费 $0.0003 加 $0.00025,即 $0.00055。充值从 $20 到 $500 不等,充值 $50 及以上有赠送额度,你可以通过银行卡(Visa、Mastercard、Apple Pay、Google Pay)或加密货币(TRC20 上的 USDT、Base 上的 USDC)支付。定价页面 有完整表格。提示词不用于训练,该模型仅限合法成人使用,不涉及未成年人的性内容。

问答

此 API 的基础 URL 是什么?

它是 https://api.ttsapihub.com/v1. 在其后添加路径,例如 /chat/completions,或者让你的 SDK 添加它们。

我可以使用此接口进行文本转语音吗?

不可以。它仅返回文本,不支持音频、图片或视频生成。你可以用它生成文本,再由其他工具将其转换为语音。

我需要在 SDK 的基础 URL 中添加 /chat/completions 吗?

不需要。SDK 会自动追加路径。只有 curl 等原始 HTTP 客户端才需要完整的地址。

我应该发送哪个模型名称?

发送 uncensored。你可以通过 GET /v1/models 确认服务器列出的模型。

设置 URL 后,为什么我的工具提示未找到?

最常见的原因是重复的 /v1、粘贴的完整路径,或者使用了网站地址而不是 api.host。

只差一张表单,即可获得密钥

创建账户,复制密钥,更改基础 URL。这就是全部设置。

获取 API 密钥