スキルの作成、構成およびバージョニング

サイド・メニューで「開発」→「スキル」をクリックしてアクセスするスキル・カタログを使用して、スキルのライフ・サイクルを管理します。スキルの「オプション」メニューから、ほとんどの管理タスクにアクセスできます。

ノート

スキル・カタログで「最新のみ表示」スイッチがオンになっている場合、各スキルの最後に更新されたバージョンのみが表示されます。バージョン値は自由形式であるため、このページでは、最終更新日を使用して最新バージョンが判別されます。

bots-landing.pngの説明が続きます
図bots-landing.pngの説明

最初から作成

スキルは、別のスキルのバージョンをクローニングするか、インポートすることによって作成することも、ここで説明するように、最初から作成することもできます。

  1. サイド・メニューを開くアイコンをクリックしてサイド・メニューを開き、「開発」→「スキル」を選択して、「新規スキル」をクリックします。

  2. 「スキルの作成」ダイアログで、必須フィールドに入力します。

  3. 「プラットフォーム・バージョン」フィールドで、オプションで別のプラットフォーム・バージョンを選択します。

    この設定は、自然言語理解(NLU)エンジンによるインテントの解決方法など、スキルの動作に影響します。デフォルトでは、これは最新のプラットフォーム・バージョンに設定されます。

    特に別のプラットフォーム・バージョンに基づいたスキルのようにクローンを動作させる必要がある場合は、それらのスキルで使用されるプラットフォーム・バージョンを選択します。

    プラットフォーム・バージョンを参照してください。

  4. プラットフォーム・バージョン20.12以上を選択した場合は、「プライマリ言語」フィールドでスキルのデフォルト言語を選択します。

    複数言語対応のスキルを設計する場合は、選択を慎重に検討してください。特に、ネイティブ・サポート言語以外をサポートしようとする場合には、ドロップダウンの「翻訳サービス」セクションまでスクロールし、そこで「英語」を選択する必要があります。

    希望するターゲット言語でのスキル設計の詳細は、言語およびスキルを参照してください。

    ノート

    プラットフォーム・バージョン20.09以下では、プライマリ言語は指定しません。かわりに、翻訳サービスを使用してスキルを設定すると、スキルの主言語が自動的に検出されます。
  5. 「作成」をクリックします。

スキルを作成すると、スキル・カタログにドラフト・モードで表示されます。

クローニング

既存のスキルに似たスキルを作成する場合、または既存のスキルのアーティファクトを再利用する場合は、クローニングによってスキルを作成できます。

スキルのバージョンをクローニングするには:

  1. スキル・カタログから、クローニングするバージョンを探します。

  2. 「オプション」アイコンをクリックし、「クローン」を選択します。

  3. 次のフィールドに特に注意して、ダイアログの指定を完了します:
    • プラットフォーム・バージョン: プラットフォーム・バージョンは、自然言語理解(NLU)エンジンによるインテントの解決方法やネイティブでサポートされる言語など、スキルの動作に影響します。

      特にベース・スキルのようにクローンを動作させる必要がある場合は、ベース・スキルで使用されるプラットフォーム・バージョンを選択します。

      プラットフォーム・バージョンを参照してください。

    • プライマリ言語: (選択したプラットフォーム・バージョンが20.12以上の場合にのみ表示されます。)これにより、スキルのデフォルト言語と、スキルがその言語のネイティブ・サポートを使用するか、翻訳サービスを利用するかの両方が決まります。

      複数言語対応のスキルを設計する場合は、ここで選択を慎重に検討してください。特に、ネイティブ・サポート言語以外をサポートしようとする場合には、ドロップダウンの「翻訳サービス」セクションまでスクロールし、そこで「英語」を選択する必要があります。

      希望するターゲット言語でのスキル設計の詳細は、言語およびスキルを参照してください。

      ノート

      プラットフォーム・バージョン20.09以下では、プライマリ言語は指定しません。かわりに、翻訳サービスを使用してスキルを設定すると、主言語が自動的に検出されます。
