
Deepseek 本地部署及局域网共享使用
Deepseek本地部署及局域网范围,本地知识库
目录
一、 前言
1.1 本地部署意义
在线部署意味着模型需要连接到互联网才能运行,而离线部署则是在本地设备上运行,不需要网络连接。
在目前DeepSeek的网站中,极不稳定,总是服务器繁忙,这时候本地部署就可以有效规避问题。
优势
- 提升稳定性:不请求网络,避免服务器繁忙的问题。
- 提高安全性:不联网,部署在本地,个人数据隐私性大大提高。
- 定制化:可以自行训练大模型,打造属于自己专业的“玩伴”。
- 低成本:打开网页就可以问,没有什么多余成本。
劣势
- 高成本:前期部署需要一定时间,如果换模型又需要下载。
- 局限性:一般自己用的计算机CPU、GPU性能十分有限,绝大多无法支撑DeepSeek完全体。
- 灵活性差:在线版是DeepSeek官方维护的,一直在迭代和提升能力,本地无法第一时间跟上官方优化的步伐。
1.2 本次部署环境
CPU: INTEL® XEON® PLATINUM 8568Y+ 48 Core *2
内存: 5600 MT/s 64G * 16 = 1024G
显卡:NVIDIA L20 *8
OS: CentOS 8U5 With Kernel 4.18.0-348.el8.x86_64
1.3 Deepseek 部署配置要求
根据部署配置要求及结合本次部署环境,最终选择70B模型类型为本次部署版本
二、本地部署步骤
2.1 安装ollama
ollama是一个开源的人工智能框架,旨在为开发者提供一个灵活、高效的工具,可以轻松将大语言模型集成到自己的应用中。
-
自动安装
curl -fsSL https://ollama.com/install.sh | sh
-
手动安装
Note
如果你是从之前的版本升级,请首先使用以下命令删除旧的库:sudo rm -fr /usr/lib/ollama
-
下载并解压
curl -L https://ollama.com/download/ollama-linux-amd64.tgz -o ollama-linux-amd64.tgz sudo tar -C /usr -xzf ollama-linux-amd64.tgz
-
将Ollama添加为启动服务(推荐)
为Ollama创建一个用户和组
sudo useradd -r -s /bin/false -U -m -d /usr/share/ollama ollama sudo usermod -a -G ollama $(whoami)
在/etc/systemd/system/ollama.service 中创建一个服务文件:
[Unit] Description=Ollama Service After=network-online.target [Service] ExecStart=/usr/bin/ollama serve User=ollama Group=ollama Restart=always RestartSec=3 Environment="PATH=$PATH" [Install] WantedBy=default.target
-
启动服务
sudo systemctl daemon-reload sudo systemctl enable ollama
-
开启Ollama服务
sudo systemctl start ollama sudo systemctl status ollama
-
2.2 下载Deepseek-R1的不同版本模型
-
点击ollama官网左上方的“Models" 按键进入模型页面
-
选择Deepseek-R1模型进入下载页面
- 进入页面后点击下拉菜单,可以看到多个版本。这里根据自己部署电脑的配置和网速进行选择, 本文使用8*L20 GPU所以选项70b模型,然后点击下图标注4按钮复制运行命令;
-
在部署机型上打开terminal将上面复制的指令拷贝后回车进行下载模型
ollama run deepseek-r1:70b
-
下载完成后直接进入对话窗口。若需开启新的对话则打开新的终端输入指令即可再次对话
ollama run deepseek-r1:70b
2.3 安装可视化界面
在命令行窗口下对话太简陋,可以通过以下方法安装可视化的图文交互界面。介绍chatbox和AnythingLLm两个开源的桌面应用程序。
2.3.1 安装chatbox用户界面
-
下载Chatbox
Chatbox 是一个开源的桌面应用程序,专门用于与大型语言模型(如 OpenAI 的 GPT 系列、LLaMA、Mistral,Deepseek 等)进行交互。它提供了一个简洁、易用的图形界面,让用户能够轻松地与 AI 模型对话,而无需编写代码或使用复杂的命令行工具。访问 Chatbox官网,下载适合你操作系统的安装包。
-
设置chatbox
本文是使用Linux系统作为部署环境,将下载的Chatbox软件包拷贝到Linux系统下,并在本地终端执行
Chatbox-1.9.8-x86_64.AppImage --no-sendbox
打开软件,①设置中文显示;②设置对话模型。 -
上传本地知识库
设置好模型后,在对话框中上传本地知识库,可以使用docx/excel/pdf等各种文件,如图(我这里上传的DebugTree文档为例):向chatbox提问,测试效果(提问:查着PSU 相关问题):
2.3.2 安装anythingLLM用户界面(和chatbox安全一款即可,个人更推荐anythingLLM)
-
安装anythingLLM
AnythingLLM 是 Mintplex Labs 开发的开源全栈应用程序,能将文档转为 LLM 聊天背景信息,支持多种闭源和开源模型、向量数据库,可本地或远程托管,有多用户管理等功能,用于高效知识管理与问答,访问anythingLLM官网(https://anythingllm.com/)下载适合你操作系统的安装包,安装比较简单,安装过程不再详细介绍了。 -
设置anythingLLM工作区,引用deepseek
安装好后,新建工作区为新建的工作区设置模型,选择ollama下的deepseek模型,注意聊天模式选查询,不然会有很多噪声哦
切记,修改完配置要拉到最下方update workspace保存配置
-
上传本地知识库文件
构建本地知识库,在工作区上传文件小图标,可以上传本地pdf/excel/word等文件,添加到工作区Note: 如果上传本地资料库报错请参考解决 anything LLM 报: Error 1 documents failed to add.问题
-
测试效果(提问:CPU降频问题诊断):
<think> 嗯,我现在需要解决的问题是关于CPU降频的处理方案。根据用户提供的上下文,他们之前遇到了NVMe掉盘的情况,并且已经进行了一些排查和分析。现在他们询问的是如何处理CPU降频的问题。我需要先理解这个问题,然后思考如何解决它。 首先,CPU降频通常是由于过热或功耗限制引起的。当CPU温度过高或者功耗超过设计阈值时,系统会自动降低CPU的主频,以防止过热损坏硬件。这可能导致性能下降,影响服务器的运行效率。 根据之前提供的上下文,用户提到在排查NVMe问题时发现BMC内存持续减少,导致系统重启。这可能与系统的整体健康状况有关,也许与CPU降频有关。因此,我需要考虑是否有多个因素共同作用导致了这个问题。 我应该从几个方面来思考如何解决CPU降频的问题: 1. **监控温度和功耗**: - 使用工具如`lm-sensors`或其他系统监控软件,实时监测CPU的温度和功耗情况。 - 确定是否存在过热的情况,如果有,可能需要检查散热系统。 2. **检查冷却系统**: - 确保机房环境温度在合适的范围内,避免高温导致服务器过热。 - 检查风扇和散热片是否正常工作,清理灰尘以确保散热效率。 3. **优化系统负载**: - 分析当前运行的任务和进程,看看是否有异常的高负载情况。 - 优化代码或调整任务分配,以减少CPU的负担。 4. **检查硬件问题**: - 确认主板、电源等硬件是否正常工作,特别是与散热相关的部分。 - 检查是否有损坏的风扇或者散热片,必要时更换。 5. **升级固件和驱动**: - 更新BIOS、BMC固件以及相关驱动程序,以确保硬件能够正常通信和协调工作。 6. **调整功耗设置**: - 在系统设置中,检查是否有相关的功耗限制选项,可以尝试调整以允许更高的功耗。 - 使用工具如`cpufreq-utils`或其他类似软件来管理CPU频率设置。 7. **日志分析**: - 查看系统日志(如`/var/log/syslog`)和硬件相关的日志,查找与温度、功耗相关的错误信息。 - 根据日志中的提示,进一步定位问题根源。 8. **测试和验证**: - 在调整后进行压力测试,如使用`stress`工具,对系统进行负载测试,观察CPU频率是否稳定。 - 长时间监控温度和功耗数据,确保问题得到解决。 通过以上步骤,我应该能够系统地排查并解决CPU降频的问题,提升服务器的性能和稳定性。 </think> 处理CPU降频问题需要从多个方面进行全面排查和优化,以确保硬件正常运行并保持最佳性能。以下是一些关键的处理方案: ### 1. 监控温度和功耗 - **使用监控工具**:安装并使用如`lm-sensors`等工具,实时监测CPU的温度、电压和功耗。 - **设置阈值警报**:配置监控系统在检测到异常高温或过高功耗时触发警报,便于及时处理。 ### 2. 检查和优化散热系统 - **清洁硬件**:定期清理服务器内部的灰尘,确保风扇和散热片的畅通。 - **检查风扇状态**:确认所有风扇正常运转,无异常噪音或停转现象。必要时更换有故障的风扇。 - **机房环境控制**:保持机房温度在合理范围内,避免高温影响服务器散热。 ### 3. 分析和优化系统负载 - **性能分析工具**:使用`top`、`htop`或`perf`等工具,识别导致CPU高负荷的进程或应用。 - **任务调度**:重新分配任务,平衡各CPU核心的负载,避免单核过热或过载。 - **代码优化**:审查和优化运行中的程序,减少不必要的计算和资源消耗。 ### 4. 硬件检查与维护 - **主板和电源检查**:确保主板和PSU工作正常,没有供电问题。特别是检查是否有电压不稳的情况。 - **散热接触面清洁**:检查并清洁CPU、GPU等关键部件的散热接触面,确保良好的热传导。 ### 5. 固件和驱动更新 - **BIOS更新**:定期检查并更新主板 BIOS,以获得最新的性能优化和bug修复。 - **BMC固件升级**:根据之前遇到的问题,升级BMC固件以改善硬件管理和监控功能。 - **驱动程序更新**:确保所有相关设备的驱动程序为最新版本,以提高兼容性和性能。 ### 6. 调整功耗设置 - **系统设置优化**: - 进入BIOS设置,调整功耗相关选项,如选择“高性能”模式。 - 禁用不必要的省电功能,以允许CPU在需要时维持较高频率。 - **使用软件控制工具**:利用`cpufreq-utils`或类似工具,手动调整CPU频率 governor策略,确保不会因功耗限制而降频。 ### 7. 日志分析与问题定位 - **系统日志检查**: - 查看`/var/log/syslog`和其他相关日志文件,查找与温度、功耗或性能相关的错误信息。 - 根据日志提示,进一步调查是否有特定的硬件或软件导致降频。 - **硬件事件日志**:检查IPMI或BMC提供的详细硬件事件日志,以获取降频触发的具体原因。 ### 8. 测试与验证 - **压力测试**: - 使用`stress`、`Prime95`等工具对系统进行全面负载测试,观察CPU频率和温度变化。 - 在高负载下监控系统的表现,确认降频问题是否得到缓解。 - **长时间稳定性测试**:在调整后,让系统运行一段时间,持续监测其性能和温度,确保没有再次出现降频或过热的情况。 ### 9. 预防措施 - **定期维护计划**:制定硬件清洁、固件更新等的定期维护计划,预防潜在问题。 - **环境监控**:安装机房环境监测设备,实时掌握温度、湿度等关键指标,确保服务器运行环境的稳定。 ### 10. 考虑硬件升级 - **评估现有配置**:如果降频问题持续存在且无法通过软件优化解决,可能需要考虑升级散热系统或更换更高性能的硬件部件。 - **散热系统升级**:如采用水冷散热或更高效的风冷方案,以应对更大的功耗和发热量。 通过以上步骤,可以有效识别和解决导致CPU降频的问题,确保服务器在合理温度下保持最佳性能。
使用anythingLLM和chatbox两种方案都可以实现本地私有化部署知识库,都能有效保障内容安全。我个人偏好使用anything方式,这种方式不仅能实现私有化部署,还提供API接口,方便接入企业微信或飞书工作台,大幅提升使用便捷性 。
三、局域网内多机共享
3.1 修改ollama配置
- 编辑服务文件:执行命令
sudo vim /etc/systemd/system/ollama.service
。 - 添加环境变量:在“(Service)”段添加“Environment=“OLLAMA_HOST=0.0.0.0:端口号””“Environment=“OLLAMA_ORIGINS=*””。
[Unit]
Description=Ollama Service
After=network-online.target
[Service]
ExecStart=/usr/bin/ollama serve
User=ollama
Group=ollama
Restart=always
RestartSec=3
#Environment="OLLAMA_HOST=127.0.0.1:11434"
Environment="OLLAMA_HOST=0.0.0.0"
Environment="OLLAMA_ORIGINS=*"
Environment="PATH=$PATH"
[Install]
WantedBy=default.target
Restart=always
RestartSec=3
Environment="OLLAMA_HOST=127.0.0.1:11434"
#Environment="OLLAMA_HOST=0.0.0.0"
#Environment="OLLAMA_ORIGINS=*"
Environment="PATH=$PATH"
[Install]
WantedBy=default.target
- 重载配置并重启服务
systemctl daemon-reload
systemctl restart ollama
3.2 客户端配置
-
在客户端安装可视化软件(方法同上 2.3 安装可视化界面 章节),
-
客户端根据主机IP和端口配置访问软件。
-
附:官网原文
更多推荐
所有评论(0)