基于Ubuntu 的ollama+MaxKb知识库+m3e向量数据库部署

一、操作系统安装

选用 Ubuntu 22.04 LTS Server 版 ,安装过程略

自行配置连上互联网

机器IP: 192.168.128.104

二、安装nvidia显卡

2.1 查找显卡硬件

$ lspci | grep -i nvidia
01:00.0 VGA compatible controller: NVIDIA Corporation Device 2882 (rev a1)
01:00.1 Audio device: NVIDIA Corporation Device 22be (rev a1)

从上面结果中可以看到,系统中有一块nvidia显卡(Device 2882 = RTX 4070)
2.2 安装显卡驱动

$ sudo ubuntu-drivers autoinstall
# 这会自动安装推荐版本(580)。装完后重启电脑
$ sudo reboot
# 重启后验证驱动是否安装成功:
$ nvidia-smi
1776838938757.png

三、部署ollama

3.1 部署ollama

$ curl -fsSL https://ollama.com/install.sh | sh
# 时间较长,须耐心等待

3.2 运行模型
根据显卡型号,选择qwen7B 4-bit 量化

$ ollama run qwen2.5:7b

3.3 web界面【可选】
安装一个开源前端 Open WebUI:

docker run -d -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

然后浏览器打开 http://192.168.128.104:3000,就能看到一个类似 ChatGPT 的界面,直接选 Qwen 模型聊天。
3.4 查看ollama

$ ollama ps
NAME          ID              SIZE      PROCESSOR    CONTEXT    UNTIL
qwen2.5:7b    845dbda0ea48    4.9 GB    100% GPU     4096       4 minutes from now

$ nvidia-smi
1776843682927.png

可以看到,ollama已经自动地跑在RTX 4060上了
四、安装docker

# 1. 下载并执行官方安装脚本
curl -fsSL https://get.docker.com | sudo sh

# 2. 把当前用户加入 docker 组(免 sudo 运行 docker)
sudo usermod -aG docker $USER

# 3. 重新登录生效(或者直接运行下面的)
newgrp docker

# 4. 验证安装成功
docker --version

# 5. 配置国内镜像源:
$ sudo vi /etc/docker/daemon.json
{
  "registry-mirrors": [
    "https://docker.mirrors.ustc.edu.cn",
    "https://hub-mirror.c.163.com",
    "https://mirror.baidubce.com"
  ]
}
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker

五、安装Maxkb

5.1 安装

# 准备持久化目录
$ sudo mkdir /maxkb     &&   sudo chmod 777 /maxkb
$ sudo docker run -d --name=maxkb --restart=always -u root -p 8080:8080 -v /maxkb:/opt/maxkb cr2.fit2cloud.com/1panel/maxkb

访问: admin/MaxKB@123..

首次登录,会要求修改密码

5.2 下载向量模型M3E

MaxKb自带向量数据库:maxkb-embedding ,如果想要更尝试其它的向量模型,可以试试M3E
PS: 安装时要将其目录挂载到MaxKb容器的相同目录下,这样MaxKb才能访问到它!

# 下载镜像
$ docker pull registry.cn-hangzhou.aliyuncs.com/fastgpt_docker/m3e-large-api

# 准备挂载目录(与maxkb共享)
$ sudo mkdir /maxkb/model  &&  sudo chmod 777 /maxkb/model

# 临时运行一个容器,让它下载模型到内部
$ sudo docker run --name=m3e -d -p 6008:6008   registry.cn-hangzhou.aliyuncs.com/fastgpt_docker/m3e-large-api

# 先要把模型目录复制出来,否则后面带目录挂载时会报找不到文件
$  sudo docker cp m3e:/app/moka-ai_m3e-large /maxkb/model/
Successfully copied 1.47GB to /maxkb/model/

$ sudo docker stop m3e  && sudo docker rm m3e

# 带目录挂载
$ sudo docker run --name=m3e -d --restart=always -p 6008:6008 -v /maxkb/model/moka-ai_m3e-large:/app/moka-ai_m3e-large registry.cn-hangzhou.aliyuncs.com/fastgpt_docker/m3e-large-api

5.3 配置向量数据库
在MaxKb页面,添加模型--本地模型,模型类型选择:向量模型,基础模型与模型目录填写:/opt/maxkb/model/moka-ai_m3e-large

1776905014631.png

PS:这里的模型目录批的是maxkb容器内的目录,而非宿主机的目录

配置完成后的模型列表:


1776932572718.png

之后,在配置知识库时,可以修改向量模型为m3e。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容