Qwen2-1.5B-Instruct
Qwen2 是新一代的 Qwen 大型语言模型系列。针对 Qwen2,我们发布了一系列基础语言模型和指令微调语言模型,参数规模从 0.5B 到 72B 不等,其中包括混合专家(Mixture-of-Experts)模型。本仓库包含经指令微调的 15 亿参数 Qwen2 模型。
与当前最先进的开源语言模型(包括此前发布的 Qwen1.5)相比,Qwen2 在一系列针对语言理解、语言生成、多语言能力、代码编写、数学运算、推理等任务的基准测试中,普遍超越了大多数开源模型,并展现出与专有模型相竞争的能力。
Qwen2 是一个语言模型系列,包含不同规模的解码器语言模型。对于每种规模,我们都会发布基础语言模型和经过对齐的对话模型。该系列模型基于 Transformer 架构,采用 SwiGLU 激活函数、注意力 QKV 偏置、分组查询注意力(group query attention)等技术。此外,我们还改进了分词器,使其能够更好地适应多种自然语言和代码。
我们使用大量数据对模型进行了预训练,并通过监督微调(supervised finetuning)和直接偏好优化(direct preference optimization)对模型进行了后续训练。
KeyError: 'qwen2'
以下提供一个使用 apply_chat_template 的代码片段,展示如何加载分词器和模型以及如何生成内容。
import argparse
import torch
from openmind import pipeline, is_torch_npu_available
from openmind_hub import snapshot_download
def parse_args():
parser = argparse.ArgumentParser()
parser.add_argument(
"--model_name_or_path",
type=str,
help="Path to model",
default=None,
)
args = parser.parse_args()
return args
def main():
args = parse_args()
model_path = args.model_name_or_path
if is_torch_npu_available():
device = "npu:0"
else:
device = "cpu"
generator = pipeline('text-generation', model=model_path, device=device)
output = generator("Hello, I'm a language model,", max_length=30, num_return_sequences=5, num_beams=5)
print(f">>>output={output}", flush=True)
if __name__ == "__main__":
main()我们对Qwen2-1.5B-Instruct与Qwen1.5-1.8B-Chat进行了简要对比,结果如下:
数据集 Qwen1.5-0.5B-Chat Qwen2-0.5B-Instruct Qwen1.5-1.8B-Chat Qwen2-1.5B-Instruct MMLU 35.0 37.9 43.7 52.4 HumanEval 9.1 17.1 25.0 37.8 GSM8K 11.3 40.1 35.3 61.6 C-Eval 37.2 45.2 55.3 63.8 IFEval(Prompt Strict-Acc.) 14.6 20.0 16.8 29.0
如果您觉得我们的工作对您有所帮助,欢迎引用。
@article{qwen2, title={Qwen2 Technical Report}, year={2024} }