ホームページ > テクノロジー周辺機器 > IT業界 > 最初のAmazonAlexaスキルを構築する方法

最初のAmazonAlexaスキルを構築する方法

William Shakespeare
リリース: 2025-02-15 10:33:11
オリジナル
244 人が閲覧しました

How to Build Your First Amazon Alexa Skill

キーポイント

  • 開発者は、Alexaスキルキット(ASK)を使用して、Amazon Alexaのカスタムスキルを作成できます。 ASKは、音声認識、テキストへのスピーチエンコード、および自然言語処理を処理するためのAPIとツールのコレクションです。
  • カスタムALEXAスキルを作成するには、最初にAmazon Developerアカウントを設定する必要があります。セットアップしたら、Alexaスキルキットにアクセスしてカスタムスキルを作成し、名前とモデルを定義できます。
  • カスタムAlexaスキルには、コール名(スキルのアクティブ化に使用される名前)、意図(スキル理解のための音声コマンド)、および談話(意図を引き起こす例の例)が含まれます。
  • スキルを設定してコンポーネントを定義した後、開発者はAlexa Skills Kit Developer Consoleのスキルをテストし、必要に応じてコードを変更して音声コマンドに正しく応答するようにします。
  • スマートホームデバイスを制御したり、意図を通じてパラメーターを渡すスキルなど、より高度なALEXAスキルを開発できます。開発者は、Alexaプレゼンテーション言語(APL)を使用して、スキルの視覚的およびオーディオエクスペリエンスを作成することもできます。

Alexaは、買い物リストにアイテムを追加したり、曲をリクエストしたりするなど、多くの組み込みスキルをネイティブにサポートしています。ただし、開発者はAlexaスキルキット(ASK)を使用して、新しいカスタムスキルを構築できます。

Askは、音声認識、テキストへのエンコード、自然言語処理など、音声インターフェイスに関連するほとんどの作業を処理するAPIとツールのコレクションです。開発者がスキルを迅速かつ簡単に構築するのに役立ちます。

要するに、Alexaがユーザーの音声コマンドを理解できる唯一の理由は、スキルを定義することです。各Alexaスキルは、音声コマンドを理解するように設計されたソフトウェアです。さらに、各Alexaスキルには、音声コマンドの適切な応答を作成する独自の定義されたロジックがあります。既存のAlexaスキルを提供するために、次のものが含まれます。

ドミノのピザでピザを注文
  • uber
  • を呼び出します
  • あなたの星占い
  • を教えてください
  • 上記のように、
  • Alexaスキルキットを使用して、ニーズを満たすカスタムスキル、この目的のために設計されたAPIのコレクションとツールを開発できます。質問、音声認識、テキストツースピーチエンコード、自然言語処理などのツールが含まれています。ツールキットは、開発者が独自のカスタムスキルの開発を迅速に開始できるようにする必要があります。
この記事では、基本的な「事実を取得する」Alexaスキルを作成する方法を学びます。要するに、アレクサにランダムな猫の事実を示すように頼むことができます。タスクを完了する完全なコードは、GitHubで見つけることができます。始める前に、Alexaスキルの用語を理解してください。

マスターアレクサスキル用語

まず、ユーザーがカスタムスキルとどのように対話するかを学びましょう。これは、スキルに関連するさまざまな概念を理解するために非常に重要です。

特定のスキルをアクティブにするには、ユーザーはAlexaに電話してスキルをオンにするように依頼する必要があります。たとえば、「アレクサ、猫の事実を開く」。これを行うことで、スキルの呼び出し名を呼び出しています。基本的に、呼び出し名はアプリケーションの名前と見なすことができます。

正しいスキルをアクティブにしたので、スキルが理解している音声意図/コマンドにアクセスできます。私たちはそれをシンプルに保ちたいので、「猫の事実を得る」意図を定義します。ただし、意図をトリガーするには、例の文を提供する必要があります。意図は、談話とも呼ばれる多くの例の文によってトリガーされる可能性があります。たとえば、ユーザーは「事実を与えられた」と言うかもしれません。したがって、次の例の文を定義します:

  • 「事実を言う」
  • 「猫の事実を与える」
  • 「事実を与える」

