资讯动态

AIRI 官方 TTS 配置指南:免第三方密钥的语音合成与可选流式合成

发布时间:2026/9/12 23:48:17 来源:尧图企业网站定制
AIRI 官方 TTS 配置指南免第三方密钥的语音合成与可选流式合成【免费下载链接】airi Self hosted, you-owned Grok Companion, a container of souls of waifu, cyber livings to bring them into our worlds, wishing to achieve Neuro-samas altitude. Capable of realtime voice chat, Minecraft, Factorio playing. Web / macOS / Windows supported.项目地址: https://gitcode.com/GitHub_Trending/ai/airiAIRI 内置的 Official Speech Provider官方语音合成允许已登录 AIRI 账号的用户直接使用官方服务的 TTS 能力无需配置任何第三方 API Key。本文基于 AIRI 仓库中的韩语官方文档完整覆盖登录账号 → 配置提供器 → 选择模型与音色 → 试听验证 → 启用流式 TTS的实操流程并结合 官方提供器源码 与 音频 WebSocket 代理 的实现说明其背后的认证、目录发现与自动音色选择机制。官方语音合成提供器是什么官方语音合成使用当前激活的 AIRI 会话完成语音合成因此不需要填写任何第三方凭据。这一点在源码中有直接体现providerOfficialSpeech 定义 中requiresCredentials为falseconfiguredBy为authentication——即该提供器的已配置状态完全由账号登录状态驱动而不是由用户填写的 Key 驱动。提供器 ID 统一收敛在 constants.ts 中official-provider-speechHTTP 形式的官方 TTS 提供器对应文档中的Official Speech Providerofficial-provider-speech-streaming低延迟双向 WebSocket 流式 TTS 提供器对应文档中的Official Streaming Speech Provider此外还有official-provider文本生成与official-provider-transcription实时转写与语音合成共用同一套认证体系如果当前已经在用官方 AIRI 提供器并且希望减少第三方凭据的维护成本官方建议优先尝试这个官方 TTS 选项。需要注意的边界是可用模型、配额Flux 余额与地区可用性由官方服务决定客户端只是透传服务端返回的目录。第一步登录 AIRI 账号按照文档的操作顺序使用 AIRI 账号登录桌面端或 Web 端均可登录后获得会话 Token。确认当前会话可以使用官方语音合成提供器。登录状态会直接决定设置页的形态。在 official-provider-speech.vue 中页面从 auth store 读取isAuthenticated未登录时只显示一个引导登录的 Callout 卡片和登录按钮已登录时则展示 Flux 余额与状态正常的绿色脉冲指示灯。也就是说登录成功本身即为该提供器的可用性验证无需像第三方提供器那样单独做 Key 校验validationRequiredWhen恒返回false。账号与服务的注意事项原文档 warning可用模型、配额与地区由官方服务决定不要共享账号会话或浏览器会话数据。从源码看客户端请求携带Authorization: Bearer token见 authHeaders 与 withCredentials会话 Token 等价于账号凭证共享它等于共享账号。第二步在 AIRI 中配置官方 TTS进入设置 → 提供器 → 语音合成 → Official Speech Provider。该页面的行为与源码一一对应登录提示若未登录页面显示登录引导t(settings.dialogs.onboarding.loginPrompt)点击按钮触发登录流程。Flux 余额登录后页面顶部展示当前 Flux 余额credits余额数据来自账号服务若未禁用购买还会显示一个购买 Flux的按钮跳转到设置 → Flux页面。连接状态已登录即显示状态正常settings.pages.providers.provider.common.status.valid表明当前会话与官方服务连通。底层调用链是提供器的listModelCatalog向GET /api/v1/audio/models发起带认证头的请求服务端返回models数组与default默认模型客户端把默认模型复制到目录中保证新用户可以直接选中服务端推荐值。音色目录则通过GET /api/v1/audio/voices?model当前模型拉取——注意这个端点是按模型作用域的服务端只对当前生效模型返回合法音色因此客户端刻意丢弃了响应中的compatible_models字段避免二次过滤在路由 ID 不一致时把列表清空源码注释中专门说明了这一决策位于 index.ts 的 listVoices。第三步验证设置并测试语音打开设置 → 模块 → 语音合成选择Official Speech Provider然后从可用的模型与音色列表中做选择。输入一段简短的测试文本点击Test Voice确认 AIRI 能生成并回放音频。这一页的选择结果会持久化到本地存储settings/speech/active-provider、settings/speech/active-model、settings/speech/voice由 speech store 管理在多窗口/多渲染进程环境下目录加载与选择提交都路由到leader进程统一执行防止快照互相覆盖。两个值得了解的自动化细节默认模型自动补齐当提供器有目录但当前没有有效模型选择时ensureActiveSpeechModel会自动选中服务端default或列表第一个并清空旧音色重新走自动选色避免用户停留在无效组合上。音色自动推荐登录后的首次选择由pickOfficialSpeechVoice完成其回退顺序为当前语言精确匹配的服务端推荐音色 → 同语言前缀的推荐音色 → 该模型任意推荐音色 → 说目标语言的第一个音色 → 英语音色en-US 优先→ 列表首个音色。这套分层回退保证了自动选色不会把用户丢进毫无关联的音色例如字母序靠前的南非英语音色。可选启用官方流式 TTS 提供器当官方服务通知当前账号可用流式 TTS 时AIRI 会在设置 → 提供器 → 语音合成下额外显示一张Official Streaming Speech Provider卡片。源码中这一服务端驱动可见性有明确实现official-provider-speech-streaming.vue 在认证后请求/api/v1/audio/models/streaming根据响应中的available字段调用setProviderAvailabilityOverride——不可用时把提供器置为未配置隐藏卡片可用时强制标记为已配置。模型目录完全由运维侧通过UNSPEECH_UPSTREAM.streaming配置项控制客户端没有任何硬编码默认值新增后端不需要发 UI 版本。使用时的关键规则原文档原文要求设置 → 模块 → 语音合成中保持选择Official Speech Provider即可该提供器的模型列表会包含流式模型当选择了流式模型与对应音色后AIRI 会自动把内部语音合成提供器切换到所选模型匹配的流式通道。从实现看流式提供器通过capabilities: { speech: { transport: bidirectional-ws } }声明自己走双向 WebSocket 协议而非 REST会话层据此分发到streamingSynthesize请求最终经由服务端/api/v1/audio/speech/ws代理桥接到上游。该代理在 audio-speech-ws/index.ts 中实现路由层先通过?token查询参数完成认证并解析出userId客户端先发送start控制帧声明流式模型与音色会话在校验通过后才拨号上游当前为 Volcengine v3每条连接对应一个独立的会话闭包无全局对端注册表。同时createProvider仍返回 OpenAI 形状的.speech()实现保证 WebSocket 通道出错时 REST/v1/audio/speech的旧路径可以继续兜底。Flux 余额与购买文档提到确认账号 Flux 是否充足Flux 是官方服务的计量单位提供器卡片与设置 → Flux页面均可查看可用套餐服务端对应 flux 路由并通过 Stripe 完成套餐结算。桌面版会调用系统浏览器打开支付页面如果当前构建或部署环境不支持购买购买选项不会显示。该开关在 env-vars.ts 中由VITE_DISABLE_FLUX_PURCHASE控制isFluxPurchaseDisabled()设置页据此渲染或隐藏购买按钮属于部署侧的环境变量约定默认未设置时购买入口正常显示。问题排查按照文档给出的排查顺序确认已登录未登录时官方提供器所有能力都不可用requiresCredentials: false不代表无需会话而是认证即配置。确认 AIRI 能访问官方服务模型/音色目录请求失败时客户端会把上游状态码与响应体摘要截断到 256 字符抛出例如audio models upstream status网络受限环境会出现此类错误。确认 Flux 余额打开设置 → Flux查看可用套餐余额不足时合成请求会被服务端拒绝。购买入口缺失若部署环境通过VITE_DISABLE_FLUX_PURCHASE禁用了购买界面上不会出现购买选项需联系部署方或改用已有余额。源码索引内容路径官方提供器注册HTTP TTS / 流式 TTS / 转写index.ts提供器 ID 常量constants.ts认证头与带凭证 fetchshared.ts语音模块状态与自动选色speech.ts官方 TTS 提供器设置页official-provider-speech.vue流式 TTS 提供器设置页official-provider-speech-streaming.vue服务端流式 TTS WebSocket 代理audio-speech-ws/index.ts购买禁用开关env-vars.ts韩语原文档official.md【免费下载链接】airi Self hosted, you-owned Grok Companion, a container of souls of waifu, cyber livings to bring them into our worlds, wishing to achieve Neuro-samas altitude. Capable of realtime voice chat, Minecraft, Factorio playing. Web / macOS / Windows supported.项目地址: https://gitcode.com/GitHub_Trending/ai/airi创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价