deepseek本地linux部署实操(最小系统r1:1.5b+Chatbox+open-webui)

写在前面的内容

服务器环境描述:
集成显卡、16G、linux-cent7.9

1、下载部署环境

https://ollama.com/download/linux

1.1选择系统版本,复制下载命令

在这里插入图片描述

注意:如果失败,一般是网络影响,可配置梯子,或者建议从github 拉取安装包进行处理,github链接:https://github.com/ollama/ollama

下载release包

选择需要的系统进行下载:
linux安装包

1.2 安转ollama

可查看 https://github.com/ollama/ollama/blob/main/docs/linux.md 文件说明
第一步解压安装包:

sudo tar -C /usr -xzf ollama-linux-arm64.tgz
或者直接解压,然后把 bin 和 lib文件考到 /usr 路径下

image.png

1.3 配置系统自启动服务

Create a service file in /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

之后依次执行命令

# Then start the service:
sudo systemctl daemon-reload
sudo systemctl enable ollama
# Start Ollama and verify it is running:
sudo systemctl start ollama
sudo systemctl status ollama

启动成功截图
成功截图

以上是运行模型的底座(ollama),安装并启动完成。

2、部署模型

模型链接:https://ollama.com/library/deepseek-r1:1.5b

模型选择

复制模型下载命令:

ollama run deepseek-r1:1.5b

在linux执行
执行中

执行完成截图
完成截图

2.2使用

部署成功后就可以进行交互问答了
image.png

3、交互窗口部署

3.1 下载安装Chatbox(Windows用户推荐)

进入官网下载安装Chatbox客户端

image.png

3.2、点击设置,选择Ollama API

image.png

3.3 选择安装好的deepseek r1模型,保存即可

image.png

3.4 部署完成,就可以正常使用了

image.png

4、安装 open-webui(开发者推荐)

4.1 采取docker安装,拉取镜像并运行
## 官网命令,但拉取速度太慢
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main

## 加速通道,将ghcr.io换成 ghcr.nju.edu.cn,直接复制下面这行代码运行就能解决
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.nju.edu.cn/open-webui/open-webui:main
4.2 配置参数

报错处理
image.png

open-webui OpenBLAS blas_thread_init: pthread_create failed for thread : Operation not permitted
添加参数

# 在容器启动命令中加上
--privileged=true
4.1 访问 OpenWebUI 界面(因服务器性能,可能相应比较慢)

打开浏览器,在地址栏输入 http://主机IP地址:3000/ 并打开,进入 OpenWebUI 的聊天测试界面。首次进入需要注册账号
image.png

4.2 选择并连接 Ollama 模型

在聊天界面的左上角选择当前在 Ollama 中运行的大语言模型。如果无选择内容,则可能是因为无法连接到 Ollama,可以进行以下修改:

~]# systemctl edit ollama

添加
[Service]
Environment=“OLLAMA_HOST=0.0.0.0”
重启 Ollama 服务:
systemctl daemon-reload
systemctl restart ollama

此模型自动加载出来,无需配置。
image.png

4.3 选择对应模型并使用

image.png

### 准备工作 为了在 Linux 环境下对 DeepSeek 1.5B 模型进行本地微调,环境配置至关重要。确保安装了 Python 和 PyTorch 的最新版本,并设置好 CUDA 如果计划利用 GPU 加速训练过程[^1]。 ```bash conda create -n deepseek-tune python=3.9 conda activate deepseek-tune pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu117 ``` ### 获取预训练模型 从官方渠道下载 DeepSeek 1.5B 预训练权重文件并解压到指定目录。通常这些资源会托管于云存储服务中,需遵循项目文档指引完成这一步骤。 ### 安装依赖库 除了基础框架外,还需额外安装一些用于处理数据集、评估指标以及其他辅助功能的第三方库: ```bash pip install transformers datasets evaluate accelerate bitsandbytes ``` ### 数据准备 准备好要用来微调的数据集,建议将其转换成 Hugging Face `datasets` 库支持的格式以便后续操作更加便捷高效。可以参照如下方式加载自定义 CSV 文件作为输入源: ```python from datasets import load_dataset dataset = load_dataset('csv', data_files={'train': 'path/to/train.csv'}) ``` ### 编写微调脚本 创建一个新的 Python 脚本来执行具体的微调逻辑,下面是一个简单的例子来说明如何实现这一点: ```python import os from transformers import AutoModelForCausalLM, Trainer, TrainingArguments, DataCollatorForLanguageModeling from datasets import load_dataset model_name_or_path = "deepseek-llm/deepseek-r1-zero" tokenizer_name = model_name_or_path # Load dataset and tokenizer data_collator = DataCollatorForLanguageModeling(tokenizer=AutoTokenizer.from_pretrained(tokenizer_name), mlm=False) raw_datasets = load_dataset("text", data_files={"train": ["example.txt"]}) def tokenize_function(examples): return tokenizer(examples["text"]) tokenized_datasets = raw_datasets.map(tokenize_function, batched=True) lm_datasets = tokenized_datasets.shuffle(seed=42).select(range(10_000)) training_args = TrainingArguments( output_dir="./results", evaluation_strategy="epoch", learning_rate=2e-5, per_device_train_batch_size=8, per_device_eval_batch_size=8, num_train_epochs=3, weight_decay=0.01, ) trainer = Trainer( model=model_init(), args=training_args, train_dataset=lm_datasets['train'], eval_dataset=None, data_collator=data_collator, ) trainer.train() ``` 此代码片段展示了怎样基于 Transformers 库构建一个简易版的语言建模任务训练器实例。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值