【人工智能】Open WebUI+ollama+deepSeek-r1 本地部署大模型与知识库

目录

一 、命令行下载安装

二、运行

三、添加开机自启服务 ollama serve

四、重新加载配置、重启ollama server

五、查看模型文件信息

六、 添加open-webui

七、 配置open webui

八、创建自己知识库

九、网络加密优化

十、大工告成,大家如果有问题可以私信我


Ollama下载安装地址:Download Ollama on Linux

一 、命令行下载安装

 通过官方网址命令来运行下载ollama

curl -fsSL https://ollama.com/install.sh | sh

二、运行

1、启动 ollama 服务
ollama serve
2、运行大模型
#测试安装是否成功
ollama --version
#ollama run <模型名称>;我这里是L40显卡,运行一个32B的deepseek;
#如果你的电脑配置GPU配置不足。可以运行更小参数的如7b 、8b;替换一下32b的参数即可

ollama run deepseek-r1:32b

三、添加开机自启服务 ollama serve

1 关闭 ollama 服务
#关闭 ollama 服务
 service ollama stop
2 、修改配置文件
#修改配置文件
sudo gedit /etc/systemd/system/ollama.service

1 把User改为 你的linux系统用户名 ,Group 改为 你的linux用户组
2 添加 Environment="OLLAMA_MODELS=/path/ollama_cache" 改为你的路径
3 添加 Environment="OLLAMA_HOST=0.0.0.0:11434" 配置ollama 服务监听所有IP和端口

[Unit]
Description=Ollama Service
After=network-online.target

[Service]
ExecStart=/usr/local/bin/ollama serve
User=你的linux用户名
Group=你的linux用户组
Restart=always
RestartSec=3
Environment="OLLAMA_MODELS=/path/ollama_cache"
Environment="OLLAMA_HOST=0.0.0.0:11434"
Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"

[Install]
WantedBy=default.target

四、重新加载配置、重启ollama server

#重新加载配置

sudo systemctl daemon-reload

#重启ollama server

sudo systemctl start ollama

五、查看模型文件信息

#查看模型信息
ollama list

六、 添加open-webui

1、docker 拉取现有的镜像,创建容器运行
#修改/etc/docker/daemon.json
{
  "registry-mirrors": [
    "https://docker.1ms.run",
    "https://docker.1panel.live/"
  ]
}
#使用docker进行安装,因为使用本地的deepseek。所以创建时候默认关闭了openai的外网访问
run -d -e ENABLE_OPENAI_API=0  -p 3000:8080   --add-host=host.docker.internal:host-gateway   -v open-webui:/app/backend/data   --name open-webui   --restart always   ghcr.io/open-webui/open-webui:main

七、 配置open webui

1、访问open webui 创建管理员账号

浏览器访问地址:http://ip地址:3000

第一次输入的账号、电子邮箱、以及密码是管理员的

