联网搜索配置
一、SearXng本地搜索引擎(推荐,Docker本地部署搜索引擎)
1、创建配置文件
创建目录searxng/searxng
mkdir -p /searxng/searxng
cd /searxng/searxng
1)新建文件 settings.yml 文件。
根据你的需求主要改动如下:
- 特别注意:必须修改
formats
字段,在 formats 字段下,一定要添加 json 格式,否则Open WebUI会出现 403 报错无法使用网页搜索。 - 可在 engines 字段里禁用在国内不稳定访问的搜索引擎。
- 如果部署了 redis ,修改 redis:url 、server 内容。
# see https://docs.searxng.org/admin/settings/settings.html#settings-use-default-settings
use_default_settings:true
general:
debug:true
engines:
# 启用默认禁用的引擎
- name: 360search
engine: 360search
disabled: false
- name: sogou
engine: sogou
disabled: false
- name: bing
disabled: false
- name: bilibili
engine: bilibili
shortcut: bil
disabled: false
# 禁用默认启用的引擎
- name: archlinuxwiki
engine: archlinux
disabled: true
- name: duckduckgo
engine: duckduckgo
distabled: true
- name: github
engine: github
shortcut: gh
disabled: true
- name: wikipedia
engine: wikipedia
disabled: true
server:
# base_url is defined in the SEARXNG_BASE_URL environment variable, see .env and docker-compose.yml
secret_key: "key"
limiter: false
image_proxy: true
search:
formats:
- html
- json
ui:
static_use_hash: true
redis:
url: redis://localhost:6380/0
2)新建 limiter.toml 文件
# See https://github.com/searxng/searxng/blob/master/searx/limiter.toml
[botdetection.ip_limit]
# activate link_token method in the ip_limit method
link_token = false
3)docker 安装和运行 SearXNG
此处省略安装docker的步骤,大家可以上网搜搜。后续更新。
挂载目录,创建 docker-compose.yml
cd ..
vi docker-compose.yml
docker-compose.yml 的主要配置说明如下:
- 重要:image 可使用代理,注意文件中声明要修改的部分。
- 可选:如果你是用
docker
跑的OpenWebUI
,networks
指定docker网络名称(与 open-webui 保持一致)。
查看容器所属网络命令:
docker inspect -f '{{range $net, $settings := .NetworkSettings.Networks}}{{$net}} {{end}}' 容器名称/id
- 可选:port 外部端口映射。
docker-compose.yml文件内容:
# docker-compose.yml
version: '3'
services:
redis:
container_name: searxng-redis
image: hub.mirrorify.net/valkey/valkey:8-alpine
command: valkey-server --save 30 1 --loglevel warning
restart: unless-stopped
networks:
- myself # 修改网络名
volumes:
- valkey-data2:/data
cap_drop:
- ALL
cap_add:
- SETGID
- SETUID
logging:
driver: "json-file"
options:
max-size: "1m"
max-file: "1"
searxng:
container_name: searxng
image: hub.mirrorify.net/searxng/searxng:latest
restart: unless-stopped
networks:
- myself # 修改网络名为OpenWebUI同样的网络
ports:
- 8081:8080
volumes:
- ./searxng:/etc/searxng:rw
environment:
- SEARXNG_BASE_URL=http://localhost:8081/ # 可修改URL为服务器地址
- SEARXNG_REDIS_URL=redis://searxng-redis:6379 # 注意:此处无需修改,容器名在同一个网络内可解析
- UWSGI_WORKERS=${SEARXNG_UWSGI_WORKERS:-4}
- UWSGI_THREADS=${SEARXNG_UWSGI_THREADS:-4}
logging:
driver: "json-file"
options:
max-size: "1m"
max-file: "1"
# 修改网络定义部分
networks:
myself:
name: myself # 强制网络名称为 myself(无前缀)
driver: bridge
volumes:
valkey-data2:
执行如下命令拉取镜像并启动:
如果docker-compose
… 报错的话,改成docker compose
再试试,删去了中间的横杠。
sudo docker-compose down
sudo docker-compose up -d
在浏览器中访问 http://服务器ip地址:8081,将看到 SearXNG 的界面。
4)OpenWebUI 配置 SearXNG
- 设置 语义向量模型
操作路径:左下角个人图像 - 设置 - 管理员设置 - 文档。主要修改配置内容:
- 语义向量模型引擎设置为 Ollama
- 语义向量模型设置为 bge-m3:latest
- 开启 混合搜索
- 重排模型 设置为 deepseek-r1
2. 设置 搜索引擎
操作路径:左下角个人图像 - 设置 - 管理员设置 - 联网搜索。主要修改配置内容:
- 开启启用联网搜索
- 设置 searxng搜索引擎为:http://服务器地址:8081/search?language=auto&time_range=&safesearch=0&categories=general
然后开始使用!
二、Google PSE(不想部署且能连外网,推荐)
首先戳我访问Google的可编程搜索引擎,点击添加按钮。
填好相关内容
点击自定义
复制你的 搜索引擎ID
然后去获取服务API密钥,戳我获取服务的API密钥
创建一个project,名称任意。
复制你的 API密钥
填入你的 搜索引擎ID 和 API密钥,保存。
选择联网搜索
三、DuckDuckGo(不推荐)
使用DuckDuckGo API进行Open WebUI内置的Web搜索不需要任何设置!DuckDuckGo在Open WebUI中开箱即用。
但是速度很慢,不太好用。