¿Cómo desplegar DeepSeek Janus Pro en local?
Janus-Pro-7B, lanzado por DeepSeek, es un modelo multimodal de código abierto que admite reconocimiento y generación de imágenes, con un rendimiento superior al DALL·E 3 de OpenAI. A continuación se detallan los pasos, consejos y precauciones para desplegar DeepSeek Janus Pro-7B localmente:
1. Preparación del entorno
Requisitos de hardware
GPU: VRAM ≥24 GB (se recomienda NVIDIA RTX A6000 o una tarjeta gráfica de mayor rendimiento); si la VRAM es insuficiente, puedes probar el modo de baja precisión (model.half()) o reducir los parámetros de generación.
Espacio de almacenamiento: ≥30 GB de espacio disponible (los archivos del modelo ocupan aproximadamente 20 GB+).
Sistema operativo: se recomienda Ubuntu 20.04+ o Windows (requiere compatibilidad con CUDA).
Python: 3.8+, se recomienda usar Conda para gestionar entornos virtuales.
Dependencias de software
CUDA: 11.7+ (debe coincidir con la versión de PyTorch).
PyTorch: versión指定 torch==2.0.1+cu117 (debe instalarse desde el índice oficial).
Otras herramientas: Git, herramienta de descarga HuggingFace Hub (huggingface-cli).
2. Pasos de despliegue
1. Clonar el repositorio
git clone https://github.com/deepseek-ai/Janus.git cd Janus
2. Crear un entorno virtual
conda create -n janus python=3.8 -y conda activate janus
3. Instalar dependencias
pip install torch==2.0.1+cu117 --index-url https://download.pytorch.org/whl/cu117 pip install -r requirements.txt pip install -e .[gradio] # 安装 Gradio 扩展
4. Descargar el modelo
Método 1: Descargar el modelo completo mediante huggingface-cli (se recomienda usar el espejo para usuarios en China para acelerar la descarga):
HF_ENDPOINT=https://hf-mirror.com huggingface-cli download deepseek-ai/Janus-Pro-7B \ --local-dir ./models/Janus-Pro-7B \ --resume-download --cache-dir ./cache
Método 2: Descargar manualmente los archivos del modelo desde el repositorio de HuggingFace y descomprimirlos en ./models/Janus-Pro-7B.
5. Iniciar la aplicación
Interfaz de interacción de texto:
python demo/app_text.py --model-path ./models/Janus-Pro-7B
Interfaz multimodal (admite generación de imágenes y preguntas y respuestas):
python demo/app_multimodal.py --model-path ./models/Janus-Pro-7B --port 7860
Accede a http://localhost:7860 o http://127.0.0.1:7860 para usar la interfaz interactiva.
3. Ejemplos de uso de funciones
Texto a imagen (Text-to-Image)
from janus.utils import generate_image
generate_image(
model_path="./models/Janus-Pro-7B",
prompt="夕阳下的雪山,山脚下有蓝色的湖泊",
output_dir="./outputs",
num_images=4 # 生成4张图)Preguntas y respuestas multimodales (Visual QA)
from janus.models import MultiModalityCausalLM, VLChatProcessor
processor = VLChatProcessor.from_pretrained("./models/Janus-Pro-7B")
model = MultiModalityCausalLM.from_pretrained("./models/Janus-Pro-7B").to("cuda")
# 输入对话与图片路径
conversation = [
{"role": "", "content": "描述这张图片的内容", "images": ["sample.jpg"]},
{"role": "", "content": ""}
]
inputs = processor(conversations=conversation)
outputs = model.generate(**inputs)
print(processor.decode(outputs[0]))4. Problemas frecuentes y optimizaciones
VRAM insuficiente
Reducir los parámetros de generación: max_new_tokens=256.
Activar el modo de baja precisión: model = model.half().
Descarga lenta
Usar la fuente espejo nacional: HF_ENDPOINT=https://hf-mirror.com.
Activar la descarga multihilo: --workers 8.
Conflictos de dependencias
Instalar estrictamente la versión指定:
pip install transformers==4.33.2
Optimización de la calidad de generación de imágenes
Ajustar el peso CFG (en el rango de 5 a 7).
Aumentar el número de muestreos paralelos: parallel_size=16.
Aquí también comparto el método de despliegue local de un técnico que sigo en X:

Consejos útiles:
Consejo 1: Si ya has instalado previamente el entorno pytorch de conda, puedes usar conda create --name myenv --clone base para clonarlo directamente; de lo contrario, cada vez que reinstales pytorch será muy lento y una pérdida de tiempo.
Consejo 2: Asegúrate de instalar flash-attention. Aunque funciona sin él, la VRAM explotará. Si tienes una A100, puedes ignorarlo.
Siguiendo estos pasos, podrás desplegar y experimentar rápidamente con las capacidades multimodales de Janus-Pro-7B en local. Para optimizar o conocer más detalles del modelo, consulta el repositorio de GitHub y la documentación técnica.
Asistente de guiones▸
Apps AI
Noticias AI 