当前位置: 首页 > news >正文

ModelScope推理QwQ32B

文章目录

  • ModelScope推理QwQ32B
    • model_scope下载QwQ32B
    • ModelScope 调用QwQ-32B

ModelScope推理QwQ32B

  • 以下载 qwq32b 为例子

  • 需要安装的 python 包

    transformers==4.49.0
    accelerate>=0.26.0
    torch==2.4.1
    triton==3.0.0
    safetensors==0.4.5
    

    可以使用 conda 创建一个虚拟环境安装

    conda create --name llm python==3.10
    

    切到虚拟环境

    conda activate llm
    

    指定源安装,保存为 requirement.txt 安装(这里用的中科大的源)

    pip install -r requirements.txt --index https://pypi.mirrors.ustc.edu.cn/simple
    
  • QwQ32B硬件要求

    这里使用满精度的QwQ32B,需要64G显存

    硬件配置模型推理模型高效微调模型全量微调
    显存占用最低配置显存占用最低配置显存占用最低配置
    FP_1664GRTX3090*4(94G)92GRTX3090*4(94G)350GA100*6(480G)
    Q_4_K_M23GRTX3090(24G)31GRTX3090*2(48G)
  • 当前文件夹,请自行替换自己的文件夹

    /root/lanyun-tmp/

model_scope下载QwQ32B

  • 创建文件夹统一存放Modelscope下载的模型

    mkdir Model-Scope
    
  • 安装 modelscope

    pip install modelscope --index https://pypi.mirrors.ustc.edu.cn/simple
    
    1. modelscope download:ModelScope 命令行工具的下载命令,用于从 ModelScope 平台下载指定的模型。

    2. --model Qwen/Qwen2.5-0.5B-Instruct

      --model 参数指定要下载的模型的唯一标识符(Model ID)。

      Qwen/Qwen2.5-0.5B-Instruct 模型的 ID,

    3. --local_dir /root/lanyun-tmp/Model-Scope/Qwen2.5-0.5B

      --local_dir 参数指定模型下载后存放的本地目录路径。

      /root/lanyun-tmp/Model-Scope/Qwen2.5-0.5B 是目标目录路径,表示模型将被下载到这个目录中。

  • 执行下载模型的命令

    https://modelscope.cn/models/Qwen/QwQ-32B/files

    复制全名

    Qwen/QwQ-32B

    modelscope download --model Qwen/QwQ-32B --local_dir /root/lanyun-tmp/Model-Scope/QwQ-32B
    

    等待下载完成

    image-20250314211957063

  • 下载完成查目录

    ls Model-Scope/QwQ-32B
    

    可以看到模型文件都下载下来了

    image-20250314212235508

ModelScope 调用QwQ-32B

  • 代码

    from modelscope import AutoModelForCausalLM, AutoTokenizer
    model_name = "./Model-Scope/QwQ-32B/"
    
    model = AutoModelForCausalLM.from_pretrained(
        model_name,
        torch_dtype="auto",
        device_map="auto",
        low_cpu_mem_usage=True
    )
    
    tokenizer = AutoTokenizer.from_pretrained(model_name)
    
    prompt = "你好"
    messages = [
        {"role": "user", "content": prompt}
    ]
    
    text = tokenizer.apply_chat_template(
        messages,
        tokenize=False,
        add_generation_prompt=True
    )
    
    model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
    
    generated_ids = model.generate(
        **model_inputs,
        max_new_tokens=32768
    )
    
    generated_ids = [
        output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)
    ]
    
    response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]
    
    print(response)
    
  • 为快速演示就直接在命令行上了

    image-20250316231114327

    查看下满精度的显存使用量,可以看到用了63.7G左右

    image-20250316231659348


相关文章:

  • SpringBoot手动注册定时任务
  • 【WRF-Urban】使用 CGLC-MODIS-LCZ_100m 数据集运行 WRF 时的城市参数化问题
  • 从0开始搭建微服务架构特别篇SpringCloud网关聚合knife4j
  • S/4 ERP QM 结合 EWM
  • 【C#】Http请求设置接收不安全的证书
  • 通义Qwen实战(1): 环境安装及微调实战
  • 蓝桥杯每日一题——Acwing 5438. 密接牛追踪2
  • Linux mount和SSD分区
  • JetsonOrin源码安装部署PaddlePaddle
  • 【java】集合的基本使用
  • [Linux][经验总结]Ubuntu6.11.0 docker更换镜像源(实操可用的正确方法)
  • 深入解析前后端分离架构:原理、实践与最佳方案
  • 算法手记5
  • ngx_event_conf_t
  • Qt事件处理(重写event)
  • nginx不在默认的yum仓库的解决方法
  • libstdc++ GLIBCXX_3.4.20 not found 解决方法
  • 计算机毕业设计:基于SSM理发店造型中心网上预约评价系统
  • C11标准对于C语言的内存模型的描述
  • C++ 返回值优化(Return Value Optimization)
  • 阿里巴巴国际站骗局/新闻头条新闻
  • 建设网站公司有哪些/seo导航站
  • 做哪个网站的推广最好/知道百度
  • 专业的集团网站建设/教育培训网站设计
  • 幼儿网站源代码/指数基金排名前十名
  • 网站建设选平台/开发软件app需要多少钱