AIRI 接入 OpenRouter 语音合成(TTS):从 API Key 配置到模型与音色调试的完整指南
人工智能AI AgentMCP 服务工具调用GUI 自动化语音数字人交互助手【免费下载链接】airi 自托管、归你拥有的 Grok 风格 AI 伴侣与 waifu / 赛博生命灵魂容器目标是接近 Neuro-sama 的高度支持实时语音聊天、Minecraft 和 Factorio 游玩支持 Web / macOS / Windows。项目地址https://gitcode.com/moeru-ai/airi点击查看免费下载AIRI 支持将 OpenRouter 作为语音合成Text-to-Speech服务商让你在同一个 OpenRouter 账户下统一管理音频模型与音色。本文基于 openrouter.md韩文版英文版见 openrouter.md简体中文版见 openrouter.md并结合仓库源码说明配置项背后的实现细节。读完本文你将掌握如何申请 API Key、如何在 AIRI 设置界面完成配置、如何通过「发声」模块选择模型与音色并做发声测试以及无声音等常见问题的排查思路。为什么选择 OpenRouter 语音OpenRouter 本身是一个聚合式 API 服务商它把多家上游模型提供商的接口统一收敛到一套 OpenAI 兼容协议之下。在 AIRI 的语音合成场景中选择 OpenRouter 意味着可以在同一个 OpenRouter 账户里集中管理多个音频模型和音色而不必为每家上游分别申请密钥实际可用性网络环境、支付方式、服务商政策因用户所在地区而异例如简体中文文档提示中国大陆用户可优先尝试 302.AI 等替代聚合渠道。这一点在源码中也有体现AIRI 的 provider 注册表里同时存在openrouter-ai对话/chat 任务与openrouter-audio-speech文本转语音任务两个条目其中 openrouter-audio-speech/index.ts 正是本文主角——语音合成提供商的完整实现。第一步获取 OpenRouter API Key在开始配置前需要先在 OpenRouter 控制台创建密钥打开 OpenRouter 的 API Keys 页面创建一个新的 API Key。为密钥设置适当的名称、有效期和额度限制便于后续管理和控制成本。复制密钥并妥善保存配置时粘贴到 AIRI 中。API Key 安全警告不要将 API Key 提交到仓库、放入截图或发送给他人。一旦密钥泄露请立即在 OpenRouter 控制台撤销它并创建新密钥。从源码实现看API Key 是 OpenRouter 语音提供商的必填项配置 Schema 定义为apiKey: z.string()且校验器在apiKey为空时直接判定配置无效提示API Key is required.对应 openrouter-audio-speech/index.ts。第二步在 AIRI 中配置 OpenRouter配置路径为设置 → 服务商 → 语音合成 → OpenRouter对应仓库中的设置页面 openrouter-audio-speech.vue该页面由SpeechProviderSettings骨架与两个自定义插槽voice-settings模型选择、playground发声实验台构成。需要填写的基础配置只有两项配置项说明默认值API Key第一步申请的 OpenRouter 密钥必填无Base URLAPI 端点地址一般保持默认即可https://openrouter.ai/api/v1/在源码中Base URL 的默认值与归一化逻辑非常清晰默认地址常量定义为https://openrouter.ai/api/v1/见 openrouter-audio-speech/index.ts若用户清空了 Base URL会回退到默认值若用户输入的值末尾缺少/会自动补上保证拼接请求路径时格式正确normalizeBaseUrl见 openrouter-audio-speech/index.ts。因此保留默认 Base URL是最稳妥的做法只有当你自建 OpenRouter 兼容代理或网关时才需要改动它。第三步验证配置并测试发声配置完成后进入设置 → 模块 → 发声不同语言文档中亦有“语音合成”的表述选择刚才配置的OpenRouter服务商并选择要使用的模型与音色。输入一段测试文本点击测试声音Test Voice按钮。若能正常播放生成的语音说明配置成功若显示错误请根据错误信息检查凭据与模型。模型选择OpenRouter 语音提供商默认使用openai/gpt-audio-mini模型见 openrouter-audio-speech/index.ts设置页面同样以该值作为兜底默认见 openrouter-audio-speech.vue。页面上方的模型下拉框数据来自listModels扩展方法AIRI 会请求 OpenRouter 的models?output_modalityaudio端点只拉取支持音频输出的模型并自动过滤掉不可用的条目请求失败时则返回空列表见 openrouter-audio-speech/index.ts。页面挂载时会自动加载已配置服务商的模型列表与音色列表openrouter-audio-speech.vue。音色选择音色列表来自内置的 OpenAI 风格声线集合共 13 个涵盖alloy、ash、ballad、coral、echo、fable、onyx、nova、sage、shimmer、verse、marin、cedar见 openrouter-audio-speech/index.ts。也就是说只要上游模型支持 OpenAI 兼容的voice参数这些声线即可直接选用。源码视角一次发声请求在 AIRI 内部如何流转为了让你更清楚地理解“点了测试按钮之后发生了什么”这里结合源码还原完整调用链设置页的handleGenerateSpeech从 provider 实例化管道取出SpeechProvider拿到用户输入的文本、所选音色和模型见 openrouter-audio-speech.vue。真正的请求封装在createAudioFetch中openrouter-audio-speech/index.ts向{baseUrl}chat/completions发起 POST 请求携带Authorization: Bearer apiKey附带OpenRouter 归属信息头HTTP-Referer: https://airi.moeru.ai/与X-OpenRouter-Title: Project AIRI这两个头定义于 openrouter-ai/index.ts以满足 OpenRouter 对来源标注的要求请求体把测试文本包装成Read this text aloud exactly as written...的朗读提示词并声明modalities: [text, audio]、audio: { voice, format: pcm16 }、stream: true。响应处理上AIRI 以流式方式逐行解析 SSE 事件以data:开头、遇[DONE]结束从choices[0].delta.audio.data中提取 base64 编码的 PCM16 音频分片openrouter-audio-speech/index.ts。所有分片拼接解码后调用toWavFromPCM16(bytes, 24000)以24 kHz 采样率封装成标准 WAV 文件再以audio/wav类型返回给播放器openrouter-audio-speech/index.ts。WAV 封装本身位于 wav.ts并有对应的 wav.test.ts 测试用例覆盖。说明OpenRouter 语音提供商在 provider 定义中被标记为paidCloud类见 attributes.ts即按使用量计费的云服务因此账户余额不足会直接导致请求失败——这也是下方排查清单中要重点检查的原因。常见问题排查当点击测试后没有声音时按以下顺序排查所选模型是否支持音频输出OpenRouter 上并非所有模型都支持语音模态。AIRI 的模型下拉框已通过output_modalityaudio过滤但若你手动填写了不支持的模型 ID则不会有音频返回。账户余额与额度paidCloud类服务按量计费余额不足时请求会报错请到 OpenRouter 控制台检查账户余额与密钥的额度限制。网络连接OpenRouter 为境外聚合服务请确认网络环境可正常访问https://openrouter.ai/api/v1/。凭据有效性若错误信息提示鉴权失败请重新检查 API Key 是否粘贴完整、是否已过期或被撤销必要时在 OpenRouter 控制台新建密钥后重新配置。小结OpenRouter 为 AIRI 提供了一条“一个账户、多模型多音色”的语音合成路径。核心配置仅需 API Key 与默认 Base URL 两项随后即可在“发声”模块中自由切换音频模型与 13 种内置声线。结合源码可以看到AIRI 对 OpenRouter 的接入完全复用 OpenAI 兼容的chat/completions音频流协议并在本地完成 PCM16 → WAV 的转封装实现链路清晰、可排查性良好。若你所在网络环境访问 OpenRouter 不稳定也可以参考 语音合成服务商文档目录 中的其他提供商方案。赞分享人工智能AI AgentMCP 服务工具调用GUI 自动化语音数字人交互助手【免费下载链接】airi 自托管、归你拥有的 Grok 风格 AI 伴侣与 waifu / 赛博生命灵魂容器目标是接近 Neuro-sama 的高度支持实时语音聊天、Minecraft 和 Factorio 游玩支持 Web / macOS / Windows。项目地址https://gitcode.com/moeru-ai/airi点击查看免费下载相关推荐AIRI 集成 ElevenLabs 语音合成TTS完整指南从 API Key 配置到模型、音色与 SSML 调优AIRI 集成 ElevenLabs 语音合成TTS完整指南从 API Key 配置到模型、音色与 SSML 调优 本篇指南以 docs/content/人工智能AI AgentMCP 服务工具调用GUI 自动化语音数字人交互助手后端trackerslist 完整指南77 个公共 Tracker 节点怎么挑、怎么装进 qBittorrenttrackerslist 完整指南77 个公共 Tracker 节点怎么挑、怎么装进 qBittorrent trackerslist 是一个每天自动巡检的公AIRI 接入 OpenAI 兼容 TTS从 API Key 配置到音色调试的完整指南AIRI 接入 OpenAI 兼容 TTS从 API Key 配置到音色调试的完整指南 AIRI 是一款自托管、归你拥有的 Grok 风格 AI 伴侣应用语人工智能AI AgentMCP 服务工具调用GUI 自动化语音数字人交互助手后端上一篇告别图片混乱AntiDupl开源工具助你高效清理重复照片下一篇Spyder宏录制终极指南3倍提升Python开发效率的秘诀创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

