Qwen1.5 是 Qwen2 的测试版,它是一款基于 Transformer 的仅解码器语言模型,在海量数据上进行了预训练。与之前发布的 Qwen 相比,其改进包括:
trust_remote_code。Qwen1.5 是一个语言模型系列,包含不同规模的解码器语言模型。对于每种规模,我们都会发布基础语言模型和经过对齐的对话模型。该模型基于 Transformer 架构,采用 SwiGLU 激活函数、注意力 QKV 偏置、分组查询注意力(group query attention)、滑动窗口注意力与全注意力混合机制等技术。此外,我们还改进了分词器,使其能适配多种自然语言和代码。在测试版中,除 32B 模型外,暂未包含 GQA 以及滑动窗口注意力与全注意力的混合机制。
Qwen1.5 的代码已集成到最新版的 Hugging Face Transformers 中,建议您安装 transformers>=4.37.0,否则可能会遇到以下错误:
KeyError: 'qwen2'.# source environment variable
source /usr/local/Ascend/ascend-toolkit/set_env.sh
export OPENMIND_FRAMEWORK=ptOpenMind Library 可通过 pip 进行安装,请根据实际环境选择相应命令进行安装。
需要注意的是,由于 torch npu 依赖于 torch,在 aarch64 环境下可直接通过 pip 安装,但在 x86 环境下需要特定 URL 下载 CPU 版本,因此两种环境下的安装命令有所不同。具体安装代码已在下文进行区分呈现。
# aarch64
pip install openmind[all]
# x86
pip install openmind[all] --extra-index-url https://download.pytorch.org/whl/cpufrom openmind import AutoTokenizer, AutoModelForCausalLM
import torch
import torch_npu
model_dir = "HangZhou_Ascend/Qwen1.5-1.8B"
tokenizer = AutoTokenizer.from_pretrained(model_dir, device_map="auto", trust_remote_code=True)
# Set `torch_dtype=torch.float16` to load model in float16, otherwise it will be loaded as float32 and might cause OOM Error.
model = AutoModelForCausalLM.from_pretrained(model_dir, device_map="auto", trust_remote_code=True, torch_dtype=torch.float16)
model = model.eval()
response, history = model.chat(tokenizer, "1+1=", history=[], meta_instruction="")
print(response)我们不建议您直接使用基础语言模型进行文本生成。相反,您可以在此模型上进行后训练,例如SFT、RLHF、持续预训练等。
如果您觉得我们的工作对您有帮助,欢迎引用我们的成果。
@article{qwen,
title={Qwen Technical Report},
author={Jinze Bai and Shuai Bai and Yunfei Chu and Zeyu Cui and Kai Dang and Xiaodong Deng and Yang Fan and Wenbin Ge and Yu Han and Fei Huang and Binyuan Hui and Luo Ji and Mei Li and Junyang Lin and Runji Lin and Dayiheng Liu and Gao Liu and Chengqiang Lu and Keming Lu and Jianxin Ma and Rui Men and Xingzhang Ren and Xuancheng Ren and Chuanqi Tan and Sinan Tan and Jianhong Tu and Peng Wang and Shijie Wang and Wei Wang and Shengguang Wu and Benfeng Xu and Jin Xu and An Yang and Hao Yang and Jian Yang and Shusheng Yang and Yang Yao and Bowen Yu and Hongyi Yuan and Zheng Yuan and Jianwei Zhang and Xingxuan Zhang and Yichang Zhang and Zhenru Zhang and Chang Zhou and Jingren Zhou and Xiaohuan Zhou and Tianhang Zhu},
journal={arXiv preprint arXiv:2309.16609},
year={2023}
}