簡短的答案
語音模式無法使用通常出於四種原因之一:帳號未登入或語音分鐘數已用完、瀏覽器封鎖了麥克風、與語音服務的即時連線失敗,或工作階段觸及自身的某項限制。Whizi顯示的訊息會告訴你是哪一種,每則訊息在程式碼裡都恰好對應一種狀況。
在下表找到你目前看到的文字,再往下閱讀對應章節的細節。
| 你看到的內容 | 來源 | 該怎麼做 |
|---|---|---|
Sign in to Whizi to use voice mode. | 語音疊層開啟時沒有工作階段權杖 | 登入後重新開啟語音模式 |
Upgrade your subscription to talk with Whizi in voice mode. | 免費帳號嘗試啟動語音工作階段 | 訂閱方案:免費帳號的語音分鐘數為0 |
Your monthly voice minutes have been used up. | 本期的語音額度預約遭拒 | 等待週期重置,或升級方案 |
Microphone access is blocked. Allow it in your browser to use voice mode. | 瀏覽器拒絕了麥克風請求 | 允許whizi.io使用麥克風,再重試一次 |
This browser does not support realtime voice. | 沒有getUserMedia或AudioContext | 改用同時具備這兩者的瀏覽器 |
Realtime voice is not configured yet. Please try again later. | 伺服器端未設定語音服務商金鑰 | 你無法解決:請稍後再試 |
The realtime voice connection failed. | 工作階段期間發生websocket錯誤 | 重試,並檢查網路連線 |
Voice sessions are limited to 15 minutes. Start a new session to continue. | 工作階段計時器到達15分鐘上限 | 開始新的工作階段 |
Whizi伺服器只負責產生一組短效期的工作階段權杖,之後瀏覽器會直接對語音服務商開啟websocket連線,沒有任何語音會經過Whizi後端。這就是為什麼麥克風相關的故障完全出在你的瀏覽器端,而連線章節裡的那些訊息則來自伺服器上的權杖產生流程,或來自其上游的服務商。
語音無法啟動:帳號層級的門檻
在任何聲音被擷取之前,有三種拒絕會先發生,而且都不是程式錯誤。
Sign in to Whizi to use voice mode. 當沒有可用的權杖時,語音疊層會擲出這則訊息。已登出或已過期的工作階段都會產生這個結果。登入後重新開啟語音模式即可。
Upgrade your subscription to talk with Whizi in voice mode. 這是HTTP 402,代碼為subscription_required,在免費帳號嘗試啟動語音工作階段時回傳。免費帳號的語音額度是0分鐘,因此沒有可退而求其次的部分存取。擁有任何語音額度的最便宜方案是Starter,每月$15.99,內含每月10分鐘的即時語音。
Your monthly voice minutes have been used up. 與 Your weekly voice minutes have been used up. 這兩者都是HTTP 429,代碼為voice_limit_reached,在本期的語音額度預約遭拒時擲出。名詞在週結帳週期是「weekly」,其他情況則是「monthly」,所以你看到哪一個,就代表你的方案是哪一種計費週期。
每月結帳週期的額度如下:
| 方案 | 每月語音分鐘數 |
|---|---|
| Free | 0 |
| Starter | 10 |
| Pro | 80 |
| Powerhouse | 500 |
週結帳週期取每月額度的四分之一,並無條件進位:Starter為3分鐘,Pro為20分鐘,Powerhouse為125分鐘。
麥克風無法啟動
以下四則訊息都來自語音模式的瀏覽器端,發生在擷取聲音之前或期間。由於聲音從未送達Whizi伺服器,你的帳號或方案完全不會影響這些訊息。
This browser does not support realtime voice. 當getUserMedia或AudioContext不可用時顯示。這是能力檢查,不是權限問題,所以再怎麼授權都無法排除,請改用其他瀏覽器。
Microphone access is blocked. Allow it in your browser to use voice mode. 當麥克風請求以NotAllowedError或SecurityError遭拒時顯示。請授予該網站麥克風存取權限,再重新啟動工作階段。
The microphone could not be started. 這是其他所有麥克風故障的統稱訊息。若權限已授予且瀏覽器具備能力,這則訊息指向的就是裝置本身,或是另一個佔用輸入裝置的應用程式。
Voice mode could not start. 當啟動流程擲出錯誤卻沒有附帶任何訊息時,系統會使用這則備援訊息,因此它本身不帶任何可供判斷的細節。請依序排查權限、瀏覽器與裝置。
連線失敗或中斷
啟動一個工作階段有兩個步驟,各自可能獨立失敗:伺服器產生權杖,接著瀏覽器開啟websocket。訊息文字會告訴你是哪個步驟出了問題。
產生權杖時的故障:
| 訊息 | 狀態碼與代碼 | 觸發原因 |
|---|---|---|
Realtime voice is not configured yet. Please try again later. | 503 voice_live_unavailable | 工作進程上未設定服務商API金鑰 |
Realtime voice is temporarily rate-limited. Please retry shortly. | 429 provider_rate_limited | 上游的權杖產生流程回應了429 |
Whizi could not start a realtime voice session. | 502 voice_live_unavailable | 權杖產生流程發生其他上游故障 |
Whizi received an invalid realtime voice token. | 502 voice_live_unavailable | 產生流程成功但未回傳權杖名稱 |
Realtime voice is not available in this build yet. | 503 voice_not_configured | 共用API基底缺失,或此版本未啟用語音功能 |
Whizi received an invalid realtime voice session. | 502 invalid_voice_live_response | 工作階段負載驗證失敗,包括websocket網址開頭不是預期的服務商主機 |
Request failed ({status}). | 不一定 | 當語音錯誤內容無法讀取時,由用戶端使用的備援訊息 |
前四列都來自Whizi工作進程上的權杖產生流程,或其上游的服務商,沒有任何用戶端設定、瀏覽器變更或方案調整能排除它們。請稍後重試,若同樣的訊息持續出現,請附上確切訊息與時間聯絡支援。
websocket本身的故障:
| 訊息 | 觸發原因 |
|---|---|
Whizi could not reach the realtime voice service. | websocket在設定完成前就關閉 |
The realtime voice connection was closed. | websocket在設定完成後關閉 |
The realtime voice connection failed. | 觸發了websocket錯誤事件 |
疊層會將失敗的工作階段標記為Connection error狀態。設定完成前就關閉,指向的是可連通性問題(例如封鎖websocket的網路),設定完成後才關閉,指向的則是工作階段中途遭到中斷。
重試迴圈本身也有上限。啟動或結束語音工作階段各自限制每分鐘6次請求,所以連續猛按開始鍵只會把原本的問題換成429。想了解重試會計入的其他限制窗口,參見速率限制。
工作階段自行結束
有四種結束方式是刻意設計的,各自有自己的訊息。
Voice sessions are limited to 15 minutes. Start a new session to continue. 無論方案剩餘額度還有多少,單一語音工作階段都上限15分鐘(900秒)。計時器到達這個上限時就會觸發這則訊息,而開始新的工作階段正是預期的做法。
This session used the last of your plan's voice minutes for this period. 啟動呼叫會預約秒數,並回傳這個工作階段實際可執行的時長,當你剩餘的分鐘數偏低時,這個數字就會縮短。當伺服器把工作階段縮短到15分鐘上限以下時,你在結束時看到的就是這則訊息,而不是上限訊息。
Whizi ended the session after a couple of quiet minutes. Tap retry when you want to keep talking. 閒置逾時已過而沒有偵測到語音。如果你的症狀是「它完全沒聽到我說話」,就該留意這則訊息:完全沒有擷取到語音的工作階段會以這種方式結束,而不是繼續掛著。如果你當時確實在說話卻看到這則訊息,問題就出在逾時判斷之前,參見上方的麥克風章節。
The realtime voice session is ending. Start a new session to continue. 上游服務傳送了goAway訊框,代表服務商要求該連線收尾。開始新的工作階段即可。
工作階段權杖的有效期限是16分鐘,比15分鐘的工作階段上限多留一分鐘餘裕。工作階段不可能比自己的權杖活得久,而上限永遠是你會先碰到的那個。
自行解讀錯誤內容
如果你正在看網路追蹤記錄或要回報問題,錯誤內容裡的code是更有用的那一半。語音模式可能產生的代碼有:subscription_required、voice_limit_reached、voice_live_unavailable、provider_rate_limited、voice_not_configured、invalid_voice_live_response以及rate_limit_reached。
至於你說的內容會被如何處理,訓練聲明明確涵蓋語音:Whizi不會用你的提示詞、檔案、對話、語音逐字稿或產生的內容,來訓練Whizi自有的AI模型,也不會把這些內容出售作為訓練資料。完整說明請見Whizi如何處理你的資料。
- 免費帳號的語音分鐘數為0,所以出現402升級訊息是預期中的行為
- 每月額度:Starter 10分鐘、Pro 80分鐘、Powerhouse 500分鐘
- 限制訊息裡出現「weekly」,代表該帳號採週結帳週期
- 麥克風相關錯誤完全出在瀏覽器端:沒有語音會經過Whizi伺服器
This browser does not support realtime voice.代表缺少getUserMedia或AudioContext,授權無法解決這個問題- 權杖產生失敗(503與502)出在伺服器端:請稍後重試,或聯絡支援
- 無論剩餘額度多少,單一工作階段都上限15分鐘
- 完全沒有語音的工作階段會被閒置逾時機制結束
- 啟動工作階段的速率限制為每分鐘6次,所以連續重試反而會弄巧成拙
常見問題
Whizi說我的麥克風被封鎖,但它在其他應用程式裡都能正常運作,該怎麼辦?
當麥克風請求以NotAllowedError或SecurityError遭拒時,就會顯示這句確切文字:Microphone access is blocked. Allow it in your browser to use voice mode.。請授予該網站麥克風存取權限,再重新啟動工作階段。如果你看到的其實是The microphone could not be started.,那就不是權限被拒:那則訊息是其他所有麥克風故障的統稱。
語音模式說尚未設定完成,是我帳號的問題嗎?
不是。Realtime voice is not configured yet. Please try again later.是HTTP 503,在伺服器上未設定語音服務商API金鑰時回傳;Realtime voice is not available in this build yet.則是用戶端對應版本,在該版本未啟用語音功能時顯示。這兩者都不是你能自行修復的。請稍後重試,若仍持續發生,請附上確切文字聯絡支援。