亞馬遜Alexa語音交互設計四范式(下)
本文筆者將與大家分享Alexa技能設計的四大范式中的兩大范式——Be Available(設計易用性)、Be?Relatable(設計親和力)。
Be Available(設計易用性)
構建扁平的、語音優先(voice-first)的設計,對用戶同時開放所有選項。不要陷入GUI設計使用的嵌套垂直菜單模式。你的技能需要處理任何可能觸發意圖的信息。
1. 創建一個有效的調用名(invocation name)
用戶使用特定的調用名打開自定義技能。這個命令需要足夠特別且十分好記。通常,客戶將調用名與操作、命令或問題組合在一起,因此你的調用名稱應該是惟一的,并且不能太長。
例如,假設我們有一項技能叫做“每日占星”。用戶可以在一句話中同時調用并且提問:“Alexa,請每日占星給我看看水瓶座的運勢?!边@句話喚醒了Alexa,打開了技能,并同時提出查看某個星座運勢的請求。
2. 響應時間限制設計
當Alexa等待用戶響應時,會有一個時限(8S)。在這段時間里,用戶有機會作答。等待時間結束后,服務要么二次詢問(re-prompt)用戶是否需要幫助要么直接結束會話。如果你的技能進行了二次詢問,它將在會話結束前提供8秒鐘的應答等待。
與自然對話一樣,如果Alexa覺得用戶沒有理解或者對剛才的提問感到困惑,她可以通過二次詢問來重新組織和闡述問題,從而得到她所想要的答案。
當用戶對對話的上下文足夠熟悉時,他們不需要再把完整的問題聽上一遍,你可以縮短二次詢問的長度力圖簡潔。關鍵是你已提供了足夠的信息來引導用戶,讓他們明白如果他們不知道如何回答,你就會在8秒后終止與他們的聯系。二次詢問為用戶提供了一個機會去擴展初始的問題,從而使對話能夠繼續下去。
Do
Alexa:歡迎回到電影大家談。有什么需要我幫忙的嗎?
用戶在8秒鐘內沒有作答,觸發了二次詢問:
Alexa:你可以聽聽本周新上線了哪些電影,也可以聽聽預告片。你想聽哪個?
Don’t ?
Alexa:歡迎回到電影大家談。有什么需要我幫忙的嗎?
用戶在8秒鐘內沒有作答,觸發了二次詢問:
Alexa:有什么需要我幫忙的嗎?
3. 設計簡單的選項
避免在任務中涉及用戶不熟悉的信息或復雜數據,例如一長串字母數字密碼。
Do ? ?
Alexa:我會講故事、背古詩還有唱歌,你想讓我做什么呢?
Don’t ? ?
Alexa:我會講故事、背古詩、唱歌、講笑話、說繞口令、模仿動物,還會…
用戶:Alexa,別說了。
4. 明確、具體的完成任務
避免反復校驗某個詞或者一句話中可能被誤識別的部分,也不要對上輪對話輸入中可能發生的錯誤或者歧義做反復校驗。
在本例中,客戶正在觀看Prime Video,并要求Alexa暫停他們正在觀看的內容。
Do?
用戶:Alexa,暫停。
Alexa自動暫停了視頻,整個過程中只用了一個提示音證明她聽見了請求。
Don’t ?
用戶:Alexa,暫停。
Alexa:你確定要暫停嗎?
(視頻作為背景音仍在播放)
用戶:是的!暫停,現在就暫停!
Alexa:好的,暫停你的視頻“高堡奇人第一季第一集新…”
用戶:Alexa,別說了。
5. 避免在調查中要求復雜輸入或可能帶來高歧義性的輸入
調查類任務應當接受用戶提供的任何信息,并提供結合上下文的簡短提示,用于填充完成任務所需的各項細節。
Do ? ?
用戶:Alexa,給我從A to Z餐廳點意大利橄欖香腸披薩。
Alexa:好的,三份中號的意大利橄欖香腸披薩,還要點別的嗎?
用戶:不了。
Alexa:已下單!你的披薩將在30分鐘內送到。
Don’t ?
用戶:Alexa,給我從A to Z餐廳點意大利橄欖香腸披薩。
Alexa:你要中號的還是大號的意大利橄欖香腸披薩?
用戶:三分中號的。
Alexa:Pizza Pro現在買兩個大號披薩特價。要下單嗎?
用戶:好吧…但是我想要兩個意大利橄欖香腸披薩。
Alexa:好的,你要了兩個披薩,第一個披薩上面加什么?
用戶:意大利橄欖香腸披薩,給我在訂單加兩個!?。?/p>
Alexa:Pizza Pro沒有找到上面加兩個的披薩。
用戶:算了,不買了,我不餓了。
提供明確的選擇,這樣用戶才能做出清楚的決定。開放式問題會讓用戶感到困惑,或者用你并不支持或者并不希望的方式去回答問題。例如,詢問“你想要什么?”就是十分開放式的。甚至像“你想要布里干酪或豪達干酪嗎?”這樣的問題,都可能會帶來開放式的答案“沒錯”。
Do ?
Alexa:我們有布里干酪和豪達干酪,你想選擇哪個?
Don’t ?
Alexa:你想要布里干酪或豪達干酪嗎?
6. 為用戶找出與輸入預期匹配度最高的前三個選項
避免在用戶對自己的需求目標并不明確的時候,給他們展示一些需要進一步查看或處理后方能理解的信息或數據。
Do
用戶:Alexa,問一下我的菜譜,我上周晚飯做了什么?
Alexa:上周你做了7道菜。最近的一次是烤三文魚,你還想做這個嗎?
用戶未回答:
Alexa:好,那我們開始做吧。烤三文魚需要…
Don’t
用戶:Alexa,問一下我的菜譜,我上周晚飯做了什么。
Alexa:上周你做過烤三文魚,意大利面和肉丸,火雞肉餅,加蘋果醬的豬排…
用戶:Alexa,別說了。
7. 合理閱讀列表中的項目
對于需要大聲朗讀的文章或冗長的信息,避免在沒有首先說明有多少信息的情況下念出所有條目。此外,避免搜索和瀏覽包含大量目錄的任務,這些目錄總是返回太多的結果,導致用戶無法通過語音進行索引。
Do ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
用戶:Alexa,問一下我的旅行策劃,我的行李單上還剩幾項沒有裝箱?
Alexa:你還有8項沒有裝箱:有人字拖,游泳衣,浴巾。還想聽更多嗎?
Don’t ? ?
用戶:Alexa,問一下我的旅行策劃,我的行李單上還剩幾項沒有裝箱?
Alexa:你還需要帶上人字拖、泳衣、浴巾、防曬霜、太陽鏡……
用戶:Alexa,別說了。
8. 設計簡潔的列表
讓Alexa只閱讀每個列表項的基本內容。例如,只讀標題,并且只讀對語音應答有關鍵意義的副文本。一般來說,閱讀列表的前幾項不要超過20秒。
從閱讀2 – 5個項目開始,根據以下幾點進行調整:
- 用戶對列表項的熟悉程度
- 條目名稱的長度和語音友好性(voice-friendly)
- 每項需要讀取和顯示的元素總數
Do?
Alexa:根據你的口味,你可能會喜歡以下幾種奶酪:切達奶酪、豪達奶酪和哈瓦蒂奶酪。
Don’t
Alexa:你可能喜歡切達干酪、豪達干酪、賈爾斯伯格干酪、波特切達干酪、圣阿格爾藍奶酪、戈貢佐拉干酪、布里干酪、格魯耶爾干酪、夏普切達干酪和雷吉亞諾帕爾馬干酪。
9. 控制列表節奏
首先讓Alexa介紹一下列表,例如“這是最受歡迎的快餐”,并讓她在列表項之間短暫停頓。停頓和節奏幫助聽者區分上一個列表項的結束和下一個列表項的開始,例如:
- 在每項后面使用逗號而不是句號或問號,并且給逗號設置一個350毫秒的時長停頓。這可以讓最后一項聽起來和列表里的其他項差別不大。
- 避免在以句號或問號結尾的列表中添加額外的停頓。
- 對于冗長的列表項或那些需要用戶進行更深入思考的項目,可以考慮將350毫秒的暫停延長為400毫秒。
- 通過反復傾聽來測試聽覺體驗,然后不斷調整,直到它聽起來舒適為止。
10. 用問題引導用戶
時刻記住,用戶經常用他們想要使用的技能來開啟和Alexa的對話。一旦他們這么做了,你就需要引導用戶去告訴Alexa應該如何幫助他們。
提出問題,引導用戶輸入,是一種自然的提示方式。
要么直接問問題,要么在提示的結尾處拋出問題,這樣用戶就會知道如何立即回復。反之,如果問的很繞彎子,或者在應答的中段問問題,可能會導致用戶在麥克風打開之前或者提示還沒說完之前就開始回答,極易造成識別錯誤。用戶被問到問題時,往往會立即回答。
11. 在詢問中為用戶提供指導
通常,在讓用戶回答之前,拋出一個問題。這個問題提供了繼續對話的線索,并指導用戶下一步該說什么。問題要明確具體,但是也要準備好用戶會以不同的方式回答或者過度回答。
Do ? ? ? ?
Alexa:讓我們開始旅行計劃吧。你想去哪個城市?
Don’t
Alexa:讓我們開始旅行計劃吧。一旦我知道你要去哪里,你想在那里做什么,我就能幫助你了。你想去哪里?你最近去過波特蘭。
12. 避免不必要的是/否確認
如果提出詢問的選項是“是”或者“否”,只需詢問用戶是否想要做某事。不要再問“是或者不是”。
Do
Alexa:你還想繼續購物嗎?
Don’t ?
Alexa:你還想繼續購物嗎?是或者不是?
13. 二選一句式中選項不能過長
只有在選項很短(每個選項只有一兩個詞),并且只有兩個選項的時候可以使用二選一句式
Do
Alexa:你想聽故事還是詩歌?
Don’t
Alexa:你喜歡超級恐怖的鬼故事還是非常有趣的兒童搖籃曲?
14. 完成任務后結束技能會話
一旦技能已經滿足了用戶的要求,那么最好馬上結束會話。雖然你可能會覺得用戶可能會失去發現新功能的機會,但是使用開放式問題來提示用戶很容易帶來麻煩,并且隨著時間的推移,用戶的參與度會越來越低。
一個開放式的問題,比如,“我還有什么可以幫你的嗎?”會給用戶帶來很高的認知負荷,他們需要回憶你的技能都有哪些功能可用。在嘈雜的環境下,或者當用戶明確希望結束會話時,如果技能依舊不斷地催促他們繼續對話,會讓他們的反感情緒加劇。
Be?Relatable(設計親和力)
讓Alexa和用戶對話,而不僅僅是對著他們說話。Alexa應當簡明扼要、胸有成竹的告訴用戶他們需要輸入哪些信息。
1. 你怎樣說,就怎樣寫
一般情況下,寫作和說話是兩種不同的表達方式,因為大多數人的閱讀速度比說話速度快,我們可以通過寫作傳達更多的信息,所以寫作相對而言更加正式。
但是在Alexa的設計中,你需要用人們說話的方式來撰寫對話。測試腳本最好方法是把它表演一番,一個人扮演Alexa,另一個人扮演用戶。當你大聲說出來的時候,就會很快的意識到,按照書面表達設計出來的對話聽起來奇怪且生硬。
此外,你也不能把網站上或者其他書面渠道的內容直接生搬硬套過來。不要用選擇菜單來提示用戶如何說話,更不要試圖讓用戶去使用充斥著大量術語的選項。取而代之的是,讓用戶用自己日常說話的方式去表達。
請注意:無論你的腳本和提示聽上去多么完美,一旦通過語音合成后,他們仍舊可能會聽上去很奇怪。
撰寫對話時,考慮以下幾點:
- 讓交互盡量簡短,每一個詞都要有它的價值,無一字廢話。
- 通過使用縮略語的方式保證對話不過于正式或者生硬。
- 通過添加停頓和標點,模仿真實對話的節奏。
- 避免重復的語句。
Do?
用戶:Alexa,打開訂制旅行。
Alexa:我們來開始訂制旅行吧,你想什么時候出發?
Don’t ?
用戶:Alexa,打開訂制旅行。
Alexa:我們來開始訂制旅行吧,請說“我要去某個城市”來告訴我你要去哪里。請說“我要在某時出發”來告訴我你要什么時間出行。請說“我要從某城市出發”,來告訴我你的出發城市。有什么我可以幫你的?
2. 簡潔
用戶需要Alexa說話簡潔,沒有贅言。這有助于他們理解Alexa在說什么,并對正在發生的事情充滿信任感。較長的回答往往更難懂難記。
3. 使用喚氣測試(one-breath test)
在設計Alexa的應答時,你可以大聲把你寫好的話讀出來。如果能夠用正常對話的語速把這句話一口氣讀出來,表示長度是適合的。如果你需要換氣,就要考慮縮減一下這句話。
對于那些包含連續性內容的答案,比如一個需要分步完成的任務,你需要將這些內容分組,每一組的內容分別閱讀。讀完整個內容可能需要多次換氣停頓,但要確保這是組間的停頓,而非每組內容中段的停頓。
4. 上下文相關性
按上下文相關性從高到低的順序列出選項,避免讓選項按照從和對話主題無關到有關的順序排列。列表中的第一項應與用戶剛剛采取的操作最為相關。這可以幫助用戶節省時間和精力,更好地理解和表達他們的選擇。
Do
Alexa:你可以在明晚9點看上集重播。我可以告訴你劇集更新的時間,或者目前哪幾集在流媒體上可以播放。你想選擇哪個?
Don’t
Alexa:這部劇沒有更新。我可以告訴你類似類型的劇集,或另外一個正在熱播的電視劇,或者告訴你這部劇更新的時間。你也可以根據類型選擇節目。這Q部劇明晚會重播。你想要哪一個?”
5. 保持語法的一致性
保持動詞、名詞搭配時語法的一致性,特別是在列表項中。列表設計原則見上一章?設計易用性?列表和引導設計建議。
Do
Alexa:我可以幫你搭順風車、支付小費、查詢價格,以及申請收據。
Don’t ?
Alexa:我可以幫你搭順風車、付小費給司機、申請你上一次打車的收據,還能進行價格查詢。
6. 增加多樣性
通過多樣性(variety)為對話注入自然活力,對于那些需要經常重復的交互,也可以減少機械感和枯燥感。你可以通過同義詞為答案增加變化,然后從這些恰當的答案里隨機選擇一個作為回復。
當用戶可能反復聽到同一句回答的時候,你就需要引入多樣化的表達,比如你的歡迎語和告別語。這類應答是非常適合添加個性化的。
7. 在重復任務中,豐富Alexa的應答
當用戶與Alexa的頻繁交互,在常用或重復交互中使用多樣性的應答變得尤為重要。這適用于對話標記(marker,如“那么”、“下面”等過渡詞)和升級錯誤提示(escalating error prompting ,針對用戶回答的不自信或不說話情況下的錯誤提示)策略。這些應答可隨機選擇,以防止Alexa聽起來像機器人。
在這個例子中,用戶故意答錯:
Do
Alexa:答案有誤,再試一次:《權利法案》是哪一年簽署的?
用戶:1812年?
Alexa:恭喜你……答錯了,正確答案是1791年。
Don’t ?
Alexa:答案有誤,再試一次:《權利法案》是哪一年簽署的?
用戶:1812年?
Alexa:錯誤,繼續下一題。
8. 對話標記(conversation markers)使用建議
當人們對話時,會通過標記詞和短語去組織話題的內容和指導話題的方向,這有助于將談話分成幾個更容易理解的部分,用戶在使用你設計的技能時,同樣會得益于下面這些標記詞。
在這個例子中,Alexa在每一步引導中都加入了對話標記,來幫助用戶學習機洗毛衣:
Alexa:好,洗毛衣需要三步。
(間隔半秒鐘)
Alexa:首先,把毛衣翻過來,用普通的洗滌劑,選擇溫和程序進行洗滌。
(間隔半秒鐘)
Alexa:接著,把毛衣放到烘干筒里,用低溫烘干10分鐘。
(間隔半秒鐘)
Alexa:最后,把毛衣放在平整的晾衣板上晾干。就大功告成啦!
使用時間線標記(timeline markers)
“首先”、“然后”、“最后”,這些詞給一段持續的語句提供了預期、順序以及對于下一步的準備。在內容包含多步或者需要耗費較長對話時間的情況下,使用這些詞語會改善體驗。但注意,避免在快捷的交互中使用這些時間線標記。
2. 使用確認和反饋詞(Acknowledgements and feedback)
“謝謝”、“明白了”、“好的”、“太棒了”、“沒問題”,這些詞讓用戶知道Alexa聽懂了自己的話或者自己說的信息已經被接收到了。
3. 使用指代詞(Pointers)
“這”、“那”、“這里的”、“它”,這些詞可以代替一些之前被引用過或剛剛被提及的主體。
4. 使用過渡詞(Transitions)
“現在”、“那么”、“接下來”,這些詞可以引導話題的轉換。
參考鏈接
https://developer.amazon.com/zh/docs/alexa-design/adaptable.html
作者:Rachel Hu,阿里云OS VUI交互設計師
本文由 @Rachel Hu 原創發布于人人都是產品經理。未經許可,禁止轉載。
題圖來自Unsplash, 基于CC0協議
大大的啟發