Qwen2-VL报错
发表于|更新于|LLM
|浏览量:
1 | apply_token_matches |
文章作者: xhj
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 xhj的博客!
相关推荐
2025-11-15
为什么不用单张高分辨率图?
一、为什么不用单张高分辨率图?传统 VLM 如果直接输入: 比如: 1024×1024 1536×1536 ViT patch 数会急剧上升。 假设 patch size = 14(ViT 常见) 那么 token 数近似: 728×728[(728/14)^2 = 52^2 = 2704] 1024×1024[(1024/14)^2 \approx 73^2 = 5329] 几乎翻倍。 而 ViT self-attention复杂度是: O(N^2) token翻倍,attention计算可能接近 4倍。 所以 Step3-VL 的策略是: 不要让一张图特别大,而是拆成: 一个全局图 + 多个局部图 这样可以: 保持 global understanding 获得 local detail batch 并行计算更友好 论文里明确提到: exploits batch-dimension parallelism, avoiding variable-length packing complexity. (Hy...
2025-08-01
Qwen2-VL
Qwen2-VLLayers Qwen2VisionMLP: fc1 = ColumnParallelLinear act = QuickGELU fc2 = RowParallelLinear Qwen2VisionAttention: qkv = ColumnParallelLinear proj = RowParallelLinear rotary_pos_emb attention 3 types Qwen2VisionBlock: norm1 = norm_layer norm2 = norm_layer attn = Qwen2VisionAttention mlp = Qwen2VisionMLP Qwen2VisionPatchEmbed: proj = nn.Conv3d Qwen2VisionPatchMerger: ln_q = norm_layer mlp = ColumnParallelLinear, nn.G...
2025-11-16
代码编译
CUDA 编程练习编译程序跳过 .o 文件,直接编译链接成可执行文件。 12345678910nvcc xxx.cu -o xxx# or:nvcc xxx.cu --gpu-architecture=compute_yy -o xxx# GeForce RTX 2060 (Compute Capability: 7.5)nvcc xxx.cu --gpu-architecture=compute_75 -o xxx# nvcc xxx.cu -arch=sm_75 -o xxx (?)# 执行程序./xxx
2025-08-04
Qwen2.5-VL
Qwen2.5-VL12Layer:- Qwen 方法 = vLLM 算子 LayersQwen2_5_VisionTransformer: patch_embed = Qwen2_5_VisionPatchEmbed rotary_pos_emb = Qwen2_5_VisionRotaryEmbedding blocks = Qwen2_5_VisionBlock * layer_num merger = Qwen2_5_VisionPatchMerger Qwen2_5_VisionPatchEmbed: proj = nn.Conv3d Qwen2_5_VisionRotaryEmbedding: Qwen2_5_VisionBlock: norm1 = RMSNorm attn = Qwen2_5_VisionAttention norm2 = RMSNorm mlp = Qwen2_5_VisionMLP Qwen2_5_VisionAttention: ...
2025-12-02
分布式多卡推理通信域建立与动态通信域解析
好的,这是一个非常核心且专业的问题。我们来详细拆解一下分布式多卡推理中通信域的建立过程,并解释动态通信域的概念。 第一部分:分布式多卡推理中通信域的建立过程在分布式计算中,通信域 是一个核心抽象,它定义了一组可以相互通信的进程。在大模型推理中,由于单个GPU的显存无法容纳整个模型(如拥有数百亿甚至上万亿参数的模型),我们必须将模型“拆分”并分布到多个GPU上。 这个过程主要依赖于 NCCL 这个由NVIDIA打造的高性能通信库。NCCL优化了GPU之间(包括单机多卡和多机多卡)的集合通信操作,如 all-reduce, all-gather, broadcast 等,这些操作在模型并行和流水线并行中至关重要。 建立通信域的过程可以概括为以下几个步骤: 1. 进程初始化分布式任务通常由多个进程组成,每个进程控制一个或多个GPU。在开始任何通信之前,这些进程需要知道自己和同伴的存在。 工具库: 通常使用 torch.distributed(对于PyTorch用户)来管理分布式进程组。 关键函数: torch.distributed.init_process_group(...) ...
2025-08-12
qwen3_vl_image_vs_video_inference
Qwen3-VL:图像推理与视频推理的区别1. 输入预处理图像 输入为静态图片,经过 image_processor 处理 使用 Conv3dLayer(temporal_patch_size=2)对图片做 patch 嵌入,但 t=1(单帧) 输出 pixel_values(shape: [num_patches, flattened_patch_size]) grid 信息保存在 image_grid_thw,每条记录为 [1, H, W] 视频 输入为视频帧序列,经过 video_processor 处理 先均匀采样若干帧(如 16 帧),再按 temporal_patch_size=2 分组打包成时序 patch 输出 pixel_values_videos(shape: [num_patches, flattened_patch_size]) grid 信息保存在 video_grid_thw,每条记录为 [T, H, W],T≥1 表示时序维度 2. 输入格式差异 维度 图像 视频 pixel values key pixel_va...