# (チュートリアル2)対話モデルを作成する
チュートリアルスキルの対話モデルにインテントおよびスロットを登録して、対話モデルをビルドします。
ここでは、チュートリアルスキルの対話モデルに、以下のデータを作成します。
- 新規のカスタムスロット「coffeeSlotType」
- ビルトインスロット「CLOVA.NUMBER」
- 新規のカスタムインテント「OrderIntent」
この手順のとおりに操作すると、ユーザーがCLOVAデバイスでチュートリアルスキルを起動してから、「コーヒーを2杯お願いします」と発話したときに、CLOVAからExtensionサーバーにOrderIntentが送信されます。
スロットとは
スロットは、1つのインテントを活用するためのプレースホルダ(仮に確保する場所)です。ユーザーの発話が、CLOVAによってインテントオブジェクトに変換される際、スロット部分が抽出されて、Extensionサーバーに送信されます。たとえば「コーヒーを2つください」という発話が想定される場合は、「コーヒー」と「2つ」の部分をスロットとして設定します。このように設定すると、Extensionサーバーでスロット部分の情報を簡単に取得できます。
CLOVA Developer Centerの「用語および略語」の「スロット (opens new window)」も参照してください。
インテントについては、チュートリアル1の「対話モデルを作成する」を参照してください。
CLOVA Developer Center (opens new window)にログインし、[スキル設定]をクリックして、「チュートリアルスキル」の[編集]をクリックします。
チュートリアルスキルの設定画面が表示されます。
[対話モデル]をクリックし、[対話モデルを編集する]をクリックします。
「対話モデル:ダッシュボード」画面が表示されます。
[GreetingIntent]をクリックし、[
]をクリックして、[OK]をクリックします。
「カスタムスロットタイプ」の[+]をクリックします。
「新しいスロットタイプのタイトル」に「coffeeSlotType」と入力し、[作成]をクリックします。
「スロットの新たな代表語を入力」に「コーヒー」と入力し、[+]をクリックします。
同様の操作で、「カフェモカ」と「カフェラテ」も代表語として登録します。
[保存]をクリックします。
カスタムスロットタイプ「coffeeSlotType」が保存されます。
「ビルトインスロットタイプ」の[+]をクリックします。
[数値と単位を取得する]を開いて、[CLOVA.NUMBER]のチェックボックスをオンにして、[保存]をクリックします。
「カスタムインテント」の[+]をクリックします。
チュートリアルスキルの「対話モデル:インテントを追加」画面が表示されます。
[新規のカスタムインテントを作成]に「OrderIntent」と入力し、[作成]をクリックします。
対話モデルにカスタムインテント「OrderIntent」が追加されます。
インテント名は正確に入力しましょうOrderIntentは、チュートリアルのコードに書かれているインテント名です。ほかの名前を入力するとチュートリアル2が正しく動作しません。大文字と小文字は区別されます。
「新しいサンプル発話を追加してみてください。」に「コーヒーを2杯ください」と入力し、[+]をクリックします。
「コーヒーを2杯ください」の「コーヒー」をドラッグして選択します。
「新しいスロットに名前を付ける」に「coffeeType」と入力し、[+]をクリックします。
スロット名は正確に入力しましょうcoffeeTypeは、チュートリアルのコードに書かれているスロット名です。ほかの名前を入力するとチュートリアル2が正しく動作しません。大文字と小文字は区別されます。
「coffeeType」の[スロットタイプ]をクリックし、[coffeeSlotType]をクリックします。
「コーヒーを2杯ください」の「2」をドラッグして選択します。
「新しいスロットに名前を付ける」に「count」と入力し、[+]をクリックします。
スロット名は正確に入力しましょうcountは、チュートリアルのコードに書かれているスロット名です。ほかの名前を入力するとチュートリアル2が正しく動作しません。大文字と小文字は区別されます。
「count」の[スロットタイプ]をクリックし、[CLOVA.NUMBER]をクリックします。
[保存]をクリックします。
OrderIntentのサンプル発話リストが保存されます。
[ビルド]をクリックします。
表示が[ビルド中]に代わり、対話モデルのビルドが開始されます。ビルトが終了すると、表示が[ビルド中]から[ビルド]に戻ります。ビルドが終了するまでに、数分かかります。
ビルドが終了したら、チュートリアルスキルの設定画面の[テスト]をクリックします。
[テストしたい発話の内容を入力してください]に「コーヒーを2杯お願いします」と入力し、[送信]をクリックします。
画面の左側に対話形式で、ユーザーの発話(コーヒーを2杯お願いします)とレスポンス(コーヒーを2つご用意します。)が表示されます。
ユーザーが発話した「コーヒーを2杯お願いします」がCLOVAによって解析された結果(Extensionサーバーに送信されたインテントおよびスロット)と、Extensionサーバーによる応答が表示されます。
項目 表示 実行されるイベント IntentRequest 解析されたインテント OrderIntent 解析されたスロット スロット名:coffeeType、解析されたスロットデータ:コーヒー
スロット名:count、解析されたスロットデータ:2JSONのサービスリクエスト CLOVAからExtensionサーバーに送信されたJSON サービス応答 ExtensionサーバーからCLOVAに送信されたJSON この例では、カスタムインテント「OrderIntent」が作成され、スロット「coffeeType」にあたる発話は「コーヒー」で、スロット「count」にあたる発話は「2」と解析されています。また、Extensionサーバー(Herokuにデプロイしたコード)によって、「OrderIntent」に対してスロットの情報も用いて「コーヒーを2つご用意します。」とCLOVAデバイスが応答することも示しています。
[テストしたい発話の内容を入力してください]に「カフェモカを1つください」と入力し、[送信]をクリックします。
同様のテスト結果が表示されます。これは、似たような表現の発話でも、CLOVAによって正しく解析されることを表しています。
「(チュートリアル2)コーヒーを2杯お願いします」の説明のとおりに、CLOVAデバイスと対話できることを確認します。
# 次のステップ
これで、チュートリアル2は終わりです。続いてチュートリアル3でマルチターンのスキルを作成してみましょう。