本地跑 Ollama 的人常卡在同一件事:模型能聊天,但一涉及新消息、当日行情、站外资料就开始编,因为它压根没联网。这时你会去 WebUI 里翻设置,发现搜索开关要么找不到,要么填了一堆参数还是报错。这篇按「搜索能力从哪来、在 WebUI 哪里配、配完怎么验证、不通怎么排查」的顺序讲一遍,只在需要核对版本与参数时给站内路径,具体数值以你机器上的实际情况为准。
本地跑 Ollama 的人常卡在同一件事:模型能聊天,但一涉及新消息、当日行情、站外资料就开始编,因为它压根没联网。这时你去 WebUI 里翻设置,发现搜索开关要么找不到,要么填了一堆参数还是报错,最后只能在「凑合用」和「干脆放弃」之间二选一。
下面按「搜索能力从哪来、在 WebUI 哪里配、配完怎么验证、不通怎么排查」的顺序讲一遍。凡是涉及版本差异和参数位置的部分,一律给站内路径让你自己去核对,具体数值以你机器上的实际情况为准。
先搞清「联网」是谁在联网
Ollama 本身只管推理和模型加载,它不提供搜索能力。你在 WebUI 里看到的联网,本质是前端调了某个搜索服务,把结果拼进上下文再喂给模型。所以「ollama 能不能联网」这个问题问错了对象,该问的是你的 WebUI 背后接没接搜索后端。
- 接搜索 API:需要一个 key,配置项通常是一个输入框加一个下拉选择
- 接自建搜索或爬取服务:需要另一个进程常驻,配置项是服务地址
- 两者都接:先走自建,失败再回落 API,配置项会多一层优先级
- 判断依据很简单,WebUI 里那个搜索开关旁边有没有让你填 key 或地址,有就是外接,没有就是没接
在 WebUI 里把搜索链路配起来
- 确认基础连接先看 WebUI 与 Ollama 的连通性没问题,模型列表能正常拉到。否则后面报错分不清是搜索的问题还是连接的问题。
- 填搜索提供方在管理面板的搜索设置里选定提供方,把 key 或自建服务地址填进去,保存后先点测试按钮,不要直接回对话页。
- 打开会话开关到对话页手动打开联网开关。很多「配了没生效」其实是单次会话没开,这个开关通常不跟着设置走。
- 做一次真实验证用一个明显需要新信息的提问试探,看回复里有没有引用来源。有来源链接才算真的走通,只看回答流畅度会被模型骗过去。
| 配置项 | 填什么 | 填错的表现 |
|---|---|---|
| 提供方类型 | 下拉选 API 或自建 | 选错后测试按钮直接报错 |
| 密钥/地址 | key 或内部服务地址 | 地址写成 localhost 在容器里必然失败 |
| 会话开关 | 对话页手动勾选 | 设置里配好了但回答没有来源 |
| 超时设置 | 按网络状况放宽 | 搜索有结果但等不到返回就被截断 |
验证走没走通,以及它管不了什么
验证只看两个信号:引用和延迟。回答里带来源编号或链接,说明搜索确实参与了;一条来源都没有却在讲新消息,多半是模型凭记忆在答。联网比不联网明显慢是正常的,但慢到超时且无结果,问题在搜索服务而不是模型本身。
- 搜索
- 补「新信息」,解决模型知识截止之后发生的事
- 知识库
- 补「私有数据」,解决模型压根没见过你内部资料的问题
- 两者混用
- 指望搜索去查公司内部文档,一定会失败,该走知识库
- 判断标准
- 部署方式一变,地址、超时、开关位置都可能跟着变,没有万能配置
容器化部署是这里最大的变量。容器内的内部地址和宿主机地址不是一回事,同一个服务在宿主机上能访问,在容器里写 localhost 就必然连不上。这类坑要放在最前面排,不然会把简单问题当成 WebUI 的 bug 反复折腾。
连不上时按这个顺序排查
- 查网络可达性看 WebUI 容器或进程能不能访问到搜索服务的地址。同一网络内用内部域名,跨容器别写 localhost。
- 查密钥与额度key 是否有效、额度是否用完。这类问题报错通常很短,容易被当成网络故障放过去。
- 查网络出口本地环境走代理时,搜索服务的请求不一定跟着走代理,被出口挡住是常见原因。
- 查版本与配置项最后才怀疑 WebUI 版本与配置项对不上,版本差异带来的字段位置变化去站内文档核对。到站内工具目录里找找有没有更省事的替代方案。
- 先确认 Ollama 本体可用,再谈搜索,顺序别反
- 配置完先点测试,再回对话页验证
- 验证看引用来源,不看回答是否流畅
- 排查从网络可达性开始,最后才怀疑版本
- 容器与宿主机地址不通用,这是高频坑
搜索走没走通,看的是回复里有没有来源,而不是回答读起来顺不顺。下一步各家工具的联网支持情况、接入方式和实测表现都整理在站内工具目录里,配置前先看一眼能省掉不少试错;顺手也可以在价格与模型资料页确认你当前用的方案在搜索链路上有没有额外限制。→
常见问题
Ollama 自己能不能联网?
不能。Ollama 的角色是把本地模型跑起来并提供接口,联网这件事得由外层的 WebUI 或你写的调用代码去接搜索服务。所以「怎么让 Ollama 联网」这个问题,实际要解决的问题是「怎么让 WebUI 联网」。
配好搜索后回答还是没来源,一般是什么原因?
按这个顺序看:单次对话的联网开关有没有打开;提问方式是不是根本不需要联网(模型凭记忆就答了);搜索服务是否返回了结果但没被拼进上下文。前两个最常见,先排掉再去看搜索服务本身的返回。
联网搜索和挂知识库,是不是有一个就够了?
两者补的东西不一样。搜索补的是时效性信息,知识库补的是你自己的私有资料。只做内部文档问答可以不上搜索;只做新闻资讯类问答可以不上知识库。都要的话就是两条链路分别配,排错时也要分开排。