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

AI Agent開発日記 2025/06/27

2025 7/01
AI_Agent Agent開発
2025年6月28日2025年7月1日

やりたいこと

データを読み込むだけで、以下が自動で行われる仕組みを構築したい。

  • 読み込んだデータがElasticsearchに自動登録される
  • データと指示内容がGeminiに渡され、PlaybookやTool/Schemaが自動生成される
  • 生成された内容が自動でPlaybookやToolに反映され、管理用エージェントと紐づいて構成される

前回の調査日記

あわせて読みたい
AI Agent開発日記 2025/06/26 やりたいこと データを読み込むだけで、以下が自動で行われる仕組みを構築したい。 読み込んだデータがElasticsearchに自動登録される データと指示内容がGeminiに渡さ...
目次

コンソールに表示されるテキストの順序と内容を、分かりやすくなるように整理、調整する

  • やりたいこと
    • t.py実行時のテキスト全てを整理する
  • 現状
    • テキストを置き換え中。

修正前のテキスト

データ同期

===== データ同期テスト (BigQuery → Elasticsearch) =====
[データ同期テスト] を実行しますか? (yes/no): y

データ同期を実行しています...
リクエスト: POST http://localhost:8080/integration_service/data/sync_bq_to_es
レスポンス: 200
--- レスポンスキー 'status' の内容 ---
"Sync completed successfully. 100 rows processed."
--- 'status' ここまで ---
✅ データ同期が完了しました。

===== データ同期テスト 完了 =====

Tool/Playbook連続作成

===== Tool/Playbook連続作成フロー =====
[Tool/Playbook連続作成フロー] を実行しますか? (Agent: your-dialogflow-agent-id) (yes/no): y

[ステップ1] OpenAPIスキーマを生成しています...
リクエスト: POST http://localhost:8080/integration_service/generate/openapi_schema
レスポンス: 200
--- 生成されたOpenAPIスキーマ ---
{
  "openapi": "3.0.0",
  "info": {
    "title": "Product Search API",
    "version": "1.0.0"
  },
  "paths": {
    "/products": {
      "get": {
        "summary": "Search for products",
        "parameters": [
          {
            "name": "productName",
            "in": "query",
            "schema": { "type": "string" }
          }
        ]
      }
    }
  }
}
--- スキーマここまで ---

このスキーマでDialogflow Toolを作成しますか? (yes/no/retry_schema): y

Toolの表示名を入力してください (Enterでデフォルト値: 'Generated_Tool'): 物件検索ツール
最終的なTool表示名: 物件検索ツール_my_product_index

[ステップ2] Dialogflow Toolを作成しています...
リクエスト: POST http://localhost:8080/integration_service/dialogflow/create_tool
レスポンス: 200
✅ Tool '物件検索ツール_my_product_index' (ID: generated-tool-id) の作成に成功しました。

続けて、このToolを使ってPlaybookを作成しますか? (yes/no): y

[ステップ3] 関連Playbookを作成します...
Playbook Instructionsを生成しています...
リクエスト: POST http://localhost:8080/integration_service/generate/playbook_instructions
レスポンス: 200
--- 生成されたPlaybook Instructions (Markdown) ---
ユーザーの要望に応じて物件を検索し、結果を提示してください。
- 予算やエリアなどの条件を聞き出してください。
- 検索には ${TOOL:物件検索ツール_my_product_index} を使用してください。
- 該当する物件がない場合は、その旨を伝えてください。
--- Instructionsここまで ---

このInstructionsでDialogflow Playbookを作成しますか? (yes/no/retry_instructions): y

Playbookの表示名を入力してください (Enterでデフォルト値: '物件検索_testplaybook1'): 
PlaybookのGoalを入力してください (Enterでデフォルト値: 'ユーザーの指示に基づいて適切な物件を提案する'): 

Playbookを作成しています...
リクエスト: POST http://localhost:8080/integration_service/dialogflow/create_playbook
レスポンス: 200
✅ Playbook '物件検索_testplaybook1' (ID: generated-playbook-id) の作成に成功しました。

続けて、作成したPlaybookを親Playbook (ID: parent-playbook-id) に追加しますか? (yes/no): y

[ステップ4] 親PlaybookにサブPlaybookとして追加しています...
親Playbookの情報を取得しています...
リクエスト: POST http://localhost:8080/integration_service/dialogflow/get_playbook_instructions
レスポンス: 200

子Playbook '物件検索_testplaybook1' の説明を入力してください (親PlaybookのInstructionに追加されます): 都道府県や家賃から物件を検索します。

結合後の新しい親PlaybookのInstructionsプレビュー:
---
${PLAYBOOK:物件検索} や ${PLAYBOOK:FAQ} を使ってユーザーを案内します。

- - ${PLAYBOOK:物件検索_testplaybook1} - 都道府県や家賃から物件を検索します。
---

上記のプレビュー内容で親PlaybookのInstructionsを更新しますか? (yes/no): y

親Playbookを更新しています...
リクエスト: POST http://localhost:8080/integration_service/dialogflow/update_playbook_instructions
レスポンス: 200
✅ 親Playbook (ID: parent-playbook-id) の指示を更新しました。

===== Tool/Playbook連続作成フロー 完了 =====

スタンドアロンPlaybook作成

===== スタンドアロンPlaybook作成フロー =====
[スタンドアロンPlaybook作成フロー] を実行しますか? (Agent: your-dialogflow-agent-id) (yes/no): y

[ステップ1] Playbookを作成しています...
Playbook Instructionsを生成しています...
リクエスト: POST http://localhost:8080/integration_service/generate/playbook_instructions
レスポンス: 200
--- 生成されたPlaybook Instructions (Markdown) ---
顧客からの問い合わせ内容を分析し、適切な対応を行ってください。
- 問い合わせ種別(例:ログイン、請求)を特定してください。
- 関連情報を検索するには ${TOOL:Elasticsearch指定クエリ検索} を使用してください。
--- Instructionsここまで ---

このInstructionsでDialogflow Playbookを作成しますか? (yes/no/retry_instructions): y

Playbookの表示名を入力してください (Enterでデフォルト値: '顧客対応プレイブック'): 
PlaybookのGoalを入力してください (Enterでデフォルト値: '顧客の問い合わせを解決する'): 

Playbookを作成しています...
リクエスト: POST http://localhost:8080/integration_service/dialogflow/create_playbook
レスポンス: 200
✅ Playbook '顧客対応プレイブック' (ID: generated-playbook-id-2) の作成に成功しました。

続けて、作成したPlaybookを親Playbook (ID: parent-playbook-id) に追加しますか? (yes/no): y

[ステップ2] 親PlaybookにサブPlaybookとして追加しています...
(親Playbook情報の取得、子Playbookの説明入力、更新プレビュー)

親Playbookを更新しています...
リクエスト: POST http://localhost:8080/integration_service/dialogflow/update_playbook_instructions
レスポンス: 200
✅ 親Playbook (ID: parent-playbook-id) の指示を更新しました。

===== スタンドアロンPlaybook作成フロー 完了 =====

人気記事

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