雙AI雜談台:讓兩個AI角色輪流講話,不同時開口也不繞圈子

這篇解決什麼問題:讓兩個AI角色在直播裡輪流講話,不會同時開口,不會兩人一直繞著同一個話題打轉,觀眾在聊天室打字時還能插得進去。難的是「誰什麼時候可以說話」這件事。

適合誰讀:已經有一個AI角色能講話、想擴成兩個角色互動直播的人。看得懂「排隊」與「鎖」這兩個概念就夠,不需要額外的深度學習知識。

讀完能做到什麼:能設計出一套讓兩個角色輪流發言、可被留言打斷的調度規則,並判斷自己手上那台電腦跑不跑得動。

這是010-AI-VTuber專案在2026-06-10拍板的第一個驗證目標:兩名AI角色互相對話,同時可被聊天室留言打斷的雜談台,走的是最像Neuro-sama的娛樂路線。互動模式是混合式,留言優先,冷場時自己接話;節奏抓短時段定時,一到兩小時。背景知識可以先看AI-VTuber 是什麼-白話入門。

1660 6GB顯卡跑得動雙AI,因為深度學習模型全丟給雲端

LLM丟給雲端OpenRouter、TTS用edge-tts雲端服務,本機完全不用扛深度學習模型,唯一多出來的負擔是多開一個Live2D角色的渲染,而2D渲染本來就很輕。

雙角色連續跑十分鐘,GPU使用率峰值41%,VRAM峰值2799 MiB,這台顯卡總共只有6144 MiB,用不到一半。

真正的風險不在硬體,在編排層這個純軟體問題,也就是怎麼安排兩個角色講話的順序。

三個待解問題,只有編排層沒有現成答案

雙AI要上線,有三件事要處理。前兩件是體力活,第三件才是硬仗。

VTS(VTube Studio)一個實例只能對應一個模型,兩個角色就要開兩個VTS實例,難度低。聲音也要分流:現在只有一條VB-CABLE虛擬音訊線,兩個角色要各自對嘴,就得加一條,方案是VB-CABLE A+B或Voicemeeter,難度中等。

真正卡人的是編排層:怎麼讓兩個AI輪流講、不同時出聲、不繞著同一個話題打轉,還能被聊天室留言打斷。這件事沒有現成方案可以抄,得自己設計調度規則。

先驗證對話好不好看,再花時間接硬體

雙AI的風險拆成兩階段驗證,先解決最貴的問題,硬體留到後面。

階段A完全不碰VTS和音訊線,只驗證兩個AI對話好不好看。要做的事包括:寫一個和第一隻角色個性有反差的第二個角色設定檔;設計輪流發話的調度邏輯,決定誰先講、輪次怎麼推進、把對方上一句話餵進自己的對話情境;用兩種不同的edge-tts聲線做零成本的角色區分;加一把佇列鎖避免兩張嘴同時講話;維護一份共享的最近話題記憶,偵測到重複就強制換題;讓聊天室留言可以打斷自走對話並優先回應。全部做完只用一個喇叭聽完整對話,驗證概念是否成立。

階段A通過後才進階段B,開始動硬體:開兩個VTS實例、加第二條虛擬音訊線讓聲音只驅動自己的嘴、把主程式從單一全域音訊裝置改成每角色路由到不同裝置、在OBS排出雙視窗同框畫面並實測推流穩定性、監看1660顯卡的實際VRAM與GPU使用率確認不掉幀。

靠回合制與佇列鎖,讓兩個角色像真的在對話

雙AI要組成一個看起來像真的在對話的迴路。調度用回合制:A講完,把A的話當輸入餵給B,B回完再餵回A,這樣輪流推進對話。出聲互斥是關鍵,靠一個全域的說話佇列鎖確保同一時間只有一個角色在出聲,講完才換手,否則兩條TTS的聲音會疊在一起。

防止兩人繞著同一個話題打轉,靠維護一份最近N個話題的共享記憶,一旦偵測到語意重複就強制換題,也可以定時注入新的話題種子。聊天室打斷走混合模式:自走對話平常跑在背景,一旦偵測到觀眾留言,就暫停自走、優先讓某個角色回應留言,回完再接續原本的話題。

flowchart TD
    留言判斷{有觀眾留言嗎}
    留言判斷 -- 有 --> 暫停自走對話
    暫停自走對話 --> 優先回應留言
    優先回應留言 --> 佇列鎖釋放
    留言判斷 -- 沒有 --> A角色發話
    A角色發話 --> 佇列鎖鎖定
    佇列鎖鎖定 --> 餵入B角色情境
    餵入B角色情境 --> B角色發話
    B角色發話 --> 偵測話題重複
    偵測話題重複 -- 重複 --> 注入新話題種子
    偵測話題重複 -- 不重複 --> 佇列鎖釋放
    注入新話題種子 --> 佇列鎖釋放
    佇列鎖釋放 --> 留言判斷

這整套編排層,是專案原本規劃在第三階段才要做的自寫排程,被提前拉到第一線,因為沒有現成方案可以套用,是整個專案裡自研比重最高的一塊。

接話延遲壓到零,雙視窗同框推流長測通過

兩個角色各有一張自己的臉、各走一條自己的聲音線,兩張嘴各自對嘴不會一起動;接話之間的空白壓到零秒;語調有情緒起伏;觀眾留言可以打斷對話;問到產品問題還會自動去翻資料庫再回答。

06-09打通單角色的核心迴路,06-12雙臉雙線接上,06-13收尾。做法細節,包含接話延遲怎麼壓到零、情緒通道怎麼做,寫在雙AI上臉實戰:雙音訊線、語音預生成與情緒通道。

剩下的問題是角色性格,寫程式解決不了

兩個角色目前只是實驗用的占位人設,要定稿成什麼樣的個性還沒決定。這件事沒辦法靠寫程式解決。

相關筆記