建立 Alexa 技能需要先註冊 Amazon 開發者帳戶,並熟悉 Alexa Skills Kit 等開發工具。開發 Alexa 技能主要有三種途徑:Alexa-Hosted Skill、使用 AWS Lambda 和 Developer Console,以及使用 IDE 和 ASK CLI。不同的開發方法各有其優缺點,開發者可以根據自身需求和技術背景選擇最適合的方式。在開始開發之前,需要先了解技能的互動模型設計,這決定了技能如何與使用者互動,並影響使用者經驗。

建立 Amazon 帳戶和開發 Alexa 技能

2.1 建立 Amazon 帳戶的方法

建立 Alexa 技能有三種方法:

  1. 使用 Alexa-Hosted Skill:這是最簡單的方法,不需要 AWS 帳戶,只需開始使用即可。
  2. 使用 AWS Lambda 和 Developer Console:這種方法需要 AWS 帳戶,並使用 AWS Lambda 和 Developer Console 來建立技能。
  3. 使用 IDE(如 Visual Studio Code)和 ASK CLI(Alexa Skills Kit 和 Command Line Interpreter):這種方法需要使用 IDE 和 ASK CLI 來建立技能。

無論哪種方法,都需要一個 Amazon 開發者帳戶。

2.2 建立 Amazon 帳戶的步驟

  1. 點選「Developer Console」並建立 Amazon 開發者帳戶
  2. 填寫表格並建立帳戶:可能需要驗證OTP。
  3. 回答 Amazon 開發者註冊中的其他問題
  4. 同意條款並提交
  5. 提供付款資訊、使用者角色等,或留到後面:如果想要從 In Skill Purchases 中賺取錢,需要完成這一步。

2.3 Amazon Developer Dashboard

建立帳戶後,會進入 Amazon Developer Dashboard 的「My Account」頁面。可以在這裡完成付款資訊、使用者角色等設定,或留到後面。

2.4 Alexa Skills Kit

在 Developer Console 中,會看到 Alexa Skills Kit,以及其他專案,如:

  • Alexa Voice Service (AVS):用於將 Alexa 功能和功能整合到產品中(見第 17 章)。
  • Amazon Appstore:為 Android 提供應用商店,提供 Fire Tablets 的應用。
  • Amazon Dash console:用於管理 Amazon Dash 按鈕。
  • Amazon GameOn:為移動遊戲玩家提供分享經驗(高分、提示、技巧等)和參與挑戰的平臺。
  • Login with Amazon (LWA):用於使用 Amazon 帳戶進行使用者驗證。如果建立智慧家居裝置,需要使用 LWA。

後續章節中會使用 LWA 和 AVS。

建立Alexa技能

2.3 技能列表

當您進入Alexa Skill Kit的開發控制檯時,如果您是第一次存取,您將沒有任何技能列出。

2.4 主機管理

點選「主機」標籤以檢視您可以存取的內容。您會發現儲存空間和資料傳輸量已經足夠了。

第二章:建立Amazon帳戶

第三章:建立Alexa技能

3.1 簡介

在上一章中,我們瞭解瞭如何啟動Alexa主機技能,這為我們提供了三個AWS Lambda端點、一個S3儲存桶和一個DynamoDB資料函式庫的存取許可權。我們將在後面的章節中討論這些內容。現在,讓我們建立我們的第一個技能。

3.2 建立第一個技能

如前所述,點選Alexa Skill Kit會將您導向開發控制檯。如果您是第一次存取,您將沒有任何技能列出。點選「建立技能」按鈕。

在下一個螢幕中,您需要輸入技能名稱、語言和位置,以及是否要同步多個語言版本以連結所有語音命令。使用者介面可能已經發生了一些變化,但過程仍然相同。

3.2.1 互動模型

互動模型是您的技能與使用者之間的溝通方式。有一些範本可供您使用(例如Flash簡報、智慧家居、影片等)。請將其設為「自定義」。

從技術架構視角來看,建立Alexa技能的流程已大幅簡化,從單純使用Alexa-Hosted Skill到結合AWS Lambda和ASK CLI等更進階的開發方式,提供開發者不同層級的彈性。本章節詳細介紹了建立Amazon開發者帳戶及開始開發Alexa技能的步驟,涵蓋了從帳戶建立、開發者平臺介面導覽到技能初步設定的完整流程。然而,對於不同開發方法的技術細節描述仍略顯不足,例如Alexa-Hosted Skill的限制、AWS Lambda整合的優勢以及ASK CLI的應用場景等,都有待更深入的探討。展望未來,隨著Alexa技能生態的持續發展,預期會有更多便捷的開發工具和更豐富的整合服務出現,進一步降低開發門檻。對於有意投入Alexa技能開發的團隊,建議深入瞭解不同開發方法的特性,並根據自身技術能力和專案需求選擇最合適的策略,才能有效提升開發效率並打造出更具競爭力的語音應用。