トピック間で変数を再利用する

完了

既定では、変数の値は、その変数が作成されたトピックでのみ使用できます。 たとえば、「天気を確認する」トピックで変数 UserCity を作成する場合、「天気を確認する」トピックにはメッセージ ノードの品目のみに含めることができます。 これらは、トピック (制限されたスコープ)変数と呼ばれます。 ただし、複数のトピックで同じ値を使用する場合もあります。 会話が複数のトピックにまたがる場合、コパイロットは変数コンテキストを記憶できます。 たとえば、ウェルカム トピックでは、顧客の名前とメールを質問できます。 会話が予定の予約トピックなどの別のトピックに移動する際、コパイロットにお客様の名前やメール アドレスを記憶してほしい場合があります。 Microsoft Copilot Studio では、これらの変数をコパイロット変数と呼んでいます。 これらは、コパイロット内のいずれかのトピックによってアクセスできます。

コパイロット変数は、現在のチャット セッション中に適用されます。 これらは、1つの顧客チャット セッションから別の顧客チャット セッションに受け継ぐことはできません。 コパイロット変数として扱う必要がある変数を指定して、それらをトピック レベルの変数と区別できます。

コパイロット変数の作成

変数をコパイロット変数として定義するには、変数を作成キャンバスで開きます。 使用したい変数を格納している 質問する ノードを開きます。 変数のプロパティ ペインの 利用状況 で、グローバル (どのトピックでもアクセス可能) を選択します。 変数名には、トピックレベルの変数と区別するために、コパイロットのプレフィックス文字列が付けられます。

コパイロット変数プロパティのスクリーンショット。

たとえば、変数 UserNameGlobal.UserName として表示されているとします。 変数をコパイロット変数に変換する場合は、変数名がすべてのトピックで一意であることを確認してください。 名前の競合が発生した場合は、変更を保存する前に変数の名前を変更する必要があります。

詳細については、「コパイロット内のトピックでグローバル変数を使用する」を参照してください。

コパイロット変数の設定

コパイロット変数を作成するとすべてのトピックで使用できるようになります。 メッセージまたは質問ノードの操作中に、{x} ボタンを選択します。 これにより、このトピックで使用できるすべての変数の一覧が表示されます。 変数はアルファベット順に並べ替えられます。すべてのコパイロット変数が「コパイロット」で始まるため、[変数] メニューでグループ化されていることがわかります。

コパイロット変数設定のスクリーンショット。

条件ノード、フロー アクション ノード、またはスキル ノードを使用する際は、そこで使用可能なコパイロット変数も表示されます。

コパイロット変数の管理

複数のトピックで使用するコパイロット変数を作成したら、その変数がどこで使用されるかを理解する必要があります。 変数が最初に定義された場所 (ソース) およびその変数を使用している他のトピックを簡単に確認できます。 これは、新しいコパイロットで作業を行っている場合や、複数の変数と複雑なトピック分岐がある場合に役立ちます。

変数のプロパティ ペインで使用できる主な 2 つの項目は次のとおりです。

  • 参照: 変数が最初に作成されたノードに移動します。

  • 使用者: 変数が使用されているすべてのトピックを表示して、そのトピックとノードに直接移動できるようにします。

ソースのスクリーンショット。コパイロット変数の詳細で使用されます。

外部ソースからのコパイロット変数の値の設定

外部ソースを使用して初期化するコパイロット変数を設定できます。 これにより、コパイロットは一部のコンテキストで会話を開始できます。

たとえば、顧客が Web サイトからチャットを開始するとします。 ユーザーが Web サイトにログインしている場合は、顧客の名前は既にわかっています。 会話を開始する前に、その情報をコパイロットに渡すことで、顧客に再度名前を尋ねることなく、顧客とよりインテリジェントな会話を行うことができます。

変数は、その値を外部ソースから取得するよう指定できます。 変数プロパティ ペインを開き、[使用状況] セクションで外部ソースで値を設定できますボックスを選択します。

外部ソースのスクリーンショット。ここでは値の設定を指定できます。

コパイロット変数の操作の詳細については、「トピック間で変数を再利用する」を参照してください。