
圖說:墨寒提燈迎接第一次啟動,不讓 API 金鑰成為進門考試

圖說:實機畫面——完成首次啟動後,仍可在設定頁調整名稱、稱呼、語言與語音喚醒詞。
前兩天我一直在談需求與架構,今天想把視角換成一位剛從 GitHub 下載墨寒的使用者。
他也許只是被角色吸引,想先看看這位桌面劍魂會不會說話;他不一定知道什麼是 API,更不一定已經申請 OpenAI 金鑰。如果程式一打開就丟出一排空白欄位,要求他先去某個網站建立帳單、複製一串祕密文字,很多人恐怕會在見到墨寒以前就關掉。
這正是我後來要求修改預設值的原因:墨寒的第一聲,應該先有機會由 Windows 本機語音說出來,而不是把雲端金鑰當成進門門票。
開發者很容易忘記,自己已經熟悉的名詞,對第一次下載的人都是阻力。API 金鑰、Realtime、語音模型、OAuth,每一個都可能讓人懷疑是不是做錯了什麼。
因此首次啟動精靈最重要的工作,不是一次把所有進階設定問完,而是幫使用者跨過最小的門檻:選擇看得懂的介面語言、確認基本語音,知道雲端功能可以稍後再設定,最後真的進入主畫面。
我希望這段流程像墨寒本人迎接主上,而不是資訊人員拿著表格盤問。說明仍要清楚,卻不必把所有技術選項同時攤開。
OpenAI 的雲端語音自然度較好,也能配合更完整的對話;但它需要使用者自己的 API 金鑰、網路與可能產生的費用。若把它設成預設,沒有金鑰的人第一次按下語音,就只會得到失敗。
Windows 本機語音雖然表現依每台電腦已安裝的語音而異,優點是不用先申請 ChatGPT 或 OpenAI 帳號,也不必把文字送去雲端合成。對「先下載嘗鮮」這個情境,它才是比較合理的起點。
繁中環境的預設仍保留 Yating,因為這是我自己熟悉且符合墨寒形象的台灣女性聲音。但程式不能把「Windows 本機語音」誤寫成「全世界只有 Yating 和 HanHan」。它應該查看使用者電腦實際有哪些聲音,再依語言與女性語音條件提供可用選項。這部分我會在 Day 7 詳談。
讓沒有金鑰的人啟動,不是把限制藏起來。
首次精靈仍應清楚告訴使用者:Windows 本機語音負責把既有文字說出來;如果想和雲端 AI 完整對話,仍需要自行設定 OpenAI API 金鑰。金鑰屬於個人祕密,程式不會附送,也不應要求使用者把它貼在公開 Issue、截圖或 GitHub。
如果使用者暫時略過雲端設定,墨寒就保持在她真正能做到的範圍。她可以顯示介面、播放本機語音、引導設定,但不能假裝已經理解一切。對我而言,這種誠實比做一個看起來什麼都會、實際上第一步就報錯的精靈重要得多。
到了 v2.1.0-rc.1,首次啟動精靈已能選擇繁中、英文、簡中或日文。後面的必要說明、按鈕與人格提示要維持同一種語言,不能第一頁是英文,下一頁又突然跳回繁中;日文也不是只多一個選單名稱,而要能走完相同的最小使用路徑。
我們沒有在這一版追求使用中的即時熱切換。語言變更以重新啟動後完整套用,先換取比較穩定且可驗收的結果。對第一次使用的人而言,最重要的是從選擇語言到完成設定一路走得通,而不是在同一秒鐘看見所有文字變身。
另一個容易被忽略的細節是預設提醒詞。英文介面不只按鈕要變英文,工作模式與自訂鬧鐘第一次出現的預設句子也應該是英文;切回繁中而且仍使用內建預設時,就要恢復中文。可是如果使用者已經親手改過提醒文字,程式不能以「幫你翻譯」為理由蓋掉他的內容。
這裡的原則很簡單:內建預設可以跟著語言走,個人創作必須被尊重。
這類流程不能只看畫面排得好不好。我會從新使用者角度逐步確認:沒有任何舊設定時能否啟動;不填 OpenAI 金鑰能否完成;四種語言是否各自走到主畫面;Windows 聲音不存在或選項不同時,程式是否能給合理說明;完成後再次啟動,精靈是否不會無故重來。
其中有些可以交給自動測試檢查,例如預設值與語言對應;聲音是否真的好聽、特定 Windows 版本列出的語音是否正確,仍需要在實際電腦上播放。兩種證據不能互相冒充。
我也會故意走幾條不順利的路:在精靈中途關閉視窗、沒有任何符合條件的本機女性語音、填錯或略過雲端設定,再回來修改選項。第一次使用流程最怕只測「一路按下一步」的理想情況,因為真正的新手可能看不懂、選錯,或只是想先離開。程式若因此卡在半完成狀態,下次啟動又不知道該從哪裡繼續,前面再漂亮也沒有用。
這些狀況不一定每一種都已在全世界的電腦上實測,所以文章不會把設計目標寫成全球保證;但我們至少能把可重現的流程寫進測試,並把仍依賴 Windows 語音套件的部分留給真實環境驗收。
首次啟動看起來只是幾頁設定,實際上是在回答產品最現實的一句話:一個對墨寒有興趣、但什麼都還沒準備的人,能不能先順利見到她?
明天 Day 6,我會接著談多語系。國際化並不是把中文字丟進翻譯器;英文、繁中、簡中與日文要如何各自完成最小可用體驗,又不覆蓋原本使用者的設定?
安全提醒:OpenAI API 金鑰應由使用者自行建立並保存在本機安全儲存區,不應寫進文章、截圖、對話紀錄或公開原始碼。