次のように、コール名と意図を組み合わせることもできます。「アレクサ、猫に事実を与えるように頼んでください」。

コール名と意図の違いがわかったので、先に進んで最初のAlexaスキルを作成しましょう。

Amazon Developerアカウントを作成します

まず、Amazon開発者アカウントが必要です。すでに持っている場合は、このセクションをスキップできます。

Amazon Developerアカウントの登録は3段階のプロセスです。 Amazonは、個人情報を必要とし、利用規約を受け入れ、支払い方法を提供します。 Amazon Developerアカウントにサインアップすることの利点は、他の多くのAmazonサービスにアクセスできることです。登録が正常に完了した後、Amazon開発者のコ​​ントロールパネルが表示されます。

コントロールパネルにログインし、右上隅の[開発者コンソール]ボタンをクリックします。

How to Build Your First Amazon Alexa Skill

次に、Alexaスキルキットを開きたいと思います。

How to Build Your First Amazon Alexa Skill

Alexaスキルキットを開けられない場合は、このリンクを使用してください。

次のセクションでは、実際のスキルを作成します。

最初のカスタムALEXAスキルを作成します

わかりました、最初のカスタムAlexaスキルを作成する準備ができました。青いボタン「スキルの作成」をクリックして、新しいスキルを作成するためのメニューを開きます。

How to Build Your First Amazon Alexa Skill

最初に、スキルの名前を入力するように促します。すでにご存知のように、ランダムな猫の事実が必要なので、スキルを「カスタムキャットファクト」と呼びます(これはAlexaデバイスの組み込みスキルであるため、「猫の事実」を使用することはできません)。次に、スキルのモデルを選択するように促します。事前定義されたモデルを選択するか、カスタムモデルを選択することができます。これにより、完全な柔軟性が得られます。不要なコードを処理したくないので、「カスタム」オプションを選択します。

*注:事前定義されたスキルを選択すると、インタラクションモデルと例の文(談話)のリストが表示されます。ただし、カスタムスキルでさえ、キャンセル、支援、ホームページへのナビゲート、停止など、最も基本的な意図が装備されています。

How to Build Your First Amazon Alexa Skill

次に、スキルをホストする方法を選択する必要があります。繰り返しますが、物事を過度に複雑にして、「Alexa Hosting(node.js)」オプションを選択したくありません。これは、バックエンドを自分で実行する必要がないことを意味します。これは、デバイスがこれを理解できるように、Amazon Alexaの基準に従って応答をフォーマットする必要があることを意味します。 Alexaホスティングオプションは次のとおりです

AWSフリーティアが制限され、node.jsテンプレートの使用を開始するまで、アカウントでのホスティングスキル。 AWS Lambdaエンドポイント、5 GBのメディアストレージ(1か月あたり15 GBのデータ転送)、およびセッションの持続性の表にアクセスできます。

How to Build Your First Amazon Alexa Skill OK、すべての設定が整っているので、画面の右上隅にある[スキル]ボタンをクリックできます。このボタンは、Amazon開発者アカウントで実際のスキルを生成します。

最初のAlexaスキルを変更します

さて、Alexa開発者コンソールに移動すると、スキルがリストされていることがわかります。 [編集]ボタンをクリックして、スキルの変更を開始します。

How to Build Your First Amazon Alexa Skill 次に、Amazonは「猫の事実」スキルのビルドタブを表示します。左側には、スキルのために定義された意図のリストがあります。前述のように、デフォルトでは、Alexaスキルキットは、キャンセル、停止、ヘルプ、およびホームページの意図へのナビゲートを生成します。最初の3つは、スキルを辞めたい、またはそれらの使用方法がわからないユーザーに役立ちます。最後の「ホームへのナビゲーション」は、複数のステップのみを含む複雑なスキルを対象としています。

