Dify で Bright Data ワークフローを組む
ノーコード AI アプリ基盤 Dify に Bright Data を連結し、社内向け調査 AI・チャットボット・自動レポートを 1 時間で組み立てるためのガイド。チームで共有運用したいケースで最も力を発揮する。
Dify は、ノーコードで AI アプリ・チャットボット・自動化ワークフローを組み立てられるオープンソースの AI 基盤です。Bright Data と組み合わせると、「Web の最新情報を取りに行く調査 AI」を社内向けに 1 時間で公開できます。Claude Desktop や ChatGPT が「個人の作業を AI に任せる」用途なら、Dify は 「チーム全員が同じ AI ワークフローを共有して使う」 用途に向いています。
なぜ Dify と Bright Data の組み合わせなのか
| 観点 | Dify 単独 | Dify × Bright Data |
|---|---|---|
| 取れる情報 | LLM の学習データ範囲 + ビルトイン Web 検索(限定的) | Web 上の任意のサイトを安定取得。Amazon・SERP・SNS 等の特化取得も可 |
| チームで使う | ✓ アプリ単位で共有可能 | ✓ 同じく共有可能、しかも取得処理が安定 |
| 業務自動化 | LLM のチェーンで完結 | Web → 取得 → LLM 要約 → Slack 通知 まで 1 ワークフローに |
| データ保管 | 会話履歴、ナレッジベース | クロール結果を Dify ナレッジに常時投入し RAG にできる |
| 管理画面の使いやすさ | ビジュアルワークフロー | 同じ画面に Bright Data の HTTP ノードを置くだけ |
Bright Data 側の API を Dify の HTTP リクエストノード または カスタムツール として登録すれば、ワークフロー内のどこからでも呼べます。Claude Desktop の MCP 設定のような JSON 編集も不要で、ブラウザだけで完結します。
こんな場面で力を発揮する
- 社内向けリサーチ AI: マーケ・営業・経営企画が同じチャットを開き、「今週の競合動向は?」と聞ける
- 採用候補スクリーニング AI: LinkedIn・Wantedly の公開情報を Dify が取得し、候補者プロファイルを要約
- 自動レポート生成: 毎週月曜に Slack へ「先週の業界ニュース 3 行サマリ」を Dify が自動投稿
- 問い合わせ対応 AI: 自社サイト + 競合公開情報を Dify ナレッジに蓄え、CS チャットボットの根拠データに
- 新規市場調査エージェント: 「○○国の○○業界 TOP20 を調べて」と聞けば、SERP → Crawl → 要約 までを Dify がワークフロー化
用意するもの
- Dify アカウント(dify.ai でクラウド版にサインアップ、または OSS をセルフホスト)
- Bright Data アカウント + API キー(こちらの紹介リンク で発行、プロモコード
south20を使用すると割引が適用されます) - 使いたい Bright Data のゾーン(最低限、Web Unlocker または SERP API 用ゾーンを 1 つ)
- 60 分の初期設定時間(最初の 1 ワークフローまで)
設定手順(60 分)
Step 1: Bright Data の API キーとゾーンを準備(10 分)
- Bright Data Dashboard ホーム画面下部の API key をコピー(用途別に分けたい場合は 設定 → ユーザーとAPIキー で発行)
- キーを 1Password / 社内 Vault に保管(Dify の環境変数で参照する)
- 左メニュー ウェブアクセス → APIを作成 から ウェブ解除 API(または SERP API)を 1 本作成。名前は
web_unlocker1/serp_api1のように分かりやすく
画面ショット付きの手順はBright Data の登録〜API キー発行を参照してください。
Step 2: Dify でアプリを新規作成(5 分)
- Dify ダッシュボード → Create App → Workflow を選択
- アプリ名を「Bright Data Research Bot」など分かりやすく命名
- 空のワークフロー画面が開く
Step 3: Bright Data API を呼ぶ HTTP ノードを追加(15 分)
- ワークフローのキャンバスで + → HTTP Request ノードを追加
- ノード設定:
- Method:
POST - URL:
https://api.brightdata.com/request - Headers:
Authorization:Bearer {{#env.BRIGHTDATA_API_KEY#}}Content-Type:application/json
- Body (JSON):
{ "zone": "serp_api1", "url": "https://www.google.com/search?q={{#start.query#}}", "format": "json", "method": "GET", "country": "jp" }
- Method:
- 環境変数
BRIGHTDATA_API_KEYを Dify の Environment Variables に登録(API キーをここに貼る) - テスト実行で
query: "Bright Data 最新ニュース"を渡し、検索結果が返ってくることを確認
Step 4: LLM ノードで結果を要約する(15 分)
- HTTP ノードの後ろに LLM ノードを追加(モデルは Claude / GPT どちらでも)
- プロンプト例:
以下は Bright Data 経由で取得した Google 検索結果の生 JSON です。 {{#httpRequest.body#}} この検索結果から、上位 5 件のページについて - タイトル - URL - 1 行要約 を Markdown 表で返してください。 - 出力ノードを追加して終了
Step 5: チームに公開(10 分)
- ワークフローを Publish
- Dify の API エンドポイントが発行される、または Web 公開フォームから直接使える URL が出る
- Slack / Notion / 社内ポータルに URL を貼って共有
代表的なワークフロー例
A. 競合 PR 監視ボット(チーム共有)
入力: 競合企業名のリスト(カンマ区切り) 流れ: 1. SERP API で各社のニュースを取得 → 2. LLM で要点抽出 → 3. 重要度ランキング → 4. Markdown 表で出力 共有方法: Dify の Web URL を広報チームの Slack にピン留め
B. 営業リードスクリーニング
入力: 「東京の中堅 SaaS 企業 50 社」のような自然言語 流れ: 1. SERP API で候補発見 → 2. Web Unlocker で各社の公式サイトから事業概要を取得 → 3. LLM で「ICP 適合度スコア」を付与 → 4. CSV 出力 共有方法: 営業チームが毎週月曜に実行ボタンを押すだけ
C. 商品レビュー要約(EC 担当向け)
入力: Amazon ASIN のリスト 流れ: 1. Bright Data の Amazon Scraper でレビュー取得 → 2. Dify ナレッジに蓄積 → 3. LLM で「不満トップ 5」「称賛ポイント」を要約 共有方法: 商品企画ミーティングで開いて会話
D. 新規市場リサーチエージェント
入力: 「ベトナムの D2C 美容ブランド上位 20」のような自然言語 流れ: 1. SERP で候補発見 → 2. Crawl API で各サイトを巡回 → 3. LLM で構造化(社名 / 拠点 / 主力商品 / 推定売上 / 出典)→ 4. Notion に追記 共有方法: 経営層に「リサーチ結果ボット」として配布
運用のコツ
- 環境変数で API キーを管理: ワークフロー JSON にキーを直書きしない。Dify の Environment Variables に分離
- コストアラートを設定: Bright Data の Dashboard で月次予算を設定。Dify 側のワークフロー実行回数も Usage 画面で監視
- バージョン管理: Dify はワークフローの履歴を持つので、変更時は必ず Publish before/after で動作確認
- 権限分離: Dify アプリは「閲覧のみ」「実行可」「編集可」を分けて、編集権限は AI 推進担当のみに
- 失敗時のフォールバック: HTTP ノードの設定で「失敗時は再試行 3 回」を有効化、それでも失敗なら LLM に「データ取得失敗」と伝えるノードを分岐
つまずきポイント
| 症状 | 原因と対処 |
|---|---|
| HTTP ノードが 401 を返す | API キーが間違っている、または期限切れ。Dashboard で確認・再生成 |
| 検索結果が空 | zone 名が実在ゾーンと一致していない。Bright Data Dashboard で正確なゾーン名を確認 |
| ワークフローがタイムアウト | Bright Data の非同期ジョブ系は時間がかかる。Dify のタイムアウト設定を 60〜120 秒に延長 |
| LLM が JSON を読めない | プロンプトに「JSON は {{#httpRequest.body#}} の中身です」と明示し、必要なら JSON Parser ノードを挟む |
| コストが想定より膨らむ | ワークフローを「件数 10 件まで」に絞り、本番運用で件数を上げる前に PoC で見積りを取る |
法務・運用の注意
- 取得対象は 公開ページに限定し、ログイン後ページや個人情報には触れない
- Bright Data の利用規約と取得対象サイトの利用規約の両方に従う
- 社外公開する Dify アプリでは、出典 URL を必ず添える運用にする(引用のための合理的範囲を超えないため)
- 個人を特定する情報(連絡先・住所など)の収集には、社内法務・個人情報保護方針を確認
次のステップ
- 競合の PR・ニュースを毎週まとめて要約 — 上記 A の本格版
- 営業リストを AI で自動作成・補完 — 上記 B の本格版
- 接続する AI ツール 5 選 — Claude Desktop / ChatGPT / n8n との比較
エンジニアの方へ
Dify を使わず Bright Data API を直接叩きたい場合: