多くの場合、複雑なダイアログでは複数の会話トピックが関与します。たとえば、ピザの配達エージェントの場合、料理の注文、顧客情報、確認という別個のトピックが考えられます。各トピックでは、エージェントがエンドユーザーから関連する情報を取得するため、複数の会話ターンを実行する必要があります。
フローは、これらのトピックと、関連する会話パスを定義するために使用されます。すべてのエージェントには、デフォルトの開始フローと呼ばれるフローが 1 つあります。単純なエージェントであれば、このフローのみで十分でしょう。より複雑なエージェントでは追加のフローが必要になる場合があります。さまざまな開発チームのメンバーに、これらのフローの構築と保守を担当させることができます。たとえば、ピザの配達エージェントのフローは次のようになります。Dialogflow CX のフローは、Dialogflow ES メガ エージェントのサブエージェントと同様の目的で機能します。フローを使用すると会話をより適切に制御できます。追加のコストは発生しません。
デフォルトの開始フロー
エージェントを作成すると、デフォルトの開始フローが自動的に作成されます。単純なエージェントの場合は、このフローを唯一のフローとして使用できます。より複雑なエージェントの場合は、フローをさらに追加して、デフォルトの開始フローを会話へのシンプルなエントリ ポイントとして利用できます。
API を使用する場合、次のフロー ID を使用してデフォルトの開始フローを参照できます。
00000000-0000-0000-0000-000000000000
フローのスタートページ
各フローには、コンソールに Start という名前の特別なページがあります。コンソールでフローを選択すると、スタートページがグラフ上のノードとして表示されます。フローが最初にアクティブになると、このページが現在のアクティブなページになります。
スタートページには、通常のページのようなパラメータやレスポンス メッセージがありません。ただし、次のいずれかの方法でメッセージを送信できます。
API を使用する場合、次のページ ID でフローのスタートページを参照できます。
START_PAGE
フローの作成
フローを作成するには:
コンソール
- Dialogflow CX Console を開きます。
- Google Cloud プロジェクトを選択します。
- エージェントを選択します。
- [Flows] セクションの追加 add ボタンをクリックします。
- [Create flow] を選択します。
- フローの表示名を入力します。
- 作成したフローをクリックします。
API
Flow
型の create
メソッドをご覧ください。
フロー リファレンスのプロトコルとバージョンを選択:
プロトコル | V3 | V3beta1 |
---|---|---|
REST | フローリソース | フローリソース |
RPC | フロー インターフェース | フロー インターフェース |
C++ | FlowsClient | 利用できません |
C# | FlowsClient | 利用できません |
Go | FlowsClient | 利用できません |
Java | FlowsClient | FlowsClient |
Node.js | FlowsClient | FlowsClient |
PHP | 提供なし | 利用できません |
Python | FlowsClient | FlowsClient |
Ruby | 提供なし | 利用できません |
フローデータ
フローのデータにアクセスするには:
コンソール
- Dialogflow CX Console を開きます。
- エージェント用の Google Cloud プロジェクトを選択します。
- リストでエージェントを見つけます。
- エージェントの表示名をクリックします。
- [Flows] セクションでフローをクリックします。
- フローのページが [Pages] セクションに入力されます。ページの編集については、ページガイドをご覧ください。
- グラフ上のフローをクリックします。
- フロー編集パネルが表示されます。このパネルから、追加のフローデータを閲覧、編集できます。
- [保存] をクリックして変更を保存します。
API
フローについては、Flow
タイプの get
と patch/update
をご覧ください。
フロー リファレンスのプロトコルとバージョンを選択:
プロトコル | V3 | V3beta1 |
---|---|---|
REST | フローリソース | フローリソース |
RPC | フロー インターフェース | フロー インターフェース |
C++ | FlowsClient | 利用できません |
C# | FlowsClient | 利用できません |
Go | FlowsClient | 利用できません |
Java | FlowsClient | FlowsClient |
Node.js | FlowsClient | FlowsClient |
PHP | 提供なし | 利用できません |
Python | FlowsClient | FlowsClient |
Ruby | 提供なし | 利用できません |
Page
タイプの get
メソッドと patch/update
メソッドをご覧ください。ページ リファレンスのプロトコルとバージョンを選択:
プロトコル | V3 | V3beta1 |
---|---|---|
REST | ページリソース | ページリソース |
RPC | ページ インターフェース | ページ インターフェース |
C++ | PagesClient | 利用できません |
C# | PagesClient | 利用できません |
Go | PagesClient | 利用できません |
Java | PagesClient | PagesClient |
Node.js | PagesClient | PagesClient |
PHP | 提供なし | 利用できません |
Python | PagesClient | PagesClient |
Ruby | 提供なし | 利用できません |
次のデータはフローに関連付けられています。
- ページ: フローを構成するページのリスト。
- ルート: フローのスタートページがアクティブなときに、これらのすべてのルートが呼び出される場合があります。フローの他のページがアクティブな場合は、インテント要件のあるルートが適用される場合があります。詳細については、ステート ハンドラのスコープと、フローレベルのルートをご覧ください。
- イベント ハンドラ: これらのハンドラは、フローがアクティブなときに呼び出される場合があります。詳細については、フローレベルのイベント ハンドラをご覧ください。
さまざまなレベルでデータがどのように適用されるかについては、データ アプリケーション レベルをご覧ください。
フローの設定
フローには次の設定を使用できます。
- 表示名: 人が読める形式のフローの名前。
- 説明: フローの説明。
- ML 設定 フローの ML 設定は、エージェントの ML 設定にも記載され、説明されています。
- 音声の詳細設定: これらの音声設定では、必要に応じて同じエージェントの音声設定をオーバーライドできます。
さまざまなレベルでデータがどのように適用されるかについては、データ アプリケーション レベルをご覧ください。
フローの設定にアクセスするには:
コンソール
- Dialogflow CX Console を開きます。
- Google Cloud プロジェクトを選択します。
- エージェントを選択します。
- [Flows] セクションのフローにカーソルを合わせます。
- [オプション more_vert] ボタンをクリックします。
- [Flow settings] を選択します。
- 設定をブラウジングまたは編集します。
- [保存] をクリックして変更を保存します。
API
Flow
型の get
メソッドと patch/update
メソッドをご覧ください。
フロー リファレンスのプロトコルとバージョンを選択:
プロトコル | V3 | V3beta1 |
---|---|---|
REST | フローリソース | フローリソース |
RPC | フロー インターフェース | フロー インターフェース |
C++ | FlowsClient | 利用できません |
C# | FlowsClient | 利用できません |
Go | FlowsClient | 利用できません |
Java | FlowsClient | FlowsClient |
Node.js | FlowsClient | FlowsClient |
PHP | 提供なし | 利用できません |
Python | FlowsClient | FlowsClient |
Ruby | 提供なし | 利用できません |
フローの削除
フローを削除するには:
コンソール
- Dialogflow CX Console を開きます。
- Google Cloud プロジェクトを選択します。
- エージェントを選択します。
- [Flows] セクションのフローにカーソルを合わせます。
- 設定 more_vert ボタンをクリックします。
- [削除] を選択します。
API
Flow
型の delete
メソッドをご覧ください。
フロー リファレンスのプロトコルとバージョンを選択:
プロトコル | V3 | V3beta1 |
---|---|---|
REST | フローリソース | フローリソース |
RPC | フロー インターフェース | フロー インターフェース |
C++ | FlowsClient | 利用できません |
C# | FlowsClient | 利用できません |
Go | FlowsClient | 利用できません |
Java | FlowsClient | FlowsClient |
Node.js | FlowsClient | FlowsClient |
PHP | 提供なし | 利用できません |
Python | FlowsClient | FlowsClient |
Ruby | 提供なし | 利用できません |
フローのトレーニング
フローをトレーニングする手順は、次のとおりです。
コンソール
- Dialogflow CX Console を開きます。
- Google Cloud プロジェクトを選択します。
- エージェントを選択します。
- [エージェント設定] をクリックします。
- [ML] タブを開きます。
- 単一のフローをトレーニングするには、対応する行の [トレーニング] をクリックします。
- 複数のフローをトレーニングするには、チェックボックスをオンにしてそれらのフローを選択し、[Train selected flow NLU model] をクリックします。
API
Flow
型の train
メソッドをご覧ください。
フロー リファレンスのプロトコルとバージョンを選択:
プロトコル | V3 | V3beta1 |
---|---|---|
REST | フローリソース | フローリソース |
RPC | フロー インターフェース | フロー インターフェース |
C++ | FlowsClient | 利用できません |
C# | FlowsClient | 利用できません |
Go | FlowsClient | 利用できません |
Java | FlowsClient | FlowsClient |
Node.js | FlowsClient | FlowsClient |
PHP | 提供なし | 利用できません |
Python | FlowsClient | FlowsClient |
Ruby | 提供なし | 利用できません |
フローをエクスポートする
フローは次の 2 つの方法でエクスポートできます。
データ エクスポート: フローを元データとしてエクスポートし、任意のエージェントにインポートできます。フローをエクスポートすると、フローによって参照されるリソース(インテント、エンティティ、Webhook)もエクスポートされます。以下の手順に沿って、元データのデータ形式を選択してください。
図のエクスポート(プレビュー): フローは視覚的な図としてエクスポートされます。エクスポート形式は draw.io XML であるため、図は Lucidchart、diagrams.net など、draw.io 形式をインポートできる図ツールでインポートできます。以下の手順を行う場合は、XML データ形式を選択してください。
フローをエクスポートするには:
コンソール
- Dialogflow CX Console を開きます。
- Google Cloud プロジェクトを選択します。
- エージェントを選択します。
- [Flows] セクションのフローにカーソルを合わせます。
- [オプション more_vert] ボタンをクリックします。
- [Export flow] を選択します。
- 手順に沿って操作して完了します。
API
Flow
型の export
メソッドをご覧ください。
フロー リファレンスのプロトコルとバージョンを選択:
プロトコル | V3 | V3beta1 |
---|---|---|
REST | フローリソース | フローリソース |
RPC | フロー インターフェース | フロー インターフェース |
C++ | FlowsClient | 利用できません |
C# | FlowsClient | 利用できません |
Go | FlowsClient | 利用できません |
Java | FlowsClient | FlowsClient |
Node.js | FlowsClient | FlowsClient |
PHP | 提供なし | 利用できません |
Python | FlowsClient | FlowsClient |
Ruby | 提供なし | 利用できません |
フローをインポートする
フローをインポートするには:
コンソール
- Dialogflow CX Console を開きます。
- Google Cloud プロジェクトを選択します。
- エージェントを選択します。
- [Flows] セクションの追加 add ボタンをクリックします。
- [Import flow] を選択します。
- 手順に沿って操作して完了します。
API
Flow
型の import
メソッドをご覧ください。
フロー リファレンスのプロトコルとバージョンを選択:
プロトコル | V3 | V3beta1 |
---|---|---|
REST | フローリソース | フローリソース |
RPC | フロー インターフェース | フロー インターフェース |
C++ | FlowsClient | 利用できません |
C# | FlowsClient | 利用できません |
Go | FlowsClient | 利用できません |
Java | FlowsClient | FlowsClient |
Node.js | FlowsClient | FlowsClient |
PHP | 提供なし | 利用できません |
Python | FlowsClient | FlowsClient |
Ruby | 提供なし | 利用できません |