import os os.environ.setdefault("PYTORCH_CUDA_ALLOC_CONF", "expandable_segments:True") os.environ.setdefault("IMAGE_MAX_TOKEN_NUM", "1024") os.environ.setdefault("VIDEO_MAX_TOKEN_NUM", "128") os.environ.setdefault("FPS_MAX_FRAMES", "16") import spaces # MUST come before torch / any CUDA-touching import import torch import gradio as gr from transformers import Qwen3_5ForConditionalGeneration, AutoProcessor from qwen_vl_utils import process_vision_info MODEL_ID = "Jiaha0Hu4ng/OneEmo" model = Qwen3_5ForConditionalGeneration.from_pretrained( MODEL_ID, torch_dtype=torch.bfloat16, attn_implementation="sdpa", ).to("cuda").eval() processor = AutoProcessor.from_pretrained(MODEL_ID) # ── Task prompts (ported 1:1 from the OneEmo repo prompts/ directory) ─────── MER_PROMPT = "[MER]