亞馬遜Alexa語音交互設計四範式(上) | 人人都是產品經理

本文筆者將與大家分享Alexa技能設計的四大範式中的兩大範式——Be Adaptable(設計可適應),以及Be Personal(設計個性化)。

較之已有相當成熟,且被業界廣泛應用的設計範式的視覺界面交互設計,語音交互設計因其特殊性和發展時間較短等原因,尚未形成較為體系化和較為流行的設計範式。

很開心並且感謝亞馬遜已經率先邁出了這一步,在最新的語音交互設計指南中總結了Alexa技能設計的四大範式:設計可適應、設計個性化、設計易用性,以及設計親和力。下面就和大家一起分享學習~

Be Adaptable(設計可適應)

可適應意味著在你技能範圍所及的任何情況下,它都能正確理解和處理用戶說的話。以下方法可以幫助你的技能更好的適應用戶場景。

1. 為你的意圖匹配豐富的表達

意圖(intent)即:用戶可以對你的技能提出的要求。

比如:你的技能可能會幫助用戶訂製旅程、達到某種狀態、講笑話、或者攻擊怪獸。

不要假設用戶會準確的把你設想的話表達出來。當用戶可以說「計劃旅行」時,他也許會圖方便的直接說「計劃去夏威夷的旅行」,盡量把用戶可能會說的句子、短語和單詞最大範圍的呈現出來,這樣才能保證用戶可以更好的使用你的技能。

下面這些表達的事例,都是用戶表達「訂製旅程」這個意圖的方式:

  • 「我要去旅行」
  • 「開始訂製旅程」
  • 「訂製旅程」
  • 「我想要去度假」

2. 處理「過度回答」(over-answering)

有些時候,雖然Alexa只問了一個問題,但用戶會給出超出這個問題的回答。

比如:Alexa問到一個出發日期,用戶可能不但回答了出發日期,也回答了出發地點。用戶甚至可能給出了所需的其他信息,比如說抵達的城市,還有要旅行的方式。請把「過度回答」當做一個禮物,因為你不需要再問很多問題,用戶把答案都預先告訴你了。

下面就是「訂製旅程」中「過度回答」的例子:

Do:

用戶:「我下周五要從西雅圖出發去波特蘭徒步旅行。」

Alexa:「好的,你想預訂從西雅圖去波特蘭上午10點,下午2點還是下午4點的機票呢?」

用戶:「上午10點。」

Don』t:

用戶:「我下周五要從西雅圖出發去波特蘭徒步旅行。」

Alexa:「你想去哪?」

用戶:「額…我說了波特蘭。」

Alexa:「好的!你想什麼時候走?」

用戶:「我要去徒步。」

Alexa:「你想訂一個徒步走去波特蘭的旅行嗎?」

用戶:「不,我是說我要去徒步旅行,好吧你贏了……」

3. 詢問更多的信息

用戶給的指令或者提出的問題通常是不完整的。Alexa需要提示用戶去把部分遺漏的信息說清楚,或者提供一些額外的信息,以保證能夠觸發正確意圖。

Do:

用戶:「我要去公雞岩附近衝浪。」

Alexa:「想什麼時候出發呢?」

Don』t:

用戶:「我要去公雞岩附近衝浪。」

Alexa:「你是說公雞岩咖啡廳嗎?」

用戶:「啊?不是,是俄勒岡州的公雞岩公園。」

Alexa:「『啊不是是俄勒岡州的公雞岩公園』不是一個合法地址。」

4. 接受更正

有時當用戶發現Alexa出錯或者他們自己改變主意時,就會進行更正。比如,用戶可能會說「不」或者「我是說」,後面跟著正確的信息。你需要準備處理這些可能。

比如:

你的旅行訂製技能搞錯了地址,用戶想要修改。

Alexa:「聽上去是一次愉快的旅行。你將在下周五從西雅圖出發去波特蘭衝浪,需要我訂機票嗎?」

用戶:「不,我要去公雞岩。」

Alexa:「收到,你將在下周五從西雅圖出發去公雞岩衝浪,現在訂機票嗎?」

5. 優雅的處理錯誤

