环境配置(linux系统):
1、进入anaconda官网https://repo.anaconda.com(下载anaconda版本:Anaconda3-latest-Linux-x86_64.sh)
2、在文件所在位置打开终端运行命令:

bash Anaconda3-latest-Linux-x86_64.sh

(安装anaconda,默认主目录/anaconda3)
3、终端运行

source ~/.bashrc

 或

source ~/.zshrc

(根据你的 shell)使配置生效
4、验证安装

conda --version

5、创建环境(命名为deepseek-r1-1.5b-py310,使用python3.10版本)

conda create --name deepseek-r1-1.5b-py310 python=3.10

6、激活环境

conda activate deepseek-r1-1.5b-py310

7、在环境中安装依赖:

pip install transformers
pip install accelerate
pip install huggingface_hub

8、在终端创建模型查询脚本search.py(这里也可以直接去huggingface官网查看所需模型名称):

gedit search.py

写入代码

from huggingface_hub import list_models

models = list_models(author="deepseek-ai")
for model in models:
    print(model.id)

保存后终端运行脚本:

python3 search.py

会得到类似以下输出,根据需求和配置找到合适的模型:

deepseek-ai/DeepSeek-R1

deepseek-ai/DeepSeek-V3

deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B

.......

9、在终端创建模型下载脚本download.py:

gedit download.py

写入代码(以下载DeepSeek-R1-Distill-Qwen-1.5B为例):

from transformers import AutoModelForCausalLM, AutoTokenizer

# 下载模型和分词器
model_name = "deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B"
model = AutoModelForCausalLM.from_pretrained(model_name)
tokenizer = AutoTokenizer.from_pretrained(model_name)

# 保存到本地
model.save_pretrained("./deepseek-r1-1.5b")
tokenizer.save_pretrained("./deepseek-r1-1.5b")

保存后终端运行脚本:

python3 download.py

10、在终端创建推理样本脚本sample.py

gedit sample.py

写入代码(确保模型加载路径正确,最大输出长度可根据情况进行修改):

from transformers import AutoModelForCausalLM, AutoTokenizer

# 加载本地模型和分词器
model_path = "./deepseek-r1-1.5b"
model = AutoModelForCausalLM.from_pretrained(model_path)
tokenizer = AutoTokenizer.from_pretrained(model_path)

while True:
    # 输入文本
    input_text = input("用户:").strip()
    if input_text.lower() in ["quit","esc"]:
        print("用户退出")
        break

    # 分词并生成输出
    inputs = tokenizer(input_text, return_tensors="pt")
    outputs = model.generate(**inputs, max_length=256) #最大输出长度可以根据情况进行更改

    # 解码输出
    response = tokenizer.decode(outputs[0], skip_special_tokens=True)
    print("模型回复:", response)

运行脚本(务必确保CPU或GPU能带得动模型):

python3 sample.py

输入 quit 或 esc 结束程序

注:sample.py 只是一个示例文件,可以根据需求添加功能代码,包括但不限于流式输出、历史对话等等,同时 outputs=model.generate() 中还可以根据具体情况设置temperature、pad_token_id、top_p等参数以优化模型输出结果。

更多推荐