次の方法で共有


Power Appsからダウンロードした会話のトランスクリプトを理解する

Power Apps と Copilot Studio の両方で、エージェントとの顧客との対話のトランスクリプトを表示、エクスポート、ダウンロードできます。 各アプリがエクスポートする情報はわずかに異なります。

重要

環境作成者 ロール を持つ作成者は、トランスクリプトに自動的にアクセスすることはできません。

この記事では、Power Appsで会話のトランスクリプトをダウンロードし、それらを使用してPower BIでレポートを作成する方法について説明します。 Copilot Studio でトランスクリプトを直接ダウンロードするには、「 Copilot Studio で会話トランスクリプトをダウンロードするを参照してください。

既定では、Power Appsは過去 30 日間の会話トランスクリプトをダウンロードします。 保持期間は変更できます。

注意

SharePointをナレッジ ソースとして使用し、機密データを含むドキュメントを使用するエージェントの応答は、会話のトランスクリプトには含まれません。

会話トランスクリプトは、次の目的では作成されません。

  • Microsoft Dataverse for Teams 環境
  • Dataverse 開発環境
  • Microsoft 365 Copilot エージェント

前提条件

  • 会話のトランスクリプトを表示するには、 Bot Transcript Viewer セキュリティ ロールが必要です。 Bot Transcript Viewer のセキュリティ ロールを付与できるのは管理者だけです。

Power Apps ポータルから会話のトランスクリプトを表示およびエクスポートする

  1. Power Apps にサインインします。

  2. サイド ペインで、テーブル を選択し、すべて を選択します。

    Tablesノードのスクリーンショットで「All」を選択しています。

  3. 検索ボックスに、「会話」と入力します。

  4. 会話トランスクリプト テーブルを選択します。

    会話トランスクリプト テーブルのページが開きます。

  5. 上部にあるメニュー バーで、エクスポートエクスポート データを選択します。

    エクスポート用のデータをまとめるのに数分かかります。

    データのエクスポート オプションを含むエクスポート メニューを示すスクリーンショット。

  6. Power Appsがエクスポート用にデータを準備するまで数分待ってから、 エクスポートされたデータのダウンロードを選択します。

    ファイルはブラウザの既定のダウンロード場所に ZIP アーカイブとして保存されます。

会話トランスクリプトを理解する

会話の書き起こしはDataverseのテーブルとして存在し、CSV(カンマ区切られた値)ファイルとしてダウンロードできます。 システムがいつどのように会話の書き起こしに情報を記録するかを決定する論理は以下の通りです。

  • システムは30分間の非活動後に会話を書き起こし記録に保存します。 非活動時間後に会話が再開されると、システムは新しいアクティビティを同じ 値の新しいレコードに保存しますが、 値も変わります。
  • テレフォニーチャンネルに公開されたエージェントの場合、会話終了イベントの3分後に会話がタイムアウトします。
  • 各レコードにはトランスクリプト( 列)の最大容量が1MBです。 記録がこの上限を超えると、システムは記録を複数のレコードに分割し、すべて同じ ・ 値を持ちますが、 値は異なります。
  • トランスクリプトを 統合 するには、同じ と 値のレコードをすべて取り、 順にソートしてください。

以下の表は、会話トランスクリプトでの最も重要なフィールドを示します。

Field プロパティ
Content JSON 形式のトランスクリプト全体 コンテンツ フィールドを参照してください
ConversationStartTime 会話が開始した時刻 (データ ストアに書き込まれたトランスクリプト レコードの時刻ではない) 2021-04-19T20:39:09Z
ConversationTranscript Dataverse テーブルの行の一意の識別子 28eccb77-xxxx-4a63-985f-ffaaadd6f391
Metadata エージェントID、テナントID、エージェント名、バッチIDを含むJSONです {"BotId": "aaaabbbb-0000-cccc-1111-dddd2222eeee", "AADTenantId": "bbbbcccc-1111-dddd-2222-eeee3333ffff", "BotName": "Test Bot", "BatchId":2}
Name 作成されたカスタム行の名前は以下です 8YYe8iif49ZKkycZLe7HUO_198eca5f-1145-4ae6-8c08-835d884a8688
Bot_ConversationTranscript エージェントの ID aaaabbbb-0000-cccc-1111-dddd2222eeee
Created on トランスクリプト レコードが作成された日時 2021-04-20T02:40:13Z

