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

相关推荐
幂简集成1 天前
通义灵码 AI 程序员低代码 API 课程实战教程
android·人工智能·深度学习·神经网络·低代码·rxjava
Tadas-Gao1 天前
阿里云通义MoE全局均衡技术:突破专家负载失衡的革新之道
人工智能·架构·大模型·llm·云计算
xiaozhazha_1 天前
快鹭云业财一体化系统技术解析:低代码+AI如何破解数据孤岛难题
人工智能·低代码
pan0c231 天前
集成学习(随机森林算法、Adaboost算法)
人工智能·机器学习·集成学习
pan0c231 天前
集成学习 —— 梯度提升树GBDT、XGBoost
人工智能·机器学习·集成学习
Learn Beyond Limits1 天前
Error metrics for skewed datasets|倾斜数据集的误差指标
大数据·人工智能·python·深度学习·机器学习·ai·吴恩达
我不是小upper1 天前
一文详解深度学习中神经网络的各层结构与功能!
人工智能·pytorch·深度学习
kingmax542120081 天前
概率与数理统计公式及结论汇总
人工智能·机器学习·概率论
Niuguangshuo1 天前
深度学习:Dropout 技术
人工智能·深度学习
LLM精进之路1 天前
美团发布 | LongCat-Flash最全解读,硬刚GPT-4.1、Kimi!
人工智能·深度学习·机器学习·语言模型·transformer