doocs/leetcode 题解精讲:面试题 62「圆圈中最后剩下的数字」的约瑟夫环递推与多语言实现

doocs/leetcode 题解精讲:面试题 62「圆圈中最后剩下的数字」的约瑟夫环递推与多语言实现

示例工程 【免费下载链接】leetcode 🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解 项目地址: https://git…

2026/10/16 2:34:54 阅读更多 →
CKEditor 4 Emoji 插件表情建议框的字体渲染测试解析:从 font.md 手册测试看彩色 Emoji 的实现与验证

CKEditor 4 Emoji 插件表情建议框的字体渲染测试解析:从 font.md 手册测试看彩色 Emoji 的实现与验证

前端UI组件 【免费下载链接】ckeditor4 The best enterprise-grade WYSIWYG editor. Fully customizable with countless features and plugins. 项目地址: https://gitcode.com/gh_mirrors/ck/ckeditor4 点击查看 免费下载 本篇技术指南以 CKEditor 4 仓库中的手册…

2026/10/16 2:33:54 阅读更多 →
lol-skins 仓库 Pulsefire Pantheon 炫彩皮肤包解析:80017–80024 清单、包结构与数据溯源

lol-skins 仓库 Pulsefire Pantheon 炫彩皮肤包解析:80017–80024 清单、包结构与数据溯源

