iT邦幫忙

2026 iThome 鐵人賽

DAY 5
0
AI Engineering

《AI Companion:30 天打造一個會聽、會說、會記得你的 AI 夥伴》系列 第 5

Day 05|STT → LLM → TTS:第一次讓 AI Companion 真正開口對話

  • 分享至 

  • xImage
  •  

前幾天都還只是單一模組

前幾天分別完成了 STT、TTS 和 Voice Cloning,但它們目前都還是各自運作。

所以今天的目標很單純:

把 STT、LLM、TTS 串起來,完成第一版完整的語音對話流程。

第一版 Conversation Pipeline

目前的流程是:

Microphone
↓
VAD
↓
Speech End
↓
Final STT
↓
Groq LLM
↓
Kokoro
↓
Playback

也就是使用者說完一句話後,系統會先辨識內容,再交給 LLM 產生回答,最後透過 TTS 轉成語音播放。

到這裡,AI Companion 終於第一次完成:

聽到我說話 → 理解內容 → 用聲音回答我。

今天先使用 Kokoro 的固定聲線,Day 04 的 Voice Cloning 之後再接進來。

為什麼使用 Final STT?

Day 02 做 Rolling Transcription 時,我會每隔一段時間更新 Partial 字幕,但最後一次 Partial 不一定包含完整句尾。

所以目前仍然維持:

Rolling STT → 顯示字幕

VAD 判定說完
↓
Final STT
↓
送進 LLM

真正交給 LLM 的一定是完整重新辨識後的 Final Text。

LLM 怎麼選?

這次使用 Groq,並實際測了四個模型。

其中 llama-3.1-8b-instant 首個 Token 延遲約 0.341 秒,是這次測試最快的,而且繁體中文輸出也比較乾淨,因此先選它作為即時對話的 LLM。
在完整 Pipeline 中,LLM 從收到 Final STT 到完整回覆生成完成約需要 0.48~0.71 秒。

另外幾個候選則是:

qwen3.6-27b              0.467s
llama-3.3-70b-versatile  0.473s
gpt-oss-20b              0.622s

STT 和 TTS 則維持在本機執行。

不過這也代表對話文字會送到雲端。在真實長照情境中,隱私會是需要處理的問題,之後會再評估本機模型或送出前的資訊過濾。

實測對話延遲

今天最想觀察的指標是:

Speech End → First Audio

也就是使用者講完,到 AI 真正開始出聲需要多久。

目前先使用既有 WAV 注入完整 Pipeline 測試三次:

Turn 1:1.61 s
Turn 2:0.99 s
Turn 3:1.14 s

範圍約 0.99~1.61 秒,平均 1.25 秒

其中 Final STT 約 0.23~0.25 秒、LLM 約 0.48~0.71 秒、TTS 約 0.23~0.52 秒。

這組數據目前還不是「真人對著麥克風說話」的結果,之後會再補實際語音測試。

下一步,就是繼續縮短 Speech End → First Audio,讓 AI 的回應更接近真正即時的對話。


上一篇
Day 04|讓 AI 用熟悉的聲音說話:Voice Cloning 實作
下一篇
Day 06|從說完到開口要多久?拆解 AI Companion 語音延遲
系列文
《AI Companion:30 天打造一個會聽、會說、會記得你的 AI 夥伴》6
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言