首页 » other » AI » Ollama结合open-webui部署DeepSeek(Linux离线安装版)

Ollama结合open-webui部署DeepSeek(Linux离线安装版)

 

DeepSeek已经火了很长一段时间了,但是相关文章眼花缭乱,其实博主在年前DeepSeek未爆火的时候已经体验过官方的满血版了,只不过爆火后服务器经常繁忙不可用,大家也可选择第三方的满血版使用。

本地化部署DeepSeek,会消耗大量算力,成本随着模型的大小而增加,其次本地的模型需要拥有专业能力的人去调整训练,否则准确度大大降低。

并且现在做AI相关的厂商也很多,有做API接口套壳、有做本地化模型训练,厂商的“大饼”远大于实际成果(自古深情留不住,只有套路得人心)。

关于Ollama、open-webui教程很多,大多数都是docker run一下就结束了,实际上并没有这么简单,如果你在国内通过docker跑open-webui,那么首先要解决run的问题,其次运行后大概率是白屏状态,这个问题几乎看不到有人提到,有人去讲,这样就给本地化体验的用户来说带来极大的困扰。

由于国内某些网络原因,导致在线安装经常失败,并产生一些错误,所以本文基于“离线方法”部署Ollama大型语言模型,以及利用open-webui图形化平台与Ollama交互。

Ollama是一个开源的用于管理和部署大型语言模型(LLM)的平台。它旨在简化用户在本地机器上使用和运行各种语言模型的过程,通俗点说,通过Ollama可以方便使用各种模型,DeepSeek仅仅是其中一种模型而已,如果为了使用方便,体验更好,可以对接个web页面,如open-webui。

注:web页面有很多种,open-webui仅是其中的一种而已。


当前系统:AnolisOS8,理论适用于opencloudos8、rockylinux8、almalinux8

ollama、open-webui版本:v0.5.4

一、Ollama离线安装

1、下载Ollama包(二选一)

通过github下载

https://github.com/ollama/ollama/releases/download/v0.5.4/ollama-linux-amd64.tgz

本地下载(v0.5.4版本)

https://down.whsir.com/downloads/ollama-linux-amd64.tgz

2、将下载好的包上传到服务器并解压

3、添加Ollama用户

4、创建启动服务

注1:User和Group结合实际情况填写,我这里使用的是ollama

注2:Environment="OLLAMA_HOST=127.0.0.1:11434"字段结合实际情况填写

5、启动服务并设置开机自启

6、查看ollama版本

ollama version is 0.5.4

此时ollama安装完成,接下来导入模型。

7、离线下载模型

deepseek-r1:1.5b离线包下载地址:http://down.whsir.com/downloads/deepseek-r1_1.5b.gguf

注1:在https://ollama.com/library/deepseek-r1可以看到,同样的模型分为1.5b、7b、8b、14b等等,这些数字表示模型中的参数数量。值越大,模型的数量越多,模型越复杂,请结合实际使用情况进行选择,我这里演示需要,我就以1.5b模型为例。

注2:如果网络允许,可以直接执行ollama run deepseek-r1:1.5b安装,网络不允许请下载我这里的离线包,我这里的离线包是通过网络允许的环境下,下载好后导出的。

8、导入模型

注:deepseek-r1_1.5b-q4_k_m是你自行起的名字,导入成功后就可以看到这个名字了,后续使用也是通过这个名字,该名字可以自行定义。

导入成功后会看到以下内容

transferring model data 100%
using existing layer sha256:aabd4debf0c8f08881923f2c25fc0fdeed24435271c2b3e92c4af36704040dbc
creating new layer sha256:369ca498f347f710d068cbb38bf0b8692dd3fa30f30ca2ff755e211c94768150
creating new layer sha256:6e4c38e1172f42fdbff13edf9a7a017679fb82b0fde415a3e8b3c31c6ed4a4e4
creating new layer sha256:f4d24e9138dd4603380add165d2b0d970bef471fac194b436ebd50e6147c6588
creating new layer sha256:a85fe2a2e58e2426116d3686dfdc1a6ea58640c1e684069976aa730be6c1fa01
writing manifest
success

9、查看模型

10、使用模型

此时可以直接提问,如你是谁。

Ctrl+d退出当前模型交互。

11、通过API调用模型接口

正常返回大概内容如下

二、open-webui离线安装

Open-WebUI是一个开源的WebUI,用于与各种机器学习模型和工具进行交互,网上大多数教程基本都是通过docker容器在线安装,由于网络因素,在安装过程中并不是那么顺利,并且安装完成后也可能因为网络原因导致其它的一些报错。

open-webui开源地址https://github.com/open-webui/open-webui

官方推荐的安装方式是docker,除此之外还可以使用python、Kubernetes等其它安装方法,详见官方文档:https://docs.openwebui.com/getting-started/quick-start

1、安装podman

因为podman不需要守护进程,使用起来比较方便,所以我这里使用podman来替代docker

挂载iso镜像,使用内网镜像源安装yum install podman,这步要是都不会,AI模型就不要玩了,非常基础的操作,不做过多说明。

2、创建数据存放目录

3、下载open-webui镜像

下载地址:https://down.whsir.com/downloads/open-webui-offline.tar

该镜像是我在香港服务器通过podman pull always ghcr.io/open-webui/open-webui:main得来,相比官方的版本仅更改了OpenAI API接口默认为关闭状态,你也可以自行制作导出离线包。

4、导入镜像

5、启动容器

使用以下方式启动服务(二选一)

①如果当前仅使用CPU,请使用下面命令,我这里更改为host方式启动,可以结合实际需求自行调整容器启动命令

②如果需要运行支持Nvidia GPU的open-webui,使用以下命令

6、访问open-webui

默认open-webui端口为8080,因为我这里以host方式启动,端口并没有映射,所以直接访问http://IP:8080登录

注:启动后要一会时间,请等待2、3分钟后查看8080端口是否启动,8080端口启动后访问即可。

点击中下方的开始使用

名称、电子邮箱、密码,自行配置,该配置文件存在本地库,因为我这个镜像默认配置关闭了OpenAI API接口,所以登录后不会出现白屏现象

关于访问后白屏问题见:https://blog.whsir.com/post-8021.html

如果想通过open-webui接入本地知识库的话,在工作空间→知识库→点击右边+号创建知识库,最后上传文件或者添加文件内容等即可,请结合实际情况配置一些参数,我这里仅简短说明。

使用本地知识库方法,在对话框中输入#号选择知识库,即可。

如果上传文件失败报错400:'NoneType' object has no attribute 'encode'见:https://blog.whsir.com/post-8055.html

附1:ollama离线包模型导出方法

使用ollama show --modelfile <model_name>命令查看模型的详细信息,如

从输出结果中可以看到模型的实际存储路径,格式类似

拷贝模型文件,如

导出配置文件,如

修改导出的配置信息,将FROM路径改成当前

即FROM行内容为FROM ./deepseek-r1_1.5b.gguf

附2:通过配置文件关闭OpenAI API接口方法

复制配置文件

找到以下字段

将ENABLE_OPENAI_API改为False,这样启动后默认就是关闭OpenAI API

将修改好的配置文件复制回去

附录3:open-webui离线包导出方法

通过容器导出镜像

导出open-webui镜像

 

原文链接:Ollama结合open-webui部署DeepSeek(Linux离线安装版),转载请注明来源!

0