コンテンツ フィールド

フィールドは、ユーザーがエージェントと行ったすべてのアクティビティの生のログです。 一般的な活動 タイプには、メッセージ と イベント があります。

  • メッセージ活動は、会話内に表示されるコンテンツを表します。 メッセージ 活動には、テキスト、スピーチ、インタラクティブカード、バイナリまたは不明な添付ファイルが含まれる場合があります。
  • イベント アクティビティは、クライアントまたはチャネルからエージェントにプログラム情報を伝達します。

活動タイプの詳細については、Bot Framework の活動スキーマを参照してください。

次の表では、コンテンツ JSON でのいくつかの主要なフィールドについて説明します:

プロパティ
ID 活動オブジェクトの一意の GUID
valueType アクティビティに保存される値のタイプです。アクティビティが提供する情報を指定します (一般的なアクティビティ値のタイプ)
timestamp 活動がエポック形式で生成されたときのタイム スタンプ (UTC 時間で 1970 年 1 月 1 日午前 0 時からの秒数)
type 活動のタイプ; たとえば、、、または
replyToId 現在の活動が応答している活動の ID
from フィールド と が含まれています:
  • - 呼び出し元の ID
  • - 0 または 1 を保持します
    • 0 - 活動はエージェントから来ています
    • 1 - 活動はエージェントと対話しているユーザーから来ています
注: は、キャンバスがユーザーの一意の ID を渡す場合、エージェントとインタラクトしているアクティブユーザーの数を計算するために使用できます。 キャンバスが ID を渡さない場合、会話ごとに一意の ID が渡されます。 セキュリティとプライバシーのために、システムはIDを書き起こし前にハッシュ化します。
channelId アクティビティの発生元となるチャネルのID。例: 、 、または
textFormat テキストのフォーマット; たとえば、、または
attachments 活動に関連付けられた動的なリッチ データ; たとえば、、、または
text 活動のテキスト
value 値タイプに基づく活動に固有のフィールド; このフィールドには、ほとんどの有用な情報が存在します
channeldata 次のチャネル データが含まれています:
  • メッセージに対して:
    • DialogTraceDetail
    • DialogErrorDetail
    • (変数に割り当てられた値が含まれます)
    • CurrentMessageDetail
  • イベントに対して:
    • cci_trace_id
    • traceHistory
    • enableDiagnostics
    • clientTimestamp
    • clientActivityId
name イベント活動の名前; 例えば、

一般的な活動値タイプ

活動値のタイプ プロパティ
ConversationInfo 会話が Copilot Studio のテスト ウィンドウ (isDesignMode) と会話のロケールからのものかどうか
CSATSurveyRequest ユーザーには、顧客満足度 (CSAT) 調査が表示されます
CSATSurveyResponse ユーザーは CSAT 調査に回答します
DialogRedirect ユーザーは別のトピックにリダイレクトされます
ImpliedSuccess ユーザーがトピックの質問ノードに到達しました。条件の 1 つが Confirmed Success CSAT システム トピック (クラシック ボットのみ) を指しているか、 会話の終了 システム トピックを呼び出しました
IntentRecognition ユーザーがトピックをトリガーしました
PRRSurveyRequest ユーザーは、トピックが 会話の終わり トピックからの質問に回答したかどうかを尋ねられました
PRRSurveyResponse トピックが 会話の終わり トピックからの質問に回答したかどうかに対するユーザーの応答
SessionInfo 種類( または )、結果(、 、 )、セッション開始・終了時間(、 )、そしてセッションのターン数
VariableAssignment 値が変数に割り当てられます

拡張トランスクリプト

エージェントはノードレベルのデータを含む強化トランスクリプトを生成するように設定できます。 このデータは、トピック内の会話の流れを追跡するのに役立ちます。 例えば、注文の管理 トピックでは、ユーザーは新しい注文を送信するか、既存の注文を取得するかを選択できます。 ノードレベルのデータにより、これらのオプション全体でユーザーの行動を分析できます。

