飞桨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显存

相关推荐
2zcode15 分钟前
基于Matlab图像处理的黄豆自动计数系统设计与实现
图像处理·人工智能·matlab
金智维科技官方21 分钟前
常见的大模型分类
人工智能·算法·ai·语言模型·数据挖掘
TY-202527 分钟前
五、CV_ResNet
人工智能
♡喜欢做梦1 小时前
【AI】从零开始的文本分类模型实战:从数据到部署的全流程指南
人工智能·ai·自然语言处理
WeiJingYu.1 小时前
Opencv-管理图片
人工智能·opencv·计算机视觉
shuju_dajiwang1 小时前
数据大集网:重构企业贷获客生态的线上获客新范式
人工智能
Sunhen_Qiletian2 小时前
《深入浅出K-means算法:从原理到实战全解析》预告(提纲)
人工智能·机器学习·支持向量机
Giser探索家2 小时前
什么是2米分辨率卫星影像数据?
大数据·人工智能·数码相机·算法·分类·云计算
芯希望3 小时前
芯伯乐XBL6019 60V/5A DC-DC升压芯片的优质选择
大数据·人工智能·物联网·dc-dc·电子元器件·电源管理ic·xblw芯伯乐
科大饭桶3 小时前
AI大模型专题:LLM大模型(Prompt提示词工程)
人工智能·语言模型·llm·prompt·deepseek