如何在本地部署 DeepSeek Janus Pro 文生图大模型

2025-02-10 16:50

本文主要是介绍如何在本地部署 DeepSeek Janus Pro 文生图大模型,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

《如何在本地部署DeepSeekJanusPro文生图大模型》DeepSeekJanusPro模型在本地成功部署,支持图片理解和文生图功能,通过Gradio界面进行交互,展示了其强大的多模态处...

Hello, 大家新年好。
在这个春节期间最火的显然是 DeepSeek 了。据不负责统计朋友圈每天给我推送关于 DeepSeek 的文章超过20篇。打开知乎跟B站也全是 DeepSeek 相关的内容。不过大部分的内容都是关于 DeepSeek R1 推理模型有多牛逼。在这里就不多说关于 R1 的废话了,因为大家已经看腻了。
R1 在本地用 ollama 跑了一下,太简单了,都没必要写个教程。除了 R1 今天还在本地部署成功了 DeepSeek 的 Janus Pro 模型。

什么是 Janus Pro

Janus-Pro是一种创新的自回归框架,其统一了多模态理解与生成任务。该框架通过将视觉编码解耦到不同的处理路径(同时仍使用单一统一的Transformer架构进行信息处理),有效解决了先前方法的局限性。这种解耦机制不仅缓解了视觉编码器在理解与生成双重角色间的冲突,还显著提升了框架的灵活性。Janus-Pro在性能上超越了以往的统一模型,并达到甚至超越了专用任务模型的表现水平。凭借其架构简洁性、高度灵活性和卓越有效性,Janus-Pro有望成为下一代统一多模态模型的重要技术方向。

以上内容来自 Janus Pro github 仓库的介绍,非常的学术。简单说它是文生图的模型,类似 DALL-E 3, Stable Diffusion。

以下就让我们看看这么在本地的 PC 电脑来运行 Janus Pro 模型吧。

1. 安装 conda

从以下地址下载 anaconda 的 windphpows 安装包
https://www.anaconda.com/download

如何在本地部署 DeepSeek Janus Pro 文生图大模型

安装完成后需要把安装目录配置到环境变量 PATH 上

2. 创建 python 虚拟环境

conda create -n janus_pro python=3.10 -y
conda activate janus_pro

注意:Python 3.10是经过验证的兼容版本,避免使用其他版本导致依赖冲突

3. 克隆 janus 仓库到本地

git clone https://github.com/deepseek-ai/Janus.git
cd Janus

4. 安装依赖

# 安装基础依赖
pip install -e .

注意:pip 安装依赖的时候可能会遇到网络问题,建议配置代理

5. 安装 Gradio

pip install -e .[phpgradio]

到时候我们会通过 Gradio 的界面跟 janus 进行交互

6. 使用 janus pro 1B 模型

janus pro 默认启动的时候使用的是 7B 参数的模型,本地电脑跑起来的话太卡了。这里我们会修改成使用 1B 模型,这样的话大概 8G 的显存也能勉强跑一跑,7B 的话对显存的要求会更高。

找到我们克隆下来的仓库。使用编辑器打开 demo/
把第15行改成:

model_path = "deepseek-ai/Janus-Pro-1B"

7. 启动 Janus Pro

python demo/app_januspro.py

注意:启动期间会从 huggingface 拉取 1B 模型,大小大概 4G,所以还是需要指定代理。
启动成功后如下图:

如何在本地部署 DeepSeek Janus Pro 文生图大模型

8. 使用 Gradio 界面进行交互

启动成功后在浏览器里输入: http://127.0.0.1:7860 即可访问 Gradio 页面。

如何在本地部署 DeepSeek Janus Pro 文生图大模型

9. 图片理解

先来试试 janus pro 对图片的理解。

如何在本地部署 DeepSeek Janus Pro 文生图大模型

This image is a humorous meme that uses the popular "androidbuff Doge vs. sad Doge" format to compare two different approaches to visual encoding.
...

这个解释到位的有点吓人。

10. 文生图

再来试试文字生成图片

prompt:

A cute and adorable baby fox with big brown eyes, autumn leaves in the background enchanting,immortal,fluffy, shiny mane,Petals,fairyism,unreal engine 5 and Octane Render,highly detailed, photorealistic, cinematic, natural colors.

如何在本地部署 DeepSeek Janus Pro 文生图大模型

图片是我从 Hugging Face 直接运行得到的。在我本地运行了30分钟都没出结果,我直接 ctrl-c 取消了。可能是我的显卡太垃圾了(RTX4060 Mobile)。

