大模子本地化部署(Ollama + Open-WebUI)

打印 上一主题 下一主题

主题 884|帖子 884|积分 2652

情况准备

下载Ollama

  下载地址:Ollama网址
  安装完成后,命令行里执行命令
  1. ollama -v
复制代码
查察是否安装成功。安装成功会表现版本信息

ollama 的命令可通过 ollama -h 查察。
模子下载

  可以在 Ollama 网站的 Models 里查察公开的大模子(网址),也可以从大模子镜像源站 HF-Mirror 下载。
  以 Ollama 网站为例,点进一个大模子(如最近大火的 DeepSeek R1)

如图右下角的 ollama run deepseek-r1 就是下载命令,在第一次执行该命令时,ollama 将从网站下载大模子,在下载完成后,再执行这一命令就会加载模子,并进入交互模式:

:大部分模子都是有内容审查的,这很多时间限制了我们的利用灵活性,可以寻找带有 abliterated 后缀的模子,这些模子被注释了审查代码。(不过本人尝试发现 abliterated 版本的实际上仍存在审查机制,会拒绝答复某些问题)
下载Open-WebUI

  网上其他教程安装 Open-WebUI 一般都是在捏造机 Docker 下安装的,这在 Windows 系统里很不方便。这里提供另外一种方法:首先安装 Python 3.11,然后在命令行里执行
  1. pip install open-webui
复制代码
即可完成 open-webui 的安装。
本地化部署的Web图形化界面

  首先,需要开启 Ollama 服务,运行一个大模子,在命令行里执行
  1. ollama run 大模型名
复制代码
其中模子名可以通过 ollama list 查察。启用 ollama 服务后,可以利用
  1. ollama ps
复制代码
命令查察当前运行的模子进程。
  随后再打开一个命令行,执行如下命令启用 open-webui 服务
  1. open-webui serve
复制代码
启动后可以在欣赏器里输入以下地址,打开 Web 图形化界面:
  1. localhost:8080
  2. (本机IP):8080
复制代码
其中第二个地址可以在局域网内的其他设备访问
  Open-WebUI 的界面如下

本地化部署完成!
本地模子联网查询

  未联网的情况下,很多问题大模子无法解决,答复也比较蠢(还会胡说),因此需要增长联网查询功能。
安装 Docker

  安装 Docker Desktop 即可(网址 Docker)。安装后用以下命令查询是否安装完成:
  1. docker -v
复制代码
安装 SearXNG

  执行如下命令拉取 SearXNG (一个可以本地部署的轻量化搜索引擎)
  1. docker pull searxng/searxng
复制代码
不过这个命令由于网站无法连接,下载每每失败,可以利用镜像源:
  1. docker pull docker.m.daocloud.io/searxng/searxng
复制代码
安装完成后即可在 Docker Desktop 里查察到 SearXNG Image:

  执行如下命令(末了面一串是 Image Name,注意要和你的 SearXNG 名字相同),将服务开在了端口 12345
  1. docker run -d -p 12345:8080 docker.m.daocloud.io/searxng/searxng
复制代码
随后可以在 Docker Desktop 的 Container/App 界面查察到运行的 SearXNG,表现运行在 12345 号端口。在命令行里利用
  1. docker ps
复制代码
命令也可以查察到运行中的 docker 镜像进程。
  在欣赏器访问 localhost:12345,可以看到 SearXNG 服务已开启。

用默认设置的 SearXNG 很可能搜索不到东西,可以在设置里修改搜索引擎,改成大陆可以访问的那几个。
本地模子联网查询

  在 open-webui 界面下,用户->管理员面板->设置 里面,设置搜索引擎如下,并保存设置

此时扣问问题,联网查询可能会报 403 错误,需要修改一个设置文件。执行
  1. docker ps
复制代码
查察 searxng 服务的 CONTAINER ID 号,随后执行以下命令(命令中的 <CONTAINER_ID> 替换为你 SearXNG 的 CONTAINER ID)
  1. docker exec -it <CONTAINER_ID> sh
复制代码
进入到镜像目录,随后进入 /etc/searxng/ 目录,利用 vi 修改 settings.yml 文件,在 formats 下面增长一行(- json)

修改文件后保存,然后 restart 容器。

  修改 settings.yml 后,open-webui 联网查询不再报 403 错误,但可能报 Expecting value: line 1 column 1 (char 0) 错误(这是由于返回值格式不满足 json 格式导致的分析错误)或 RemoteDisconnected('Remote end closed connection without response') 错误,笔者目前还没有找到好的解决方法,日后若解决了再补上这里。
(U•ェ•*U )

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

钜形不锈钢水箱

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表