ノート

スキルで埋込みコンポーネント・サービスを使用する場合、それらの各サービスのクローンの使用は、埋込みコンポーネント・サービスの件数に追加されます。これにより、インスタンスが埋込みコンポーネント・サービス制限(embedded-custom-component-service-count)を超過すると、デジタル・アシスタントではクローンが作成されません。制限を増やす必要がある場合は、引上げをリクエストできます。詳細は、インフラストラクチャ・コンソールでのサービス制限の表示およびサービス制限の引上げのリクエストを参照してください。スキル・ストアからダウンロードされたスキル内の埋込みコンポーネント・サービスは、カウントされません。

インポートによる作成

別のインスタンスからエクスポートされたスキルのバージョンをインポートすることによって、スキルを作成できます。インポートされたスキルは、ソース・インスタンスで公開済の場合でもドラフト・モードになります。

スキルのバージョンをインポートするには:

  1. スキル・カタログから、「スキルのインポート」をクリックします。

  2. エクスポートされたスキルが含まれているZIPファイルをアップロードします。

  3. デフォルトでは、インポートされたスキルについてはインサイトが無効になっています。インポートされたスキルについてインサイト・レポートをアクティブ化するには、最初に「設定」アイコンをクリックし、次に「インサイトの有効化」を選択します。

ヒント:

バージョンをエクスポートする場合は、エクスポートされたファイルに変更を加えてから、それを同じインスタンスにインポートします。忘れずにバージョンを変更してください。そうしないと、デジタル・アシスタントでインポートできなくなります。
ノート

スキルで埋込みコンポーネント・サービスを使用する場合、それらの各サービスのインポートされたスキルの使用は、埋込みコンポーネント・サービスの件数に追加されます。これにより、インスタンスが埋込みコンポーネント・サービス制限(embedded-custom-component-service-count)を超過すると、デジタル・アシスタントではスキルがインポートされません。制限を増やす必要がある場合は、引上げをリクエストできます。詳細は、インフラストラクチャ・コンソールでのサービス制限の表示およびサービス制限の引上げのリクエストを参照してください。スキル・ストアからダウンロードされたスキル内の埋込みコンポーネント・サービスは、カウントされません。

新しいバージョンの作成

新機能を追加する場合など、ある時点で、スキルの別のバージョンを作成することが必要になる場合があります。

別のバージョンを作成するには:

  1. スキル・カタログから、別のバージョンを作成するバージョンを探します。

  2. 「オプション」アイコンをクリックし、「新規バージョン」を選択します。

  3. 次のフィールドに特に注意して、ダイアログの指定を完了します:
    • プラットフォーム・バージョン: プラットフォーム・バージョンは、自然言語理解(NLU)エンジンによるインテントの解決方法やネイティブでサポートされる言語など、スキルの動作に影響します。

      このバージョンのスキルを以前のバージョンと同様に動作させる必要がある場合は、ベース・スキルで使用されるプラットフォーム・バージョンを選択します。

      プラットフォーム・バージョンを参照してください。

    • プライマリ言語: (選択したプラットフォーム・バージョンが20.12以上の場合にのみ表示されます。)これにより、スキルのデフォルト言語と、スキルがその言語のネイティブ・サポートを使用するか、翻訳サービスを利用するかの両方が決まります。

      複数言語対応のスキルを設計する場合は、ここで選択を慎重に検討してください。特に、ネイティブ・サポート言語以外をサポートしようとする場合には、ドロップダウンの「翻訳サービス」セクションまでスクロールし、そこで「英語」を選択する必要があります。

      希望するターゲット言語でのスキル設計の詳細は、言語およびスキルを参照してください。

      ノート

      プラットフォーム・バージョン20.09以下では、プライマリ言語は指定しません。かわりに、翻訳サービスを使用してスキルを設定すると、主言語が自動的に検出されます。
ノート

