工作原理
語音會話是你的客戶端與 Theo 語音運行時之間的一個流式連接。你的應用需要:- 在瀏覽器(或設備端)中採集麥克風音頻。
- 向 Theo 請求一個短時效的會話令牌。
- 使用該令牌打開流式語音連接,並在 Theo 的音頻響應到達時進行播放。
獲取語音令牌
在開始語音會話之前,先請求一個會話令牌:令牌端點會在返回令牌的同時返回
systemInstruction 和 tools,這是 Theo 平台的約定契約。你的客戶端在打開實時語音連接時必須同時附帶這兩項——否則會話將在沒有 Theo 角色、也沒有任何工具訪問權限的情況下啓動。systemInstruction 承載了 Theo 語音角色、平台上下文、運行時協議以及工具使用指引(在存在時還包括記憶和技能上下文)。tools 數組包含所有已聲明的語音工具(generate_image、generate_video、deep_research、generate_code、generate_document、save_memory),以及任何以 skill_{slug}_{toolName} 命名空間標識的已安裝技能工具。
語音選擇是可選項。可用的語音標識符列在儀表盤的 Settings → Voice(設置 → 語音)中。
轉錄(STT)
通過 STT 端點發送音頻進行轉錄:{ "text": "transcribed text" }。
支持的格式:WebM、MP3、WAV、M4A、OGG。文件大小上限:25MB。
文字轉語音(TTS)
將文本轉換為音頻:語音中的技能工具
帶有工具定義的 E.V.I. 技能會自動在語音會話中可用。技能橋接層會將每個技能的工具以函數聲明的形式暴露給語音運行時:- 工具名稱以
skill_{slug}_{toolName}命名空間標識,以避免衝突。 - 技能清單中聲明的輸入模式會被轉發給語音運行時。
- 當語音會話調用某個技能工具時,Theo 會將其路由到你的技能工具執行器,並將結果回傳到實時會話中。
