AI 大模型本地化部署指南
本文详细介绍在 Linux 环境下,从零开始部署 AI 大模型应用的全流程。涵盖 Docker 环境配置、FastGPT 平台搭建、OneAPI 模型网关对接、Ollama 本地模型运行以及向量数据库集成实现知识库问答功能。
一、环境准备与工具说明
本教程主要涉及以下核心工具:
- Docker:容器化运行服务的基础环境。
- OneAPI:开源的 API 管理中间件,用于统一接入不同的大模型服务。
- FastGPT:基于 LLM 的可视化开发平台,支持知识库和 Agent 编排。
- Ollama:本地运行大模型的轻量级工具。
二、安装 Docker 环境
1. 安装 Docker Engine
若系统中已安装 Docker,可跳过此步。执行以下命令进行安装(建议使用阿里云镜像加速):
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
systemctl enable --now docker
2. 安装 Docker Compose
用于编排多容器应用。由于 GitHub 下载可能较慢,建议配置镜像源。
curl -L "https://github.com/docker/compose/releases/download/v2.20.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
3. 验证安装
启动 Docker 并检查版本信息:
sudo systemctl start docker
docker -v
docker-compose -v
若输出版本号,则表明安装成功。
三、部署 FastGPT 平台
FastGPT 提供了多种部署方式,推荐使用 Docker Compose 快速部署。
1. 创建项目目录
mkdir -p /usr/local/fastgpt
cd /usr/local/fastgpt/
2. 拉取配置文件
下载 docker-compose.yml 和 config.json 文件:
curl -O https://raw.githubusercontent.com/labring/FastGPT/main/files/deploy/fastgpt/docker-compose.yml
curl -O https://raw.githubusercontent.com/labring/FastGPT/main/projects/app/data/config.json
3. 启动服务
首次启动会自动拉取所需镜像,请耐心等待:
docker-compose up -d
四、配置 OneAPI 模型网关
为了统一管理模型接口,我们需要配置 OneAPI。初期可先使用线上免费额度进行测试。
1. 注册账号获取 Key
前往零一万物官网注册账号,并在 API Key 管理页面获取密钥。该密钥后续将用于配置渠道。
2. 登录 OneAPI 后台
浏览器访问 OneAPI 管理界面(默认端口通常为 3000),使用默认凭证登录:
首次登录建议修改密码,但为简化演示可直接进入【渠道】管理页。
3. 添加模型渠道
点击【添加新渠道】,填写以下信息:
- 渠道名称:自定义(如 ZeroOne-Test)
- API Key:填入刚才获取的密钥
- Base URL:根据官方文档填写对应的 API 地址
保存后点击【测试】按钮,若显示成功则配置生效。
五、配置 FastGPT 调用模型
1. 修改配置文件
在 /usr/local/fastgpt/projects/app/data/config.json 中找到 llmModels 字段。复制现有配置项,修改 model 和 name 字段以匹配 OneAPI 中配置的模型名称。
示例结构:
{
"llmModels": [
{
"model": "your-model-name",
"name": "Your Model Name",
...
}
]
}
修改完成后重启服务使配置生效:
docker-compose down
docker-compose up -d
2. 创建应用测试
浏览器访问 FastGPT 前端页面,使用默认账号登录(root/1234)。
- 点击【新建应用】。
- 在模型选择下拉框中,找到刚才配置的模型(如零一万物)。
- 点击【保存并预览】,即可开始对话测试。
六、部署 Ollama 本地大模型
为实现完全本地化的推理能力,我们引入 Ollama。
1. 安装 Ollama
使用官方脚本一键安装:
curl -fsSL https://ollama.com/install.sh | sh
2. 配置网络访问权限
Ollama 默认仅监听 127.0.0.1:11434。若需允许局域网内其他机器访问,需修改 systemd 服务配置:
编辑文件 /etc/systemd/system/ollama.service,在 Environment 行中添加或修改:
Environment="OLLAMA_HOST=0.0.0.0"
重载配置并重启服务:
systemctl daemon-reload
systemctl restart ollama
验证服务状态,浏览器访问 http://<服务器 IP>:11434 应能看到 Ollama 管理界面。
3. 拉取本地模型
通过命令行拉取所需的模型文件,例如 Qwen 系列:
ollama pull qwen:latest
查看已下载的模型列表:
ollama list
七、将本地模型接入 OneAPI
为了让 FastGPT 能够调用本地 Ollama 模型,需将其注册到 OneAPI 中。
1. 添加 Ollama 渠道
在 OneAPI 后台新建渠道:
- 类型:选择 Ollama
- 模型名称:手动输入
ollama 中下载的模型名(如 qwen),确保拼写完全一致。
- 密钥:固定填写
sk-key
- 代理地址:填写 Ollama 服务地址,如
http://127.0.0.1:11434
2. 测试连接
提交配置后,点击【测试】按钮确认连通性。成功后,重复第五步的操作,在 FastGPT 的 config.json 中添加该模型配置并重启服务。
八、集成向量模型与知识库
要实现基于私有数据的问答(RAG),需要引入向量嵌入模型。
1. 部署 M3E 向量模型
使用 Docker 部署 FastGPT 提供的 M3E 向量 API 服务:
docker run -d registry.cn-hangzhou.aliyuncs.com/fastgpt_docker/m3e-large-api:latest
2. 配置向量渠道
在 OneAPI 中新建渠道:
- 类型:OpenAI
- 模型名称:
m3e
- 密钥:
sk-aaabbbcccdddeeefffggghhhiiijjjkkk
- 代理地址:
http://<IP>:<Port> (根据实际容器映射端口)
3. 更新 FastGPT 配置
修改 config.json,在 vectorModels 字段中添加向量模型配置。同时,确保之前添加的本地语言模型中将 datasetProcess 设置为 true,以便支持知识库处理。
4. 创建知识库与应用关联
- 在 FastGPT 中进入【知识库】模块,新建知识库。
- 索引模型选择刚配置的
m3e。
- 文件处理模型选择本地 Ollama 模型。
- 上传测试文档或手动录入文本数据。
- 在应用中关联该知识库,保存并预览。
此时,向应用提问与知识库内容相关的问题,系统将自动检索并生成回答。
九、常见问题与优化建议
1. 性能调优
- 显存限制:本地部署时,注意显卡显存是否足够加载模型。若显存不足,可选择量化版本(如
q4_k_m)。
- 并发控制:OneAPI 支持设置限流策略,防止单个请求占用过多资源。
2. 网络排查
- 若无法连接外部模型,请检查防火墙设置及代理配置。
- 本地 Ollama 服务若无法被 FastGPT 访问,请确认
OLLAMA_HOST 环境变量已正确生效且服务处于运行状态。
3. 知识库效果提升
- 若回答不够准确,可尝试调整切片大小(Chunk Size)或更换更强大的向量模型。
- 利用高级编排功能,结合 Prompt 工程优化上下文理解能力。
十、总结
通过以上步骤,我们完成了从基础环境搭建到本地大模型知识库集成的全过程。该方案实现了数据的本地化处理,保障了隐私安全,同时降低了 API 调用成本。后续可根据业务需求,进一步探索多模态支持、Agent 自动化工作流等高级功能。