当前位置: 首页 > article >正文

DeepSeek 1.5B蒸馏模型的J6部署(Llama方式)

前言

DeepSeek 是一款基于人工智能的搜索引擎,旨在提升用户的搜索体验。它利用先进的自然语言处理技术,通过理解查询的上下文和意图,为用户提供更精确、相关的搜索结果。与传统的搜索引擎不同,DeepSeek 不仅仅依赖于关键词匹配,还能通过深度学习分析用户的需求,呈现更加智能化的搜索结果。此外,DeepSeek 还具备语义理解能力,能够处理复杂的查询,并在短时间内给出最符合用户需求的答案。

DeepSeek 1.5B 模型是一个基于深度学习的自然语言处理模型,拥有约 15 亿个参数。它在多种任务上表现出色,能够理解和生成高质量的文本,具有很强的语义理解和推理能力。该模型能够应用于搜索引擎、问答系统、文本生成等多个领域。

蒸馏(Distillation)是将一个大型、性能优秀的深度学习模型(如 1.5B DeepSeek)转换为一个较小、计算资源消耗更低的模型的过程。通过蒸馏,模型能够保持原有的性能,但在推理时所需的计算资源和内存消耗大大减少。蒸馏的必要性在于:

  1. 降低计算资源需求:大型模型通常需要强大的硬件支持,蒸馏后的模型可以在较低配置的设备上运行。
  2. 提高响应速度:较小的模型在推理时速度更快,能够在实时应用中提供更高效的处理能力。
  3. 减少存储占用:模型体积较小,有利于部署和维护,尤其在资源受限的环境中。

注:本文方法导出的模型,运行时完全使用 CPU**,未使用** BPU**。**

Llama 工程配置

  1. 拉取最新的 llama.cpp 项目
git clone https://github.com/ggerganov/llama.cpp.git
  1. 编译
cd llama.cpp # 进入llama.cpp项目目录
cmake -B build cmake --build build --config Release -j4
  1. 设置环境变量
PATH=/llama.cpp/build/bin:$PATH
可使用以下命令验证是否配置成功
llama-cli -h

量化模型获取

方法一、使用魔搭社区现有模型

魔搭社区(Modu Community)是一个面向广大科技爱好者、开发者和设计师的在线社区平台,主要提供与科技相关的内容分享、技术讨论、资源交换等服务。这个社区的核心特点是其开放性与互动性,鼓励用户分享自己的创意、项目和技术经验。

魔搭社区的主要功能包括:

  1. 技术交流:社区成员可以讨论各种科技相关的技术话题,如编程、人工智能、硬件开发等。
  2. 资源共享:用户可以在平台上分享自己的开发工具、教程、开源项目等资源,帮助其他成员提高技能。
  3. 项目展示:开发者和设计师可以展示自己的作品,得到其他社区成员的反馈和建议。
  4. 线上活动:魔搭社区还定期举办线上讲座、技术竞赛、黑客马拉松等活动,促进成员间的互动和合作。

总之,魔搭社区是一个促进创新、合作与学习的地方,适合各类科技爱好者参与其中。

  1. 进入魔搭社区
https://www.modelscope.cn/models/unsloth/DeepSeek-R1-Distill-Qwen-1.5B-GGUF/files
  1. 下载图中模型,DeepSeek-R1-Distill-Qwen-1.5B-Q8_0.gguf

aW1hZ2U=.png

方法二、自行量化导出

Hugging Face 是一个致力于自然语言处理(NLP)技术的公司,提供了一个开源平台和一系列工具,帮助开发者、研究人员和企业更轻松地构建和部署 AI 模型,尤其是与语言理解和生成相关的模型。

Hugging Face 的主要特点包括:

  1. Transformers 库:这是 Hugging Face 最著名的开源项目之一,提供了大量预训练的模型,适用于各种 NLP 任务,如文本分类、情感分析、命名实体识别、机器翻译、文本生成等。这个库支持多种语言的模型,且与 PyTorch 和 TensorFlow 等流行深度学习框架兼容。
  2. 模型 hub:Hugging Face 提供了一个模型共享平台,用户可以在此上传、下载和使用各种 NLP 模型。这个 hub 包含了从基础模型到最新研究成果的众多模型,方便用户找到适合自己任务的模型。
  3. Datasets 库:提供了丰富的数据集,方便开发者用来训练和评估模型,涵盖了多个领域,包括文本、图像、语音等。
  4. API 和部署服务:Hugging Face 还提供了 API 服务,使得开发者可以通过简单的接口调用模型,快速将其集成到应用程序中。此外,还提供了用于托管和部署机器学习模型的工具。

总之,Hugging Face 在 NLP 领域的开源项目、模型和工具生态系统,使得机器学习和人工智能的应用变得更加普及和易用。

  1. 下载 huggingface 权重
https://huggingface.co/deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B/tree/main
  1. 使用 llama.cpp 提供的脚本做量化,得到 gguf 格式的模型

注: 这里需要根据实际情况修改模型路径,HuggingFace 的模型权重路径是一个文件夹

cd llama.cpp # 进入llama.cpp项目目录
python3 convert_hf_to_gguf.py ../DeepSeek-R1-Distill-Qwen-1.5B \ --outtype q8_0 \ --verbose --outfile ../gguf/DeepSeek-R1-Distill-Qwen-1.5B-q8_0.gguf

运行模型

使用llama-cli工具运行gguf格式的模型
llama-cli --model /map/model/DeepSeek-R1-Distill-Qwen-1.5B-Q8_0.gguf --cache-type-k q8_0 --threads 6 --prompt '一加一等于几?' -no-cnv

可以看到,模型可以有正常的文字输出,并且输出速率约为 21 tokens/s。

pe-k q8_0 --threads 6 --prompt ‘一加一等于几?’ -no-cnv


可以看到,模型可以有正常的文字输出,并且输出速率约为 21 tokens/s。

![aW1hZ2U=.png](https://i-blog.csdnimg.cn/img_convert/d1bb85557264d573b13f06efef182a6d.png)

http://www.kler.cn/a/566988.html

相关文章:

  • 【算法】图论 —— Floyd算法 python
  • Unity自动旋转物体功能实现
  • React入门基础(一):为什么说React是现代前端的必然选择?
  • 【Qt-信号与槽】connect函数的用法
  • 【RTC】 TM32 RTC(实时时钟)库函数 配置
  • Educational Codeforces Round 174 (Rated for Div. 2)
  • 构建高效大数据监督的三要素
  • springmvc热点面试题开胃菜
  • J-LangChain,用Java实现LangChain编排!轻松加载PDF、切分文档、向量化存储,再到智能问答
  • c++ 画数学函数图
  • Windows 11【1001问】查看Windows 11 版本的18种方法
  • 商业秘密维权有哪些成本开支?
  • 常见后端开发面试问题(持续更新)
  • 【go】time.after内存泄漏
  • Java进阶——反射机制超全详解
  • 【Linux终端探幽】—基础指令集(上):暗室点灯
  • [密码学实战]Java实现国密(SM2)密钥协商详解:原理、代码与实践
  • 【算法】003、二进制和位运算: 负数 相反数 与或非 左移右移
  • LeetCodehot 力扣热图100 括号生成
  • 详解Pytorch:张量自动微分