あなたのAlexaダッシュボード 設定

多言語に対応するスキルを開発する

Alexa Skills Kitを使用して、多言語のスキルを作成できます。スキルは、以下の1つの言語だけをサポートすることも、以下のうち複数の言語をサポートすることもできます。

  • 日本語
  • 英語(India)
  • 英語(US)
  • 英語(UK)
  • ドイツ語

特定の言語でAlexaと対話するユーザーは、その言語をサポートしているスキルを使用できます。たとえば、Alexa端末をドイツ語に設定したユーザーは、住んでいる地域で公開されたドイツ語をサポートしているスキルを有効にして使うことができます。

手順の概要

カスタムスキルに複数の言語を追加する

  1. サポートしたい言語の音声ユーザーインターフェースを設計します。音声ユーザーインターフェースには以下が含まれます。
    • スキルの呼び出し名
    • インテントスキーマ
    • サンプル発話
    • カスタムスロットタイプの値

    詳細は、 スキルがサポートする言語の音声ユーザーインターフェースを設計するを参照してください。

  2. 受け取ったリクエスト(IntentRequestLaunchRequest、およびSessionEndedRequest)のユーザー言語をチェックして適切な言語で応答するためのロジックをコード中に組み込みます。 たとえば、ユーザーがドイツ語でスキルを起動した場合は、Alexaがドイツ語で返答するように読み上げテキストをスキルから返す必要があります。

    詳細は、 コード変更を実装するを参照してください。

  3. 更新したコードをエンドポイントにデプロイします。
    • North AmericaEurope、India, Far Eastのうち一つもしくは複数のエンドポイントにデプロイできます。
    • コードを複数のエンドポイントにデプロイする場合は、すべてのエンドポイントで同じコードを維持する必要があります。以前の手順で説明したように、コードは、サポートされているすべての言語を処理する必要があります。

    詳細については、スキルに複数のエンドポイントを指定するを参照してください。

  4. 開発者ポータルで、新しいエンドポイント、新しい音声ユーザーインターフェース、およびその他の言語固有の情報を使用してスキルを構成します。

    言語固有の詳細でスキル構成を更新するを参照してください。

  5. スキルの新しい言語バージョンをテストします。

    サービスシミュレーターでテストできます。「Test」ページで、テストする言語バージョンの言語タブを選択してから、通常通りテストする発話を入力します。

    フル言語サポートがユーザーにリリースされている場合は、スキルの作成時に使用したのと同じ開発者アカウントに登録されたAlexa対応端末を使用してテストすることもできます。

  6. 関連する場所にいるユーザーが使用できるようにスキルの配信を構成します。

    スキルの配信場所を決定するを参照してください。

スマートホームスキルに複数の言語を追加する

  1. 関連するLambdaエンドポイントにコードをデプロイします。

    • コードは、North America、Europe、India, Far Eastのうち一つもしくは複数のエンドポイントにデプロイできます。
    • コードを両方のエンドポイントにデプロイする場合は、両方のエンドポイントで同じコードを維持する必要があります。

    詳細については、スキルに複数のエンドポイントを指定するを参照してください。

  2. 開発者ポータルで、新しいエンドポイントとその他の言語固有の情報を使用してスキルを構成します。

    言語固有の詳細でスキル構成を更新するを参照してください。

  3. スキルの作成時に使用したのと同じ開発者アカウントに登録されたAlexa対応端末を使用して、スキルの新しい言語バージョンをテストします。
  4. 関連する場所にいるユーザーが使用できるようにスキルの配信を構成します。

    スキルの配信場所を決定するを参照してください。

開発者ポータルの言語固有の情報とグローバルな情報

開発者ポータルでスキルを構成すると、以下の処理に必要な情報がAlexaサービスに提供されます。

  • スキルを実装するAWS Lambda関数またはウェブサービスにリクエストを送信する。AWS Lambdaは、Amazon Web Servicesのサービスです。
  • Amazon Alexaアプリにスキルの情報を表示する。

1つのスキルに複数の言語を追加した場合、構成内の情報の中には、すべての言語に適用されるものと単一の言語にしか適用されないものがあります。各言語は、開発者ポータルの別々のタブに表示されます。スキルのすべてのバージョンに適用されるフィールドは、「Global Fields」というセクションに灰色の背景色でまとめて表示されます。

