元象开源70 亿参数通用大模型 XVERSE-7B,全开源、免费可商用,魔搭最佳实践来啦!

本文涉及的产品
交互式建模 PAI-DSW,每月250计算时 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
模型训练 PAI-DLC,100CU*H 3个月
简介: 元象推出 70 亿参数通用大模型 XVERSE-7B 底座与对话版,保持高性能、全开源、免费可商用,让海量中小企业和 AI 开发者能以低成本用上高性能大模型,并在魔搭社区开源,共同推动中国大模型生态建设。

导读


元象推出 70 亿参数通用大模型 XVERSE-7B 底座与对话版,保持高性能、全开源、免费可商用,让海量中小企业和 AI 开发者能以低成本用上高性能大模型,并在魔搭社区开源,共同推动中国大模型生态建设。


与 8 月开源的 XVERSE-13B 相比,7B 版本主打“小而美”:它支持在单张消费级显卡部署运行,推理量化后最低只需 6GB 显存,大幅降低开发门槛和推理成本;继续保持高性能,在多个权威基准测评中表现出色,部分能力还“跳级”赶超了13B、16B等更大尺寸模型。

使用 5 shot 方法测试

在多项权威测试中表现出色


XVERSE-7B 是在 2.6 万亿 tokens 高质量多语言数据上从头训练的底座模型,具有强大的认知、规划、推理和记忆能力。其上下文窗口长度为 8192 ,支持中、英、俄、法等40多种语言。


XVERSE-7B-Chat 是底座模型经 SFT 指令精调后的中英文对话模型,大幅提升了理解和生成内容的准确度,也更符合人类的认知偏好。


元象通用大模型 XVERSE 系列


环境配置与安装


  1. python 3.8及以上版本
  2. pytorch 1.12及以上版本,推荐2.0及以上版本
  3. 建议使用CUDA 11.4及以上(GPU用户需考虑此选项)


使用步骤

本文在ModelScope的免费GPU环境配置下运行 (可单卡运行)


模型链接和下载


元象XVERSE系列模型现已在ModelScope社区开源,包括:


XVERSE-7B:

https://modelscope.cn/models/xverse/XVERSE-7B


XVERSE-7B-Chat:

https://modelscope.cn/models/xverse/XVERSE-7B-Chat


XVERSE-13B:

https://modelscope.cn/models/xverse/XVERSE-13B


XVERSE-13B-Chat:

https://modelscope.cn/models/xverse/XVERSE-13B-Chat


社区支持直接下载模型的repo:

from modelscope.hub.snapshot_download import snapshot_download
model_dir = snapshot_download('xverse/XVERSE-7B-Chat', 'v1.0.0')


模型推理


依赖项:

XVERSE-7B-Chat依赖项:


pip install "modelscope==1.8.1"


推理代码:

XVERSE-7B-Chat可在魔搭社区免费GPU算力(单卡A10)运行:

import torch
from modelscope import AutoTokenizer, AutoModelForCausalLM,snapshot_download
from modelscope import GenerationConfig
model_dir = snapshot_download('xverse/XVERSE-7B-Chat',revision = 'v1.0.0')
tokenizer = AutoTokenizer.from_pretrained(model_dir)
model = AutoModelForCausalLM.from_pretrained(model_dir, trust_remote_code=True, torch_dtype=torch.bfloat16, device_map='auto')
model.generation_config = GenerationConfig.from_pretrained(model_dir)
model = model.eval()
history = [{"role": "user", "content": "1955年谁是美国总统?他是什么党派?"}]
response = model.chat(tokenizer, history)
print(response)
history.append({"role": "assistant", "content": response})
history.append({"role": "user", "content": "他任职了多少年"})
response = model.chat(tokenizer, history)
print(response)

资源消耗:



模型微调和微调后推理


微调代码开源地址:

clone swift仓库并安装swift

git clone https://github.com/modelscope/swift.git
cd swift
pip install .
cd examples/pytorch/llm


微调案例

模型微调脚本 (qlora)

# Experimental environment: 3090
# 12GB GPU memory
CUDA_VISIBLE_DEVICES=0 \
python src/llm_sft.py \
    --model_type xverse-13b \
    --sft_type lora \
    --template_type default-generation \
    --dtype bf16 \
    --output_dir output \
    --dataset advertise-gen \
    --train_dataset_sample -1 \
    --num_train_epochs 1 \
    --max_length 2048 \
    --quantization_bit 4 \
    --bnb_4bit_comp_dtype bf16 \
    --lora_rank 8 \
    --lora_alpha 32 \
    --lora_dropout_p 0. \
    --lora_target_modules ALL \
    --gradient_checkpointing true \
    --batch_size 1 \
    --weight_decay 0. \
    --learning_rate 1e-4 \
    --gradient_accumulation_steps 16 \
    --max_grad_norm 0.5 \
    --warmup_ratio 0.03 \
    --eval_steps 100 \
    --save_steps 100 \
    --save_total_limit 2 \
    --logging_steps 10 \
    --push_to_hub false \
    --hub_model_id xverse-13b-qlora \
    --hub_private_repo true \
    --hub_token 'your-sdk-token' \