スキルで埋込みコンポーネント・サービスを使用する場合、それらの各サービスのバージョンの使用は、埋込みコンポーネント・サービスの件数に追加されます。これにより、インスタンスが埋込みコンポーネント・サービス制限(embedded-custom-component-service-count)を超過すると、デジタル・アシスタントではバージョンが作成されません。制限を増やす必要がある場合は、引上げをリクエストできます。詳細は、インフラストラクチャ・コンソールでのサービス制限の表示およびサービス制限の引上げのリクエストを参照してください。スキル・ストアからダウンロードされたスキル内の埋込みコンポーネント・サービスは、カウントされません。

ダイアログ・モード

スキルを作成する場合、ダイアログ・フローを設計する方法について次の2つのオプションがあります:

  • Visual. You use the Visual Flow Designer to design dialog flows on a canvas with tiles for each state and with the connections between states also represented visually. Variables, parameters, and component properties are defined in specialized editors and dialogs. In addition, the visual editor enables you to create modular flows. This is the default mode for new skills.
  • YAML. You define the framework of the user-skill exchange in a simple markup language that lets you describe a dialog both in terms of what your skill says and what it does. The whole dialog flow definition is defined in a single file.

デジタル・アシスタントで使用するための構成

スキルのバージョンをデジタル・アシスタントで使用できるように準備するには、次の設定を構成します:

  • 起動名: これは、ユーザーがデジタル・アシスタントでスキルを明示的に起動する際に使用する名前です。

    起動名のガイドラインを参照してください。

  • 発話例: これらは、ユーザーがどのような場合にそのスキルを起動したいと考えるかをインテント・エンジンが識別するために役立ちます。発話例には、ユーザーの発話とスキルの一致を向上させるために、起動名も含めることをお薦めします。

    最初のいくつかの発話は、デジタル・アシスタントがようこそ状態およびヘルプ状態についてデフォルトで提供するスキルのカードにも表示されます。

YAMLモードで開発されたスキルの場合、オプションで「開始状態」「ようこそ状態」および「ヘルプ状態」設定を指定できます。開始、ようこそおよびヘルプの各状態を参照してください。(ビジュアル・モードで開発されたスキルの場合、これらの設定は使用できません。かわりに、イベントを使用してこれらの状態を指定します。メイン・フローの組込みイベントを参照してください。)

さらに、「グループ」フィールドを使用して、スキルを他の関連スキルとグループ化できます。これにより、デジタル・アシスタントでのルーティング動作が向上します。スキル・グループの割当ては、デジタル・アシスタント・レベルで変更できます。スキル・グループを参照してください。

これらの設定にアクセスするには:

  1. サイド・メニューを開くアイコンをクリックしてサイド・メニューを開き、「開発」→「スキル」を選択して、スキルを開きます。

  2. スキルの左側のナビゲーションで「設定」のアイコンをクリックし、「デジタル・アシスタント」タブを選択します。

削除

スキルのバージョンを削除するには、その「オプション」アイコンをクリックし、「削除」を選択します。

公開

バージョンの構築が完了したら、公開してロックダウンできます。公開済スキルに対して行うことができる変更は、「構成」タブでカスタム・パラメータ値を変更することのみです。さらに変更を加える場合は、別のバージョンを作成し、そのバージョンで作業する必要があります。

バージョンを公開するには:

  1. スキルにインテントやQ&Aがある場合は、トレーニングされていることを確認します。公開する前にトレーニングしておく必要があります。
  2. スキル・カタログから、公開するバージョンを探します。

  3. 「オプション」アイコンをクリックし、「公開」を選択します。

    スキル・カタログのスキル・バージョンに、公開済であることを示すロック・アイコンが表示されます。

別のインスタンスへのスキルのエクスポート

