Dify
日本語
日本語
  • 入門
    • Difyへようこそ
      • 特性と技術仕様
      • モデルプロバイダーリスト
    • クラウドサービス
    • コミュニティ版
      • Docker Compose デプロイ
      • ローカルソースコードで起動
      • aaPanelでのデプロイ方法
      • フロントエンドDockerコンテナを単独起動
      • 環境変数の説明
      • よくある質問
    • Dify Premium
    • Dify 教育版
  • マニュアル
    • モデル
      • 新しいプロバイダーの追加
      • 事前定義されたモデルの追加
      • カスタムモデルの追加
      • インタフェース
      • 配置ルール
      • 負荷分散
    • アプリ・オーケストレーション
      • アプリの作成
      • チャットボット
        • 複数モデルのデバッグ
      • エージェント
      • ツールキット
        • コンテンツモデレーション
    • ワークフロー
      • キーコンセプト
      • 変数
      • ノードの説明
        • 開始
        • 終了
        • 回答
        • LLM
        • 知識検索
        • 質問分類
        • 条件分岐
        • コード実行
        • テンプレート
        • テキスト抽出ツール
        • リスト処理
        • 変数集約
        • 変数代入
        • 反復処理(イテレーション)
        • パラメータ抽出
        • HTTPリクエスト
        • エージェント
        • ツール
        • 繰り返し処理(ループ)
      • ショートカットキー
      • オーケストレートノード
      • ファイルアップロード
      • エラー処理
        • 事前定義されたエラー処理ロジック
        • エラータイプの概要
      • 追加機能
      • プレビューとデバッグ
        • プレビューと実行
        • ステップ実行
        • 対話/実行ログ
        • チェックリスト
        • 実行履歴
      • アプリケーション公開
      • JSON形式での出力
      • 変更通知:画像アップロード機能がファイルアップロード機能に統合されました
    • ナレッジベース
      • ナレッジベース作成
        • 1. オンラインデータソースの活用
          • 1.1 Notion からデータをインポート
          • 1.2 Webサイトからデータをインポート
        • 2. チャンクモードの指定
        • 3. インデックス方式と検索オプションの設定
      • ナレッジベースの管理
        • ナレッジベース内ドキュメントの管理
        • APIを活用したナレッジベースのメンテナンス
      • メタデータ
      • アプリ内でのナレッジベース統合
      • リコールテスト/引用帰属
      • ナレッジベースの要求頻度制限
      • 外部ナレッジベースとの接続
      • 外部ナレッジベースAPI
    • ツール
      • クイック統合ツール
      • 高度統合ツール
      • ツールの設定
        • Google
        • Bing
        • SearchApi
        • StableDiffusion
        • Perplexity Search
        • AlphaVantage 株式分析
        • Dall-e
        • Youtube
        • Serper
        • SearXNG
        • SiliconFlow(Flux AI サポート)
        • ComfyUI
    • アプリ公開
      • シングルページWebアプリとして公開
        • Web アプリの設定
        • テキスト生成アプリ
        • 対話型アプリ
      • Webサイトへの埋め込み
      • API基づく開発
      • フロントエンドテンプレートに基づいた再開発
    • アノテーション
      • ログとアノテーション
      • アノテーション返信
    • モニタリング
      • データ分析
      • 外部Opsツール統合
        • LangSmithを統合
        • LangFuseを統合
        • Opikを統合
    • 拡張
      • API 拡張
        • Cloudflare Workers を使用した API ツールのデプロイ
        • コンテンツモデレーション
      • コード拡張
        • 外部データツール
        • コンテンツモデレーション
    • コラボレーション
      • 発見
      • メンバーの招待と管理
    • 管理
      • アプリの管理
      • チームメンバーの管理
      • 個人アカウントの管理
      • サブスクリプション管理
      • バージョン管理
  • ハンドオン工房
    • 初級編
      • ゼロからAI画像生成アプリの構築方法
      • AIエージェントの実践:個人のオンライン旅行アシスタントの構築方法
    • 中級編
      • チャットストリームエージェントを使用した Twitter アカウントの分析方法
      • ファイルアップロードを使用した記事理解アシスタントの構築方法
  • コミュニティ
    • サポートの求め
    • 貢献者ガイド
    • ドキュメントへの貢献
  • プラグイン
    • 機能紹介
    • クイックスタート
      • プラグインのインストールと活用
      • プラグイン開発の入門
        • 開発環境のセットアップ
        • ツール型プラグイン
        • モデル型プラグイン
          • モデルプロバイダーの構築
          • 定義済みモデルの組み込み
          • カスタムモデルの組み込み
        • エージェント戦略プラグイン
        • 拡張機能型プラグイン
        • バンドル
      • プラグインのデバッグ方法
    • プラグイン管理方法
    • スキーマ仕様
      • Manifest(マニフェスト)
      • Endpoint(エンドポイント)
      • Tool(ツール)
      • Agent(エージェント)
      • Model(モデル)
        • モデル設計規則
        • モデルスキーマ
      • 一般的な標準仕様
      • 永続化されたストレージ
      • Difyサービスの逆呼び出し
        • アプリ
        • モデル
        • ツール
        • ノード
    • ベストプラクティス
      • Slack Bot プラグインの開発
      • Dify MCP プラグインガイド:ワンクリックで Zapier に接続してメールを自動送信
    • プラグインの公開
      • プラグインの自動公開
      • Difyマーケットプレイスへの公開
        • プラグイン開発者ガイドライン
        • プラグインのプライバシー保護に関するガイドライン
      • 個人GitHubリポジトリへの公開
      • ローカルでの公開と共有
      • 第三者署名検証のためにプラグインに署名する
    • よくある質問
  • 開発
    • バックエンド
      • DifySandbox
        • 貢献ガイド
    • モデルの統合
      • Hugging Faceのオープンソースモデルを統合
      • Replicateのオープンソースモデルを統合
      • Xinferenceでデプロイしたローカルモデルを統合
      • OpenLLMでデプロイしたローカルモデルを統合
      • LocalAIでデプロイしたローカルモデルを統合
      • Ollamaでデプロイしたローカルモデルを統合
      • LiteLLM Proxyを使用してモデルを統合する
      • GPUStackとの統合によるローカルモデルのデプロイ
      • AWS Bedrock上のモデル(DeepSeek)の接続
    • 移行
      • コミュニティ版を v1.0.0 に移行する
  • もっと読む
    • 活用事例
      • DeepSeek & Dify連携ガイド:多段階推論を活用したAIアプリケーション構築
      • Ollama + DeepSeek + Dify のプライベートデプロイ:あなた自身のAIアシスタントの構築方法
      • あなた専用のQAチャットボットのトレーニング方法
      • コードなしでMidjourney プロンプトボットを作成する方法
      • Notion AI アシスタントを構築する
      • 数分で業務データを持つ公式サイトのAIチャットボットを作成する方法
      • DifyチャットボットをWixサイトに統合する方法
      • AWS Bedrockのナレッジベースに統合する方法
      • Difyで大規模言語モデルの「競技場」を体験する方法:DeepSeek R1 VS o1 を例に
      • Difyスケジューラーの構築
      • DifyクラウドでAI Thesis Slack Botを構築
    • さらに読む
      • LLMOpsとは何ですか?
      • 配列変数とは何ですか?
      • 検索拡張生成(RAG)
        • ハイブリッド検索
        • Rerank
        • リトリーバルモード
      • プロンプトエンジニアリング
      • DifyでJSONスキーマ出力を使用する方法
    • FAQ
      • ローカルデプロイに関するFAQ
      • LLM設定と使用に関するFAQ
      • プラグイン
  • ポリシー
    • オープンソースライセンス
    • ユーザ規約
      • 利用規約
      • プライバシーポリシー
      • 合規性レポートの入手方法