How to Build Your First Amazon Alexa Skill ステップ1:呼び出し名

を確認します

最初に、スキルの呼び出し名が正しいことを確認しましょう。名前は「カスタムキャットファクト」として表示される必要があります。

名前を変更する場合は、ページの上部にある[モデルの保存]ボタンをクリックしてください。

How to Build Your First Amazon Alexa Skill ステップ2:「helloworldintent」を変更します

2番目のステップ、デフォルトの意図「HelloWorldintent」を変更する必要があります。

意図をクリックすると、意図名を変更したり、サンプルの談話を追加できるようにする素敵なグラフィカルインターフェイスが取得されます。

How to Build Your First Amazon Alexa Skill

個人的には、左側のメニューで見つけることができるJSONエディターを使用することを好みます。 JSONエディターを開くと、次のJSONオブジェクトが表示されます。

How to Build Your First Amazon Alexa Skill

JSONエディターの利点は、すべての意図を一度に変更できることです。まず、「GetFactintent」と呼ばれる新しい意図を追加しましょう。

次に、下の写真に示すように、いくつかの例の談話を追加したいと思います。

How to Build Your First Amazon Alexa Skill

変更後、JSONオブジェクトは次のようになります。現在、他の意図のためにサンプルの談話を定義したくありません。 Alexa Skills Kitは、デフォルトでヘルプ文を「helpintent」にリンクします。

注:[モデルの保存]ボタンをクリックして、[モデルのビルド]ボタンをクリックすることを忘れないでください。 Alexaは基本的にモデルを構築し、談話の例で定義するモデルに基づいて自らをトレーニングします。

How to Build Your First Amazon Alexa Skill

ステップ3:「カスタムキャットファクト」スキル

をテストします

[水平]メニューのテストタブに移動しましょう。次に、「スキルテスト既に」ドロップダウンメニューを「開発」に切り替えます。これにより、スキルをテストできます。

現在、スキルをアクティブにして、すべてが正しいかどうかを確認しましょう。下の図に示すように、コール名を呼び出すことでスキルをアクティブにすることができます。

How to Build Your First Amazon Alexa Skill

ステップ4:getFactintentのコードを変更します

次に、[コード]タブに飛び込みます。 [コード]タブをクリックすると、デフォルトのコードを使用してオンラインエディターが取得されます。

最初に、Helloworldintententhandlerのコードをコピーし、getactintententhandlerに変更します。

の後、このハンドラーがどのタイプの意図を処理できるかを指定する必要があります。 21行目は、getactintentという名前の意図を探します。

意図が見つかったので、静的な応答を定義しましょう。「事実を言います!」、SpeakOutput変数に割り当てます。

How to Build Your First Amazon Alexa Skill

最後に、GetFactIntentEnthandlerを他のリクエストハンドラーに追加する必要があります。 AddRequestHandlers関数に追加するだけです。 意図を保存して構築することを忘れないでください!

How to Build Your First Amazon Alexa Skill

スキルが保存され、構築されたので、応答を簡単に確認しましょう。スキルに事実を伝えるように頼むなら、「事実を伝えます!」

How to Build Your First Amazon Alexa Skill

すべてが正しい場合は、次のステップに進むことができます。

ステップ5:APIを照会して、猫の事実を取得します

最後のステップとして、猫の事実を返す簡単なAPIを照会したいと思います。これを行うには、次のAPIエンドポイントを使用します。https://www.php.cn/link/2c5baeed3fd870447056fc00bf792427を使用します。

このAPIエンドポイントは、事実と事実の長さを返します。

<code>{
  "fact": "Smuggling a cat out of ancient Egypt was punishable by death. Phoenician traders eventually succeeded in smuggling felines, which they sold to rich people in Athens and other important cities.",
  "length": 192
}</code>
ログイン後にコピー

httpsパッケージはnode.js用に組み込まれているため、コードで使用してAPIからデータを取得できます。これが私たちがそれを行う方法です:

How to Build Your First Amazon Alexa Skill

実際のコードはこちらにあります:

const https = require('https');

