認定における指摘項目のトラブルシューティング
スキルは、Alexaスキルストアに認定を申請し、認定プロセスに合格して初めて公開されます。
このページでは、認定のフィードバックにおける一般的な指摘項目の詳細と、問題の解決方法について説明します。
スキル説明の問題
概要
スキル説明は、スキルのコア機能に関連した情報を提供しているか。
合格基準
- スキル説明は完全であり、不完全な文章がない。
- スキル説明に記載されているすべての機能が、スキル内で使用可能。
- スキル説明のすべてのワンショットフレーズに、ウェイクワードと正しい呼び出し名が含まれている。
よくある指摘シナリオ
- 指摘項目 * シナリオ * 問題例 * 修正例
-
スキル説明に十分な情報がない。* 簡単な説明には十分な情報が含まれているが、詳細な説明にはスキルを使用するために必要な情報が含まれていない。* 簡単な説明: このスキルは、宇宙についての豆知識をランダムで一つ提供します。
詳細な説明: スキルを起動するには、「アレクサ、宇宙の豆知識を開いて」と言ってみてください。* 詳細な説明にスキルの使用方法について詳細な情報を入力する。簡単な説明に、スキルの概要についての短い文章を入力する。
簡単な説明: このスキルは、宇宙についての豆知識をランダムで一つ提供します。
詳細な説明: このスキルは、宇宙についての豆知識をランダムで一つ提供します。スキルを起動するには、「アレクサ、宇宙の豆知識を開いて」と言ってみてください。 -
スキルの説明は、実際の機能と異なる機能を説明している。* スキルの説明に、実際には存在しない機能について記載されている。* スキル説明: このスキルは、1800年代から1900年代の歴史についてのクイズを出題します。
実際の機能: 1800年代のクイズのみ出題され、1900年代の問題が含まれていない。* 音声でスキルをテストして、すべての説明が正しいことを確認する。
たとえば、スキル説明に、1800年代から1900年代までの歴史クイズが含まれていると表示されている場合、この機能を確認する。機能が存在しない場合、または最初に入力した機能と異なる場合は、スキルのコア機能と一致するように説明を編集する。 - スキル説明にタイプミス・誤用が含まれている。* スキル説明でスキルのことを「アプリ」と誤った表記をしている。* スキル説明: アプリを使用するには「アレクサ、十二星座占いを開いて」と言ってください。* タイプミス・誤用を修正する。この例では「アプリ」の表記を「スキル」に修正が必要。
スキル説明: スキルを使用するには、「アレクサ、十二星座占いを開いて」と言ってください。
サンプル発話の問題
概要
定義されたサンプル発話をスキル内でリクエストした際に、それぞれのインテントは関連性のある、理解ができる、エラーがない応答であるか。
合格基準
- すべてのインテントが、リクエストに関連性がある応答を返す。
- すべての応答内容が理解可能であり、適切である。
よくある指摘シナリオ
-
指摘項目 * シナリオ * 問題例 * 修正例
-
スキルがエラーを返す。* ユーザーがスキルのアクションを承認または拒否する発話をした際に、スキルがエラーを返す。* ユーザー: アレクサ、十二星座占いを開いて
スキル: 十二星座占いへようこそ! いつでも指定の星座を聞くことができます。もしくは十二星座すべてについて聞くことができます。星座のリストを確認しますか?
ユーザー: はい。
スキル: スキルがリクエストに正しく応答できませんでした * スキルが適切にインテントを処理していることを確認する。スキルを慎重に実行し、さまざまなシナリオをテストすることが必要となる。 -
スキルが関連性のない応答を返す。* スキルでユーザーが選択肢Aを選択するが、スキルはユーザーが選択肢Bをリクエストしたかのように応答する。* ユーザー: アレクサ、物語リーダーを開いて
スキル: 物語リーダースキルへようこそ。物語のあらゆる分岐点でAまたはBを選択することで、その後の展開が変わります。それでは始めましょう。
スキルが物語を読む
スキル: キャラクターが次に取る行動を決めることができます。AルートとBルート、どちらを選択しますか?
ユーザー: Aルート。
スキル: Bルートを選択しました。
スキルは物語をBルートで続ける *スキルの応答を聞いて、ユーザーの各リクエストと一致することを確認する。
この例では、物語はAルートで進んでいる必要がある。 -
スキルの応答に発音できない特殊文字が含まれている。* カードゲームスキルにカードに関連したクローバーやハート記号が含まれている。例:♣♥ * ユーザー: アレクサ、ランダムカードジェネレータを開いて
スキル:♣の十
スキルがクローバーの記号を発音できない
* スキルは特殊文字や記号を発音できないため、読み上げ可能な日本語で置き換える。
ユーザー: アレクサ、ランダムカードジェネレータを開いて
スキル:クローバーの十
スキルは♣の記号を解釈しようとせずに「クローバー」という言葉を発音する
スキルセッションの問題
概要
ユーザーが要求されたタスクを完了した後、スキルセッションは閉じるか。 ユーザーに対してセッションが開いているか閉じているか明確であるか。
合格基準
- 要求されたタスクが完了した後、スキルのセッションが閉じる。ユーザーに対して発話の促しがない。
- セッションが開いたままで、常に発話を聞き取っている場合(たとえば、会話スキルやアドベンチャースキルなど)は、スキルはセッションが開いていることを明確にしている。
- ユーザーの発話を促し、入力を待機している状態を明確にしてから、スキルのセッションが開く。
よくある指摘シナリオ
- 指摘項目 * シナリオ * 問題例 * 修正例
- エラーの後にセッションが開いたままになる。* 「すみません、わかりませんでした」などのカスタムエラーが起こった後、ユーザーへ追加の発話の促しがないままセッションが開く * ユーザー: アレクサ、宇宙の豆知識を開いて
スキル: 宇宙の豆知識へようこそ! どの惑星について学びたいですか?
ユーザー: 海
スキル: すみません、よくわかりませんでした
セッションオープン * エラー後にセッションを開く場合は、ユーザーが次に何を発話するべきかわかるように明確なリプロンプトを含める。
ユーザー: アレクサ、宇宙の豆知識を開いて
スキル: 宇宙の豆知識へようこそ! どの惑星について学びたいですか?
ユーザー: 海
スキル: すみません、よくわかりませんでした。学びたい惑星の名前を言ってください。
セッションオープン - ウェルカムプロンプトの後にセッションが開く。* ウェルカムプロンプトでスキルの短い概要を提供した後、ユーザーへ発話を促さないままセッションが開く。* ユーザー: アレクサ、十二星座占いを開いて
スキル: 十二星座占いへようこそ!
セッションオープン * スキルがウェルカムプロンプトでスキルの短い概要を提供した後、質問や複数の選択肢を含めユーザーへ続きの発話を促す。
ユーザー: アレクサ、十二星座占いを開いて
スキル: 十二星座占いへようこそ! どの星座について知りたいですか?
セッションオープン - リクエストを完了した後にセッションが開いた状態になる。* スキルがウェルカムプロンプトでタスクを完了したにもかかわらず、応答後にセッションが開く。* ユーザー: アレクサ、宇宙の豆知識を開いて
スキル: 水星での一年はわずか88日間です。
セッションオープン * 単発でタスクが完了する豆知識スキルなどではウェルカムプロンプトの後にセッションが閉じることを確認する。デバイスのライトは発話を聞き取っていることを示す青いライトが付いていない状態になる。
ユーザー: アレクサ、宇宙の豆知識を開いて
スキル: 水星での一年はわずか88日間です。
セッションクローズ
最初のサンプルフレーズに関する問題
概要
最初のサンプルフレーズには、ウェイクワードとスキルの呼び出し名が含まれているか。
合格基準
- 最初のサンプルフレーズは、ウェイクワード(「アレクサ」、「アマゾン」、「コンピュータ」、「エコー」のいずれか)から始まる。
- 最初のサンプルフレーズには呼び出し名が含まれており、サンプルフレーズを発話した際にスキルが起動する。
よくある指摘シナリオ
- 指摘項目 * シナリオ * 問題例 * 修正例
-
ウェイクワードが含まれていない。 * 最初のサンプルフレーズの始めにウェイクワードが含まれていない。音声で起動されるデバイスはウェイクワードを必要とします。* 「宇宙の豆知識を開いて」* フレーズの先頭にウェイクワードを追加する。
たとえば、「アレクサ、宇宙の豆知識を開いて」 -
最初のサンプルフレーズに誤った呼び出し名が使用されている * サンプルフレーズに含まれている呼び出し名は実際の呼び出し名と異なる。* サンプルフレーズ内の呼び出し名: 「アレクサ、十三星座占いを開いて」* サンプルフレーズに含まれる呼び出し名が開発者コンソールのビルド>呼び出し名ページに登録されていることを確認する。
問題例のフレーズの「十三星座占い」では呼び出せないため、開発者コンソールと同じ呼び出し名「十二星座占い」に設定する。
サンプルフレーズ: 「アレクサ、十二星座占いを開いて」 - 最初のサンプルフレーズに呼び出し名がない。* 最初のサンプルフレーズに呼び出し名が含まれていない。* 「アレクサ、品川区の郵便番号を検索して」
実際の呼び出し名: 郵便番号ファインダー * ウェイクワードの後に呼び出し名を含める。ユーザーのリクエストに呼び出し名が含まれていない場合、スキルではなくAlexaサービスへ転送されるため、スキルの起動には呼び出し名が必要。
「アレクサ、郵便番号ファインダーで品川区の郵便番号を検索して」
状況に応じたテキスト読み上げ(TTS)またはオーディオ再生の問題
概要
すべてのサンプルフレーズ(スキル説明に記載されたものも含む)はエラーがない状況に応じたテキスト読み上げ(TTS)および、オーディオ再生の応答を提供しているか。
合格基準
スキルは適切なテキスト読み上げ(TTS)またはオーディオ再生をエラーなしに提供する。
よくある指摘シナリオ
- 指摘項目 * シナリオ * 問題例 * 修正例
-
スキルが起動しない。* 呼び出し名と起動フレーズの組み合わせがうまく機能しない * サンプルフレーズ: アレクサ、<呼び出し名>を始めて
ユーザー: アレクサ、<呼び出し名>を始めて
ユーザー発話の履歴: アレクサ、<呼び出し名>を始めて
履歴画面に正しいスキル名を含んだメッセージが表示されてない。*
履歴画面にはリクエストで使用された発話が表示されるため、スキルの呼び出しフレーズが想定どおり認識されているかを確認できる。
呼び出し名と起動フレーズの相性が悪い場合もあるため、必ずサンプルフレーズを音声で試し、発話の履歴を確認する。 -
スキル応答がスキル説明の記載と一致しない。* 実際のスキルの応答が意図したリクエスト、またはスキル説明の記載と異なる。* サンプルフレーズ: 「動物の鳴き声を出して」
ユーザー: アレクサ、アニマルサウンドを開いて
スキル: アニマルサウンドスキルへようこそ! どうしたいですか?
ユーザー: 動物の鳴き声を出して
スキル: 自動車の音を再生 * サンプルフレーズのリクエストに対して意図した応答であり、スキル説明の記載と一致していることを確認する。
ユーザー: アレクサ、アニマルサウンドを開いて
スキル: アニマルサウンドスキルへようこそ! どうしたいですか?
ユーザー: 動物の鳴き声を出して
スキル: 犬が吠える音を再生 - スキルの応答にエラーが含まれている。* リクエストしたスキルに届いているが、エラーが返される。
例: 「スキルがリクエストに正しく応答できませんでした」または「undefined」* サンプルフレーズ: 「アレクサ、アコースティックギターでGマイナーコードを弾いて」
ユーザー: アレクサ、アコースティックギターでGマイナーコードを弾いて
スキル: undefinedのコードを弾きます
スキルがコードを再生 * すべてのサンプルフレーズに対してエラーなしに応答することを確認する。
ユーザー: アレクサ、アコースティックギターでGマイナーコードを弾いて
スキル: Gマイナーコードを弾きます
スキルがGマイナーコードを再生
サンプルフレーズの定義に関する問題
概要
すべてのサンプルフレーズは、対話モデルのサンプル発話と正確に一致しているか。
合格基準
- サンプルフレーズのすべての部分が、サンプル発話と完全に一致する。これには、ウェイクワード、呼び出し名、関連した起動フレーズは含まれない。
- サンプルフレーズに使用されているスロット値はスロット値の範囲に含まれている。
よくある指摘シナリオ
- 指摘項目 * シナリオ * 問題例 * 修正例
-
音声プロンプトがサンプル発話と一致しない。 * 音声プロンプトで提供されているフレーズがサンプル発話の定義と完全一致しない * 音声プロンプト: 始めるには、「音楽を再生」と言ってください
サンプル発話:PlayIntent
音楽再生
* フレーズは、サンプル発話で正確に定義されている必要があり、類似のものでは不十分。
サンプル発話:PlayIntent
音楽を再生 -
サンプルフレーズが定義されていない。* サンプルフレーズまたはスキル説明内のフレーズがサンプル発話に定義されていない。* サンプルフレーズ: 「アレクサ、アニマルサウンドで牛の音を再生して」
サンプル発話:CowIntent
牛の音 * モダルリクエストやワンショットフレーズが正確にインテントスキーマに定義されていることを確認する
サンプル発話:CowIntent
牛の音を再生して - スロット * スロット値の定義が不足している。 * 音声プロンプト: 「朝、昼、夜から一つ選択してください。」
カスタムスロット値:
• {Time} 朝
• {Time} 夜 * 音声で提示されたすべての選択肢はスロット値として定義されている必要がある。
カスタムスロット値:
• {Time} 朝
• {Time} 昼
• {Time} 夜
サンプル発話の量の問題
概要
ユーザーがリクエストする際に発話すると思われる、一般的な言い回しが不足していないか。
合格基準
ユーザーのリクエストがスキルに届くよう、インテントに幅広く十分な数のサンプル発話が定義されている。
よくある指摘シナリオ
-
指摘項目 * シナリオ * 問題例 * 修正例
-
「はい」または「いいえ」の発話が認識されない * 「はい」および「いいえ」がサンプル発話に定義されていない * プロンプト: 「続けますか?」
サンプル発話:
•YesIntent
続ける
•NoIntent
続けない * 「はい」および「いいえ」が確実にインテントに含まれていることを確認する。また、ユーザーが発話されると想定される「続けます」や「続けません」などの発話を含めることを推奨します。
サンプル発話:
•YesIntent
はい
•YesIntent
続ける
•YesIntent
続けます
•NoIntent
いいえ
•NoIntent
続けない
•NoIntent
続けません -
回答方法によって正しく機能しない。 * インテントに単位が含まれていない。* プロンプト: 「5メートル足す20センチの長さは?」
サンプル発話:AnswerIntent
{number}* ユーザーは、数字だけでなく特定の単位(インチ、フィート、ヤード)を含めるて応答することがある。
サンプル発話:
•AnswerOnlyIntent
{number}
•AnswerIntent
{number} メートル
•AnswerIntent
{number} センチ -
自由回答式の質問の発話が認識されない。 * 複数の機能があるスキルにおいて、各リクエストに対応するための多様なサンプル発話が不足している。ユーザーは同じリクエストを少し異なった方法で発話する可能性があります。 * プロンプト: 「何をしますか?」
サンプル発話:
•AnswerIntent
{number}
•PatternIntent
パターンについて知りたい
•PatternIntent
パターンについて
•ColorIntent
色
•ColorIntent
色について教えて * スキルのインテントスキーマが、ユーザーがリクエストできる発話を網羅してことを確認する。
サンプル発話:AnswerIntent
{number}
•PatternIntent
パターンについて知りたい
•PatternIntent
パターン
•PatternIntent
パターンを教えて
•PatternIntent
パターンについて
•ColorIntent
色について知りたい
•ColorIntent
色
•ColorIntent
色をについて教えて
•ColorIntent
色について
起動フレーズの問題
概要
起動リクエストを含むすべてのサンプルフレーズは、サポートされている起動フレーズを使用しているか。
合格基準
起動およびワンショットのリクエストのすべてのサンプルフレーズで、サポートされている起動フレーズを使用している。
よくある指摘シナリオ
- 指摘項目 * シナリオ * 問題例 * 修正例
-
誤った呼び出し名が使用されている。* 呼び出し名にタイプミスがある。* 実際の呼び出し名: 十二星座占い
サンプルフレーズ:
アレクサ、十三星座占いを開いて * アレクサ、十二星座占いを開いて -
誤った起動フレーズが使用されている。 * アレクサでサポートされていない起動フレーズが使用されている。* サンプルフレーズ:
アレクサ、<呼び出し名>を検索して * アレクサ、<呼び出し名>を開いて - ウェイクワードが使用されていない。* 呼び出し名と起動フレーズは正しいが、ウェイクワードが最初に含まれていない。 * サンプルフレーズ:
<呼び出し名>を開いて * アレクサ、<呼び出し名>を開いて
重複しているサンプル発話の問題
概要
サンプル発話は、すべてのインテント間で一意となっているか。
合格基準
対話モデルは、複数のインテントで重複しているサンプル発話がない。
よくある指摘シナリオ
- 指摘項目 * シナリオ * 問題例 * 修正例
-
標準ビルトインインテントを使用した際に失敗する * 拡張されたビルトインインテントの発話はすでに他のビルトインインテントで定義されており、2つのインテントが競合する。* サンプル発話:
Amazon.CancelIntent
とめて * 「とめて」はAmazon.StopIntent
ですでに定義されているため、拡張されているビルトインインテントのサンプル発話を削除する。 -
カスタムインテントを使用した際に失敗する。* 二つ以上のカスタムインテントに同じサンプル発話が定義されている。* サンプル発話:
•WhatCanIBuyIntent
買う
•BuyConfirmIntent
買う * いずれかのインテントをより適切なサンプル発話に変更するか、重複している一方のサンプル発話を削除する。 - スロット値を使用した際に失敗する。* カスタムスロット値とインテントに同じサンプル発話が含まれている。 * サンプル発話:
•IntentA
{Slot} が欲しい
•IntentB
豆知識が欲しい
カスタムスロット値: {Slot} 豆知識 * 重複しているインテントの一方を削除する。
サンプル発話の言語の問題
概要
サンプル発話とスロット値は、スキルでサポートしている各言語に対して正しい言語を使用しているか。
合格基準
スキルのサンプル発話とスロット値は、サポートされている各言語に対して正しい言語で記述されている。
よくある指摘シナリオ
- 指摘項目 * シナリオ * 問題例 * 修正例
-
アクロニムやイニシャリズムをを使用した際に失敗する * アクロニム: 複数の単語で構成される言葉の頭文字を繋げて、ひとつの単語として発音するもの。
イニシャリズム:複数の単語で構成される言葉の頭文字をとり、一文字ずつアルファベットで発音するもの。* 間違ったアクロニムの例:n a s a
誤ったイニシャリズムの例:gps * 正しいアクロニムの例: NASA
正しいイニシャリズムの例:g p s -
特殊文字を使用した際に失敗する。 * サポートされていない特殊文字を使用している。* 例:→,#,+ * 「次」「番号」「ハッシュタグ」「足す」など、特殊文字を発音できる言葉に変更する。
- 違う言語を使用した際に失敗する。 * 選択されていないロケールの言語が使用されている。 * スキルは日本語(日本)で利用可能だが、インテントが日本語で表記されていない。
サンプル発話:StartIntent
empezar * 同じスキルで複数のロケールを設定している場合、正しい言語が使用されており、言語ごとに適切なサポートが提供されていることを確認する。適切な言語に翻訳がされていない限り、ロケールの追加はしないでください。