初步本地跑通RAG知识库(一):Docker+Dify+Ollama+Xinference
Updated on
环境
Win11 Processor:Intel(R) Core(TM) Ultra 5 235U 2.00 GHz集显 Installed RAM:32G 没有独显。
安装Docker
直接进入官网安装 Docker Desktop,Docker 和 Docker Compose 都内置在一起1。
安装Dify
在你心仪的文件夹地址里输入cmd,直接进入cd到该地址的终端:
- 克隆 Dify 源码到本地:
git clone https://github.com/langgenius/dify.git
- 进入 Dify 的 Docker 目录:
cd dify/docker
- 复制环境变量配置文件:
copy .env.example .env
- 启动 Docker 容器:
docker compose up -d
如果拉取失败,可以进入docker的设置,在Docker Engine设置镜像:
{
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"experimental": false,
"registry-mirrors": [
"https://docker.1ms.run",
"https://dockerproxy.net"
]
}
如果还是不行,可以重启Docker,这样就能清理掉卡死的网络连接,重新d一下2。
进入Dify:http://localhost/
部署Ollama
直接在官网下载ollama,在聊天窗口选择心仪的模型,随便发个hi就开始自动下载了。3
或者也可以进入Ollama官网,检索到心意的模型名称,直接在终端里pull 模型名称就行。
如果你想更改模型位置,可以直接在GUI的设置里修改。
部署Xinference
- 在docker下载最新版Xinference
docker run -e XINFERENCE_HOST=0.0.0.0 -p 9997:9997 --gpus all xprobe/xinference:latest xinference-local -H 0.0.0.0
这个是无显卡版本:
docker run -e XINFERENCE_HOST=0.0.0.0 -p 9997:9997 xprobe/xinference:latest xinference-local -H 0.0.0.0
- 使用Modelscope的镜像加速重新启动
docker run -e XINFERENCE_HOST=0.0.0.0 -p 9997:9997 -e XINFERENCE_MODEL_SRC=modelscope xprobe/xinference:latest xinference-local -H 0.0.0.0
- 更改模型位置。 现在下载的模型在 Docker 容器“肚子”里。如果删除了容器,模型就没了。可以挂载到本地磁盘:
docker run -e XINFERENCE_HOST=0.0.0.0 -p 9997:9997 -v D:\xinference_models:/root/.xinference/cache -e XINFERENCE_MODEL_SRC=modelscope xprobe/xinference:latest xinference-local -H 0.0.0.0
- 进入
http://localhost:9997/,直接找到你心仪的模型,点击launch。
在Dify中使用模型
在设置/模型供应商找到Ollama,安装好插件即可配置模型。4
- 确定模型名称。
Ollama:把NAME下的字段一字不差地填进去:
ollama list
Xinference:
进入http://localhost:9997/到Register Model即可找到模型ID,在View Datails可找到Model UID。
- 基础 URL。这个是Docker Desktop 提供的特殊域名,专门让容器访问你的宿主机。不是
localhost,也不是127.0.0.1:
http://host.docker.internal:11434
其他配置简单的很,Ollama和Xinference都差不多,有手就行。不知道行不行就先填进去再说,能保存就是配置成功。
常用命令
docker compose down
docker compose up -d