一把 key 補上語音這一塊
如果你的應用已經透過 OpenRouter 呼叫語言模型,現在多了一個選擇:直接用同一把 OpenRouter API key 呼叫 ElevenLabs 的語音模型。根據 OpenRouter 在 2026 年 10 月 7 日的公告,這次上線了九款 Text to Speech 模型和兩款 Speech to Text 模型,對應的端點是 POST /api/v1/audio/speech 和 POST /api/v1/audio/transcriptions,不需要另外開 ElevenLabs 帳號或訂閱。
對 builder 來說,這個改變的實際意義是架構上的簡化。以前做一個會說話的 agent,通常要管兩套帳務、兩把 key、兩種錯誤處理。現在語音變成路由目錄裡的另一個模型,計費和呼叫都走同一條管道。而且所有 ElevenLabs 模型在 10 月 19 日 8am PT 之前,以 OpenRouter 定價的五折供應。
從三個模型開始就夠了
九款 TTS 模型看起來很多,但公告的建議是先記住三個:
- Eleven v4:品質最高,支援
[whispering]、[laughing]這類 audio tags,適合旁白、角色配音、產品影片。每個請求上限 10,000 字元。 - Eleven v4 Turbo:為即時對話設計的低延遲版本,計費是 v4 的一半,適合 voice agent 的即時回覆。
- Scribe v2:一般轉錄,帶 word timestamps 和 speaker labels,支援 90+ 種語言。
其他模型按需求再補:Multilingual v2 支援長篇音訊的速度控制,Flash v2.5 單次請求可以到 40,000 字元、適合高量輸出,Scribe v2 Medical 則標榜在臨床音訊上比 Scribe v2 減少 35% 的醫療術語錯誤。
一個聲音 agent 的最小鏈路
公告的 walkthrough 示範了三步:先讓 Eleven v4 念一段產品導覽,再用 voice agent 回答使用者的口頭提問,最後用 Scribe v2 把會議錄音轉成標注誰說了什麼的筆記。
第二步的鏈路值得注意——語音 agent 其實就是三個模型的串接:Scribe v2 轉錄問題,任一 chat model 產生回答,v4 Turbo 念出回覆。三個呼叫全走 OpenRouter,中間那顆聊天模型可以隨時換掉而不動到音訊程式碼。這正是我在先前談 OpenRouter 三層分工時提過的取向:把模型選擇當成可替換的配置,而不是綁死在框架裡的硬編碼。
幾個容易踩的坑
公告裡有幾條細節,第一次呼叫前最好先知道:
- 不指定
response_format時,語音端點回傳的是 24 kHz 的 raw PCM——適合塞進音訊管線,但一般播放器打不開。要拿到可直接播放的 MP3,記得明確設"response_format": "mp3"。 - Audio tags 會計入字元上限和計費字元。
- ElevenLabs 專屬參數放在
provider.options.elevenlabs底下,例如分段朗讀時傳previous_text和next_text讓語調銜接自然,或設定seed讓重跑更可重現。不在清單上的 key 會被忽略,清單上的 key 給錯值則回 400。 - 只有 Multilingual v2 和 Flash 支援速度控制;v4 系列不支援,想調整節奏得靠 audio tags。
- 轉錄上傳上限 25 MB(約 27 分鐘的 128 kbps MP3)。更長的檔案可以改傳公開 URL 讓 ElevenLabs 直接下載,但超長錄音仍可能撞上 180 秒的上游請求逾時,要自行分段。
- Scribe 回傳的語言代碼是三碼的 ISO 639-3(例如
eng),不是常見的兩碼en。
值得試、也有一個前提
如果你手上已經有一個靠 OpenRouter 跑的 LLM 應用,把旁白或語音互動加進來的成本,現在低到值得一個下午就驗證完。五折定價到 10 月 19 日為止,之後回到各模型頁面標示的每字元費率。
一個要先想清楚的前提:掛進 OpenRouter 換來的是整合便利,但你的語音流量就多了一層中介。如果語音是產品的核心延遲敏感路徑,直連 ElevenLabs 仍有它的理由。先用折扣期把原型跑起來,再決定要不要收斂到單一 provider,是比較務實的順序。