Powered by GitBook
On this page
  • 1. Dify設定ファイルの変更
  • 2. サービスの起動
  • 3. SearXNGの使用
  • Linux VMでプライベートインスタンスとしてSearXNGをホスティングする
  • 1. Linux VM環境の準備
  • 2. SearXNG Dockerコンテナの設定
  • 3. SearXNGサービスをアクセス可能にする
  • 4. SearXNGとDifyの統合
  • 4.1 Difyの設定
  • 5. SearXNG統合のテスト
  1. マニュアル
  2. ツール
  3. ツールの設定

SearXNG

PreviousSerperNextSiliconFlow(Flux AI サポート)

Last updated 2 months ago

ツール作者 @Junytang。

「ツール」は「プラグイン」エコシステムに完全アップグレードされました。詳しい使用方法についてはをご参照ください。以下の内容はアーカイブされています。

SearXNGは、様々な検索サービスの結果を統合する無料のインターネットメタサーチエンジンです。ユーザーは追跡されず、検索行動も分析されません。Difyから直接このツールを利用することができます。

以下では、でDockerを使用してSearXNGをDifyに統合する方法を説明します。

Difyクラウドサービス内でSearXNGを使用したい場合は、を参照して自分のサービスを構築し、Difyに戻って「ツール > SearXNG > 認証へ行く」ページでサービスのBase URLを入力してください。

1. Dify設定ファイルの変更

SearXNGの設定ファイルは dify/api/core/tools/provider/builtin/searxng/docker/settings.yml にあります。設定ドキュメントはを参照してください。

必要に応じて設定を変更するか、デフォルト設定をそのまま使用することもできます。

2. サービスの起動

Difyのルートディレクトリで以下のコマンドを実行し、Dockerコンテナを起動します。

cd dify
docker run --rm -d -p 8081:8080 -v "${PWD}/api/core/tools/provider/builtin/searxng/docker:/etc/searxng" searxng/searxng

3. SearXNGの使用

ツール > SearXNG > 認証へ行く でアクセスアドレスを入力し、DifyサービスとSearXNGサービスの接続を確立します。SearXNGのDocker内部アドレスは通常 http://host.docker.internal:8081 です。


Linux VMでプライベートインスタンスとしてSearXNGをホスティングする

このセクションでは、Linux VMでSearXNGをホスティングし、Difyと統合する方法について説明します。

1. Linux VM環境の準備

Linux VM環境が以下の条件を満たしていることを確認してください:

  • DockerとDocker Composeがインストールされている。

  • サポートされているLinuxディストリビューション(Ubuntu 24.04や他のDebianベースのシステムなど)を使用できます。

1.1 Dockerのインストール

以下のコマンドを実行してDockerをインストールします:

# パッケージリストの更新
sudo apt update

# 必要なパッケージのインストール
sudo apt install apt-transport-https ca-certificates curl software-properties-common

# Docker GPGキーの追加
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

# Docker公式リポジトリの追加
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# Dockerのインストール
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io

Dockerが正常にインストールされたか確認します:

docker --version

1.2 Docker Composeのインストール

以下のコマンドを実行してDocker Composeをインストールします:

sudo curl -L "https://github.com/docker/compose/releases/download/2.32.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

Docker Composeが正常にインストールされたか確認します:

docker-compose --version

2. SearXNG Dockerコンテナの設定

2.1 SearXNG Dockerリポジトリのクローン

まず、SearXNG DockerリポジトリをLinux VMにクローンします:

git clone https://github.com/searxng/searxng-docker.git
cd searxng-docker

2.2 Docker設定ファイルの変更

  1. docker-compose.yamlファイルを変更して、SearXNGサービスがポート8081にバインドされ、Redisサービスが設定されていることを確認します。変更後のdocker-compose.yamlファイルは以下のようになります:

version: '3'

services:
  searxng:
    image: searxng/searxng:latest
    ports:
      - "8081:8080"  # コンテナの8080ポートをホストマシンの8081ポートにマッピング
    volumes:
      - ./searxng:/etc/searxng  # SearXNG設定ファイルのマウント設定
    networks:
      - searxng_network

  redis:
    image: valkey/valkey:8-alpine
    ports:
      - "6379:6379"  # Redisサービスのマッピングポート
    networks:
      - searxng_network

  caddy:
    image: caddy:2-alpine
    ports:
      - "80:80"
      - "443:443"
    networks:
      - searxng_network

networks:
  searxng_network:
    driver: bridge
  1. settings.yml設定ファイルを変更して、SearXNGがすべてのIPアドレスをリッスンし、JSON形式の出力を有効にします:

server:
  bind_address: "0.0.0.0"  # 外部アクセスを許可
  port: 8080

search:
  formats:
    - html
    - json
    - csv
    - rss

2.3 Dockerコンテナの起動

設定ファイルを変更した後、以下のコマンドでDockerコンテナを起動します:

docker-compose up -d

3. SearXNGサービスをアクセス可能にする

デフォルトでは、DockerコンテナはlocalホストまたはIP 127.0.0.1にバインドされます。外部デバイス(Difyなど)からSearXNGにアクセスできるようにするには、Linux VMが公開IPアドレスを通じてポート8081にアクセスできることを確認する必要があります。

VMの公開IPアドレスを確認するには:

ip addr show

ファイアウォールでポート8081が開放されていることを確認してください。


4. SearXNGとDifyの統合

Linux VM上でSearXNGインスタンスが実行されたら、Difyと接続できます。

4.1 Difyの設定

  1. Difyプラットフォームのツール > SearXNG > 認証へ行くページで、自分でホストしているSearXNGサービスのBase URLを入力します。フォーマットは以下の通りです:

http://<your-linux-vm-ip>:8081
  1. 設定を保存すると、DifyはSearXNGインスタンスに接続できるようになります。


5. SearXNG統合のテスト

curlコマンドを使用してSearXNGサービスが正常に動作しているかテストできます:

curl "http://<your-linux-vm-ip>:8081/search?q=apple&format=json&categories=general"

すべてが正常に動作していれば、「apple」の検索結果を含むJSON応答が返されるはずです。

プラグイン開発
コミュニティ版
SearXNGインストールドキュメント
こちら