总结

以上我们在本地 Windows 上成功部署了 DeepSeek janus pro 模型。按照以上 step by step 的方式也没什么难度。通过测试 janus pro 对图片的理解非常到位。但是文生图的测试失败了,可能是我的显卡太垃圾,如果有同学有 4090 这种显卡可以试一试本地文python生图的性能。

到此这篇关于本地部署 DeepSeek Janus Pro 文生图大模型的文章就介绍到这了,更多相关DeepSeek Janus Pro本地部署内容请搜索China编程(www.chinasem.cn)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程China编程(www.chinasem.cn)!

这篇关于如何在本地部署 DeepSeek Janus Pro 文生图大模型的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1153376

相关文章

Java使用HttpClient实现图片下载与本地保存功能

《Java使用HttpClient实现图片下载与本地保存功能》在当今数字化时代,网络资源的获取与处理已成为软件开发中的常见需求,其中,图片作为网络上最常见的资源之一,其下载与保存功能在许多应用场景中都... 目录引言一、Apache HttpClient简介二、技术栈与环境准备三、实现图片下载与保存功能1.

详解如何使用Python从零开始构建文本统计模型

《详解如何使用Python从零开始构建文本统计模型》在自然语言处理领域,词汇表构建是文本预处理的关键环节,本文通过Python代码实践,演示如何从原始文本中提取多尺度特征,并通过动态调整机制构建更精确... 目录一、项目背景与核心思想二、核心代码解析1. 数据加载与预处理2. 多尺度字符统计3. 统计结果可

Java实现本地缓存的常用方案介绍

《Java实现本地缓存的常用方案介绍》本地缓存的代表技术主要有HashMap,GuavaCache,Caffeine和Encahche,这篇文章主要来和大家聊聊java利用这些技术分别实现本地缓存的方... 目录本地缓存实现方式HashMapConcurrentHashMapGuava CacheCaffe

SpringBoot整合Sa-Token实现RBAC权限模型的过程解析

《SpringBoot整合Sa-Token实现RBAC权限模型的过程解析》:本文主要介绍SpringBoot整合Sa-Token实现RBAC权限模型的过程解析,本文给大家介绍的非常详细,对大家的学... 目录前言一、基础概念1.1 RBAC模型核心概念1.2 Sa-Token核心功能1.3 环境准备二、表结

Maven项目打包时添加本地Jar包的操作步骤

《Maven项目打包时添加本地Jar包的操作步骤》在Maven项目开发中,我们经常会遇到需要引入本地Jar包的场景,比如使用未发布到中央仓库的第三方库或者处理版本冲突的依赖项,本文将详细介绍如何通过M... 目录一、适用场景说明​二、核心操作命令​1. 命令格式解析​2. 实战案例演示​三、项目配置步骤​1

使用Python实现调用API获取图片存储到本地的方法

《使用Python实现调用API获取图片存储到本地的方法》开发一个自动化工具,用于从JSON数据源中提取图像ID,通过调用指定API获取未经压缩的原始图像文件,并确保下载结果与Postman等工具直接... 目录使用python实现调用API获取图片存储到本地1、项目概述2、核心功能3、环境准备4、代码实现

Web技术与Nginx网站环境部署教程

《Web技术与Nginx网站环境部署教程》:本文主要介绍Web技术与Nginx网站环境部署教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Web基础1.域名系统DNS2.Hosts文件3.DNS4.域名注册二.网页与html1.网页概述2.HTML概述3.

python如何下载网络文件到本地指定文件夹

《python如何下载网络文件到本地指定文件夹》这篇文章主要为大家详细介绍了python如何实现下载网络文件到本地指定文件夹,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下...  在python中下载文件到本地指定文件夹可以通过以下步骤实现,使用requests库处理HTTP请求,并结合o

一文详解如何查看本地MySQL的安装路径

《一文详解如何查看本地MySQL的安装路径》本地安装MySQL对于初学者或者开发人员来说是一项基础技能,但在安装过程中可能会遇到各种问题,:本文主要介绍如何查看本地MySQL安装路径的相关资料,需... 目录1. 如何查看本地mysql的安装路径1.1. 方法1:通过查询本地服务1.2. 方法2:通过MyS

Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例

《Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例》本文介绍Nginx+Keepalived实现Web集群高可用负载均衡的部署与测试,涵盖架构设计、环境配置、健康检查、... 目录前言一、架构设计二、环境准备三、案例部署配置 前端 Keepalived配置 前端 Nginx