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 エージェント
前提条件
- 会話のトランスクリプトを表示するには、トランスクリプト ビューアーのセキュリティ ロールが必要です。 管理者のみが トランスクリプト閲覧者のセキュリティ ロールを付与できます。
Power Apps ポータルからボットの会話のトランスクリプトを表示してエクスポートする
Power Apps にサインインします。
サイド ペインで、テーブル を選択し、すべて を選択します。
検索ボックスに、「会話」と入力します。
会話トランスクリプト テーブルを選択します。
会話トランスクリプト テーブルのページが開きます。
上部にあるメニュー バーで、エクスポート>データのエクスポートを選択します。
データがエクスポート用にコンパイルされるまで数分かかります。
Power Apps でエクスポート用のデータを準備するのに数分かかるのを待ってから、エクスポートされたデータをダウンロードする を選択します。
ファイルはブラウザの既定のダウンロード場所に ZIP アーカイブとして保存されます。
会話トランスクリプトを理解する
会話トランスクリプトは、CSV (カンマ区切り値) ファイルです。 以下の表は、会話トランスクリプトでの最も重要なフィールドを示します。
Field | プロパティ | 例 |
---|---|---|
Content |
JSON 形式のトランスクリプト全体 | コンテンツ フィールドを参照してください |
ConversationStartTime |
会話が開始した時刻 (データ ストアに書き込まれたトランスクリプト レコードの時刻ではない) | 2021-04-19T20:39:09Z |
ConversationTranscript |
Dataverse テーブルの行の一意の識別子 | 28eccb77-xxxx-4a63-985f-ffaaadd6f391 |
Metadata |
エージェントID、テナントID、エージェント名を含むJSON | {"BotId": "aaaabbbb-0000-cccc-1111-dddd2222eeee", "AADTenantId": "bbbbcccc-1111-dddd-2222-eeee3333ffff", "BotName": "Test Bot"} |
Name |
ConversationId の後に BotId を続け、その後に batch number を続けることで作成されるカスタム行の名前です。 バッチ番号は、会話に複数の分析セッションがある場合の順序を示します。 クラシック ボットにはバッチ番号は含まれません。 |
8YYe8iif49ZKkycZLe7HUO-o_198eca5f-xxxx-4ae6-8c08-835d884a8688_0 |
Bot_ConversationTranscript |
エージェントの ID | aaaabbbb-0000-cccc-1111-dddd2222eeee |
Created on |
トランスクリプト レコードが作成された日時 | 2021-04-20T02:40:13Z |
コンテンツ フィールド
Content
フィールドは、ユーザーがエージェントと行ったすべてのアクティビティの生のログです。 一般的な活動 タイプには、メッセージ と イベント があります。
- メッセージ活動は、会話内に表示されるコンテンツを表します。 メッセージ 活動には、テキスト、スピーチ、インタラクティブカード、バイナリまたは不明な添付ファイルが含まれる場合があります。
- イベント アクティビティは、クライアントまたはチャネルからエージェントにプログラム情報を伝達します。
活動タイプの詳細については、Bot Framework 活動スキーマ を参照してください。
次の表では、コンテンツ JSON でのいくつかの主要なフィールドについて説明します:
Key | プロパティ |
---|---|
ID |
活動オブジェクトの一意の GUID |
valueType |
アクティビティに保存される値のタイプです。アクティビティが提供する情報を指定します (一般的なアクティビティ値のタイプ) |
timestamp |
活動がエポック形式で生成されたときのタイム スタンプ (UTC 時間で 1970 年 1 月 1 日午前 0 時からの秒数) |
type |
活動のタイプ; たとえば、message 、event 、または trace |
replyToId |
現在の活動が応答している活動の ID |
from |
フィールド id と role が含まれています:
id は、キャンバスがユーザーの一意の ID を渡す場合、エージェントとインタラクトしているアクティブユーザーの数を計算するために使用できます。 キャンバスが ID を渡さない場合、会話ごとに一意の ID が渡されます。
セキュリティとプライバシーのため、ID はトランスクリプトに書き込まれる前にハッシュされます。 |
channelId |
アクティビティの発生元となるチャネルのID。例: directline 、 msteams 、または facebook |
textFormat |
テキストのフォーマット; たとえば、plain 、または markdown |
attachments |
活動に関連付けられた動的なリッチ データ; たとえば、AdaptiveCards 、HeroCards 、または Carousel data |
text |
message 活動のテキスト |
value |
値タイプに基づく活動に固有のフィールド; このフィールドには、ほとんどの有用な情報が存在します |
channeldata |
次のチャネル データが含まれています:
|
name |
イベント活動の名前; 例えば、SetPVAContext |
一般的な活動値タイプ
活動値のタイプ | プロパティ |
---|---|
ConversationInfo |
Copilot Studio テスト ウィンドウ (isDesignMode ) および会話のロケールからの会話がからのものであるかどうか |
CSATSurveyRequest |
ユーザーには、顧客満足度 (CSAT) 調査が表示されます |
CSATSurveyResponse |
ユーザーは CSAT 調査に回答します |
DialogRedirect |
ユーザーは別のトピックにリダイレクトされます |
ImpliedSuccess |
ユーザーがトピックの質問ノードに到達しました。ここで、条件の 1 つが "確認済みの成功" CSAT システムトピック (クラシック ボット のみ) を指しているか、会話の終了 システムトピックを呼び出しています |
IntentRecognition |
ユーザーがトピックをトリガーしました |
PRRSurveyRequest |
ユーザーは、トピックが 会話の終わり トピックからの質問に回答したかどうかを尋ねられました |
PRRSurveyResponse |
トピックが 会話の終わり トピックからの質問に回答したかどうかに対するユーザーの応答 |
SessionInfo |
タイプ (unengaged または engaged )、結果 (Escalated 、Resolved 、Abandon )、セッションのターン カウント |
VariableAssignment |
値が変数に割り当てられます |
会話トランスクリプトからカスタム Power BI レポートをビルドする
会話のトランスクリプトからカスタム レポートを作成するための便利な方法は、処理する必要があるメッセージの数を調べることです。
軽量アプリ
Power BI を Power BI データフローとともに Dataverse に接続します。 他のインフラストラクチャは必要ありません。更新するたびにすべてのレコードが Dataverse から取得されます。
長所 | デメリット |
---|---|
実装が簡単。 | トランスクリプトが増えると、更新時間が長くなる可能性があります。
Dataverse での高いストレージ コスト。 |
標準 Azure Data Lake Storage アプローチ
Dataverse データを Azure Data Lake Storage にエクスポートします。 この方法では、Azure Data Lake Storage アカウントが必要ですが、他の Azure インフラストラクチャは必要ありません。
トランスクリプトでデータを準備するための Power Platform データフローとデータを構造化された形式に抽出します。
Power BI は、データフローからのデータを更新します。 Power Platform と Power BI は、すべてのコンピューティング インフラストラクチャを管理します。 更新のたびに、特定の日のレコードが Dataverse から取得されます。
長所 | デメリット |
---|---|
Azure Data Lake Storage での低いストレージ コスト。
適度に単純な実装。 Azure Compute は必要ありません。 |
トランスクリプトが毎日増えると、更新時間が長くなる可能性があります。 |
Azure Data Lake Storage + Synapse アプローチ
標準 Azure Data Lake Storage アプローチのデータ サイズでは、更新が遅くなったり、その他の操作上の問題が発生したりする可能性があります。 その場合、Azure Synapse Analytics を使用して Power BI に統合できます。
長所 | デメリット |
---|---|
更新時間は一定です。
適度に単純な実装。 Azure Data Lake Storage での低いストレージ コスト。 |
Azure Synapse のコストを計算します。 |
既定の保持期間の変更
Power Apps の一括削除ジョブは、30 日以上前のエージェントのトランスクリプトを自動的に削除します。 トランスクリプトをより長く保持するには、既存のジョブをキャンセルして、別のスケジュールで実行される新しいジョブを作成します。
既存の一括削除ジョブをキャンセルする
Power Apps で 設定>高度な設定 を選択します。
Dynamics 365 ポータルが新しいタブで開きます。
設定の横にあるキャレットを選択してから、システムの下で、データ管理を選択します。
レコードの一括削除を選択します。
ビュー リストで、定期的な一括削除システム ジョブを選択します。
1 か月以上前の会話のトランスクリプト レコードを一括削除するジョブを選択します。
その他のアクション リストで、キャンセルを選択します。
新しい一括削除ジョブの作成
一括削除ウィザードを開始するには、新規 を選択し、ウィザードで 次へ を選択します。
次の検索条件を設定します。
- 検索リストで、ConversationTranscripts を選択します。
-
ConversationStartTime を X か月以上前に設定して 「12」 にします。
この設定により、12 か月間トランスクリプトが維持されます。 必要に応じて、別の比較と値を選択してください。 - SchemaType を選択し、equals のままにして、「powervirtualagents」と入力します。
次へ を選択します。
ジョブの名前を入力し、毎回このジョブを実行するを選択して 1 と入力します。 ジョブを毎日実行したくない場合は、別のスケジュールを選択してください。
次へ を選択し、続いて 送信 を選択します。
ConversationTranscript Power Apps テーブルに自分の会話記録が表示されないのはなぜですか?
管理者は、トランスクリプトの保存を Dataverse に設定することができます。 トランスクリプトの保存方法やアクセス管理の詳細については、トランスクリプトへのアクセスを管理するをご覧ください。
会話の記録を最大限に活用するためのヒント
変数を使用して、エージェント コンテンツ またはエージェント ユーザーに関連するデータを保存できます。 会話トランスクリプトから変数とその値を解析すると、変数でデータをフィルタリングまたはスライスできます。
会話のトランスクリプトは、ID のみでコンテンツを参照することができます。 たとえば、Redirect ノードでは、宛先トピックは ID によってのみ参照されます。 このトピックの名前を取得するには、エージェント コンテンツでその ID を検索します。