【免费下载链接】lol-skins Comprehensive collection of League of Legends skins available for custom use. 项目地址: https://gitcode.com/gh_mirrors/lo/lol-skins 点击查看 免费下载 本篇技术指南以 lol-skins 仓库 中 Pulsefire Pantheon 炫彩包清单 为核心…

2026/10/16 2:33:54 阅读更多 →

最新新闻

STEP7_HSPs硬件支持包安装与GSD协同配置指南

STEP7_HSPs硬件支持包安装与GSD协同配置指南

简介:本资源是西门子STEP7 V5.X系列编程软件的官方级热修复服务包(HSPs),专为工业自动化领域PLC工程师、系统集成商及产线维护技术人员设计,用于解决V5.1/V5.2/V5.3等各小版本中已知的功能缺陷、兼容性问题与潜在稳定性…

2026/10/16 3:33:05 阅读更多 →
Linux内存卡死优化:从swap颠簸到earlyoom的调优实战

Linux内存卡死优化:从swap颠簸到earlyoom的调优实战

如果你的Ubuntu电脑或者服务器用着用着突然变成“幻灯片”,鼠标一卡一顿,SSD指示灯狂闪,连切个窗口都要等好几秒,那大概率不是CPU不行,而是内存管理出了问题。接触过Linux一段时间的朋友都知道,Windows卡了…

