飞桨PaddleNLP套件中使用DeepSeek r1大模型

安装飞桨PaddleNLP

首先安装最新的PaddleNLP3.0版本:

复制代码
pip install paddlenlp==3.0.0b3

依赖库比较多,可能需要较长时间安装。

安装好后,看看版本:

复制代码
import paddlenlp
paddlenlp.__version__

输出:

复制代码
'3.0.0b3.post20250129'

证明版本正确。

运行大模型

复制代码
import paddle
from llm.predict.predictor import PredictorArgument, ModelArgument, create_predictor
from paddlenlp.utils import is_paddlenlp_ops_available

predictor_args = PredictorArgument(
    model_name_or_path="deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B",
    src_length=1024,
    min_length=32,
    max_length=512,
    top_k=0,
    top_p=0.7,
    temperature=0.95,
    repetition_penalty=1.0,
    dtype="float16",
    inference_model= True if is_paddlenlp_ops_available() else False,
)

paddle.set_default_dtype(predictor_args.dtype)
predictor = create_predictor(predictor_args, ModelArgument())

input_text = "请介绍一下deepseek r1大模型的特点"

print(predictor.predict(input_text))

输出:

复制代码
['<think>\n好的,我现在要介绍一下DeepSeek-R1的大模型特点。首先,我需要了解DeepSeek-R1是什么,它属于哪个领域,比如聊天机器人还是文本处理。然后,我要查找它在技术上的优势,比如模型架构、计算能力、推理速度等。此外,可能还要提到它的用户群体和应用场景,比如医疗、教育、商业等领域的具体案例。最后,总结一下它的优势,让用户全面了解它。\n\n首先,DeepSeek-R1应该是一个专业的AI聊天机器人,可能用于医疗、教育、商业等领域。它的主要特点可能包括高精度、实时响应、长对话能力以及高效计算能力。模型架构可能有先进的语言模型,支持多种对话风格。推理速度也很重要,可能有支持多任务处理,适用于多种场景。此外,它可能有强大的数据支持,可以学习和理解用户需求。最后,它可能在多个领域都有广泛应用,比如医疗AI、教育科技等。\n\n在技术方面,DeepSeek-R1可能采用了先进的模型架构,比如Transformer,用于处理长文本。它可能具备强大的计算能力,支持并行处理和异构计算,处理大规模数据集。推理速度可能非常快,可能支持实时或高频率的推理。此外,它可能集成多种智能工具,提升用户体验,如AI生成、实时分析等。\n\n在应用场景方面,DeepSeek-R1可能在医疗领域提供精准的诊断建议,教育领域帮助学生学习,商业领域优化决策。同时,它可能支持多语言处理,适应不同用户群体的需求。另外,深度学习模型可能在处理复杂和多样化数据时表现优异,适合实时数据分析和预测。\n\n总结一下,DeepSeek-R1的特点包括专业性、高效、实时响应、长对话、强大的计算能力、多种应用场景和强大的数据支持。这些特点使其在多个领域都有广泛应用,提升用户体验和效率。\n</think>\n\nDeepSeek-R1 是一个专注于大语言模型(LLM)的智能机器人,主要用于多个领域如医疗、教育、商业等。它具备以下主要特点:\n\n1. **专业性和实时性**:\n   - 专注于专业领域,如医疗和教育,提供精准的诊断和建议,实时响应用户需求。\n\n2. **高效的大语言模型**:\n   - 基于先进的Transformer架构,处理复杂和多样化数据,提供高质量的文本生成和分析。\n\n3. **强大的计算能力和推理速度**:\n   - 具备并行计算能力,支持高效的推理']

格式化一下:

复制代码
<think>
好的,我现在要介绍一下DeepSeek-R1的大模型特点。首先,我需要了解DeepSeek-R1是什么,它属于哪个领域,比如聊天机器人还是文本处理。然后,我要查找它在技术上的优势,比如模型架构、计算能力、推理速度等。此外,可能还要提到它的用户群体和应用场景,比如医疗、教育、商业等领域的具体案例。最后,总结一下它的优势,让用户全面了解它。

首先,DeepSeek-R1应该是一个专业的AI聊天机器人,可能用于医疗、教育、商业等领域。它的主要特点可能包括高精度、实时响应、长对话能力以及高效计算能力。模型架构可能有先进的语言模型,支持多种对话风格。推理速度也很重要,可能有支持多任务处理,适用于多种场景。此外,它可能有强大的数据支持,可以学习和理解用户需求。最后,它可能在多个领域都有广泛应用,比如医疗AI、教育科技等。