次の表に、スキルのすべてのバージョンに適用可能なフィールドと、単一の言語バージョンにしか適用されないフィールドを示します。アスタリスク(*)付きのフィールドはカスタムスキルにしか適用されません。

構成ページ グローバルな情報(すべての言語) 言語固有の情報

スキル情報

  • アプリケーションID(単一のIDがスキルに対して生成される)
  • スキルタイプ
  • オーディオプレーヤー
  • 言語
  • 名前(Alexaアプリに表示される)
  • *呼び出し名

対話モデル

  • なし
  • *インテントスキーマ
  • *カスタムスロットタイプの値
  • *サンプル発話

構成

  • エンドポイント :指定したエンドポイントはスキルに関するグローバルな情報と見なされます。これらのエンドポイント上のコードは、スキルがサポートしているすべての言語をサポートする必要があります。エンドポイントの詳細については、後述する内容を参照してください。
  • Privacy Policy URL」を除くすべてのアカウントリンクフィールド。
  • プライバシーポリシーURL

SSL証明書

使用するエンドポイントごとにSSL設定を変えることができます。

  • なし

テスト

  • 有効化/無効化オプション
  • *「Voice」フィールドと「サービスシミュレーター」フィールド:サービスシミュレーターで発話を入力すると、表示されている特定の言語がテストされます。たとえば、スキルの「ドイツ語」タブを選択してシミュレーターで発話を入力すると、

    • Alexaがドイツ語対話モデルを使用して、スキルに送信するインテントを決定します。
    • リクエストには、de-DEに設定されたlocaleフィールドが含まれます。

公開情報

  • カテゴリー
  • テスト手順
  • 国と地域
  • 簡単なスキルの説明
  • 完全なスキルの説明
  • サンプルフレーズ
  • キーワード
  • 画像(小型アイコンと大型アイコン)

プライバシーとコンプライアンス

  • このスキルでユーザーが商品を購入したり、現金を使用したりできますか?
  • このAlexaスキルはユーザーの個人情報を収集しますか?
  • 輸出の適合性
  • プライバシーポリシーURL
  • 利用規約URL

カスタムスキルがサポートする各言語の音声ユーザーインターフェースを設計する

カスタムスキルがサポートしている各言語ごとに音声ユーザーインターフェースを作成します。たとえば以下のようなものがあります。

  • 呼び出し名:スキルとの対話を始めるためにユーザーが話すフレーズ。
  • インテントスキーマ:あなたのサービスが受け入れ、処理できるインテント一式を宣言するJSON構造。言語が違ってもユーザーが同じ体験ができるように、すべての言語でインテントの一貫性を維持することをお勧めします。
  • サンプル発話:インテントを、使用される可能性があるフレーズと結び付ける、構造化テキストファイル。このファイルにはフレーズのさまざまな言い方も含まれます。
  • カスタムスロットタイプの値:インタントスキーマで定義されたカスタムスロットタイプごとに定義された値の代表的なリスト。

これらの項目の詳細については、以下を参照してください。

呼び出し名を選択して、サンプル発話を記述したら、使用されている単語やフレーズが言語のネイティブスピーカーに適切かどうかを確認します。

新しい言語のセットアップと言語固有の音声ユーザーインターフェースの追加の詳細については、後述する言語固有の詳細でスキル構成を更新するを参照してください。

カスタムスキルに対するコード変更を実装する

カスタムスキル用に作成したクラウドベースのサービスは、サポートされているすべての言語からのリクエストを処理できる必要があります。たとえば、スキルがドイツ語と英語(英国)の両方をサポートしている場合、同じコードで次の要件を満たす必要があります。

  • ドイツ語リクエストを取得して、ドイツ語読み上げ機能でユーザーに応答する。
  • 英語(英国)リクエストを取得して、英語読み上げ機能でユーザーに応答する。

サービスに送信されるすべてのリクエストに含まれているlocaleプロパティ(LaunchRequestIntentRequestSessionEndedRequest)をチェックすることにより、スキルの呼び出しに使用される言語を決定できます。localeプロパティは、requestオブジェクトの一部です。

{
  "request": {
    "type": "LaunchRequest",
    "requestId": "EdwRequestId.00000000-0000-0000-0000-000000000000",
    "timestamp": "2016-06-14T20:59:24Z",
    "locale": "en-US"
  }
}

