阿里通义开源推理模型新王者!QwQ-32B:性能直逼671B的DeepSeek-R1

简介: QwQ-32B 是阿里巴巴开源的新型推理模型,基于强化学习训练,具备强大的数学推理和编程能力,性能媲美更大参数量的模型。

❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!

🥦 AI 在线答疑 -> 智能检索历史文章和开源项目 -> 尽在微信公众号 -> 搜一搜:蚝油菜花 🥦


🎧 “阿里开源推理神器 QwQ-32B:仅靠 32B 参数,数学编程全搞定!”

🚀 「32B参数吊打670B?阿里开源推理核弹:强化学习炼出的数学天才模型」

大家好,我是蚝油菜花。你是否也经历过这些崩溃瞬间——

  • 👉 调试代码时逻辑绕成毛线团,死活找不到bug出口
  • 👉 啃数学证明像看天书,三步推导卡两小时
  • 👉 读论文时明明每个字都认识,连起来却不知所云...

今天要揭秘的 QwQ-32B ,堪称AI界的"最强大脑"!这个由阿里开源的320亿参数模型,通过强化学习炼就超凡推理能力:

  • ✅ 数学证明:在IMO难题上准确率超70%,步骤严谨如教授板书
  • ✅ 代码生成:支持多轮调试对话,自动定位隐藏bug
  • ✅ 跨领域推理:用《三体》情节解释量子力学,复杂概念秒懂

更疯狂的是,它的数学推理能力竟比肩671B参数的顶尖模型!工程师用它三天搞定毕设,研究员靠它批量刷论文——你的思维外挂已经到货,准备好开启认知革命了吗?

🚀 快速阅读

QwQ-32B 是阿里巴巴开源的新型推理模型,具备强大的数学推理和编程能力。

  1. 核心功能:支持数学推理、编程任务和智能体能力,适用于复杂任务的动态决策。
  2. 技术原理:基于强化学习训练,集成智能体能力,根据环境反馈调整推理策略。

QwQ-32B 是什么

QwQ-32B-final

QwQ-32B 是阿里巴巴开源的新型推理模型,参数量为 320 亿。基于大规模强化学习(RL)训练,在数学推理、编程等任务上表现出色,性能比肩 6710 亿参数的 DeepSeek-R1 满血版。模型集成智能体能力,根据环境反馈调整推理过程,展现出强大的适应性和推理能力。

QwQ-32B-chat

模型已在 Hugging Face 开源,采用 Apache 2.0 协议,在 Qwen Chat 能直接进行体验。QwQ-32B 的发布证明强化学习在提升模型性能方面的巨大潜力,为未来通用人工智能(AGI)的发展提供了新的思路和方向。

QwQ-32B 的主要功能

  • 强大的推理能力:在数学推理、编程任务和通用能力测试中表现出色,性能媲美更大参数量的模型。
  • 智能体(Agent)能力:支持进行批判性思考,根据环境反馈调整推理过程,适用于复杂任务的动态决策。
  • 多领域适应性:基于强化学习训练,模型在数学、编程和通用能力上均有显著提升。

QwQ-32B 的技术原理

  • 强化学习训练:模型针对数学和编程任务进行 RL 训练。数学任务基于校验答案正确性提供反馈,编程任务基于代码执行结果评估反馈。随后,模型进入通用能力训练阶段,用通用奖励模型和基于规则的验证器进一步提升性能。
  • 预训练基础模型:QwQ-32B 基于强大的预训练模型(如 Qwen2.5-32B),大规模预训练获得广泛的语言和逻辑能力。强化学习在此基础上进一步优化模型的推理能力,让模型在特定任务上表现更优。
  • 智能体集成:模型集成智能体能力,根据环境反馈动态调整推理策略,实现更复杂的任务处理。

如何运行 QwQ-32B

通过镜像一键部署

在这里特别感谢 UCloud 优云智算提供的 GPU 算力支持!让项目得到了快速的部署和调试运行。

UCloud 介绍

UCloud

