MENU
  • HOME
  • 取引実績
  • 会社概要
  • 資料DL
  • お問い合わせ
  • FAQ
  • BigQuery記事
  • Struccle記事
データ流通、検索エンジン開発のプロフェッショナル
DataStructor
  • HOME
  • 取引実績
  • 会社概要
  • 資料DL
  • お問い合わせ
  • FAQ
  • BigQuery記事
  • Struccle記事
DataStructor
  • HOME
  • 取引実績
  • 会社概要
  • 資料DL
  • お問い合わせ
  • FAQ
  • BigQuery記事
  • Struccle記事
  1. ホーム
  2. AI_Agent
  3. Agent開発
  4. AI Agent開発日記 2024/12/17

AI Agent開発日記 2024/12/17

2025 2/03
AI_Agent Agent開発
2025年2月3日
目次

Dialogflow CXでデータストア参照型検索エージェントを作ろうとしていた際の調査記録。

この記事の概要

ざっくりですが、Dialogflow CXでデータストア参照型検索エージェントを作成するために調査した内容をこの記事にまとめました。
記事の最後に、Dialogflow CXより拡張性の高いツールも紹介しているので、ぜひご覧ください。

ファイルの構造をプロンプトで教えて適切に参照して出力できるか?

  • やりたいこと
    • pageのデータストア設定で、JSON形式のデータを含む .txt ファイルを「非構造化ドキュメント」としてアップロードしたデータストアを選択。
      しかし、エージェントがそのデータストアを参照して回答する際、.txt ファイルとして認識されているためか、JSONの1辞書単位で適切に参照・回答されない。
      そこで、Dialogflow CX の Agent Settings > Gen AI > Datastore 設定 のカスタムプロンプトを工夫することで、JSONとして正しく認識・参照させられるかを検証したい。
  • 結果
    • JSONの形式や検索結果の回答フォーマットをプロンプトに追加しても、回答の精度が落ちるだけで、想定した通りにはならなかった。

Dialogflow CX には、対話型エージェントを構造化するのような機能はないのか?

  • やりたいこと
    • 回答形式の調整などに使うため、複数のエージェントを繋ぐ機能がないか調べる。
  • 結果
    • 自分で探した限り、一番目ぼしい機能としてWebhookがありましたが、
      設定が煩わしく、目当ての機能は見当たりませんでした。
    • ちなみに、PageのGeneratorsにプロンプトを入れて動作させる場合、データストアとの接続方法が不明なため、できませんでした。

Datastoreのプロンプトに指示文を書き込んでも無視される場合、どうすればよいか。

  • やりたいこと
    • エージェントが回答をするうえで「回答にこのリンクが役立つかもしれません」と出力させたくないため、プロンプトにその旨を指示し、いろいろな例やルールを追加してみた。
  • 結果
    • Agent Settings > Gen AI > Datastore > カスタムプロンプトに、『この回答は出力してはいけない』という旨の例やルールを追加しても強制する効果はなく、最も回答に変化があったのはプロンプトの内容の順番を変更することだった。しかし、最終的に問題を解決することはできなかった。
    • また、エージェントの学習が関係しているのかは分かりませんが、同じプロンプトでもエージェントを変えると回答結果が大きく変わることが多々ありました。

ユーザーから取得したパラメーターをデータストアの検索に使えないか?

  • やりたいこと
    • 何らかの方法でユーザーから取得したパラメータをデータストアの検索に利用できないか。
  • 思いついた方法の候補
    • Agent Settings > Gen AI > Datastore > カスタムプロンプトに直接パラメーターを埋め込む
    • PageのGeneratorsのプロンプトにパラメーターを埋め込む
    • webhookにパラメータを送り外部からデータストア検索を行う
  • 結果
    • カスタムプロンプトにパラメーターを埋め込んでも、パラメーターとして認識されなかった。
    • PageのGeneratorsのプロンプトにパラメーターを埋め込む事は可能だったが、データストアを検索する方法が不明なため断念した。
      ちなみに、Agent Settingsのカスタムプロンプトで使用している下記の3つのパラメーターは、PageのGeneratorsのプロンプトに加えても認識されませんでした:$sources、$conversation、$original-query
    • Webhookにパラメーターを送信し、外部からデータストア検索を行う方法について、データストアを検索するAPIのコードが見つからなかったため、実現できなかった。