2026/10/16 3:33:05 阅读更多 →
STED超分辨成像:从衍射极限原理到系统搭建与调试实战

STED超分辨成像:从衍射极限原理到系统搭建与调试实战

STED这个名字,在超分辨成像的圈子里几乎无人不晓。它全称是受激发射损耗显微镜(Stimulated Emission Depletion Microscopy),能把普通共聚焦显微镜的分辨率从大约200纳米一直压到30纳米甚至更低,直接突破光学衍射极限。…

2026/10/16 3:33:05 阅读更多 →
Flutter鸿蒙开发实战:植物识别应用跨平台适配全攻略

Flutter鸿蒙开发实战:植物识别应用跨平台适配全攻略

最近我把一款植物识别类小工具从最初的单端Demo扩展成了支持 iOS、Android 和鸿蒙三个平台的 Flutter 应用,整个过程比预想的有意思,也踩了不少和平台适配有关的坑。这个项目表面上是“拍照识植物”,实际上把 Flutter 跨平台能力、图像预处理…

2026/10/16 3:33:05 阅读更多 →
Flutter鸿蒙端侧植物识别实战:从拍照到模型推理全链路

Flutter鸿蒙端侧植物识别实战:从拍照到模型推理全链路

跨端开发圈子里这两年最让人纠结的一件事,就是鸿蒙设备的适配怎么做。Flutter 很早就跑通了移动端、桌面和 Web,但鸿蒙这边受 SDK 演进影响,资料一直比较碎。前阵子我把一个植物识别助手从 Demo 做到了能装进鸿蒙手机跑通识别,整个…

2026/10/16 3:33:05 阅读更多 →
TPShop部署中的数据库验证:环境配置与排错完整指南

TPShop部署中的数据库验证:环境配置与排错完整指南

我敢说,十个声称"TPShop部署很简单"的人里,至少有七个会栽在数据库验证这一步。TPShop这套开源商城系统确实成熟,环境要求不高,安装文档也写得清楚,但正因为"看起来简单",大家往往在文…

2026/10/16 3:32:05 阅读更多 →

日新闻

个人 AI Agent 平台接入 TaoToken:统一 Key 与 API 通道的配置大纲

个人 AI Agent 平台接入 TaoToken:统一 Key 与 API 通道的配置大纲

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 0:00:05 阅读更多 →
信号与系统频域分析作业解题指南

信号与系统频域分析作业解题指南

1. 作业背景与核心要求解析信号与系统作为电子信息类专业的核心基础课,其作业设计往往直接关联课程的核心知识框架。2026年春季第六次作业的布置,通常对应着课程进展到频域分析的关键阶段。根据常规教学进度推测,本次作业可能涉及以下核心内容…

2026/10/16 0:00:05 阅读更多 →
Django MVT实战:从零构建图书借阅系统,彻底搞懂Model-View-Template分层

Django MVT实战:从零构建图书借阅系统,彻底搞懂Model-View-Template分层

1. 从一个"四不像"的练手项目说起如果你已经看完了Django的官方教程前几章,跟着敲完了投票应用,大概会有一种"我好像会了,又好像什么都不会"的割裂感。教程里每个知识点都是拆开的——这一章讲模型,下一章讲视…

2026/10/16 0:00:05 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/15 16:18:54 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/15 19:41:51 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/15 13:48:15 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 0:14:36 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 22:45:47 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 9:49:14 阅读更多 →