const httpGet = () => {
  return new Promise(((resolve, reject) => {
    var options = {
        host: 'catfact.ninja',
        port: 443,
        path: '/fact',
        method: 'GET',
    };

    const request = https.request(options, (response) => {
      response.setEncoding('utf8');
      let returnData = '';

      response.on('data', (chunk) => {
        returnData += chunk;
      });

      response.on('end', () => {
        resolve(JSON.parse(returnData));
      });

      response.on('error', (error) => {
        reject(error);
      });
    });
    request.end();
  }));
}
ログイン後にコピー

ヘルパーメソッドの準備ができたので、getFactIntententhandlerに追加できます。リクエストに待ち望んでいるので、ハンドル関数を非同期関数にする必要があることに注意してください。さらに、httpget関数を呼び出して、cat fact Responseを取得し、speakoutput変数にresponse.factを割り当てます。次に、SpeakOutput変数はAlexaが使用するSpeakコマンドに渡されます。

const GetFactIntentHandler = {
    canHandle(handlerInput) {
        return Alexa.getRequestType(handlerInput.requestEnvelope) === 'IntentRequest'
            && Alexa.getIntentName(handlerInput.requestEnvelope) === 'GetFactIntent';
    },
    async handle(handlerInput) {
        // const speakOutput = 'I will tell a fact!';
        const response = await httpGet();
        const speakOutput = response.fact;
        return handlerInput.responseBuilder
            .speak(speakOutput)
            //.reprompt('add a reprompt if you want to keep the session open for the user to respond')
            .getResponse();
    }
};
ログイン後にコピー

How to Build Your First Amazon Alexa Skill

コードを変更する準備ができました。

もう一度コードを保存し、[展開]ボタンをクリックします。

ステップ6:最終的なスキルテスト

最後のステップとして、スキルがAPIからランダムな猫の事実を取得することを確認しましょう。繰り返しますが、[テスト]タブに行きましょう。

「Open Cat Facts」と呼んでスキルをアクティブにします。次に、「真実を伝える」を求めることができます。すべてがうまくいけば、それに応じて事実を受け取る必要があります。

How to Build Your First Amazon Alexa Skill

成功!

ステップ7(オプション):実際のAlexaデバイスでテスト

Alexa対応デバイスでカスタムスキルをテストするには、Amazon開発者アカウントと同じメールアドレスの下にAlexaデバイスを登録する必要があります。

詳細については、Alexaのドキュメントをご覧ください:

Amazon EchoなどのAlexa対応デバイスでテストするには、Amazon Developer Portalに開発者アカウントを登録するために使用したのと同じメールアドレスでデバイスを登録します。その後、ウェイクワードとコール名を使用してスキルを呼び出すことができます。

デバイスが開発者アカウント以外のアカウントを使用してセットアップに使用している場合、デバイスをリセットし、開発者アカウントで再登録します。

基本を理解する

これは、Alexaのスキルを構築することのほんの始まりに過ぎません。意図を使用してパラメーター(オプション)を渡すなど、より高度な例が可能です。スマートホームデバイスを制御するスキルなど、他の多くのタイプのスキルも開発できます。

エンドツーエンドの建物スキル - アマゾンアレクサドキュメント
    Alexa Node.js Project
  • によって提供されたスキルの例
  • スキルの例
  • 音声デザインガイド
  • Amazon Alexaスキル(FAQ)
についての

FAQ 私のウェブサイトのAlexaスキルを作成する方法は?

WebサイトにAlexaスキルを作成するには、複数のステップが含まれます。まず、Amazon開発者アカウントを設定する必要があります。アカウントを取得したら、Alexa Skills Kit Developer Consoleに移動し、[スキルの作成]をクリックします。スキルに名前を付け、スキルに追加するモデルを選択する必要があります。その後、意図、スロット、サンプルの談話など、スキルのためのインタラクティブモデルを構築する必要があります。インタラクティブモデルを構築した後、公開前に開発者コンソールでスキルをテストし続けることができます。

