【大模型实践】通义千问QWen 安装及体验(三)

通义千问,是阿里云推出的一个超大规模的语言模型,功能包括多轮对话、文案创作、逻辑推理、多模态理解、多语言支持。能够跟人类进行多轮的交互,也融入了多模态的知识理解,且有文案创作能力,能够续写小说,编写邮件等。

自12月1日阿里云宣布开源,通义千问72B大模型就开启了“屠榜”模式,接连问鼎多个权威排行榜。今天,通义千问又摘得一重要榜单冠军。

12月12日,中国权威的大模型评测平台OpenCompass日前更新了榜单,阿里云通义千问登上开源基座大模型榜首,并在中文数据集评测中包揽前二。

通义千问72B开源模型(Qwen-72B),以67.1的综合得分夺得OpenCompass基座大模型榜单冠军,并在学科能力、理解能力两大维度评测中超越标杆GPT-4,创下开源大模型的新纪录。

而在OpenCompass中文数据集评测中,通义千问72B基座大模型和对话大模型(Qwen-72B-Chat)包揽前二,与其他模型拉开差距。

本文介绍通义千问的安装过程及使用方法,使用的模型是Qwen-14B-int4。

GitHub地址:https://github.com/QwenLM/Qwen

一、安装

下载代码:

git clone https://github.com/QwenLM/Qwen.git
cd Qwen

创建conda虚拟环境:

conda create -n qwen python=3.10

进入虚拟环境:

conda activate qwen

安装依赖(这里用清华源加速):

pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install -r requirements_web_demo.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

安装flash-attention(可跳过):

git clone https://github.com/Dao-AILab/flash-attention
cd flash-attention && pip install .
cd ..

二、下载权重

可以在魔塔社区下载权重。本教程下载Qwen-14B-Chat-Int4模型,可以根据需要自行下载。

安装git lfs:

git lfs install

下载Qwen-14B-Chat-Int4(git clone的时候卡住了,手动中断了一下):

git clone https://www.modelscope.cn/qwen/Qwen-14B-Chat-Int4.git
cd Qwen-14B-Chat-Int4
git lfs pull
cd ..

耐心等待一段时间后,权重下载完成。

因为使用的是量化的权重,还要安装optimum和auto-gptq:

pip install optimum -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install auto-gptq -i https://pypi.tuna.tsinghua.edu.cn/simple

三、启动web demo

安装已经完成,下面开始启动服务,体验一下通义千问14B模型,首先把web_demo.py中的权重路径修改为下载权重的位置,如果您使用的命令和本教程一致,那么您的权重路径应该为:Qwen-14B-Chat-Int4。

代码修改如下(第18行):

# Copyright (c) Alibaba Cloud.
#
# This source code is licensed under the license found in the
# LICENSE file in the root directory of this source tree.

"""A simple web interactive chat demo based on gradio."""
import os
from argparse import ArgumentParser

import gradio as gr
import mdtex2html

import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
from transformers.generation import GenerationConfig


DEFAULT_CKPT_PATH = 'Qwen-14B-Chat-Int4'

如下图:

启动web服务:

python web_demo.py

如下图:

下面就可以愉快的对话了:

通义千问是一个大型语言模型,经过训练可以生成各种类型的文本内容,包括但不限于文章、对话等。可以回答各种问题,提供定义、解释和建议,并进行翻译、总结和生成文本。此外,还可以写故事、分析情绪、提供建议等等。
需要注意的是,尽管已经接受了大量的训练,但并不完美,它的答案可能会有错误或不准确的地方。

猜你喜欢

转载自blog.csdn.net/qq_40035462/article/details/135182993