找回密码
 立即注册

QQ登录

只需一步,快速开始

腾讯云 EdgeOne Pages 部署 EdgeTTS:全球加速方案

aifeisheng 2025-11-21 13:36:45 59
  • 腾讯云 EdgeOne Pages 部署 EdgeTTS:全球加速方案#

    项目概述#

    原项目:GitHub - icheer/edgetts-cloudflare-workers-webui

    这是一个部署于 Cloudflare Workers 的高性能文本转语音(TTS)代理服务。它将微软 Edge 强大且自然的语音合成能力,封装为兼容 OpenAI API 格式的接口,使开发者能够无缝对接各类现有应用至这一免费、高质量的 TTS 服务。

    当前版本#

    本代码由腾讯云工程师依据上述 GitHub 项目修改适配,支持通过腾讯云 EdgeOne Pages 一键部署,实现全球加速。

    使用地址#

    https://edgetts-pcw8ynxscw.edgeone.run?eo_token=2344a26df16b055dfb30f3c3ea00fa61&eo_time=1757577752

    API 配置#

    【优化后文章】

    高性能 Edge TTS Cloudflare Worker 代理#

    项目概述#

    这是一个部署于 Cloudflare Workers 的高性能文本转语音(TTS)代理服务。它将微软 Edge 强大且自然的语音合成能力,封装为兼容 OpenAI API 格式的接口,使开发者能够无缝对接各类现有应用至这一免费、高质量的 TTS 服务。

    项目包含两个核心文件:

    • workers.js:部署于 Cloudflare 的核心服务脚本。
    • webui.html:功能完备的本地测试网页。

    功能亮点#

    • OpenAI 兼容:完全模拟 OpenAI 的 /v1/audio/speech 接口,可直接被官方 SDK 或现有工具调用。
    • 高质量音色:利用微软 Edge TTS 提供的多种自然流畅的神经网络语音。
    • 流式响应:支持流式与标准两种模式,流式可显著降低长文本的首次播放延迟。
    • 智能文本清理:内置完善清理流水线,自动处理复制文本中的杂质,包括:
      • 移除 Markdown 格式;
      • 移除 Emoji;
      • 移除 URL;
      • 智能移除引用标记数字(保留年份、数量等有意义数字);
      • 移除多余空格与硬换行,确保中文听感连贯;
      • 支持自定义关键词过滤。
    • 灵活参数配置:支持动态调整音色、语速、音调、分块大小、并发数及所有清理选项。
    • 零依赖部署:脚本完全自包含,无需 KV、队列等外部服务。
    • 便捷测试工具:提供功能丰富的 Web UI,无需编写代码即可完成测试。

    工作原理#

    该 Worker 充当智能中间层:

    1. 接收与 OpenAI TTS API 完全一致的 POST 请求;
    2. 立即执行文本清理流水线;
    3. 根据文本长度智能决策处理模式——短文本采用同步直通,长文本自动启用自我调节分块机制;
    4. 将文本分割并以指定并发数向微软 Edge TTS 服务器请求;
    5. 标准模式下拼接完整 MP3 后返回;流式模式下收到首块即开始推送,实现低延迟播放。

    部署指南#

    部署仅需数分钟。

    准备工作#

    • 一个 Cloudflare 账户(免费版即可)。

    步骤一:创建 Worker#

    1. 登录 Cloudflare 仪表板;
    2. 进入「Workers 和 Pages」;
    3. 点击「创建应用程序」→「创建 Worker」;
    4. 输入唯一名称(如 my-edge-tts-proxy)并部署。

    步骤二:配置代码与密钥#

    1. 进入编辑器,删除默认代码,粘贴 workers.js 全部内容;
    2. 在「设置」→「变量」中添加机密变量:
      • 名称:API_KEY
      • 值:自行设定复杂密钥(如 sk-my-super-secret-key-12345)。

    步骤三:保存并部署#

    点击右上角「保存并部署」。服务地址即为 https://<名称>.<子域>.workers.dev。

    步骤四:使用 Web UI#

    项目已将完整 Web UI 嵌入 worker.js,直接访问部署后的 URL 即可使用本地保存的 webui.html 仅作归档参考。

    API 使用指南#

    端点
    POST https://<您的 Worker URL>/v1/audio/speech

    认证

    Plain Text
    Authorization: Bearer YOUR_API_KEY

    主要请求参数(JSON)

    参数类型默认值说明
    modelstring"tts-1"支持 tts-1、tts-1-hd 或映射音色
    inputstring必需,待合成文本
    voicestring"zh-CN-XiaoxiaoNeural"微软音色名称
    speednumber1.00.25–2.0
    pitchnumber1.0音调调整
    streambooleanfalse是否流式响应
    concurrencynumber10并发请求数
    chunk_sizenumber300分块字符数(会自动调整)
    cleaning_optionsobject{...}文本清理开关(详见功能亮点)

    重要限制#

    为稳定运行于 Cloudflare 免费套餐,单次请求文本上限约 12 万字符,超出将返回清晰错误提示,已足以覆盖绝大多数长文场景。

    项目文件说明#

    • workers.js:唯一需部署文件,包含完整 API 逻辑、文本清理与 Web UI。
    • webui.html:独立测试页面,可本地打开,亦已嵌入 workers.js 中。
随机推荐

0 回复

高级模式
游客
发布新话题
搜索
返回顶部