dialogflowCXより拡張性が高いツール、Conversational agentsについて。

Conversational agentsとは

  • Conversational agentsは、Dialogflow CXの対話型エージェントと互換性のあるツールで、Dialogflow CXでできることのほとんどがConversational agentsでも可能です。
  • Conversational agentsのデータストア参照型検索エージェントの作成に便利な機能、Playbookについて。
    • Playbookでは、Goal(Playbook内のエージェントに与える目標)と、Instructions(エージェントの基本的な指示や振る舞いのプロンプト)を設定できます。
    • また、Playbook内に別のPlaybookを組み込んで構造化できるほか、Tool機能を利用してデータストア検索を行うことも可能です。さらに、Flowなどの要素もPlaybook内に統合できます。
    • 上記で挙げた問題のほとんどは、Conversational Agentsを活用することで解決できます。豊富な機能と高い柔軟性を活かし、最適なエージェントを構築することが可能です。
  • Conversational Agentsについての詳細な記事は見つかりませんでした。
    そのため、実際に触って試しながら、さまざまな機能を確認してみることをおすすめします。

Conversational agents

あわせて読みたい
Conversational Agent Console

まとめ

  • JSONの形式や検索結果の回答フォーマットをプロンプトに追加しても、回答の精度が落ちるだけで、想定した通りにはならなかった。
  • 自分で調査した限り、Dialogflow CX で複数のエージェントを構造化してつなぐ設定は見当たらなかった。
  • カスタムプロンプトに『この回答は出力してはいけない』という旨の例やルールを追加しても強制する効果はなく、最も回答に変化があったのはプロンプトの内容の順番を変更することだった。しかし、最終的に問題を解決することはできなかった。
  • ユーザーから取得したパラメーターをデータストア検索に利用する方法を試みたが、いくつかの方法で問題が発生し、実現できなかった。
  • Dialogflow CXよりも、Conversational Agentsの方が、プレイブックなどの豊富な機能と高い柔軟性を持つことが分かった。

人気記事

  • BigQueryの無料枠を活用しよう!制限と注意点、活用方法を解説
  • BigQueryでエラー解決!よくあるエラーと対処法
  • BigQueryのレベル別学習リソースまとめ!初心者から上級者まで役立つ情報源
  • 【SUUMOスクレイピング】Struccleで物件データを全件収集
  • BigQuery入門!無料データでSQLの基本文字列関数をマスター
AI_Agent Agent開発
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次
カテゴリー
  • AI_Agent (110)
    • Agent開発 (110)
  • BigQuery (100)
    • BigQueryTips (11)
    • BigQueryでデータ分析 (49)
    • BigQueryのFAQ (1)
    • BigQuery入門 (8)
    • BigQuery学習教材 (22)
    • BigQuery導入ガイド (3)
    • BigQuery最新情報 (3)
    • BigQuery活用事例 (4)
  • Struccle (153)
    • Struccleでスクレイピング (10)
      • suumoの物件データを収集&分析 (1)
      • アニマルジョブの電話番号、メールアドレスを全件収集 (1)
      • データ集計 (6)
      • ホットペッパービューティーのヘアサロンデータを収集&分析 (1)
      • 食べログの飲食店データを収集&分析 (1)
    • Struccleデータ料金事例 (142)
      • 商品分析 (15)
      • 営業リスト (88)
      • 競合分析&市場調査 (58)
      • 自動車 (11)
      • 自社活用 (7)
    • Struccle活用企業様の紹介 (1)
  • 当ブログのコーディング実行環境設定 (1)
目次