複数のデジタル・アシスタント・インスタンスがあり、あるインスタンスから別のインスタンスにスキルをコピーする場合、エクスポートおよびインポート・コマンドを使用します:

  1. スキルのエクスポートのインスタンスにログインします。

  2. サイド・メニューを開くアイコンをクリックしてサイド・メニューを開き、「開発」→「スキル」を選択します。

  3. エクスポートするスキルのタイルで、「オプション」メニューを開くアイコンをクリックして「エクスポート」を選択します。

    スキルを含むzipファイルがシステムにダウンロードされます。

  4. スキルのエクスポートのインスタンスにログインします。

  5. サイド・メニューを開くアイコンをクリックしてサイド・メニューを開き、「開発」→「スキル」を選択します。

  6. 「スキルのインポート」をクリックします。

  7. エクスポートされたスキルが含まれているZIPファイルをアップロードします。

  8. デフォルトでは、インポートされたスキルについてはインサイトが無効になっています。インポートされたスキルについてインサイト・レポートをアクティブ化するには、最初に「設定」アイコンをクリックし、次に「インサイトの有効化」を選択します。
ノート

インポートされたスキルは、ソース・インスタンスで公開済の場合でもドラフト・モードになります。

スキルの開発プロセス

スキルを作成して名前を付けたら、開発を開始できます。開発プロセスの概要を次に示します。
  1. インテントの作成—まずインテントを作成します。インテントでは、ユーザーがスキルを使用して実行できる様々なアクションを記述することによって使用例を示します。たとえば、ユーザーがスキルを使用して様々な銀行取引を実行できる場合、CheckBalanceTransferMoneyのようなインテントを作成できます。インテントは、スキルで実行できることを記述するのみでなく、スキルのインテリジェンスの鍵でもあります: 各インテントには、発話と呼ばれる典型的なユーザー発言のセットが関連付けられているため、スキルはインテントを使用することでユーザー入力を認識できます。これらのフレーズは同じ目的を共有しますが、多様でもあるため(たとえば、私の普通預金口座の残高はいくらですか私の当座預金口座にはいくらありますか)、スキルのレジリエンスが高まります。インテントを参照してください。

  2. スキルのトレーニング—スキルがユーザー入力を解析する際にインテントを参照できるようにするには、スキルをトレーニングする必要があります。具体的には、インテントとその発話(まとめてトレーニング・データ)を使用してトレーニングし、ユーザー入力をインテントの1つに解決できるようにする必要があります。スキルをトレーニングすることによって、言語インテリジェンス・フレームワークを活用します。そのアルゴリズムにより、スキルは各インテントに属するサンプル・フレーズのみでなく、類似するフレーズも認識できるようになります。インテントのトレーニングとテストを参照してください。

  3. エンティティの作成—場合によっては、スキルがユーザー・リクエストを完了できるように、コンテキストを提供することが必要になります。いくつかのユーザー・リクエストが同じインテントに解決されることがありますが(たとえば、私の普通預金口座の残高はいくらですか私の当座預金口座にはいくらありますかはどちらもCheckBalanceインテントに解決される)、それにもかかわらず、それらは別のことを要求しています。リクエストを明確にするには、エンティティを追加します。銀行取引スキルの例を使用すると、当座預金および普通預金という値を定義するAccountTypeというエンティティにより、スキルはユーザー・リクエストを解析して適切に応答できるようになります。エンティティを参照してください。

  4. ダイアログ・フローの作成—次に、ダイアログ・フローを作成して、インテリジェンスをユーザーに示すために必要な手段をスキルに提供する必要があります。ダイアログ・フローでは、様々なインテントが解決されるときにスキルがどのように反応するかを記述します。ここでは、スキルがユーザーに話す内容、ユーザーに入力を求める方法およびデータを返す方法を定義します。「ビジュアル・フロー・デザイナ」を参照してください。

  5. カスタム・コンポーネントの統合—この時点で、スキルは入力を認識できますが、それに応答することはできません。スキルのインテリジェンスを機能させるには、コンポーネントを追加する必要があります。スキルは、コンポーネントによってジョブを実行できるようになります。コンポーネントには2つのタイプがあります: ユーザーのメッセージから解決されたインテントの保持からテキストの出力まで様々な機能を実行するOracle提供のものと、口座残高の照会のような特定のスキルに固有のタスクを実行するために自分で作成するものです。スキルへのコンポーネント・パッケージの追加を参照してください。

  6. スキルのテスト—ダイアログ・フローを開始したら、スキルとチャットしてテストできます。

  7. (オプション)ユーザー・メッセージングおよびその他の機能のチャネルへのルーティング—スキルをデジタル・アシスタントに追加しない場合は、1つ以上のチャネルに追加する必要があります。ユーザーは、様々なメッセージング・プラットフォーム、専用のメッセージング・アプリケーションおよびWebページを使用してスキルとチャットします。これらのユーザー・メッセージング・チャネルを1つ以上スキルにルーティングできます。これらがテキストのみであるか、スクロール・カード、UI要素およびイメージをサポートしているかを問わず、スキルはどのチャネルでも同じように適切に動作します。ユーザーに表示されるこれらのチャネル以外にもチャネルがあります: 1つは、スキルを顧客サポート・システムにリンクするもので、もう1つは、スキルに会話の開始を求める外部アプリケーションからの通知をルーティングするものです。

  8. インサイト・レポートのレビュー—スキルを公開したら、インサイト・レポートをレビューして、意図したとおりに顧客がスキルを使用しているかどうかを確認できます。全体的な使用状況メトリックや会話のトレンドから、インテント、その実行パスおよび会話記録の個別ビューまで、これらのレポートでは、スキルがその顧客をどの程度効果的にサポートしているか、およびどこで顧客のタスクの完了を妨げているかについて様々な視点が提供されます。これらのレポートによって、問題領域をすばやく特定できるのみでなく、スキルのインテント解決を向上できるユーザー入力も提示されます。インサイトを参照してください。