优云智算是 UCloud 优刻得的GPU算力租赁平台,专注于为用户提供灵活的算力资源。支持按天、按小时短期租赁及包月长期租赁,满足各类需求。

结合丰富的公共镜像社区,优云智算提供多种预配置的容器镜像,如LLamaFactory、SD-webUI 和 LLM 等,实现一键部署,5分钟就能快速上手 AI,助力用户快速启动和扩展项目。

1. 使用该镜像创建实例

QwQ-32B 满血版 - 镜像发布页(神秘通道)https://www.compshare.cn/images-detail?ImageID=compshareImage-196v8h1mckwf&referral_code=4sOb83sEXe4BLkKYqw9G4P&ytag=GPU_hych_Lcsdn_csdn_display

QwQ-32B-GGUF 量化版 - 镜像发布页(神秘通道)https://www.compshare.cn/images-detail?ImageID=compshareImage-196q11p0a2fj&referral_code=4sOb83sEXe4BLkKYqw9G4P&ytag=GPU_hych_Lcsdn_csdn_display

【算力福利速递】神秘通道秒领40枚算力金币解锁20小时顶配4090显卡试驾体验!学生党/职场人亮出大佬身份,立享永久VIP+额外金币补给包,快乐白嫖手慢无~

首先,在镜像发布页可以查看到我制作完成并分享到平台的实例镜像,通过右侧的使用该镜像创建实例可以快速创建一个实例。

UCloud_use_mirror

2. 部署GPU实例

可按需选择配置后再立即部署

运行满血版的 QwQ-32B 模型推荐配置四卡(选配GPU型号为40系,数量为4)

UCloud_mirror_ini

3. 启动实例

稍等片刻后,实例就会自动创建并启动,通过查看实例列表可查看实例的运行状态,并支持随时关闭或启用。

UCloud_contorl

实例同时提供了一个 JupyterLab 应用作为交互式开发环境,它提供了更现代化和灵活的用户界面,方便我们继续后续的步骤。

UCloud_JupyterLab

1. 使用 Hugging Face Transformers

from transformers import AutoModelForCausalLM, AutoTokenizer

model_name = "Qwen/QwQ-32B"

model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype="auto",
    device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained(model_name)

prompt = "How many r's are in the word \"strawberry\""
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)

运行效果

QwQ-32B-terminal

2. 使用 Alibaba Cloud DashScope API

from openai import OpenAI
import os

# Initialize OpenAI client
client = OpenAI(
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    base_url="https://dashscope.aliyuncs.com/compatible-mode/v1"
)

reasoning_content = ""
content = ""

is_answering = False

completion = client.chat.completions.create(
    model="qwq-32b",
    messages=[
        {
   "role": "user", "content": "Which is larger, 9.9 or 9.11?"}
    ],
    stream=True
)

print("\n" + "=" * 20 + "reasoning content" + "=" * 20 + "\n")

for chunk in completion:
    if not chunk.choices:
        print("\nUsage:")
        print(chunk.usage)
    else:
        delta = chunk.choices[0].delta
        if hasattr(delta, 'reasoning_content') and delta.reasoning_content is not None:
            print(delta.reasoning_content, end='', flush=True)
            reasoning_content += delta.reasoning_content
        else:
            if delta.content != "" and is_answering is False:
                print("\n" + "=" * 20 + "content" + "=" * 20 + "\n")
                is_answering = True
            print(delta.content, end='', flush=True)
            content += delta.content

3. 使用 Streamlit 构建聊天机器人

# 导入所需的库
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
import streamlit as st

# 在侧边栏中创建一个标题和一个链接
with st.sidebar:
    st.markdown("## Qwen/QwQ-32B LLM")
    max_length = st.slider("max_length", 0, 32768, 1024, step=1)

# 创建一个标题和一个副标题
st.title("💬 Qwen/QwQ-32B Chatbot")
st.caption("🚀 A streamlit chatbot powered by Hugging Face Transformers")

# 定义模型路径
model_name = "Qwen/QwQ-32B"

