本文较长,建议点赞收藏,以免遗失。更多AI大模型开发学习视频及资料,
都在这>>Github<<
前言
自从 DeepSeek-R1
火出圈以来,很多个人和公司开始尝试本地化部署,以解决原来一些内部资料安全和隐私问题;我们也尝试在本地进行相关部署,以验证本地知识库是否可行,最终达到以下目的:
- 所有知识库内容不通过公网流转;用户可以通过和智能助手聊天的方式来了解各种内部知识;在不增加太多的成本下实现;
技术原理
前置概念了解
大模型
- 系统推理模型Embedding 模型Rerank 模型语音转文字模型
本地模型调度
- OllamavLLM
流程编排
- Dify
知识库
- RAG
硬件及环境准备
主机 | 配置 | 必备软件 | 说明 |
---|---|---|---|
192.168.10.1 | 显卡:支持 CUDA 的显卡均可,显存根据模型大小选择,推荐大小 48G 显存 | ||
CPU:不限 | |||
内存:大于8G |
注:如果没有足够大的显存,ollama
会使用内存和CPU进行模型调度,但速度非常慢; | - | 用于安装 Ollama
|
| 192.168.10.2 | CPU:4核
内存:大于16G | Docker
,Git
| 用于安装 Dify
|
模型选择
模型 | 作用 |
---|---|
qwq | 用于推理 |
deepseek-r1:32b | 用于推理(备选) |
bge-m3 | 用于处理知识库嵌入向量 |
qwen2.5:14b | 用于分词 |
开始本地部署
安装 Ollama
Ollama
可以很好的管理和调度本地大模型,安装也相对简单;
官网下载地址:Download Ollama on macOS ;
根据操作系统选择合适的安装即可;
安装完成后需配置几个环境变量:
OLLAMA_HOST
- 设置为
0.0.0.0
表示所有主机都可以访问,当非本机访问时需要设置OLLAMA_KEEP_ALIVE
- 表示模型在显存中保存的时间,设置为
24h
表示保留 24
小时OLLAMA_MAX_LOADED_MODELS
- 同时加载模型最大数量,大于这个数量最早加载的模型会被卸载
OLLAMA_MODELS
- 模型文件保存目录,
windows
默认在 C
盘,建议指定一个速度快的磁盘因模型文件很大,需要有足够的空间Ollama
安装完成后,可以开始下载模型,可到官网进行模型选择:Ollama Search
使用以下命令下载模型:
ollama pull deepseek-r1:32b
模型文件非常大,下载时需要保持网络畅通;
模型文件下载完成后,使用以下命令进行使用测试:
ollama run deepseek-r1:32b
如果成功运行就可以进行对话了;
需要下载以下模型:
- qwqbge-m3qwen2.5:14b
安装 Dify
如果只有 Ollama
无法很好的进行日常使用,还需要上层的工具来进行管理,这里就用到了 Dify
官网介绍
Dify 是一款开源的大语言模型(LLM) 应用开发平台。它融合了后端即服务(Backend as Service)和 LLMOps 的理念,使开发者可以快速搭建生产级的生成式 AI 应用。即使你是非技术人员,也能参与到 AI 应用的定义和数据运营过程中。
由于 Dify 内置了构建 LLM 应用所需的关键技术栈,包括对数百个模型的支持、直观的 Prompt 编排界面、高质量的 RAG 引擎、稳健的 Agent 框架、灵活的流程编排,并同时提供了一套易用的界面和 API。这为开发者节省了许多重复造轮子的时间,使其可以专注在创新和业务需求上。
目前 Dify
社区版的主要安装方式是使用 Docker Compose
,详情可参考官网:
克隆 Dify 源代码```
git clone github.com/langgenius/…
进入 Dify 源代码的 Docker 目录,并复制示例配置文件
cd dify/docker cp .env.example .env
启动 Dify
docker compose up -d
第一次需要从网络上拉取很多内容,所以速度比较慢,需耐心等待
观察所有容器的状态,没有错误表示启动完成,类似这样:
[+] Running 11/11 ✔ Network docker_ssrf_proxy_network Created 0.1s ✔ Network docker_default Created 0.0s ✔ Container docker-redis-1 Started 2.4s ✔ Container docker-ssrf_proxy-1 Started 2.8s ✔ Container docker-sandbox-1 Started 2.7s ✔ Container docker-web-1 Started 2.7s ✔ Container docker-weaviate-1 Started 2.4s ✔ Container docker-db-1 Started 2.7s ✔ Container docker-api-1 Started 6.5s ✔ Container docker-worker-1 Started 6.4s ✔ Container docker-nginx-1 Started 7.1s
启动完成后,即可访问这台主机:
http://192.168.10.2
第一次访问会提示创建管理员用户,输入需要的用户名和密码完成配置;