カスタム エンティティ
前のユニットで説明した事前構築済みエンティティでは、多くの一般的な情報タイプについて説明します。 ただし、組織固有のシナリオについて言語の理解が必要とされる状況が発生します。 たとえば、アウトドア用品店のためのコパイロットを構築してほしいという依頼があったとします。 多くの場合、コパイロットではさまざまな種類のアウトドア製品を認識する必要があります。 Outdoor Store Categories と呼ばれるカスタム エンティティを作成できます。 エンティティには、店舗で提供しているさまざまなアウトドア製品を格納できます。 エンティティを使用すると、釣り、スキー、ボートなどのアウトドア製品が入力されたときに、コパイロットは、入力したユーザーを適切な場所に確実に誘導することが可能になります。
[設定] ボタンを選択してから エンティティ タブに移動し、エンティティの追加 を選択することで、カスタム エンティティを作成できます。 カスタム エンティティを作成する場合は、作成するエンティティのタイプを定義する必要があります。
2 種類のエンティティを作成できます。
クローズド リスト: サイズ、部門、場所の一覧などの小さな品目一覧を定義するために使用します。
正規表現 (regex): ID 番号、クレジット カード番号、IP アドレスなど、特定の論理パターンを定義するために使用します。
クローズド リスト エンティティ
クローズ リスト エンティティは、前述したアウトドア用品の会社の例など、顧客とのやり取りの時に役立つ小さな品目一覧を定義する場合に最も役立ちます。 以下の画像では、"Outdoor Store Categories" と呼ばれる、クローズド リストのカスタム エンティティを作成しました。 新しいアウトドア製品カテゴリ名の一覧を追加しました。
ユーザーがチャット セッションを操作する場合は、一覧に定義されている値がシステムによって検索されます。 一覧の項目に固有のトピックを作成した場合、ユーザーはそれらのトピックの 1 つに簡単にアクセスできます。 たとえば、ユーザーが野球について質問がありますと入力した場合、システムは一覧で野球の項目を識別し、構成に基づいて野球のトピックを表示します。
スマート マッチングの使用
コパイロットの使用中、お客様が何かを誤入力したり、エンティティで定義されているのとは多少違った語句を入力したりするのは珍しいことではありません。 たとえば、顧客が野球の代わりにソフトボールと入力することがあります。 どちらのスポーツも同じタイプの用具を使用します。 製品カテゴリでは、ソフトボールは野球と同じとみなす必要があります。 スマート マッチングを使用すると、コパイロットはエンティティに指定された一覧項目に基づいて、あいまいなユーザー入力を容認します。 つまり、ボットは完全一致を検索する必要はありません。 スマート マッチングがオンになると、コパイロットは自動的にスペルミスを自動修正し、「ソフトボール」を「野球」に自動的にマッチングするなど、マッチング ロジックを意味的に展開します。
同意語を使用する
同意語のオプションは、スマート マッチングと同様です。ただし、スマート マッチングのようには自動的ではありません。 同意語は手動で入力します。 また、ロジックを展開して、意味が似ている語やもともと類似していると考えられる語を含めます。 たとえば、スキー、スノーボード、雪靴などのスポーツを、これらがスノー スポーツであるという点に基づいて 1 つのグループにまとめるのは珍しいことではありません。 一覧でこの状況に対応するために、スキーという製品カテゴリにスノーボードと雪靴の両方を同意語として追加できます。 ユーザーが「スノーボード」か「雪靴」のいずれかを入力すると、コパイロットはこれらの語句がスキーに関連付けられたカテゴリであると理解します。 ヨガ などの活動には、ピラティスを追加できます。 スマート マッチングと同意語がシームレスに連携して、コパイロットがさらに洗練されたものになります。
正規表現 (regex) エンティティ
正規表現 (regex) エンティティを使用すると、入力からの情報を一致させて抽出する際に使用できる論理パターンを定義できます。 正規表現エンティティは、ユーザーの入力に対する複雑なパターンの照合や、ユーザーが会話で入力を書式設定またはタイプする方法に特定のバリエーションを許可する必要がある場合に有用です。
たとえば、正規表現エンティティを使用して、追跡 ID、ライセンス番号、クレジット カード番号、IP アドレスなどの項目を、ユーザーがコパイロットに入力した文字列から識別できます。
正規表現エンティティを選択する場合、以下を定義する必要があります。
名前: 正規表現エンティティの名前を定義します。
説明: エンティティの詳細を定義するオプションの説明です。
パターン: テキストの抽出に使用するパターンを定義します。
上の画像では、追跡番号と呼ばれる正規表現エンティティを作成しています。 入力された構文では、追跡番号が 9 桁の数字に始まり、大文字または小文字 1 文字で終わるように指定しています。 (例: 100456789A)
正規表現エンティティは .NET の正規表現構文を使用します。
.NET の正規表現構文の作成に関する詳細については、以下のリンクを使用してください。