头图

SearXNG与LLM强强联合:打造用户隐私保护的智能搜索解答流程,隐私无忧,搜索无忧

SearXNG 是一个免费的互联网元搜索引擎,整合了各种搜索服务的结果。用户不会被跟踪,也不会被分析。

  • 功能特性

    • 自托管,可以私有化部署
    • 没有用户跟踪/没有分析
    • 可以自定义设置脚本和 cookies
    • 安全加密的连接
    • 轻松整合了近200个搜索引擎,用户可自定义选择不同的引擎
    • 多语言支持,约 60 个,包含中文、英文等
    • 提供近 100 个维护良好的公共查询实例
  • 安全保护
    无论实例类型如何(私有、公共),SearXNG 都以多种方式保护用户的隐私。从搜索请求中删除私人数据有以下三种形式:

    • 从发送至搜索服务的请求中删除私人数据
    • 不通过搜索服务转发来自第三方服务的任何内容(例如广告)
    • 从进入结果页面的请求中删除私有数据

    删除私人数据意味着不向外部搜索引擎发送 cookie 并为每个请求生成随机浏览器配置文件。因此,公共实例还是私有实例处理请求并不重要,因为在这两种情况下它都是匿名的。IP 地址将是实例的 IP。但 SearXNG 可以配置为使用代理或 Tor, 也支持结果代理。

    与大多数搜索服务不同,SearXNG 不提供广告或跟踪内容。因此,私人数据不会被转发给可能利用其获利的第三方。除了保护用户免受搜索服务的影响之外,引用页面和搜索查询都对访问的结果页面隐藏。

1. docker镜像安装

2. 安装SearXNG

2.1 快速安装

#克隆项目
git clone https://github.com/searxng/searxng.git
cd searxng

#安装依赖
make install

#启动.
make run

可以通过浏览器访问 http://127.0.0.1:8888 来使用 SearXNG

2.2 docker cli

#新建文件夹 searxng 和 子目录
mkdir -p /www/algorithm/searxng

#进入 searxng 目录
cd /www/algorithm/searxng

#运行容器
docker run -d \
  --name searxng \
  --cap-drop ALL \
  --cap-add CHOWN \
  --cap-add SETGID \
  --cap-add SETUID \
  --log-driver json-file \
  --log-opt max-size=1m \
  --log-opt max-file=1 \
  -p 9380:8080 \
  -v $(pwd)/data:/etc/searxng:rw \
  searxng/searxng:latest

更多设置参考官网:

  • 修改 settings.yml
    当安装 SearXNG 时,默认的输出格式是 HTML 格式。您需要激活 JSON 格式。请将以下行添加到 settings.yml 文件中。如前面的示例所示,settings.yml 文件位于 ${PWD}/searxng/settings.yml
  #remove format to deny access, use lower case.
  #formats: [html, csv, json, rss]
  formats:
    - html
    - json    # <-- 添加这一行

2.3 docker compose 安装

可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件,用转化工具可以很方便生成配置文件

version: '3.7'

services:
  searxng:
    image: searxng/searxng:latest
    container_name: searxng
    ports:
      - 9380:8080
    volumes:
      - ./data:/etc/searxng:rw
    cap_drop:
      - ALL
    cap_add:
      - CHOWN
      - SETGID
      - SETUID
    logging:
      driver: 'json-file'
      options:
        max-size: '1m'
        max-file: '1'

然后执行下面的命令

#新建文件夹 searxng 和 子目录
mkdir  searxng

#进入 searxng 目录
cd searxng

#将docker-compose.yml 放入当前目录

#一键启动
docker compose up -d

先进 首选项 进行设置,任何更改都需要 保存 才能生效

  • 关闭docker
docker ps
#在宿主机的终端中,运行以下命令来停止容器:
docker stop [容器名/容器id]
#如果 docker stop 命令不起作用,可以使用 docker kill 命令来强制退出容器
docker kill [容器名/容器id]
  • 修改一下端口号
version: '3.7'

services:
    searxng:
        ports:
            - 9380:9380
        volumes:
            - ${PWD}/searxng:/etc/searxng
        environment:
            - BASE_URL=http://0.0.0.0:9380/
            - INSTANCE_NAME=searxng
        image: searxng/searxng

3.结合LLM使用

  • 正常使用

效果一般,还需要再加点其他搜索引擎源,好处是没有广告了

3.1 FreeAskInternet

第一步、用户提出问题
第二步、用 SearXNG(本地运行)在多个搜索引擎上进行搜索
第三步、将搜索结果传入 LLM 生成答案

相关项目参考:

3.2 结合dify

目前用的是tavily 同理searxng也是同理

汀丶
84 声望62 粉丝