鱼C论坛

 找回密码
 立即注册
查看: 87|回复: 4

[技术交流] 用 Python 实现 DeepSeek R1 本地化部署

[复制链接]
发表于 4 天前 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
DeepSeek R1 以其出色的表现脱颖而出,不少朋友想将其本地化部署,网上基于 ollama 的部署方式有很多,但今天我要带你领略一种全新的方法 —— 使用 Python 实现 DeepSeek R1 本地化部署,让你轻松掌握,打造属于自己的 AI 小助手。

硬件环境

        要想让 DeepSeek R1 顺畅运行,硬件得跟上。你的电脑至少得配备 8GB 内存 ,要是想运行更大的模型,比如 7B 及以上的,那最好有更强劲的 CPU 和 GPU,内存也得相应增加。

Python 环境

        安装 Python 3.8 及以上版本,这是后续部署的关键工具,Python 丰富的库和灵活的编程特性,能帮我们更好地实现部署。

安装依赖包

        打开命令行工具,使用 pip 安装 DeepSeek R1 运行所需要的依赖包。比如,如果模型依赖一些自然语言处理相关的库,像 NLTK、transformers 等,都可以通过 pip 一键安装 :

  1. pip install numpy torch nltk transformers
复制代码


Python 代码配置与运行:

        编写 Python 脚本,导入必要的库,比如 transformers 库,用于加载和处理 DeepSeek R1 模型 :(这里以1.5B模型为例)

  1. from transformers import AutoTokenizer, AutoModelForCausalLM
  2. import os

  3. model_name = "deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B"
  4. model_path = "./model/deepseek_1.5b"

  5. if not os.path.exists(model_path):
  6.     tokenizer = AutoTokenizer.from_pretrained(model_name)
  7.     model = AutoModelForCausalLM.from_pretrained(model_name)
  8.     print("Model loaded successfully.")
  9.     model.save_pretrained(model_path)
  10.     tokenizer.save_pretrained(model_path)
  11. else:
  12.     tokenizer = AutoTokenizer.from_pretrained(model_path)
  13.     model = AutoModelForCausalLM.from_pretrained(model_path)
复制代码


        实现与模型的交互逻辑,将输入传递给模型进行处理,并输出模型的回复 :

# 使用模型生成文本
  1. input_text = "你好,世界!"
  2. input_ids = tokenizer.encode(input_text, return_tensors="pt")
  3. output = model.generate(input_ids, max_length=100)
  4. print(tokenizer.decode(output[0], skip_special_tokens=True))
复制代码


完整代码:

  1. from transformers import AutoTokenizer, AutoModelForCausalLM
  2. import os

  3. model_name = "deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B"
  4. model_path = "./model/deepseek_1.5b"

  5. if not os.path.exists(model_path):
  6.     tokenizer = AutoTokenizer.from_pretrained(model_name)
  7.     model = AutoModelForCausalLM.from_pretrained(model_name)
  8.     print("Model loaded successfully.")
  9.     model.save_pretrained(model_path)
  10.     tokenizer.save_pretrained(model_path)
  11. else:
  12.     tokenizer = AutoTokenizer.from_pretrained(model_path)
  13.     model = AutoModelForCausalLM.from_pretrained(model_path)
复制代码


# 使用模型生成文本
  1. input_text = "你好,世界!"
  2. input_ids = tokenizer.encode(input_text, return_tensors="pt")
  3. output = model.generate(input_ids, max_length=100)
  4. print(tokenizer.decode(output[0], skip_special_tokens=True))
复制代码



通过以上用 Python 实现 DeepSeek R1 本地化部署的步骤,你就可以在自己的设备上轻松运行 DeepSeek R1,享受本地化 AI 带来的便捷与高效,无论是用于日常的文本处理,还是更专业的自然语言处理任务,都能轻松应对。赶紧动手试试吧!

转自:CSDN 喜-喜
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 4 天前 | 显示全部楼层
用Python实现DeepSeek R1本地化部署教程

  • 硬件要求
    推荐8GB内存起步,7B及以上模型需要更高配置
    建议配备NVIDIA显卡并安装CUDA驱动




  • 核心代码实现
    创建deepseek_r1.py文件:

    1. from transformers import AutoTokenizer, AutoModelForCausalLM
    2. import os

    3. model_name = "deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B"
    4. model_path = "./model/deepseek_1.5b"

    5. # 模型加载逻辑
    6. if not os.path.exists(model_path):
    7.     tokenizer = AutoTokenizer.from_pretrained(model_name)
    8.     model = AutoModelForCausalLM.from_pretrained(model_name)
    9.     model.save_pretrained(model_path)
    10.     tokenizer.save_pretrained(model_path)
    11. else:
    12.     tokenizer = AutoTokenizer.from_pretrained(model_path)
    13.     model = AutoModelForCausalLM.from_pretrained(model_path)

    14. # 对话生成函数
    15. def chat(prompt):
    16.     input_ids = tokenizer.encode(prompt, return_tensors="pt")
    17.     output = model.generate(input_ids, max_length=100)
    18.     return tokenizer.decode(output[0], skip_special_tokens=True)

    19. print(chat("你好!可以介绍一下你自己吗?"))
    复制代码


  • 使用说明
    1. 首次运行会自动下载模型(约需5GB存储空间)
    2. 后续运行会直接加载本地模型
    3. 修改chat()函数的prompt参数即可提问
    4. 建议设置max_length=500获取更长回复


注意事项:
  • 模型下载可能需要科学上网
  • 首次运行建议添加清华源加速:
    1. pip config set global.index-url [url=https://pypi.tuna.tsinghua.edu.cn/simple
    复制代码
    ]https://pypi.tuna.tsinghua.edu.cn/simple[/code][/url]
  • 内存不足时可尝试量化版本模型
  • 完整项目地址:
    [url=https://github.com/deepseek-ai/DeepSeek-R1
]https://github.com/deepseek-ai/DeepSeek-R1[/url]

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 4 天前 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 4 天前 | 显示全部楼层
https://fishc.com.cn/thread-146275-1-1.html

引用第三方内容时,应注明出处。

Fake it till You make it— JiaYu Xiao

如果是全篇转载,请在全文开头显著位置注明作者和出处,并链接至原文。

本文转载自 WikiQuote

建议统一放在文章开头。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-5-20 20:04

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表