在類似手機或網頁這種單一視覺交互界面中,能夠通過定義明確的視覺元素(按鈕、菜單、編輯框)告訴用戶什麼可以做,或者哪裡出現了錯誤。

但在語音交互界面,用戶很難知道為什麼出現任務失敗,也不知道在多層語音和語言識別系統複雜的結構中到底是哪裡出現了錯誤。所以,你必須解決這個問題。

當Alexa沒有聽見或者不理解用戶的話時,她會再問一遍,這樣用戶會在她放棄這段對話之前有機會修復問題。

避免只說Alexa沒聽見或者沒懂的錯誤提示,比如:「我沒聽清」。這會導致用戶重複同樣的話,而恰恰是這句話導致了錯誤。

更好的說法是:加上一些更有幫助的信息,儘可能直接的說出你想傳達的信息。

在下面的例子中,Alexa由於超出技能支持範圍而沒能理解的問題,她給用戶提供了關於她能做什麼的提示。

Do:

Alexa:「我可以幫你找到符合你口味的甜點食譜,你想做什麼?」

用戶:「我晚飯想做大碗寬面。」

Alexa:「我只能幫你找到甜點食譜,比如:餅乾、蛋糕、油酥糕。有你晚飯想做的甜點嗎?」

Don』t

Alexa:「我可以幫你找到符合你口味的甜點食譜,你想做什麼?」

用戶:「我晚飯想做大碗寬面。」

Alexa:「很抱歉,我沒有聽懂。你想做什麼?」

6. 處理Alexa無法理解的情況

如果Alexa聽到但無法處理用戶的請求,坦率的告知用戶並且嘗試讓對話回到正確的路徑上。直接了當的告訴用戶,讓他們知道下一步可以做什麼,這種幫助可以避免讓用戶感覺迷失。

用戶:「Alexa,打開訂製旅程。」

Alexa:「你想去哪?」

用戶:「我想去騎馬。」

(你的技能邏輯理解到「騎馬」不在支持城市之列)

Alexa:「我沒太明白,你想去哪個城市旅行?」

7. 處理Alexa理解但是無法完成任務的情況

當用戶觸發了一個技能不支持的功能,使用一些類似「我現在還不能幫你……」的句式去告知用戶這個功能還沒有上線。不要對未來可期的技術和服務做承諾,你可以在開發後台跟進這些需求,這將給你未來更新技能帶來靈感。

比如:

有用戶想在訂製旅程的技能中租車。

用戶:「我想租輛車。」

Alexa:「我現在還不能幫你租車。但我可以幫你訂製旅行,你想去哪個城市?」

8. 當用戶未回答時二次詢問(Re-prompt)

當Alexa沒有從用戶那得到答案時,用較為簡潔的句式變體對原有問題進行二次詢問。

這是一個在用戶未能理解的情況下,獲取更多細節信息的機會。

用戶:「Alexa,打開訂製旅程。」

Alexa:「你想去哪?」

用戶:「…….」

Alexa:」我可以幫你訂製旅程。首先,我會向你詢問:你想旅行的時間地點,以及到達目的地后,你會做什麼?你想去哪個城市旅行?「

9. 提供上下文幫助

在響應用戶請求時,給予更多提示以便為當前對話提供更多上下文。

例如:

如果一位點披薩的用戶在確認訂單之前,詢問了餐廳是否提供蒜節。

Alexa回答這個問題后,會進行二次詢問(Re-prompt)以確認用戶最初的披薩訂單。確認用戶是否取消最初的需求,這種對話設計十分常見。

例如:

你的技能可以幫助用戶打車,但是他們不知道如何執行某項動作,比如:修改地址。

用戶:「Alexa,打開幫我打車。」

Alexa:「你想打車回家或者上班嗎?」

用戶:「我怎麼設置我的地址呢?」

Alexa:「你可以在幫我打車手機應用里修改你公司或家的地址。」

(停頓半秒鐘)

Alexa:「如果地址已經存在,我現在可以幫你打車,你想打車回家或者上班嗎?」

Be Personal(設計個性化)

當技能輸出關乎到用戶個人信息時,你需要為用戶提供個性化的體驗,創造熟悉感和親密度。基於你設計的獨特技能,可以適當增減上下文。

