エコーから認識されたテキストをどのようにキャプチャしますか?


13

To Doリストやショッピングリストに追加するときなど、いくつかのスキルは音声テキストをキャプチャできることを知っています。Mollyを使用しSMS

それで、彼らはどうやってこれをしますか?認識されたテキストをキャプチャしてどこかに保存するAPI呼び出しはありますか?

回答:


8

カスタムスキルは、テキストをキャプチャして、スキルのAPIに送信できます。

Alexa Skillsの仕組みに完全に慣れていない場合、簡単な要約を以下に示します。

  • まず、インテントスキーマサンプル発話を提供して、スキルをAmazonに登録します。インテントスキーマは、実行可能なアクションと、APIに送信されるカスタムデータのスロットを定義します。サンプルの発話は、ユーザーが各インテントをトリガーする方法の例を提供します。

  • ユーザーがスキルをアクティブにすると、Alexaは、彼らが言った内容をスキルのサンプル発話の1つに一致させようとします。それは場合はありません試合を、それが応答を求めるために、サーバーにHTTPSリクエストを送信します。

  • サーバーは応答を提供し(すべてがうまくいけば)、Alexaはスキルをトリガーしたユーザーにフィードバックを提供します。

AMAZON.LITERALスロットは、あなたが事実上すべての入力を受け付けることができます。現在、英語(米国)地域でのみサポートされていることに注意してください。英語(英国)およびドイツ語のスキルはを使用できませんAMAZON.LITERAL

インテントスキーマは次のようになります。

{
  "intents": [
    {
      "intent": "SaveTodo",
      "slots": [
        {
          "name": "Todo",
          "type": "AMAZON.LITERAL"
        }
      ]
    }
  ]
}

サンプルの発話は次のようになります。

SaveTodo remind me to {fetch the shopping|Todo}
SaveTodo remind me to {write my English essay|Todo}
SaveTodo remind me to {buy some dog food tomorrow|Todo}

を使用する場合AMAZON.LITERAL大量のサンプル発声を提供する必要があります。入力の可能な長さごとに少なくとも1つのサンプルが必要ですが、理想的にはそれ以上です。Amazonのドキュメントでは、さまざまなタイプの入力を受け入れることができるスロットの数百のサンプルを狙う必要があることが示唆されています。

少し面倒に思えますが、これを行わないと、スキルがテキストを適切に認識する可能性は低くなります。おそらく、顧客データからサンプルの発話を生成して(個人情報が事前に削除されている限り!)、最も一般的な発話がサンプルに含まれるようにすることもできます。

ただし、 Amazon AMAZON.LITERALスロットを推奨していません。可能なスロットをリストする必要があるカスタムスロットタイプを使用することをお勧めします。次のことを覚えておくことが重要です。

カスタムスロットタイプは、列挙に相当しません。話し言葉理解システムによって認識された場合、リスト外の値が返される場合があります。カスタムスロットタイプへの入力は、リスト内の値に向かって重み付けされますが、リスト上のアイテムだけに制限されるわけではありません。スロット値を使用するときは、コードに検証とエラーチェックを含める必要があります。


1
多くの開発者が損失に抗議したため、Amazonは文字通りのスロットを維持していると思います。しかし、リテラルスロットを使用すると、開発者がユーザーを「リッスン」する機能を望まないため、スキルが公開されなくなります。ただし、プライベートスキルでも使用できます。
グラハム・チウ

1
@GrahamChiu:公開されたスキルでもリテラルスロットは引き続き許可されているという印象を受けます(このブログ記事を参照してください:「開発者のフィードバックに基づいて、LITERALスロットタイプは削除しません。その機能を含むスキルを送信し続けることができます。」) 。私は自分で試したことはないので、どちらの方法でも確認できれば、将来の訪問者に役立つかもしれません。
Aurora0001
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.