Alexaスキルの重要なコンポーネントは何ですか?

Alexaスキルには、いくつかの重要なコンポーネントが含まれています。これらには、コール名(ユーザーがスキルをアクティブにするために使用する名前)、意図(ユーザーのリクエストを満たすアクションを表します)、スロット(ユーザー入力のプレースホルダーとして機能する変数)、およびサンプル談話(ユーザーは対話に使用できますあなたのスキルフレーズ)。これらの各コンポーネントは、スキルがどのように機能し、ユーザーと対話するかにおいて重要な役割を果たします。

私のAlexaスキルをテストする方法は?

Alexaスキルのテストは、開発プロセスの重要な部分です。 Alexa Skills Kit Developer Consoleでスキルをテストできます。コンソールの[テスト]タブに移動して、スキルのテストを開始します。フレーズを入力または話すために、スキルの反応を確認することもできます。また、複数のラウンドの会話をテストして、スキルが進行中の相互作用をどのように処理するかを確認することもできます。

私のアレクサのスキルを投稿する方法は?

Alexaスキルを構築およびテストした後、認定のためにAlexa Skills Kit Developer Consoleで提出できます。スキルを提出する前に、スキルのメタデータをセットアップしたり、スキルを徹底的にテストするなど、開発プロセスに必要なすべてのステップを完了していることを確認してください。スキルを提出した後、公開する前にレビュープロセスを実行します。

Alexaプレゼンテーション言語(APL)とは何ですか?

Alexaプレゼンテーション言語(APL)は、開発者がAlexaスキルの視覚的およびオーディオエクスペリエンスを作成できる言語です。 APLを使用すると、画面付きのデバイス用のリッチでインタラクティブなディスプレイを設計し、画面なしでデバイスのオーディオ応答を作成できます。 APLは、Alexaスキルのユーザーエクスペリエンスを強化するための強力なツールです。

私のALEXAスキルでAPLを使用する方法は?

ALEXAスキルでAPLを使用するには、スキルの応答にAPL命令を含める必要があります。これらの命令は、応答の視覚コンポーネントとオーディオコンポーネントを定義します。 ALEXA Skills Kit Developer ConsoleのAPLオーサリングツールを使用してAPLドキュメントを設計できます。これは、デザインを作成およびプレビューするための視覚的なインターフェイスを提供します。

ゲームのAlexa Web APIは何ですか?

ゲーム用のAlexa Web APIは、画面を使用してAlexaデバイス用に視覚的にリッチでインタラクティブなゲームエクスペリエンスを開発できるWebテクノロジーのセットです。ゲームにAlexa Web APIを使用して、HTML、CSS、JavaScriptなどの標準的なWebテクノロジーを使用して、ゲームエクスペリエンスを構築できます。

Alexa Web APIをAlexaスキルでゲームに使用する方法は?

Alexa Web APIをAlexaスキルのゲームに使用するには、スキルリストにゲーム用のAlexa Web APIインターフェイスを含める必要があります。その後、alexa.presentation.html.startディレクティブを使用してWebアプリケーションセッションを開始し、alexa.presentation.html.handlemessageディレクティブを使用して、Webアプリケーションからメッセージを処理できます。

Alexa Skills Kit(尋ね)とは何ですか?

Alexa Skills Kit(ask)は、Alexaのスキルを簡単に作成できるようにするセルフサービスAPI、ツール、ドキュメント、コードの例のコレクションです。 ASKを使用すると、Amazonの知識と画期的な作業を利用することができます。

Alexaスキルキット(ASK)を使用してAlexaスキルを構築するにはどうすればよいですか?

さまざまな機能とツールを活用することで、Alexaスキルキット(ASK)を使用してAlexaスキルを構築できます。 Askは、Ask SDK、Ask CLI、Ask Developer Console、Askドキュメントなど、さまざまなリソースを提供します。これらのリソースは、Alexaスキルを構築、テスト、公開するための包括的なツールセットを提供します。

以上が最初のAmazonAlexaスキルを構築する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート