SearXNG

ツール作者 @Junytang。

circle-exclamation

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

以下では、コミュニティ版arrow-up-rightでDockerを使用してSearXNGをDifyに統合する方法を説明します。

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

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

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

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

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をインストールします:

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

1.2 Docker Composeのインストール

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

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

2. SearXNG Dockerコンテナの設定

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

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

2.2 Docker設定ファイルの変更

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

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

2.3 Dockerコンテナの起動

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

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

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

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

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


4. SearXNGとDifyの統合

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

4.1 Difyの設定

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

  1. 設定を保存すると、DifyはSearXNGインスタンスに接続できるようになります。


5. SearXNG統合のテスト

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

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

Last updated