web
You’re offline. This is a read only version of the page.
close
Skip to main content

Announcements

News and Announcements icon
Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Copilot Studio / 「エスカレーションする」フローで会話内容や要...
Copilot Studio
Suggested Answer

「エスカレーションする」フローで会話内容や要約を取得する方法

(0) ShareShare
ReportReport
Posted on by
CopilotでFAQエージェントを作っています。
エージェント自体は作れたのですが、回答がニーズに満たせず人にエスカレーションするようなフローを作ろうとしています。
トピックで「エスカレートする」というのがあるので、そちらを使おうとしていますが、以下に課題があり実装に困難を要しています。
以下を達成させるための方法があればご教示いただければ幸いです。
 
  • これまでの会話内容を取得できない
  • これまでの会話内容をもって要約を生成し変数に追加できない。
Categories:
I have the same question (0)
  • Suggested answer
    Assisted by AI
    Sam_Fawzi Profile Picture
    967 Super User 2026 Season 1 on at

    ※ 以下の日本語は AI による翻訳です。原文(英語)は下部に記載しています。誤訳がありましたらご指摘ください。

    (The Japanese below was translated with AI assistance. The English original follows.)

     
     

    結論から申し上げると、Copilot Studio には「実行中の会話全体」を保持するシステム変数は現時点でも存在しません。System.Activity.Text は現在のターンのみで、Dataverse に保存される会話トランスクリプトはセッション終了後の書き込みなので、エスカレーション処理中に同一セッションを読み取ろうとしても間に合いません。設定漏れではなくプラットフォーム側の制約なので、履歴はご自身で用意する必要があります。

     

    推奨: オーケストレーターに履歴を書き出させる(生成オーケストレーション有効時)

     

    1. 新しいトピックを作成(例: 会話履歴を保存

    2. 入力変数を追加(例: conversationHistory、文字列)

    3. その入力変数の説明欄に、そのまま指示文を書きます。例:「これまでの会話全体を『ユーザー: … / エージェント: …』の形式で出力してください。」— オーケストレーターは入力変数の説明を読んで何を渡すか判断するため、説明欄が実質プロンプトとして機能します

    4. 「追加設定」で**「ユーザーに確認する (Should prompt user)」のチェックを外す**(外さないとユーザーに入力を求めてしまいます)

    5. 「エスカレートする」トピック側に**「意図を認識する (Recognize intent)」ノード**を追加し、テキストとして 会話履歴を保存 を渡します。オーケストレーターがこのトピックを呼び出し、変数が埋まります



    6.  
    7.  
     

    ご質問の 2 点目(要約)は、上記 3 の説明文を要約指示に変えるだけで 1 ステップで完結します。例:「これまでの会話を日本語で 3 点以内に要約し、①ユーザーの問い合わせ内容 ②エージェントが提示した回答 ③未解決の論点 を含めてください。」

     

    出力形式を厳密に固定したい場合は、生の履歴を取得したうえでプロンプト (AI Builder プロンプト) ノードに渡し、出力をグローバル変数に格納してからフローに渡す構成のほうが安定します。Power Automate 側の AI Builder アクションで要約する形でも構いません(エージェントは生テキストを渡すだけになり、トピックがシンプルになります)。

     

    なお、この履歴はオーケストレーターがコンテキスト ウィンドウから再構成したもので、逐語の記録ではありません。有人対応への引き継ぎやチケットへの添付には十分ですが、監査・コンプライアンス目的の記録用途には使えません。

     

    実運用で踏みやすい点

     

    • 会話を転送 (Transfer conversation) ノードを使う場合、要約生成とフロー呼び出しは転送ノードより前に配置してください。転送後はエージェント側のターンが終了します

    • Omnichannel / Dynamics 365 Customer Service に引き継ぐ構成であれば、会話履歴と変数はハンドオフ時に自動的に渡ります。自作は不要です

    • SharePoint をナレッジ ソースとした回答は Dataverse の会話トランスクリプトに含まれません(公式ドキュメントに明記あり)。FAQ エージェントで SharePoint を使っている場合、後追いでトランスクリプトから復元しようとすると回答部分が欠落します

    • エスカレーション時は ConversationOutcomeEscalated に設定しておかないと、分析上 Abandoned として計上されます



    •  
    •  
     

    なお、この方法は生成オーケストレーションが有効な場合の前提です。クラシック オーケストレーションをお使いの場合は成立しないため、その点だけ教えていただけますか。

     

    English original

     

    Short answer: there is still no system variable that holds the full in-progress conversation. System.Activity.Text covers the current turn only, and the conversation transcript written to Dataverse is committed after the session ends, so trying to read the same session during escalation won't work. This is a platform limitation rather than something you've misconfigured, so you have to build the history yourself.

     

    Recommended: have the orchestrator dump the history for you (requires generative orchestration)

     

    1. Create a new topic (e.g. Save Conversation History)

    2. Add an input variable (e.g. conversationHistory, string)

    3. Put the instruction directly in that input variable's description, for example: "Entire conversation history in the format 'User: … / Agent: …'." The orchestrator reads input variable descriptions to decide what to pass in, so the description functions as the prompt

    4. Under Additional settings, uncheck "Should prompt user" — otherwise it will ask the user for input

    5. In the Escalate topic, add a Recognize intent node and pass Save Conversation History as the text. The orchestrator invokes the topic and the variable gets populated



    6.  
    7.  
     

    Your second question (the summary) collapses into one step: change the description in step 3 into a summarization instruction, e.g. "Summarize the conversation in Japanese in three points or fewer, covering (1) the user's question, (2) the answers the agent gave, and (3) what remains unresolved."

     

    If you need the output format locked down, capture the raw history and pass it to a Prompt (AI Builder prompt) node, store the output in a global variable, then hand it to the flow. Summarizing on the Power Automate side with an AI Builder action works equally well and keeps the topic simpler, since the agent just passes raw text.

     

    One caveat: this history is reconstructed by the orchestrator from its context window, so it is best-effort, not a verbatim record. Fine for handing context to a human agent or attaching to a ticket, not suitable as an audit or compliance record.

     

    Things that bite in production

     

    • If you use the Transfer conversation node, place the summarization and flow call before the transfer node — the agent's turn ends after the transfer

    • If you're handing off to Omnichannel / Dynamics 365 Customer Service, the conversation history and variables transfer automatically. Don't rebuild it

    • Answers sourced from SharePoint knowledge are not included in Dataverse conversation transcripts (documented). If your FAQ agent uses SharePoint, reconstructing after the fact will be missing the agent's answers

    • Set ConversationOutcome to Escalated on escalation, or analytics will count the session as Abandoned



    •  
    •  
     

    This assumes generative orchestration is enabled. It doesn't hold on classic orchestration, so could you confirm which mode you're on?

     

    参考 / References

     

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Season of Sharing Community Challenge Winners!

Congratulations to our community stars!

Kudos to our 2025 Community Spotlight Honorees

Expanding mentorship, skilling, and AI innovation

Congratulations to the June Top 10 Community Leaders!

These are the community rock stars!

Leaderboard > Copilot Studio

#1
sannavajjala87 Profile Picture

sannavajjala87 140 Super User 2026 Season 1

#2
11manish Profile Picture

11manish 130

#3
Valantis Profile Picture

Valantis 119

Last 30 days Overall leaderboard