在某種程度上,你需要收集用戶信息以便推動決策實現。這時你需要決定哪些信息需要收集並保存,哪些信息一旦對話完成就可以丟棄。

1. 區分新老用戶

當用戶用請求(「Alexa,打開[技能名稱]」)調用技能時,技能應該提供歡迎語,然後提示用戶做出響應。

你要有豐富多變的歡迎語,包括:首次使用歡迎語(welcome message for first-time use)、回歸歡迎語(return welcome message)、以及個性化的歡迎語(personalized welcome message)。緊跟在歡迎語後面,詢問用戶他們想要做什麼。可以考慮在此處提供關於技能基本功能的提示。

比如:當用戶首次接觸你的技能,你需要讓用戶快速了解這個技能,並且給對話制定框架。在後面多次調用之後,就可以縮短問候語,幫助用戶快速獲取他們所希望的交互結果。

1)首次使用

用戶:「Alexa,打開烘焙大師。」

Alexa:「歡迎使用烘焙大師,我可以幫你查找合你口味的餅乾、蛋糕和點心食譜。今天,你打算做點什麼呢?」

2)二次使用 

用戶:「Alexa,打開烘焙大師。」

Alexa:「斯蒂文,歡迎回到烘焙大師,上次你做了紙杯蛋糕。今天你想要做點什麼呢?」

2. 在技能的使用過程中獲取信息

在上一個例子中,我們發現Alexa使用了用戶的名字來稱呼他。你可以在對話流程中設計關於此類信息的問題,並且將其保存到用戶的個人資料(profile)中。這樣每次用戶返回技能的時候,他們都能在Alexa那裡得到個性化的舒適體驗。

這種個性化的體驗並非僅限於你對用戶信息的提問,你也可以在他們和技能交互的過程中,不斷訓練Alexa的行為,使之更加符合用戶的使用習慣。

比如:在一個幫助用戶記錄體重的健身技能中,技能可以捕捉到用戶長期以來進行特定鍛煉的信息,從而跟蹤他們的進展。當用戶回到技能時,Alexa就能告訴他們突破了某項個人記錄。

注意:對於Alexa服務上用戶隱私相關的部分,你無權訪問用戶的聲音記錄和視頻記錄。但是,Alexa服務可以提供解析后的用戶意圖(Intent)和槽(slot)。這對於你判斷技能是否解決了用戶需要來說也是很有幫助的。

3. 使用可適應的提示(adaptive prompt)

用戶越使用技能,就越習慣於技能的流程,並且對技能的使用方法爛熟於心。考慮讓後面的提示更加簡短直接,甚至將一些頻繁出現的確認步驟簡化為直接默認確認。

比如:下面是為一個音樂課技能提供的多樣性應答(variation)

用戶:「Alexa,告訴我的輔導老師開始今天的課程。」

Alexa(首次):「好的,開始今天的課程。」

Alexa(應答1):「享受今天的課程吧,一定很有趣!」

Alexa(應答2):「今天的課程很棒,祝你好運!」

Alexa(應答3):「開始今天的課程,祝你玩得開心!」

4. 訪問用戶的地址

用戶必須對地址訪問授權。用戶地址取決於他們是在哪裡註冊了搭載Alexa的設備。

只要用戶允許訪問該特定技能,設備位置API將提供用戶的地址。這個API可提供完整的街道地址或國家和郵政編碼。了解用戶的位置對於個性化技能很有幫助,比如:問候(早上好,晚上好),或類似地圖、點餐、查找院線等服務都需要獲取用戶位置。

5. 在退出后恢復技能會話

與用戶建立上下文關係的另一種方法是保存他們在技能中的進度。

例如:假設客戶在執行任務時,比如正在聽菜譜配料時退出了該技能。當他們回來的時候,Alexa應該問他們是否想繼續剛才的對話。

Alexa:「讓我們回到水煮三文魚配蒔蘿的做法吧,你想讓我讀一下配料嗎?」

參考鏈接

https://developer.amazon.com/zh/docs/alexa-design/adaptable.html

 

作者:Rachel Hu,阿里雲OS VUI交互設計師