作業内容の検証

ダイアログ・フローの定義、インテント、エンティティおよびデジタル・アシスタントを繰り返して処理する際に、バナーの「検証」をクリックして作業内容を確認し、ベスト・プラクティスを適用できます。
analyzer-dialog-flow-line.pngの説明が続きます
図analyzer-dialog-flow-line.pngの説明

スキルについては、表示される「検証結果」ダイアログに、修正が必要なクリティカル・エラーこれは警告アイコンのイメージです。、修正が必要な場所を示す警告これはエラー・アイコンのイメージです。およびヒントこれはヒント・アイコンのイメージです。が表示されます。

これらのメッセージには全般的なものもあれば、ダイアログ・フロー定義のエンティティ、インテントまたは行に関するものもあります。エラー・メッセージではスキルの機能を妨げる問題(ダイアログ・フロー定義での変数参照の誤りなど)が指摘されますが、警告とヒントのメッセージは開発を報告するために使用できます。これらのメッセージは、初めて開発する際にも役立ちますが、別の開発チームによって作成されたスキルを扱う際に特に便利です。また、そのスキルが以前のバージョンのOracle Digital Assistantで開発された場合にはさらに役立ちます。たとえば、アップグレードしようとしているスキルで以前に推奨されていた信頼度しきい値.04が使用されている場合は、かわりに現在のしきい値を推奨するメッセージが表示されます。例:
Skill confidence threshold is set to 0.4. We recommend to set the threshold to at least 0.7 to improve accuracy of intent matching.
スキル・レベルの検証メッセージには、エラー・メッセージ、警告メッセージおよびヒント・メッセージが含まれますが、デジタル・アシスタント・レベルの検証は、そのデジタル・アシスタントに登録されたスキルで共有される発話に関する警告メッセージで構成されます。

例:
The utterance 'Cancel my order' is used in 2 intents: wineSkill, pizzaSkill. Duplicate utterances may cause ambiguity in the model.


これらのメッセージは警告またはヒントでフィルタ処理できます。「結果」ダイアログを非表示にしたり再度開いたりするには、「結果」これは「検証結果の表示」アイコンのイメージです。これらのメッセージは警告またはヒントでフィルタ処理することもできます。をクリックします。

スキルに使用できない名前

次の名前はスキルには使用できません:

  • type
  • version