引言:        

       今天,我将为大家详细介绍如何通过下载模型权重来实现模型部署,这种方法适用于包括 DeepSeek-R1 和最新版本的 Janus-Pro 在内的众多模型。由于我们采用的是基于 transformers 的模型权重下载方式,因此理论上所有模型都能够通过这种方式进行部署,这种方法具有较强的通用性。不过,需要指出的是,这种方式的缺点在于没有额外的推理加速功能,其推理速度会低于像 Vllm、SGLang 等专业的推理框架。

一、模型下载

我们推荐国内用户使用 modelscope 去下载相关模型权重,下载速度更快、更稳定。ms 地址:https://www.modelscope.cn/organization/deepseek-ai

点击这个网址,就能看到 DeepSeek 的页面,红框里的模型就是我们熟悉的 R1 以及 Janus-Pro 模型,两者的下载过程是一样的,这里雨飞就以 Janus-Pro 为例,给大家演示下具体下载过程。

注意: Janus 是多模态的模型,1B 大小的模型显存占用在 8GB。如果低于 8GB 的,考虑用云服务器

我们推荐使用 Git 进行下载,这种方式更稳定,也比较常用。

二、环境配置

首先,需要下载 Janus 的项目,网址:https://github.com/deepseek-ai/Janus

点击右上角的 Code 按钮,在弹出的对话框中点击「Download ZIP」,将项目下载到本地,然后解压缩到一个目录。4

然后可以在 VS code 或者 Cursor 中打开此项目,正常需要显示下面这些内容,则表示没有任何问题。

接下来需要安装 Python 环境以及安装相关依赖,有不清楚的地方可以去问问 AI 具体哪一步出现了问题。用清华源速度飞快!

pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

三:实际操作实验

github连接上第三部分「Quick Start」,我们可以使用这里面的示例进行验证。官方提供了两个案例,一个是多模态的图片理解,另外一个是文生图。

以多模态理解为例,我们需要修改相关代码中的几个部分,大家可以根据我下面放出来的代码片段,将model_path、image、question 变量的内容进行修改,替换为自己模型的路径、图片所在的路径以及想要提问的内容。

import torchfrom transformers import AutoModelForCausalLMfrom janus.models import MultiModalityCausalLM, VLChatProcessorfrom janus.utils.io import load_pil_images# specify the path to the modelmodel_path = "E:\models\Janus-Pro-1B"vl_chat_processor: VLChatProcessor = VLChatProcessor.from_pretrained(model_path)tokenizer = vl_chat_processor.tokenizervl_gpt: MultiModalityCausalLM = AutoModelForCausalLM.from_pretrained(    model_path, trust_remote_code=True)vl_gpt = vl_gpt.to(torch.bfloat16).cuda().eval()image = "images\doge.png"question = "Extract all information from this image and convert them into markdown format."conversation = [    {        "role": "<|User|>",        "content": f"<image_placeholder>\n{question}",        "images": [image],    },    {"role": "<|Assistant|>", "content": ""},]

然后在命令行中执行这个代码,出现如下方所示的内容,表示案例执行成功,其中蓝色框里就是 Janus-Pro-1B 输出的内容。 

测试到此就告一段落了。

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