会说中文、英语和泰语的语音智能体
可以试试的想法
รับทราบค่ะ จองโต๊ะสำหรับ 4 ท่าน วันเสาร์เวลาหนึ่งทุ่ม ใช่ไหมคะ
ยอดคงเหลือในบัญชีของคุณคือ 8,432 บาทค่ะ ต้องการทำรายการอื่นเพิ่มไหมคะ
ออเดอร์ของคุณกำลังจัดส่งโดย Flash Express หมายเลขพัสดุ TH123456789 ค่ะ
ได้เลยค่ะ เดี๋ยวช่วยตรวจสอบให้นะคะ รอสักครู่ค่ะ
每张卡片播放的都是 Nom Yen 按卡片脚本原文生成的真实音频。在语音页面打开后,可以让它说任何内容。
语音智能体如何使用 API
来电者评判语音智能体,看的是自己说完一句话到听见回复之间的停顿。智能体是一条流水线:语音识别把来电者的话转写成文字,语言模型写出回复,文本转语音再把它说出来。业界公开的延迟预算一般给 TTS 环节 100 到 200 毫秒来输出首段音频,端到端目标在一秒以内。听和说这两环都可以跑在这个 API 上。Paxa STT Lite Realtime 通过一个 WebSocket 转写来电者的话,并标出每个轮次在哪里结束。Paxa TTS Flash v2 用中文、英语或泰语说出回复。实际可用的接入方式是流式。语言模型每写完一句,就带上 stream: true 发送出去,分块的 MP3 一到就转发给电话线路或网页客户端。在泰国,对话通常从聊天应用开始,LINE 的月活跃用户达 5,600 万,占人口的 78.2%。接电话的助手面对的也是同一批客户。企业采用仍处于早期。在一项覆盖 580 家泰国机构的调查中,17.8%已在使用 AI,73.3%计划采用。泰语语音智能体在当地是一个活跃领域,既有创业公司在销售,也有研究团队发布开源的泰语音频模型。难点仍在语言本身,包括声调、词间不留空格的书写方式,以及在一句话里混用泰语和英语的回复。
逐句流式发送
语言模型每写完一句,就带上 stream: true 发送。分块的 MP3 在合成结束前就开始到达,智能体边收边转发给来电者,下一句照此进行。
让重试路径安全
给每个请求附上 Idempotency-Key。连接断开、智能体重试时,重放会返回原来的结果,不会再次扣费。同一个键的并发重复请求会被拒绝,不产生费用。
失败也不损失积分
计费采用先扣费、失败自动退款的方式。合成失败时,即使发生在流式传输中途,积分也会退回,每个请求无论是否扣费,都能在日志中看到。
一通电话,从来电者这一侧看
问候语开始播放
来电者早就知道自己要什么。拨号之前就想好了,问候语是他们等着熬过去的那一段。
来电者开口打断
人与人之间这再正常不过,却正是多数自动语音线路出问题的时刻。菜单继续往下念,来电者提高嗓门重复一遍,这通电话已经开始变糟。
播报停下
可以被打断的助手会在句子中间停下来倾听。来电者不会把这叫作一项功能,它却是会应答的系统与只顾自说自话的系统之间的全部差别。
问题解决,或转给人工
要么来电者办成了事,要么一位客服接起电话,文字记录已经摆在面前。两种结果都让来电者离开队列,其中只有一种要占用客服的时间。
放弃率是这里要看的数字。无法打断的来电者会挂断再拨,于是在队列里出现两次,在满意度评分里出现一次。
一次回复的毫秒花在哪里
30-80 ms
网络
150-300 ms
轮次判断
150-400 ms
LLM 首个 token
100-200 ms
TTS 首段音频
以上是业界公开的实时语音流水线延迟预算(The Prompt Bench、Hamming、Telnyx)。这些数字不是对本 API 的测量。引用它们,是为了说明下面的接入方式为什么采用流式回复。
线路上的一次回复
llm → "สวัสดีค่ะ มีอะไรให้ช่วยไหมคะ"
agent → POST /v1/tts {"stream": true, "voice": "nomyen"}
tts ← 第 1 块 (已经在播放给来电者)
tts ← 第 2 块 … 最后一块
agent → 下一句,同样的流程按回复数量计价
| 回复 | 字符 | 积分 | 费用 |
|---|---|---|---|
| 100 | 20,000 | 200 | $0.20 |
| 10,000 | 2,000,000 | 20,000 | $20.00 |
| 1,000 条语音回复 | 约 $2.00 | ||
按每条回复约 200 个字符计算,相当于一两句口语,统一费率为每百万字符 $10。流式请求和整段请求计费相同,扣费后失败的请求会退款。
面向开发者
curl、TypeScript 和 Python 示例都带 stream: true 发送一句话,并在每个 MP3 分块到达时立即处理,这正是智能体每一句都要跑一遍的循环。
完整 API 参考curl -N -X POST https://api.paxalabs.com/v1/tts \ -H "Authorization: Bearer $PAXA_API_KEY" \ -H "Content-Type: application/json" \ -d '{"text": "สวัสดีครับ ยินดีต้อนรับสู่ Paxa Labs", "voice": "khanomkrok", "model": "paxa-tts-flash-v2", "stream": true}' \ --output speech.mp3
const response = await fetch("https://api.paxalabs.com/v1/tts", { method: "POST", headers: { Authorization: `Bearer ${process.env.PAXA_API_KEY}`, "Content-Type": "application/json", }, body: JSON.stringify({ text: "สวัสดีครับ ยินดีต้อนรับสู่ Paxa Labs", voice: "khanomkrok", model: "paxa-tts-flash-v2", stream: true, }), }); if (!response.ok || !response.body) { throw new Error(`TTS failed: ${response.status}`); } // Chunks arrive while synthesis is still running. for await (const chunk of response.body) { player.feed(chunk); }
import os import requests response = requests.post( "https://api.paxalabs.com/v1/tts", headers={"Authorization": f"Bearer {os.environ['PAXA_API_KEY']}"}, json={"text": "สวัสดีครับ ยินดีต้อนรับสู่ Paxa Labs", "voice": "khanomkrok", "model": "paxa-tts-flash-v2", "stream": True}, stream=True, ) response.raise_for_status() with open("speech.mp3", "wb") as f: for chunk in response.iter_content(chunk_size=None): f.write(chunk)
试听音色
50 个正式音色中的几个,均通过 API 使用公开的音色 ID 生成。全部音色可在文本转语音页面试听。
- Cookiev1 + v2在语音页面打开
- Nom Yenv1 + v2女声主音色
- Khanom Krokv1 + v2男声主音色
- Foi Thongv1 + v2旁白
为泰语对话而构建
语言模型写回复时很少加标点,还常在泰语句子中间夹带英语。Paxa TTS Flash v2 不依赖标点提示也能为连写的泰语断句,并在两种语言之间保持同一个声音。整段对话里,智能体听起来始终是同一位说话人。
常见问题
来电者打断智能体时会怎样?
它会在句子中间停下,回复的剩余部分被丢弃。这就是在实时 socket 上发送的一次 cancel。同一个连接继续承载下一轮对话,整通电话无需重新开始。
智能体能说泰英混合的回复吗?
可以。泰英混合文本在一个请求中由同一个音色朗读,泰国用户和助手说话本来就是这样,语言模型回复他们时也这样写。
流式请求在合成中途失败会怎样?
流会被截断,费用自动退还。计费采用先扣费的方式,每条失败路径都会退回积分。失败的请求连同错误码仍会显示在日志中。
同一个 API 能转写来电者的话吗?
可以。Paxa STT Lite Realtime 通过 /v1/stt/live 上的 WebSocket 收听,判断每个轮次在哪里结束,并为每个轮次发送一份完整的转写,按收到的音频每分钟 12.5 积分计费。循环的两环从同一个余额扣费,记录在同一份请求日志里。
我们已经在调用 OpenAI 的语音 API,需要重写吗?
不需要。POST /v1/audio/speech 是兼容 OpenAI 的端点,默认流式输出,现有的客户端代码改用新的 base URL 和 API 密钥即可。
从免费积分开始
使用 Google、GitHub 或 Hugging Face 登录,即可用 100 一次性免费积分处理您自己的文本。
相关阅读
- 2026 年泰语配音多少钱:录音棚、自由配音员与 AI
- 泰语 AI 配音怎么选:按用途挑选全部 34 个音色
- 如何为泰语 AI 配音撰写脚本
- 泰语没有句号:流式语音合成该在哪里断句
- 用十个句子评测一个泰语 AI 音色
- Paxa TTS Flash 开始说中文,并新增六个音色
- Paxa TTS Flash 新增两个能读情感标签的音色
- Paxa TTS Flash 在 104 毫秒内开始发声
- 文本转语音(TTS)是什么?AI 配音的原理与用途
- 如何为 TikTok、Reels 和 Shorts 添加 AI 配音
- 泰语文本转语音怎么选:应用、视频和电话线路
- YouTube AI 配音工具怎么选:解说旁白、无人出镜频道和 Shorts
- 免费文本转语音怎么选:个人项目与付费前试听音色
- 有声书和长篇朗读适合用哪款文本转语音工具
- 如何制作 AI 配音:从写稿到下载
- 用 AI 朗读小说:旁白音色与角色配音
- AI 音色设计怎么写描述:如何描述一个声音,附示例
- 音色设计与声音克隆:两种打造专属 AI 音色的方式
- 适合泰语音色、已保存音色和语音智能体的 AI 音色设计工具
- Paxa TTS Flash v2 文本转语音模型正式上线
- AI 音色设计现已上线
- Paxa TTS Flash v2 文本转语音新增 Temperature 与停顿标签