投稿する
📚 Dify・n8nハンズオン講座(火曜日チーム)

Dify x n8n連携!AIで記事検索・Slack連携入門

Difyのプラグイン不具合を回避し、Geminiのグラウンディング機能やHTTPリクエストを用いてSlackへ通知を送る高度なワークフロー構築術を解説します。

学習ポイント

  • Geminiのグラウンディング(検索)機能を使った外部情報の取得方法
  • 既存プラグインに頼らないHTTPリクエストブロックによるSlack連携手順
  • API設定でエラーが発生した際のChatGPTを活用したデバッグ手法

Difyで標準プラグインが動作しない際、自力で外部サービスと連携するための「HTTPリクエスト」の使い方と、Geminiによる最新情報検索の設定を解説します。

1. Geminiを用いた最新情報の検索(代替検索手法)

Google Search APIが不安定な場合、Geminiモデルの「グラウンディング機能」で代用可能です。

  • **設定方法**: DifyのLLMブロックでGeminiを選択し、設定内の「グラウンディング」をTrue(オン)に変更します。

  • **プロンプト例**: 「関連記事を5つ検索し、ソースURLと内容をまとめてください」と指示することで、リアルタイムのウェブ情報を参照した回答が得られます。

2. Slack連携のためのIncoming Webhook設定

Slack側に情報を飛ばすための事前準備を行います。

  • **手順**: Slack APIの「Create New App」からアプリを自作し、「Incoming Webhooks」を有効化します。通知先のチャンネルを選択して発行された「Webhook URL」をコピーしておきます。

3. HTTPリクエストブロックによる通知実装

Difyの標準Slackブロックがエラーになる場合、汎用的な「HTTPリクエスト」ブロックを使用します。

  • **Method**: `POST`を選択

  • **URL**: 先ほど取得したSlackのWebhook URLを貼り付けます。

  • **Header**: Keyに`Content-Type`、Valueに`application/json`を設定します。

  • **Body**: JSON形式を選択し、`{"text": "{{llm_output_variable}}"}`のように、LLMの出力変数を埋め込みます。

4. エラー時の対処法とGPTの活用

API連携で「何を記述すべきか」迷った際は、設定画面のスクリーンショットをChatGPTやClaudeに送り、「このAPIのキーと値には何を入れれば良いか」と質問することで、具体的なコードや設定値の提案を受けることができます。