阿里最新大模型Qwen2-72B-Instruct 开源体验

Qwen2 是 Qwen 大型语言模型的新系列。对于 Qwen2,我们发布了许多基础语言模型和指令调优语言模型,范围从 0.5 到 720 亿个参数,包括专家混合模型。此存储库包含指令调整的 72B Qwen2 模型。

与之前发布的 Qwen1.5 等最先进的开源语言模型相比,Qwen2 总体上超越了大多数开源模型,并在语言理解、语言生成、多语言能力、编码、数学、推理等一系列基准测试中表现出了与专有模型的竞争力。

Qwen2-72B-Instruct 支持高达 131,072 个令牌的上下文长度,从而能够处理大量输入。

Qwen2系列包含5个尺寸的预训练和指令微调模型,其中包括Qwen2-0.5B、Qwen2-1.5B、Qwen2-7B、Qwen2-57B-A14B和Qwen2-72B。如下表所示:

关于模型评测结果:Qwen2-72B在包括自然语言理解、知识、代码、数学及多语言等多项能力上均显著超越当前领先的模型,如Llama-3-70B以及Qwen1.5最大的模型Qwen1.5-110B

Qwen2-72B-Instruct的表现

亮点:

在代码方面,成功将CodeQwen1.5的成功经验融入Qwen2的研发中,实现了在多种编程语言上的显著效果提升。而在数学方面,大规模且高质量的数据帮助Qwen2-72B-Instruct实现了数学解题能力的飞升。

长文本处理方面,Qwen2-7B-Instruct几乎完美地处理长达128k的上下文;Qwen2-57B-A14B-Instruct则能处理64k的上下文长度;而该系列中的两个较小模型则支持32k的上下文长度。

使用qwen2大模型:

from transformers import AutoModelForCausalLM, AutoTokenizer
device = "cuda" # the device to load the model onto

model = AutoModelForCausalLM.from_pretrained(
    "Qwen/Qwen2-72B-Instruct",
    torch_dtype="auto",
    device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen2-72B-Instruct")

prompt = "Give me a short introduction to large language model."
messages = [
    {"role": "system", "content": "You are a helpful assistant."},
    {"role": "user", "content": prompt}
]
text = tokenizer.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True
)
model_inputs = tokenizer([text], return_tensors="pt").to(device)

generated_ids = model.generate(
    model_inputs.input_ids,
    max_new_tokens=512
)
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]

处理长文本

为了处理超过 32,768 个标记的广泛输入,我们利用了 YARN,这是一种增强模型长度外推的技术,确保在冗长文本上的最佳性能。

对于部署,我们建议使用 vLLM。您可以按照以下步骤启用长上下文功能:

  1. 安装 vLLM:可以通过运行以下命令来安装 vLLM。
pip install "vllm>=0.4.3"

或者,您可以从源代码安装 vLLM。

  1. 配置模型设置:下载模型权重后,通过包含以下代码片段来修改文件:config.json
    {
        "architectures": [
            "Qwen2ForCausalLM"
        ],
        // ...
        "vocab_size": 152064,

        // adding the following snippets
        "rope_scaling": {
            "factor": 4.0,
            "original_max_position_embeddings": 32768,
            "type": "yarn"
        }
    }

模型部署:利用 vLLM 部署模型。例如,您可以使用以下命令设置类似 openAI 的服务器:

python -m vllm.entrypoints.openai.api_server --served-model-name Qwen2-72B-Instruct --model path/to/weights

然后,您可以通过以下方式访问聊天 API:

curl http://localhost:8000/v1/chat/completions \
    -H "Content-Type: application/json" \
    -d '{
    "model": "Qwen2-72B-Instruct",
    "messages": [
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Your Long Input Here."}
    ]
    }'

注意:目前,vLLM 仅支持静态 YARN,这意味着无论输入长度如何,缩放因子都保持不变,这可能会影响较短文本的性能。建议仅在需要处理长上下文时才添加配置。rope_scaling

在huggingface上体验: https://huggingface.co/spaces/Qwen/Qwen2-72B-Instruct

文章地址 :阿里最新大模型Qwen2-72B-Instruct  开源体验 – AI小站 (aisites.cn)

  • 12
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值