DeepSeek+Maxkb+Ollama+Docker搭建一个AI问答系统
文章目录
- DeepSeek+Maxkb+Ollama+Docker搭建一个AI问答系统
- 前言
- 一、创建同一内网的网络
- 二、拉取两个镜像
- 三、启动Ollama以及调试Maxkb
- 4.Maxkb创建一个应用并建立知识库
- 5、应用效果
- 总结
前言
我觉得只要是使用Docker技术,一般来说都不难,我的思路很简单
Deepseek
只是一个模型而已Maxkb
的作用是本地知识库以及提示词设置Ollama
只是一个模型部署工具,可以开发Api给外部,但是安全风险有点大,不过,别把它的内网开放了就行,除非有人能从Maxkb的用户上登录并且能使用里面的python代码访问到Ollama,安全防护这一块自己去考虑就好了。Docker
就是懂一点命令和配置就能完成所有东西部署的技术。
一、创建同一内网的网络
创建一个docker的网络,命名为AI
创建网络:
docker network create AI
下面是删除网络并查看网络的内容
-
查看网络:
docker network ls
-
删除网络:
docker network rm AI
这个网络的步骤在于使Ollama
服务与Maxkb
的服务处于同一子网
二、拉取两个镜像
- 拉取Ollama镜像
docker run -d --gpus=all -e OLLAMA_KEEP_ALIVE=-1 --restart=always --network AI -v ~/.ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
挂载模型的地方在WSL里的~/.ollama
里
- 拉取Maxkb镜像
docker run -d --name=maxkb --network AI --restart=always -p 18080:8080 -v ~/.maxkb:/var/lib/postgresql/data -v ~/.python-packages:/opt/maxkb/app/sandbox/python-packages 1panel/maxkb
拉取过来后
挂载的postgreSQL的数据库文件在这~/.maxkb:/var/lib/postgresql/data
这样都进行了持久化以及处于同一内网,并且-e OLLAMA_KEEP_ALIVE=-1
设置了Ollama的模型一旦载入进Ollama就不会释放,除非直接停止Ollama或者停止使用模型。
三、启动Ollama以及调试Maxkb
- ollama拉取deepseek
ollama pull deepseek-r1:8b
- ollama拉取nomic-embed-text
ollama pull nomic-embed-text
- 运行deepseek模型
ollama run deepseek-r1:8b
让其一直保持服务,模型一直加载在GPU
使用一下模型
4.Maxkb创建一个应用并建立知识库
用户名:admin
默认密码:MaxKB@123..
- 创建应用
- 创建应用
- 点击创建模型
- 按照这个填好
ApIkey随便填
然后其他的自己去摸索就行
5、应用效果
总结
对于这个技术,只是一个部署的技术,其实要想做一个非常良好的问答系统,还需要从这个基础上去微调模型以及高级编排一些内容,这样的话才能应用到各个行业中去。