2、管理员面板核心功能
  1. 用户管理
    • 路径‌:左侧导航栏进入 ‌Admin Panel > Users
    • 操作项‌:
      • 添加用户:设置用户名、密码、邮箱及用户类型(管理员/普通用户/待激活)‌2
      • 权限分配:通过 Roles 设置用户模型访问权限(如禁用模型下载或删除权限)‌24
      • 密码重置:支持批量生成临时访问令牌‌
  2. 用户组权限配置
    • 路径‌:‌Admin Panel > Permission Groups
    • 配置逻辑‌:
      1. 创建新权限组(如 研发组
      2. 勾选 ‌访问模型列表‌ 等基础权限
      3. 在 ‌用户‌ 选项卡关联成员账号‌

3‌、模型可见性控制

1、点击设置->选择外部连接:因为是本地部署,这里关闭了openAI API 功能选项,打开本地的Ollama API连接,配置连接地址:http://host.docker.internal:11434

2、点击设置->选择模型:这里列出了ollama运行的所以模型。

点击对应的模型可以进行配置;

4、知识库文档配置

这里选择文档,对本地知识库内容搜索引擎及语义向量模型进行配置:

这里内容提取引擎是部署的本地化的Tika;语义向量模型使用的是默认的(建议换成:shaw/dmeta-embedding-zh:latest或者bge-m3:latest 模型引擎)

1、本地部署Tika引擎
#使用docker部署 端口9998
docker run -d   --name tika   -p 9998:9998   apache/tika:latest

5、联网搜索配置

联网搜索模块我使用的是tavily;  

我查阅了一些资料,有人说searxng比较好用,而且可以本地部署;我本地部署了一个,结果不能用。

不得以才使用的tavily。tavily缺点是得去官网申请api key;且申请的过程相对繁琐,一般人就直接放弃了可能;

1、本地部署searxng引擎
#使用docker进行拉取镜像并运行
docker run -d -p 8888:8080 searxng/searxng

通过http://localhost:8888即可访问:

6、语音和图形引擎配置

这一块语音建议配置openai的或者自行搭建。稍微比较繁琐;

图形使用Gmini

八、创建自己知识库

选择工作空间---知识库---点击+号命名一个知识库空间;然后上传文档即可

然后按照第八步骤中第四:配置文档知识库,在选择的模型中管理知识库即可

还有一种方法就是在会话聊天中,输入#号可以调用知识库+模型来进行回答

九、网络加密优化

将http://localhost:3000访问地址优化为:https:dns域名来进行访问

准备工作
1、将公司证书上传至服务器

将证书文件xxxx.com.cn.pem(需包含完整证书链)和私钥xxxx.com.cn.key上传至服务器,建议存放路径:

sudo mkdir -p /etc/nginx/ssl/deepseek
sudo cp xxxx.com.cn.pem /etc/nginx/ssl/deepseek/
sudo cp xxxx.com.cn.key /etc/nginx/ssl/deepseek/
2、验证证书链完整性(可选)
openssl x509 -in /etc/nginx/ssl/deepseek/xxxx.com.cn.pem -text -noout
安装并配置Nginx
1、安装nginx
sudo apt update && sudo apt install nginx -y

2、创建Nginx配置文件
新建配置文件/etc/nginx/sites-available/deepseek.conf,内容如下:

#注意将以下域名地方进行更改成自己的域名
server {
    listen 443 ssl;
    server_name deepseek.xxxx.com.cn;

    ssl_certificate /etc/nginx/ssl/deepseek/xxxx.com.cn.pem;
    ssl_certificate_key /etc/nginx/ssl/deepseek/xxxx.com.cn.key;
    ssl_session_timeout 1d;
    ssl_session_cache shared:MozSSL:10m;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256;
    ssl_prefer_server_ciphers off;

    location / {
        proxy_pass http://localhost:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        chunked_transfer_encoding off;
        # 关闭代理层缓冲(必须)
        proxy_buffering off;
        proxy_buffer_size 16k;
        proxy_buffers 4 64k;
        # 保持长连接与流式数据支持
        proxy_http_version 1.1;
        proxy_set_header Connection '';
        proxy_set_header Host $host;
        # 流式响应超时配置(可选调整)
        proxy_read_timeout 24h;
        proxy_ssl_server_name on;
        proxy_ssl_verify off;  # 自签名证书可临时关闭验证
        proxy_send_timeout 86400s;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Sec-WebSocket-Version 13;
    }
}

server {
    listen 80;
    server_name deepseek.xxxx.com.cn;
    return 301 https://$host$request_uri;
}
启用配置并测试
sudo ln -s /etc/nginx/sites-available/deepseek.conf /etc/nginx/sites-enabled/
sudo nginx -t  # 检查配置语法
sudo systemctl reload nginx

十、大工告成,大家如果有问题可以私信我

### OpenWebUI Knowledge Base Resources Documentation #### 关于OpenWebUI知识库文档和资源获取途径 对于希望深入了解OpenWebUI这一工具或平台的开发者而言,存在多种渠道可以访问到详尽的技术资料和支持服务。尽管特定于OpenWebUI的信息可能不像一些主流框架那样广泛分布,但仍可通过以下几种方式获得必要的帮助: 1. **官方网站社区论坛** 官方网站通常是寻找最新版本发布说明、安装指南以及常见问题解答的最佳起点。许多项目还会维护活跃的讨论区,在那里用户能够其他使用者交流经验心得,并向开发团队寻求技术支持。 2. **GitHub仓库** 如果OpenWebUI托管在一个公共代码托管平台上(如GitHub),那么其存储库将是不可或缺的学习资源之一。这里不仅包含了项目的源码实现细节,还有详细的README文件介绍如何构建环境、运行测试案例等重要信息[^2]。 3. **第三方教程和技术博客** 随着越来越多的人参到开源软件生态系统的建设当中,网络上也出现了大量由个人撰写的关于使用各种技术栈的文章分享。这些非正式但极具价值的内容往往能提供不同于官方视角的独特见解,有助于加深理解复杂特性背后的原理[^4]。 4. **在线课程和视频讲座** 对于偏好通过多媒体形式学习的人来说,YouTube和其他教育平台上或许能找到专门针对OpenWebUI制作的教学系列。这类资源通常会按照难度分级编排章节,适合不同层次的学习者按需选取合适部分观看学习。 为了更高效地定位所需材料,建议利用搜索引擎时加上`site:`限定符指定目标站点范围;同时关注相关话题下的标签动态,及时捕捉新发布的优质帖子链接。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值