Ollama + MaxKB 实现本地大模型知识库RAG

相关项目

Ollama 我在之前这篇帖子中讲过:

MaxKB:

安装

Ollama 按照上面的帖子安装即可

MaxKB 通过以下命令启动:

docker run -d -p 8080:8080 -e OLLAMA_PROXY_URL=http://host.docker.internal:11434/v1 1panel/maxkb 

这个命令在官方原版的命令上改进了一下,加了 -e OLLAMA_PROXY_URL=http://host.docker.internal:11434/v1

这是为了设置环境变量OLLAMA_PROXY_URLhttp://host.docker.internal:11434/v1,用于配置容器内部的应用程序,使其知道如何连接到外部服务。host.docker.internal是一个特殊的DNS名称,它用于容器内部访问宿主机的IP地址。

因为我们后续要让容器内部的 MaxKB 访问宿主机的 Ollama 服务,所以加上这个配置项

运行

首先检查 Ollama 是否成功运行

Ollama 默认会在 http://127.0.0.1:11434/ 运行,访问这个 URL,如果出现 “Ollama is running” 字样则表示成功启动

然后访问 MaxKB,访问 http://127.0.0.1:8080,进入 MaxKB 页面

默认登录信息
用户名:admin
默认密码:MaxKB@123..

添加模型

进入系统之后添加 Ollama 模型:

这里的模型名字可以通过 ollama list 查看:

添加知识库

点击 知识库 - 创建知识库:

后续创建过程很简单,省略

创建应用

最后点击 应用 - 创建应用:

在应用里面选对应的模型和知识库即可

结果演示

最后展示一下我创建的应用 demo:

已经可以正常对话,虽然因为是本地运行速度比较慢,但是也可以接受

题外话: 对于有些可以开卷但是不能联网的课程来说,本地大模型RAG绝对是非常好用,完美满足了离线需求:smiling_face_with_three_hearts:

卓哥也可看看这个本地RAG,THU的DB-GPT: eosphoros-ai/DB-GPT: AI Native Data App Development framework with AWEL(Agentic Workflow Expression Language) and Agents (github.com)