Copilot Studio 会話の中でループを実現する「手順に移動」ノードについて|会話内の任意のステップへ移動

今回はCopilot Studioのノード「手順に移動」が非常に便利だったので、メモ。

スポンサーリンク

手順に移動

ノード「手順に移動」は、トピック内の任意のノードに移動することができる機能。

この機能を使うことで、会話の中でループを実現でき、ユーザーへの確認やフィードバックループなどで活用できそう。

今回実現すること

前回構築した「会議の設定」トピックではユーザーに「誰と会議を設定するか」を聞いた後、即時MTGの設定へ進んでいた(※サンプルなのでMTGの設定自体は省略)。

今回はユーザーの入力から情報を抽出した後、「本当にこの人たちでいいですか?」の確認を実現してみる。

構築

まずはユーザーの回答から「日本人の名前」を抽出した後に、「質問する」を追加し、
抽出した人名をユーザーに確認し、回答をブール型の変数に代入する。
※Power Fx式の中身は、抽出した人名をConcatで結合しているだけ。

Concat(Topic.result.structuredOutput,ThisRecord.name, ", ")

続いて「条件」を追加して、
先ほどの質問の結果を条件に設定。
ユーザーが「いいえ」と言ったときのみ、「手順に移動」を追加して、
最初の質問(誰と会議を設定するか)を選んで、
最初の質問からやり直すよう設定する。

以上で構築は完了。

動作確認

会議の設定を依頼して、人物名を入力すると「はい」と「いいえ」がでるようになるので、「いいえ」を選ぶと、
もう一度最初の質問に戻ることができる。

この「手順に移動」を使用することで、ループ処理やgoto文を実現することも可能だし、自律型のエージェントの「Human in the loop」や「フィードバックループ」なども実現できそう。

ただし、乱用するとソースが読みにくくなるので注意。

関連記事

タイトルとURLをコピーしました