模型微调后的推理脚本

# If you want to merge LoRA weight and save it, you need to set `--merge_lora_and_save true`.
CUDA_VISIBLE_DEVICES=0 \
python src/llm_infer.py \
    --model_type xverse-13b \
    --sft_type lora \
    --template_type default-generation \
    --dtype bf16 \
    --ckpt_dir "output/xverse-13b/vx_xxx/checkpoint-xxx" \
    --eval_human false \
    --dataset advertise-gen \
    --max_length 2048 \
    --quantization_bit 4 \
    --bnb_4bit_comp_dtype bf16 \
    --max_new_tokens 1024 \
    --temperature 0.9 \
    --top_k 20 \
    --top_p 0.9 \
    --do_sample true \
    --merge_lora_and_save false \


资源消耗

使用 QLoRA 的方式训练的显存占用如下,大约在11G.



点击直达魔搭社区模型详情:https://modelscope.cn/models/xverse/XVERSE-7B/summary

相关实践学习
部署Stable Diffusion玩转AI绘画(GPU云服务器)
本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。
相关文章
|
8月前
|
弹性计算 自然语言处理 Linux
部署GPT-2大语言模型到基于ECS Intel实例的过程可以分为以下步骤
部署GPT-2大语言模型到基于ECS Intel实例的过程可以分为以下步骤
108 3
|
2月前
|
并行计算 Linux PyTorch
在云上部署ChatGLM2-6B大模型(GPU版)
本教程指导您在配置了Alibaba Cloud Linux 3的GPU云服务器上,安装大模型运行环境(如Anaconda、Pytorch等),并部署大语言模型,最后通过Streamlit运行大模型对话网页Demo。教程包括创建资源、登录ECS实例、安装及校验CUDA、NVIDIA驱动和cuDNN等步骤。
|
人工智能 编解码 文字识别
通义千问720亿参数模型开源,适配企业级、科研级高性能应用
通义千问720亿参数模型开源,适配企业级、科研级高性能应用
1874 0
|
6月前
|
存储 Serverless Linux
函数计算产品使用问题之如何设置两个SD AIGC应用搭载同一个NAS
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
6月前
|
弹性计算 运维 Serverless
函数计算产品使用问题之更换NAS模型后遇到问题,该如何排查
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
移动开发 安全 前端开发
提升iOS应用安全性:全面代码混淆功能介绍,使用Ipa Guard保护你的应用
iOS加固保护是直接针对ios ipa二进制文件的保护技术,可以对iOS APP中的可执行文件进行深度混淆、加密。使用任何工具都无法逆向、破解还原源文件。对APP进行完整性保护,防止应用程序中的代码及资源文件被恶意篡改。Ipa Guard通过修改 ipa 文件中的 macho 文件中二进制数据(代码模块配置)进行操作,无需源码。不限定开发技术平台。支持oc,swift,cocos2d-x、unity3d、quick-cocos,html5 ,react native等等各种开发技术。Ipa Guard主要包含代码混淆全面、资源文件处理、不需要源代码更安全、调试信息清理、即时测试运行。
|
机器学习/深度学习 自然语言处理 API
ChatGLM-6B (介绍以及本地部署)
ChatGLM-6B (介绍以及本地部署)
1403 0
|
移动开发 安全 前端开发
最强大的iOS应用源码保护工具:Ipa Guard,保护你的商业机密代码
iOS加固保护是直接针对ios ipa二进制文件的保护技术,可以对iOS APP中的可执行文件进行深度混淆、加密。使用任何工具都无法逆向、破解还原源文件。对APP进行完整性保护,防止应用程序中的代码及资源文件被恶意篡改。Ipa Guard通过修改 ipa 文件中的 macho 文件中二进制数据(代码模块配置)进行操作,无需源码。不限定开发技术平台。支持oc,swift,cocos2d-x、unity3d、quick-cocos,html5 ,react native等等各种开发技术。Ipa Guard主要包含代码混淆全面、资源文件处理、不需要源代码更安全、调试信息清理、即时测试运行。
|
自动驾驶 Serverless 云栖大会
2023云栖大会 | Serverless化进程——阿里云发布通义千问2.0 性能超GPT-3.5 加速追赶GPT-4
云计算也能“自动驾驶”了!阿里云用大模型对云产品进行AI化改造
1004 6
|
机器学习/深度学习 存储 PyTorch
基于阿里云免费算力自建LLM(类GPT)大模型
基于阿里云免费算力自建LLM(类GPT)大模型

热门文章

最新文章