localeプロパティは次のいずれかにすることができます。

  • ja-jp:日本語
  • en-US:英語(米国)
  • en-GB:英語(英国)
  • en-CA:英語(カナダ)
  • en-IN:英語(インド)
  • de-DE:ドイツ語

どの言語でも機能が同一であることは必須ではありませんが、ユーザーが端末の言語を選択したり、言語を切り替えたりできることに注意してください。ユーザーは複数の言語でスキルと対話する可能性があるため、言語全体で一貫した体験ができることが重要です。

これらのコード変更はスマートホームスキルには当てはまりません。これらのスキルは読み上げ機能を使って応答することがないためです。

スキルに複数のエンドポイントを指定する

スキルに対して複数のエンドポイントを指定できます。

  • North America
  • Europe
  • India
  • Far East

現在のところ、Alexaサービスは、ユーザーの場所と開発者が指定したエンドポイントに基づいて、呼び出すエンドポイントを決定します。

  • Alexaは、日本のユーザー(端末が.co.jpサイトに登録されているユーザー)に対してFar Eastエンドポイント(使用可能な場合)を呼び出します。
  • Alexaは、北米のユーザー(端末が.comサイトに登録されているユーザー)に対してNorth Americaエンドポイント(使用可能な場合)を呼び出します。
  • Alexaは、欧州のユーザー(端末が .de.co.ukなどの欧州サイトに登録されているユーザー)に対してEuropeエンドポイント(使用可能な場合)を呼び出します。
  • ユーザーの地域に推奨されているエンドポイントが使用できない場合、Alexaはデフォルトとして指定されたエンドポイントを呼び出します。

複数のエンドポイントを使用することにした場合は、各エンドポイントに同じコードをデプロイする必要があります。特定の言語のユーザーリクエストはどちらのエンドポイントにも送信される可能性があります。たとえば、スキルが英語(米国)とドイツ語の両方をサポートしているとします。amazon.deを使用しているユーザーからの英語リクエストは、Europeエンドポイント(指定された場合)に送信されます。そのエンドポイント上のコードは、英語のリクエストを適切に処理して応答を返すことができる必要があります。カスタムスキルに対するコード変更を実装するで説明したように、リクエスト内で指定されたlocaleプロパティを使用してユーザーの言語を識別します。

注: AWS Lambdaをご利用される場合は適切な地域でスキルをホストする必要があります。

  • North Americaエンドポイントを利用する場合、Lambda関数はUS East (N. Virginia)でホストされなければなりません。
  • Europeエンドポイント・Indiaエンドポイントを利用する場合、Lambda関数はEU (Ireland)でホストする必要があります。
  • Far Eastエンドポイントを利用する場合、Lambda関数はAsia Pacific(Tokyo)、またはUS West(Oregon)でホストされなければなりません。

言語固有の詳細でスキル構成を更新する

追加の言語のサポートを追加するには、スキル構成に言語を追加して、新しい音声ユーザーインターフェースなどの言語固有の情報を指定する必要があります。このリリース以前に作成されたすべてのスキルは英語(米国)を使用します。

開発者ポータルの言語固有のフィールドとグローバルなフィールドの詳細については、前述の開発者ポータルでの言語固有の情報とグローバルな情報を参照してください。

既存のスキルに言語を追加する

この手順で示すフィールドの一部はカスタムスキルにしか適用されず、スマートホームスキルには適用されないことに注意してください。

  1. 開発者ポータルのコンソールページで「Alexa」をクリックしてAlexaセクションにログインします。
  2. Alexa Skills Kitの「Get Started」をクリックします。既存のAlexaスキルのリストを表示する画面が開きます。スキルごとの言語が一覧表示されます。
  3. 変更するスキルの「Edit」を選択します。
  4. Add New Language」タブをクリックします。
  5. Language」ドロップダウンリストで言語を選択します。まだスキルに対して構成されていない言語が一覧表示されます。
  6. スキル情報」ページで、この言語バージョンに使用する「名前」と「呼び出し名」を入力します。
  7. 対話モデル」ページで、この言語の「インテントスキーマ」、「カスタムスロットタイプ」、および「サンプル発話」を入力します。
  8. 「構成」ページで、エンドポイントを更新します(該当する場合)。
    • Service Endpoint Type」で、「AWS Lambda」と「HTTPS」のどちらを使用するかを選択します。
    • 指定するエンドポイントごとに対応するチェックボックスを選択します。
    • 該当フィールドにエンドポイントを入力します。
  9. 複数のエンドポイントを指定した場合は、必要に応じて、「Make Default」リンクをクリックしてデフォルトを変更します。
  10. スキルでアカウントリンクが使用される場合は、この言語の「プライバシーポリシーURL」を入力します。
  11. Test」ページで、スキルのテストを有効にします。
    • カスタムスキルはサービスシミュレーターを使用してテストできます。
    • スマートホームスキルはAlexa対応端末を使用してテストできます。

