记录torch运行的bug

部署运行你感兴趣的模型镜像

Traceback (most recent call last):
  File "/mnt2/wsj/table/basetest/test_single.py", line 243, in <module>
    QWen2VL()
  File "/mnt2/wsj/table/basetest/test_single.py", line 116, in QWen2VL
    generated_ids = model.generate(**inputs, max_new_tokens=512)
  File "/home/turing1/miniconda3/envs/MiniCPMV_wsj/lib/python3.10/site-packages/torch/utils/_contextlib.py", line 116, in decorate_context
    return func(*args, **kwargs)
  File "/home/turing1/miniconda3/envs/MiniCPMV_wsj/lib/python3.10/site-packages/transformers/generation/utils.py", line 2048, in generate
    result = self._sample(
  File "/home/turing1/miniconda3/envs/MiniCPMV_wsj/lib/python3.10/site-packages/transformers/generation/utils.py", line 3044, in _sample
    next_tokens = torch.multinomial(probs, num_samples=1).squeeze(1)
RuntimeError: CUDA error: device-side assert triggered
Compile with `TORCH_USE_CUDA_DSA` to enable device-side assertions.

 试试看只使用一个gpu

    model = Qwen2VLForConditionalGeneration.from_pretrained(
        weight_path,
        torch_dtype=torch.bfloat16,
        device_map="sequential",
    )
    processor = AutoProcessor.from_pretrained(weight_path)
    device = torch.device('cuda:0')    
    text = processor.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
    image_inputs, video_inputs = process_vision_info(messages)
    inputs = processor(
        text=[text],
        images=image_inputs,
        videos=video_inputs,
        padding=True,
        return_tensors="pt",
    ).to(device)
    generated_ids = model.generate(**inputs, max_new_tokens=512)
    generated_ids_trimmed = [
        out_ids[len(in_ids):] for in_ids, out_ids in zip(inputs.input_ids, generated_ids)
    ]
    output_text = processor.batch_decode(
        generated_ids_trimmed, skip_special_tokens=True, clean_up_tokenization_spaces=False
    )

您可能感兴趣的与本文相关的镜像

PyTorch 2.9

PyTorch 2.9

PyTorch
Cuda

PyTorch 是一个开源的 Python 机器学习库,基于 Torch 库,底层由 C++ 实现,应用于人工智能领域,如计算机视觉和自然语言处理

### PyTorch 版本 v0.3.1 的相关信息 PyTorch 是一个广泛使用的开源机器学习框架,其早期版本(如 v0.3.1)可能已经停止维护和支持。然而,在某些特定场景下,用户仍需安装旧版以满足兼容性需求。 对于 PyTorch v0.3.1 的安装方法,可以参考官方文档中的历史记录以及社区支持的内容。以下是关于该版本的一些重要信息: #### 安装方式 为了安装指定的 PyTorch 版本 (v0.3.1),可以通过 `pip` 命令完成。需要注意的是,由于此版本较老,部分依赖项可能会引发冲突或错误。例如,您提到的 `AttributeError: module 'distutils' has no attribute 'version'` 可能与 Python 环境配置有关[^1]。解决此类问题的方法之一是确保环境中的依赖库是最新的或者适配于目标版本。 针对 CUDA 支持的情况,您可以尝试以下命令来安装带有 GPU 加速功能的 PyTorch v0.3.1: ```bash pip install https://download.pytorch.org/whl/cu80/torch-0.4.1-cp36-cp36m-linux_x86_64.whl ``` 尽管上述链接指向的是 v0.4.1,但类似的逻辑适用于其他版本下载地址的选择。具体到 v0.3.1,请访问 [PyTorch 归档页面](https://pytorch.org/get-started/previous-versions/) 并找到对应的 WHL 文件路径[^2]。 另外,如果您的项目不涉及 GPU 使用,则可以选择 CPU-only 的二进制包形式进行安装。 #### 发布说明 根据已知的历史数据,PyTorch v0.3.1 主要改进集中在性能优化、API 细节调整等方面。它引入了一些新特性并修复若干 bug,但仍处于快速迭代阶段。因此建议开发者仔细阅读当时的 **release notes** 来了解完整的变更列表[^3]。 --- ### 注意事项 当处理老旧软件栈时,务必注意操作系统的兼容性和基础工具链的状态。比如 Python 解释器版本应匹配所选轮子文件的要求;同时确认 pip 已更新至适当水平以便顺利解析远程资源 URL 地址。 最后提醒一点,长期运行基于过期分支的应用程序存在潜在风险,包括但不限于安全性漏洞暴露和技术债务累积等问题。所以除非必要,否则推荐升级至最新稳定发行版。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值