# 定义一个函数,用于获取模型和tokenizer
@st.cache_resource
def get_model():
    tokenizer = AutoTokenizer.from_pretrained(model_name)
    model = AutoModelForCausalLM.from_pretrained(
        model_name,
        torch_dtype="auto",
        device_map="auto"
    )
    model.eval()  
    return tokenizer, model

# 加载模型和tokenizer
tokenizer, model = get_model()

if "messages" not in st.session_state:
    st.session_state["messages"] = [{
   "role": "assistant", "content": "有什么可以帮您的?"}]

# 显示聊天记录
for msg in st.session_state.messages:
    st.chat_message(msg["role"]).write(msg["content"])

# 处理用户输入
if prompt := st.chat_input():
    st.session_state.messages.append({
   "role": "user", "content": prompt})
    st.chat_message("user").write(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=max_length
    )

    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]
    st.session_state.messages.append({
   "role": "assistant", "content": response})
    st.chat_message("assistant").write(response)

运行效果

QwQ-32B-demo

资源


❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!

🥦 AI 在线答疑 -> 智能检索历史文章和开源项目 -> 尽在微信公众号 -> 搜一搜:蚝油菜花 🥦

相关文章
|
3月前
|
负载均衡 测试技术 调度
大模型分布式推理:张量并行与流水线并行技术
本文深入探讨大语言模型分布式推理的核心技术——张量并行与流水线并行。通过分析单GPU内存限制下的模型部署挑战,详细解析张量并行的矩阵分片策略、流水线并行的阶段划分机制,以及二者的混合并行架构。文章包含完整的分布式推理框架实现、通信优化策略和性能调优指南,为千亿参数大模型的分布式部署提供全面解决方案。
894 4
|
3月前
|
人工智能 搜索推荐 程序员
当AI学会“跨界思考”:多模态模型如何重塑人工智能
当AI学会“跨界思考”:多模态模型如何重塑人工智能
367 120
|
3月前
|
机器学习/深度学习 缓存 自然语言处理
【万字长文】大模型训练推理和性能优化算法总结和实践
我们是阿里云公共云 AI 汽车行业大模型技术团队,致力于通过专业的全栈 AI 技术推动 AI 的落地应用。
2155 38
【万字长文】大模型训练推理和性能优化算法总结和实践
|
3月前
|
机器学习/深度学习 存储 并行计算
大模型推理加速技术:FlashAttention原理与实现
本文深入解析大语言模型推理加速的核心技术——FlashAttention。通过分析传统注意力机制的计算瓶颈,详细阐述FlashAttention的IO感知算法设计、前向反向传播实现,以及其在GPU内存层次结构中的优化策略。文章包含完整的CUDA实现示例、性能基准测试和实际部署指南,为开发者提供高效注意力计算的全套解决方案。
546 10
|
3月前
|
缓存 物联网 PyTorch
使用TensorRT LLM构建和运行Qwen模型
本文档介绍如何在单GPU和单节点多GPU上使用TensorRT LLM构建和运行Qwen模型,涵盖模型转换、引擎构建、量化推理及LoRA微调等操作,并提供详细的代码示例与支持矩阵。
973 2
|
3月前
|
机器学习/深度学习 存储 缓存
大模型推理加速技术:PagedAttention原理与实现
本文深入解析大语言模型推理中的革命性技术——PagedAttention,该技术是vLLM推理引擎的核心创新。通过将操作系统中的虚拟内存分页概念引入注意力机制,PagedAttention有效解决了KV缓存的内存碎片问题,实现了近乎零浪费的KV缓存管理。文章详细阐述其原理、内存管理机制、实现细节,并提供完整的代码示例和性能分析。
459 1
|
4月前
|
人工智能 自然语言处理 IDE
模型微调不再被代码难住!PAI和Qwen3-Coder加速AI开发新体验
通义千问 AI 编程大模型 Qwen3-Coder 正式开源,阿里云人工智能平台 PAI 支持云上一键部署 Qwen3-Coder 模型,并可在交互式建模环境中使用 Qwen3-Coder 模型。
947 109

热门文章

最新文章