拡張トランスクリプトをオンにする

  1. エージェントを開きます。

  2. 設定詳細の順に移動します。

  3. 「トランスクリプトを強調」を選択し、その後「トランスクリプトにノードレベルの詳細を含める」をオンにします。

拡張トランスクリプト設定ページを示すスクリーンショット。

ノードレベルのデータ

強化トランスクリプトをオンにすると、トピックが呼び出す各ノードごとに アクティビティタイプが記録されます。 次の表で、 アクティビティ値の主要フィールドを説明します。

プロパティ
nodeID ノード識別子
nodeType ノードの種類 (例えば、、または )
startTime ノードが呼び出されたときのタイムスタンプ
endTime ノードの実行が完了したときのタイムスタンプ
topicDisplayName ノードを呼び出すトピック

カスタム分析

カスタム変数に基づいて会話をフィルター処理するなど、一部のシナリオでは分析にカスタム アプローチが必要です。 カスタム分析ソリューションを構築するために、お客様は生のトランスクリプトをデータ パイプラインに取り込んだり、Copilot Studio Kit などのアドオンを使用したりできます。

Copilot Studio Kit の Conversation KPI ソリューションは、トランスクリプトを自動的に解析し、集計データを Dataverse テーブルに設定します。

既定の保持期間の変更

Power Apps一括削除ジョブでは、30 日より前のエージェント トランスクリプトが自動的に削除されます。 トランスクリプトをより長く保持するには、既存のジョブをキャンセルして、別のスケジュールで実行される新しいジョブを作成します。

既存の一括削除ジョブをキャンセルする

  1. Power Appsで、Settings>Advanced 設定 を選択します。

    Dynamics 365 ポータルが新しいタブで開きます。

    詳細設定が強調表示された [Power Apps設定] メニューのスクリーンショット。

  2. 設定の横にあるキャレットを選択してください。 [System で、データ管理 を選択します。

    データ管理が強調表示された [設定] メニューのスクリーンショット。

  3. レコードの一括削除を選択します。

  4. ビュー リストで、定期的な一括削除システム ジョブを選択します。

    定期的な一括削除ジョブのリストのスクリーンショット。

  5. 1 か月以上前の会話のトランスクリプト レコードを一括削除するジョブを選択します。

    最初のジョブが強調表示された一括削除ジョブのリストのスクリーンショット。

  6. その他のアクション リストで、キャンセルを選択します。

    キャンセルが強調表示されたその他のアクション リストのスクリーンショット。

新しい一括削除ジョブの作成

  1. 「 新規 」を選択して一括削除ウィザードを起動してください。 ウィザードで 「次」を選択します。

  2. 次の検索条件を設定します。

    • 検索リストで、ConversationTranscripts を選択します。
    • ConversationStartTime を X か月以上前に設定して 「12」 にします。
      この設定により、12 か月間トランスクリプトが維持されます。 もし望むなら、別の比較や価値を選んでください。
    • SchemaTypeを選択し、等しい値を保持し、「powervirtualagents」と入力します。

    一括削除ジョブ検索条件設定のスクリーンショット。

  3. 次へ を選択します。

  4. ジョブの名前を入力し、毎回このジョブを実行するを選択して 1 と入力します。 ジョブを毎日実行したくない場合は、別のスケジュールを選択してください。

    一括削除ジョブ名および実行設定のスクリーンショット。

  5. 次へ を選択し、続いて 送信 を選択します。

ConversationTranscript Power Apps テーブルに会話のトランスクリプトが表示されないのはなぜですか?

管理者は、トランスクリプトの保存を Dataverse に設定することができます。 トランスクリプトの保存方法やアクセス管理の詳細については、「 Control transcript access」をご覧ください。

重要

開発者環境に展開されたエージェントにはトランスクリプトは保存されません。

会話の記録を最大限に活用するためのヒント

変数を使ってエージェントのコンテンツやユーザーに関連するデータを保存 しましょう。 会話の書き起こしから変数とその値を解析することで、変数によってデータをフィルタリングまたはスライスすることができます。

会話のトランスクリプトは、ID のみでコンテンツを参照することができます。 たとえば、Redirect ノードでは、宛先トピックは ID によってのみ参照されます。 このトピックの名前を取得するには、エージェント コンテンツでその ID を検索します。