在技术方面,DeepSeek-R1可能采用了先进的模型架构,比如Transformer,用于处理长文本。它可能具备强大的计算能力,支持并行处理和异构计算,处理大规模数据集。推理速度可能非常快,可能支持实时或高频率的推理。此外,它可能集成多种智能工具,提升用户体验,如AI生成、实时分析等。

在应用场景方面,DeepSeek-R1可能在医疗领域提供精准的诊断建议,教育领域帮助学生学习,商业领域优化决策。同时,它可能支持多语言处理,适应不同用户群体的需求。另外,深度学习模型可能在处理复杂和多样化数据时表现优异,适合实时数据分析和预测。

总结一下,DeepSeek-R1的特点包括专业性、高效、实时响应、长对话、强大的计算能力、多种应用场景和强大的数据支持。这些特点使其在多个领域都有广泛应用,提升用户体验和效率。
</think>

DeepSeek-R1 是一个专注于大语言模型(LLM)的智能机器人,主要用于多个领域如医疗、教育、商业等。它具备以下主要特点:

1. **专业性和实时性**:
   - 专注于专业领域,如医疗和教育,提供精准的诊断和建议,实时响应用户需求。

2. **高效的大语言模型**:
   - 基于先进的Transformer架构,处理复杂和多样化数据,提供高质量的文本生成和分析。

3. **强大的计算能力和推理速度**:
   - 具备并行计算能力,支持高效的推理

看着效果不错

这是1.5b模型,再切换到7b模型看看:

复制代码
import paddle
from llm.predict.predictor import PredictorArgument, ModelArgument, create_predictor
from paddlenlp.utils import is_paddlenlp_ops_available

predictor_args = PredictorArgument(
    model_name_or_path="deepseek-ai/DeepSeek-R1-Distill-Qwen-7B",
    src_length=1024,
    min_length=32,
    max_length=512,
    top_k=0,
    top_p=0.7,
    temperature=0.95,
    repetition_penalty=1.0,
    dtype="float16",
    inference_model= True if is_paddlenlp_ops_available() else False,
)

paddle.set_default_dtype(predictor_args.dtype)
predictor = create_predictor(predictor_args, ModelArgument())

input_text = "请介绍一下deepseek r1大模型的特点"

print(predictor.predict(input_text))

不行,7B模型16G显卡不够用,换用32G显存的显卡才行。

7B模型回答这个问题用时41.01秒

不过我感觉好像这个模型GPU和cpu之间的速度差别没有那么显著。

调试

7b模型报错

复制代码
Error Message Summary:
----------------------
ResourceExhaustedError: 

Out of memory error on GPU 0. Cannot allocate 64.000000MB memory on GPU 0, 15.957031GB memory has been allocated and available memory is only 44.000000MB.

Please check whether there is any other process using GPU 0.
1. If yes, please stop them, or start PaddlePaddle on another GPU.
2. If no, please decrease the batch size of your model. 
 (at ../paddle/phi/core/memory/allocation/cuda_allocator.cc:84)

也就是7b模型float32 需要大约16G显存才行。

后来用32G实验,发现需要24G显存

相关推荐
大模型任我行3 小时前
谷歌:“课程学习”融入扩散模型强化学习
人工智能·语言模型·自然语言处理·论文笔记
AIGCmagic社区3 小时前
具身智能专题:机器人也有Scaling Law?智元GE-Act 2.0用3万小时真机数据给出答案
人工智能·aigc·具身智能
Rosanci4 小时前
谷歌浏览器插件开发实战指南:从 Hello World 到上架发布
大数据·人工智能·chrome·程序人生
明月_清风4 小时前
AI 越来越强,程序员真正的价值到底是什么?
人工智能·后端
m0_466525294 小时前
云从科技上线云起ModelHub:AI团队时代的模型算力基础设施
大数据·人工智能·科技
火山引擎开发者社区5 小时前
OpenViking:给 Codex 加上长期记忆
人工智能
荆棘鸟智能5 小时前
城市感知设备怎么统一接入?从多协议网关到设备模型的中间件架构设计
人工智能·算法·边缘计算
火山引擎开发者社区5 小时前
当 AI 内容真假难辨,谁来为真实签名 —— 证书中心 C2PA 内容可信溯源服务正式发布
人工智能
百万蹄蹄向前冲5 小时前
风扇转了一晚上MVP专家团翻车事故
前端·人工智能
米小虾5 小时前
你的 harness 技巧有保质期:176 组对照实验显示,上下文管理的收益从 35.7 分跌到 2.7 分
人工智能·agent