用Llama Edge运行Deekseek-R1蒸馏模型

打印 上一主题 下一主题

主题 971|帖子 971|积分 2913


  DeepSeek-R1 利用强化学习,极大提升了模型推理能力。在数学、代码、自然语言推理等任务上,性能比肩 OpenAI o1 正式版。从 DeepSeek-R1 蒸馏得到的小模型有效继承了大模型学到的推理模式。本文主要利用Llama Edge测试 DeepSeek-R1-Distill-Llama-8B-GGUF 
  接待跟着我试验下最新的模型:
  首先,利用 https://github.com/LlamaEdge/LlamaEdge
  按照官方README.md 进行操作,首先下载,复制以下命令到命令行运行试试:
  1. curl -sSf https://raw.githubusercontent.com/WasmEdge/WasmEdge/master/utils/install_v2.sh | bash
复制代码
我是window电脑,所以碰到了报错,把报错进行截图后,发给Gemini2,让它帮我解释下。
  

  这个命令在类 Unix 系统(例如 Linux、macOS)上通常可以工作。但我利用的是window的power shell,同时,由于网络问题,我们还是手动下载下3个文件。
  先新建一个目录edge(你也可以修改为你自己的名称)
  https://github.com/WasmEdge/WasmEdge/releases/download/0.14.1/WasmEdge-0.14.1-windows-msvc.msi(下载后运行安装
  ggml 后端允许 WasmEdge 应用实验 Llama 2 系列大模型的推理。我用的是cuda这个版本:
  https://github.com/WasmEdge/WasmEdge/releases/download/0.14.1/WasmEdge-plugin-wasi_nn-ggml-cuda-0.14.1-windows_x86_64.zip
  ggml插件一定要安装,否则会提示nn-preload无效。可以从 WasmEdge 发布页面下载插件,解压然后复制到 C:\Program Files\WasmEdge\lib目录下。注意解压后,只必要取lib目录下的文件即可。
  

  
目录结构

  然后,必要设置下系统的情况变量:
  

  
WASMEDGE_PLUGIN_PATH

  
参考github上的一个issue:https://github.com/WasmEdge/WasmEdge/issues/3920

  https://huggingface.co/second-state/DeepSeek-R1-Distill-Llama-8B-GGUF/tree/main (下载一个符合巨细的模型,由于是测试,我选择了最小3GB谁人,也是放到edge目录下)
  https://github.com/LlamaEdge/LlamaEdge/releases/download/0.16.1/llama-api-server.wasm 下载后放到edge目录下
  现在edge目录结构如下:
  

  利用以下命令行为模型启动 LlamaEdge API 服务器
  1. wasmedge --dir .:. --nn-preload default:GGML:AUTO:DeepSeek-R1-Distill-Llama-8B-Q2_K.gguf llama-api-server.wasm --prompt-template llama-3-chat --ctx-size 8096
复制代码
假如统统正常,我们就可以通过api发送请求得到结果。我让Gemini写了个js代码:
  1. curl -X POST http://localhost:8080/v1/chat/completions \
  2.   -H 'accept:application/json' \
  3.   -H 'Content-Type: application/json' \
  4.   -d '{"messages":[{"role":"system", "content": "你非常擅长思考、推理和总结。请使用中文回复"}, {"role":"user", "content": "中国最著名的神话人物是谁,为什么,有什么依据?"}], "model": "DeepSeek-R1-Distill-Llama-8B"}'
  5. 这是一个chat的api。帮我改成stream流式的fetch请求,写一个容易看懂的js方法,把ai对话的结果console出来,用黄色底,黑色字。
  6. 另外,还需要提供一个中断请求的方法,为了让我可以随时中断请求。
复制代码
代码详见:阅读原文。
  把这个js代码粘贴到chrome里的开辟者工具console面板里,你应该就能看到正常的复兴结果了。别的,也可以把api地址填写到mixcopilot里,进行利用。
  
接待加入我们的AI编程社群

  

  


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

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

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

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

本版积分规则

兜兜零元

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表