引子
北京时间1月28日凌晨,近期爆红的国产大模型DeepSeek在GitHub平台发布了Janus-Pro多模态大模型,这是继Janus发布之后的一次较大幅度升级。该款大模型是2024年11月13日发布的JanusFlow大模型的高级版本。相比前一代模型,Janus-Pro优化了训练策略、扩展了训练数据,模型也更大。通过这些改进,Janus-Pro 在多模态理解和文本到图像的指令跟踪功能方面都取得了重大进步,同时还增强了文本到图像生成的稳定性。OK,我们开始吧。
一、模型介绍
根据DeepSeek发布的测试结果,Janus-Pro在 GenEval 和 DPG-Bench 基准测试中击败了 Stable Diffusion 和 OpenAI 的 DALL-E 3。目前,Janus系列的4款模型已经开源。
首先,多模态理解任务上:Janus-Pro在MMBench基准测试中得分79.2,超过了其他一些知名的模型,比如TokenFlow-XL(68.9)和MetaMorph(75.2)。这像在一场画画比赛中,Janus-Pro的画作得到更高的评价,说明它在理解图像内容方面确实很厉害。对了,TokenFlow-XL是ByteFlow-AI团队开发的一个多模态模型,而MMBench由Meta公司开发;这两个对比充分说明了Janus-Pro在多模态理解任务中的领先地位。
其次,在视觉生成任务上:Janus-Pro在GenEval基准测试中得分(0.80),也超过了DALL-E 3(0.67)和Stable Diffusion 3 Medium(0.74)等模型。
这像给Janus-Pro一个文字描述,让它画出一幅画,结果它画得比其他模型更准确、更细致,说明它在根据文字描述生成图像方面也很出色。对了,DALL-E 3是OpenAI开发的文生图模型,而 Stable Diffusion 3 Medium不用说了,众所周知,专注于生成高质量图片,特别在中等分辨率下表现出色。
![0](https://img2024.cnblogs.com/blog/2709265/202502/2709265-20250210091414596-56758104.png)
二、环境搭建
模型下载,硬件受限
7B模型
https://huggingface.co/deepseek-ai/Janus-Pro-7B/tree/main
docker run -it -v /datas/work/zzq/:/workspace --gpus=all --net=host pytorch/pytorch:2.0.1-cuda11.7-cudnn8-devel bash
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
三、测试推理
多模态理解:
修改模型路径,支持精度
![0](https://img2024.cnblogs.com/blog/2709265/202502/2709265-20250210091414655-774455004.png)
cd /workspace/DeepSeek/Janus
python inference.py
![0](https://img2024.cnblogs.com/blog/2709265/202502/2709265-20250210091414588-1367543098.png)
![0](https://img2024.cnblogs.com/blog/2709265/202502/2709265-20250210091414602-140849427.png)
视觉生成:
显存问题修改,parallel_size大小
![0](https://img2024.cnblogs.com/blog/2709265/202502/2709265-20250210091414622-132613868.png)
老显卡不支持bFloat16,修改代码为float16
![0](https://img2024.cnblogs.com/blog/2709265/202502/2709265-20250210091414629-1105105859.png)
生成图像如下:
![0](https://img2024.cnblogs.com/blog/2709265/202502/2709265-20250210091414724-301509858.png)