公開フィールドを入力する

テストが完了したら、「公開情報」ページで残りの言語固有のフィールドを入力することにより、スキルの新しい言語バージョンの提出の準備をします。

  • 簡単なスキルの説明
  • 完全なスキルの説明
  • サンプルフレーズ
  • キーワード
  • 小型アイコンと大型アイコン

最後に、後述するように、スキルの配信場所を決定して、「国と地域」オプションを選択します。

スキルの配信場所を決定する

公開情報」ページの「国と地域」オプションは、ユーザーがスキルを有効にして使用できる国と地域を決定します。ユーザー向けにAlexaの国際サポートが開始されると、ユーザーは以下の両方の条件を満たすすべてのスキルにアクセスできるようになります。

  • スキルが自分の国または地域で配信されている。
  • Alexa対応端末に対して選択された言語をスキルがサポートしている。

配信は、個別の言語ではなく、スキルに適用されます。コンテンツポリシー制限がなければ、スキルのすべての言語バージョンが、指定された国と地域のユーザーに使用可能になります。たとえば、スキルでドイツ語と英語(米国)がサポートされており、ワールドワイド配信を選択した場合は、ドイツ語バージョンと英語(米国)バージョンがすべての国と地域で使用可能になります。

ユーザーは端末で使用する言語を制御でき、場所には制限されないことを覚えておくことが重要です。たとえば、ドイツに住んでいるユーザーは、Alexa端末に対して英語(英国)などの別の言語を使用するように選択できます。

例:1つの言語のワールドワイド配信

Amazonが拠点を構えるすべての国と地域でスキルを配信することにします。英語(英国)のみを使用してスキルを構成し、他の言語は構成しません。結果:

  • 英語(英国)を使用するように端末を設定した世界中のユーザーがスキルを使用できます。
  • 端末に対してドイツ語または英語(米国)を選択した世界中のユーザーはスキルを使用できません

例:複数言語の限定配信

スキルをドイツでのみ配信することにします。スキルの機能が地域固有のため、あるいはドイツに限定して配信したいと考えているためです。スキルをドイツ語英語(英国)の言語で構成します。このケースでは:

  • ドイツ語を使用するように端末を設定したドイツ国内のユーザーはスキルを使用できます。
  • 英語(英国)を使用するように端末を競って設定したドイツ国内のユーザーはスキルを使用できます。
  • 英語(米国)を使用するように端末を設定したドイツ国内のユーザーはスキルを使用できません
  • 端末に対して選択した言語に関係なく、他の国のユーザーはスキルを使用できません

スキルはどこからでも使用できるようにすべきか?

Amazonが拠点を構えるすべての場所でスキルを配信すれば、潜在顧客とユーザー基盤が拡大します。スキルの利用を制限する正当な理由が見つからない場合は、「In all countries and regions where Amazon has presence」を選択することをお勧めします。

  • スキルを世界中に配信すれば、スキルでサポートされている言語を使用するように端末を構成した世界中のユーザーがこれを使用できます。
  • スキルの利用を特定の国または地域に限定した場合は、指定された国/地域にいて、かつスキルでサポートされている言語を使用するように端末を構成したユーザーしかこれを使用できません。

スキルを利用できるようにするかどうかを決定するときには、スキルが他の国のユーザーに役に立つかどうかを検討します。たとえば、トリビアゲームスキルは、ユーザーが住んでいる場所に関係なく楽しめるものです。新しい言語を追加可能な場合は特にそう言えます。対照的に、特定の地理的地域でしか役に立たないスキルもあります。たとえば、料理の宅配を米国の主要都市で行い、欧州では行わないスキルは、米国以外では役に立たないと考えられます。