MENU
  • サービス
    • Struccle(ストラクル)
      • スクレイピングテンプレート
    • AI エージェント
  • 事例
  • 料金
  • ブログ
  • FAQ
  • サポート
    • クイックスタート
    • 操作ガイド
    • Struccle コミュニティ
  • 会社概要
    • About us
    • お問い合わせ
  • 資料
上場企業から個人まで、スクレイピングツールの決定版
Struccle
  • サービス
    • Struccle(ストラクル)
      • スクレイピングテンプレート
    • AI エージェント
  • 事例
  • 料金
  • ブログ
  • FAQ
  • サポート
    • クイックスタート
    • 操作ガイド
    • Struccle コミュニティ
  • 会社概要
    • About us
    • お問い合わせ
  • 資料
   12/31まで無料相談受付中
   無料で始める
Struccle
  • サービス
    • Struccle(ストラクル)
      • スクレイピングテンプレート
    • AI エージェント
  • 事例
  • 料金
  • ブログ
  • FAQ
  • サポート
    • クイックスタート
    • 操作ガイド
    • Struccle コミュニティ
  • 会社概要
    • About us
    • お問い合わせ
  • 資料
  1. ホーム
  2. AI_Agent
  3. AI Agent開発日記 2025/06/27

AI Agent開発日記 2025/06/27

2025 7/01
AI_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作成フロー 完了 =====
AI_Agent
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
カテゴリー
人気記事
  • 【SUUMOスクレイピング】Struccleで物件データを全件収集
  • 【食べログスクレイピング】Struccleで飲食店データを全件収集し、法人リスト作成
  • 【ホットペッパービューティースクレイピング】Struccleでヘアサロンデータを全件収集
  • Struccle、DataStructor活用企業様の紹介
  • 【料金事例】営業コンサル企業が営業リスト収集のためSPEEDAから営業リスト収集
新着記事
  • 【決定版】Chromeスクレイピング拡張機能比較!7選
  • 「カスタム収集」の基本的な使い方
  • 「カスタム収集」とは?
目次
目次