性能提升30%!中国电信进一步开源12B星辰大模型TeleChat-12B!魔搭社区最佳实践来啦!

本文涉及的产品
模型训练 PAI-DLC,100CU*H 3个月
交互式建模 PAI-DSW,每月250计算时 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
简介: 中国电信人工智能研究院开源12B参数规模星辰语义大模型TeleChat-12B,相较1月开源7B版本,内容、性能和应用等方面整体效果提升30%,其中,多轮推理、安全问题等领域提升超40%。在C-eval、MMLU、AGIEVAL等国际权威榜单上,排名处于国内同级别参数开源模型的前列,进一步促进大模型开源生态繁荣,助力AI产业加速高质量发展。另据悉,中国电信人工智能研究院将于年内开源千亿级参数大模型。

导读

近日,中国电信人工智能研究院开源12B参数规模星辰语义大模型TeleChat-12B,相较1月开源7B版本,内容、性能和应用等方面整体效果提升30%,其中,多轮推理、安全问题等领域提升超40%。在C-eval、MMLU、AGIEVAL等国际权威榜单上,排名处于国内同级别参数开源模型的前列,进一步促进大模型开源生态繁荣,助力AI产业加速高质量发展。另据悉,中国电信人工智能研究院将于年内开源千亿级参数大模型。

中国电信人工智能研究院(TeleAI)坚持完全自研自主可控,在中国电信首席技术官、首席科学家、TeleAI院长李学龙带领下,加快研发创新,不断优化底层模型结构,解除Word Embedding与lmhead共享参数,有效提升模型稳定性和训练效果,并基于精细化的CheckPoint效果验证,进行动态的数据配比优化调整,大幅提升模型训练效果。

海量高质量数据是保证大模型效果的基础,TeleChat-12B将7B版本1.5T训练数据提升至3T,优化数据清洗、标注策略,持续构建专项任务SFT(监督微调)数据,优化数据构建规范,大大提升数据质量;同时,基于电信星辰大模型用户真实回流数据,优化奖励模型和强化学习模型,有效提升模型问答效果。

TeleAI通过更彻底地开源推动大模型技术进步和大模型国产化进程。此次开源提供基础模型以及基于相应版本的对话模型、不仅支持传统的全量参数更新还支持 LoRA 等只更新部分参数的高效微调方法、支持Deepspeed微调、支持int8、int4量化和国产芯片训练推理,推动大模型国产化进程。

加速探索创新的同时,星辰大模型也在深入推动人工智能与各行各业的融合,积极探索新兴的应用场景。星辰语义大模型已应用于行文写作、代码编程、网络故障分析以及经营分析等场景,以行文写作为例,其平均生成字数超过1500字,有效采纳率达到85.7%;在对外企事业单位客户的业务中,星辰语义大模型支持企业经营分析、政务公开咨询、民生诉求接待等场景,可覆盖95%的实际业务场景,多轮理解准确率达到90%。除传统行业应用场景,星辰大模型积极探索前沿领域应用,赋能具身智能,解决无人机编排投入多、开发量大的问题,实现无人机智能编排轻量化建设。

据悉,星辰大模型已广泛应用落地,赋能千行百业转型升级。客服大模型在全国试点上线18个服务场景,充分赋能智慧客服和数字人,在激活十亿级的日志、百亿级的网络参数等海量数据资产的基础上,进一步深化智能化运营;星辰政务大模型已落地某市民生诉求场景,为市民提供在线文本问答服务,提升政务服务能力,提高市民满意度;星辰经分大模型已落地某市经信局行业大模型,利用大模型生成能力快速草拟相关产业研究报告,简化知识检索流程,快速、精准查询所需知识内容,以便迅速、准确地掌握发展动态,支持决策过程,并追踪全球经济形势和科技创新,满足迫切的产业洞察和分析需求。

开源项目链接地址 :

  1. https://gitee.com/Tele-AI/tele-chat 
  2. https://github.com/Tele-AI/Telechat 
  3. https://modelscope.cn/organization/TeleAI

环境配置与安装

  1. python 3.10及以上版本
  2. pytorch 1.12及以上版本,推荐2.0及以上版本
  3. 建议使用CUDA 11.4及以上

使用步骤

本文主要演示的模型为TeleChat-12B模型及其量化版本,在PAI-DSW使用

模型链接和下载

TeleChat-12B系列模型现已在ModelScope社区开源,模型链接:

TeleChat-12B

https://modelscope.cn/models/TeleAI/TeleChat-12B/summary

TeleChat-12B-int8

https://modelscope.cn/models/TeleAI/TeleChat-12B-int8/summary

TeleChat-12B-int4

https://modelscope.cn/models/TeleAI/TeleChat-12B-int4/summary

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

from modelscope import snapshot_download
model_dir1 = snapshot_download("TeleAI/TeleChat-12B")

模型推理

TeleChat-12B推理代码:

import os
import torch
from modelscope import AutoModelForCausalLM, AutoTokenizer, GenerationConfig
os.environ["CUDA_VISIBLE_DEVICES"] = '0'
tokenizer = AutoTokenizer.from_pretrained('TeleAI/TeleChat-12B')
model = AutoModelForCausalLM.from_pretrained('TeleAI/TeleChat-12B', trust_remote_code=True, device_map="auto", torch_dtype=torch.float16)
generate_config = GenerationConfig.from_pretrained('TeleAI/TeleChat-12B')
question="生抽与老抽的区别?"
answer, history = model.chat(tokenizer = tokenizer, question=question, history=[], generation_config=generate_config, stream=False)
print(answer)
#生抽和老抽是两种不同的酱油,它们的区别如下:
#1. 原料不同:生抽是用大豆、小麦等谷物为原料制成的;而老抽则是用豆酱、面酱等发酵后的调味品为原料制成的。
#2. 制作工艺不同:生抽是通过将大豆浸泡在水中,然后经过蒸煮、发酵等过程制成的;而老抽则是在生抽的基础上加入一定比例的盐、糖、味精等调料,再进行发酵制成的。
#3. 口感和风味不同:生抽具有咸鲜的味道,口感比较清爽;而老抽则具有特殊的香味和味道,口感相对较重。
#总的来说,生抽和老抽都是酱油的不同种类,它们在原料、制作工艺和口感等方面都有所不同。

资源消耗:

image.png

TeleChat-12B-int4推理代码:

环境依赖

pip install auto-gptq==0.3.0
git clone https://github.com/Tele-AI/Telechat.git
cd Telechat/quant/

推理代码

from modelscope import AutoTokenizer, GenerationConfig,snapshot_download
from modeling_telechat_gptq import TelechatGPTQForCausalLM
PATH = snapshot_download("TeleAI/TeleChat-12B-int4")
tokenizer = AutoTokenizer.from_pretrained(PATH, trust_remote_code=True)
model = TelechatGPTQForCausalLM.from_quantized(PATH, device="cuda:0", inject_fused_mlp=False, inject_fused_attention=False, trust_remote_code=True)
generate_config = GenerationConfig.from_pretrained(PATH)
model.eval()
question = "生抽与老抽的区别?"
answer, history = model.chat(tokenizer=tokenizer, question=question, history=[], generation_config=generate_config, stream=False)
print("回答:", answer)

资源消耗:

image.png

TeleChat-12B微调和微调后推理

微调代码开源地址:

https://github.com/modelscope/swift/tree/main/examples/pytorch/llm

SWFIT是魔搭社区官方提供的LLM&AIGC模型微调推理框架,首先从github上将SWIFT clone下来:

# 设置pip全局镜像和安装相关的python包
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
git clone https://github.com/modelscope/swift.git
cd swift
pip install .[llm]
# 下面的脚本需要在此目录下执行
cd examples/pytorch/llm
# 安装flash attention, 参考https://github.com/Dao-AILab/flash-attention
pip install packaging
pip install ninja
pip install flash-attn --no-build-isolation

微调脚本

# Experiment env: A100
# 1 * 30GB GPU memory
PYTHONPATH=../../.. \
CUDA_VISIBLE_DEVICES=0 \
python llm_sft.py \
  --model_type telechat-12b \
  --dataset dureader-robust-zh \
  --batch_size 1 \
  --max_length 1024 \
  --gradient_accumulation_steps 16 \
  --learning_rate 5e-5 \
  --use_flash_attn true \
  --eval_steps 1000 \
  --save_steps 1000 \
  --train_dataset_sample 100000 \
  --val_dataset_sample 3000 \
  --num_train_epochs 2 \
  --check_dataset_strategy none \
  --gradient_checkpointing true \
  --weight_decay 0.1 \
  --max_grad_norm 1.0 \
  --warmup_ratio 0.03 \
  --save_total_limit 2 \
  --logging_steps 10 \
  --sft_type lora \
  --lora_target_modules DEFAULT \
  --lora_rank 8 \
  --lora_alpha 32 \
  --dtype fp16

模型微调后的推理脚本,请将下面--ckpt_dir的值改为--output_dir中实际存储的模型weights目录。

# Experiment env: A100
# 1 * 26GB GPU memory
PYTHONPATH=../../.. \
CUDA_VISIBLE_DEVICES=0 \
python llm_infer.py \
    --ckpt_dir "output/telechat-12b/vx-xxx/checkpoint-xxx" \
    --load_dataset_config true \
    --max_length 2048 \
    --use_flash_attn true \
    --max_new_tokens 2048 \
    --temperature 0.5 \
    --top_p 0.7 \
    --repetition_penalty 1. \
    --do_sample true \
    --merge_lora false \
    --dtype fp16 \
    --stream false

微调的可视化结果

训练损失:

企业微信截图_17133214867262.png

评估损失

企业微信截图_17133214934434.png

训练后生成样例

[PROMPT]<_user>Task: Question Generation
Context: 下载速度达到72mbp/s速度相当快。相当于500兆带宽。在网速计算中, b=bit ,B=byte 8×b=1×B 意思是 8个小写的b 才是一个大写B。4M理论下载速度:4M就是4Mb/s 理论下载速度公式:4×1024÷8=512KB /s 请注意按公式单位已经变为 KB/s 依此类推: 2M理论下载速度:2×1024÷8=256KB /s 8M理论下载速度:8×1024÷8=1024KB /s =1MB/s 10M理论下载速度:10×1024÷8=1280KB /s =2M理论下载速度+8M理论下载速度 50M理论下载速度:50×1024÷8=6400KB /s 1Gb理论下载速度:1024×1024÷8=128MB /s 公式:几兆带宽×1024÷8=()KB/s。
Answer: 相当于500兆带宽
Question:<_bot>[OUTPUT] 72mbp相当于多少带宽<_end>
[LABELS]72mbps是多少网速
--------------------------------------------------
[PROMPT]<_user>Task: Question Generation
Context: 防水作为目前高端手机的标配,特别是苹果也支持防水之后,国产大多数高端旗舰手机都已经支持防水。虽然我们真的不会故意把手机放入水中,但是有了防水之后,用户心里会多一重安全感。那么近日最为火热的小米6防水吗?小米6的防水级别又是多少呢? 小编查询了很多资料发现,小米6确实是防水的,但是为了保持低调,同时为了不被别人说防水等级不够,很多资料都没有标注小米是否防水。根据评测资料显示,小米6是支持IP68级的防水,是绝对能够满足日常生活中的防水需求的。
Answer: IP68级
Question:<_bot>[OUTPUT] 小米6防水等级<_end>
[LABELS]小米6防水等级
--------------------------------------------------
[PROMPT]<_user>Task: Question Generation
Context: 我个人感觉是吕颂贤版,剧情和原著差别不大,虽然TVB演员颜值和风光没有大陆的好。但是香港特区人口和地域的限制,只能注重在演员的演技方面发挥很出色,楼主看过大陆排《笑傲江湖》吧!在台词上表现的很生硬没有香港的注重神色配台词,比如杜燕歌把吕颂贤表情和性格几乎和原著差别不大。武打几乎沿用徐克和程小东动作的风格很注重实际技巧,没有大陆版的在武打场面依靠电脑特效表现的太夸张了。李亚鹏版的武打动作和导演还是香港的元彬,大陆毕竟还是在武侠剧起步的比较晚,主要是还是靠明星大腕压阵而香港却是恰恰相反。
Answer: 吕颂贤版
Question:<_bot>[OUTPUT] 笑傲江湖哪个版本好看<_end>
[LABELS]笑傲江湖哪个版本好看

资源消耗:

训练

企业微信截图_17133215058545.png

推理

企业微信截图_1713321511548.png

点击直达模型卡片

魔搭社区 (modelscope.cn)

相关文章
|
7月前
|
物联网 机器人 Swift
|
7月前
|
数据采集 自然语言处理 前端开发
社区供稿 | 猎户星空百亿参数大模型 Orion-14B系列开源,一张3060就能跑(附魔搭社区推理微调最佳实践)
1月21日,傅盛在猎户星空大模型发布会上宣布,“为企业应用而生” 的开源百亿参数猎户星空大模型正式发布。猎户星空大模型(Orion-14B)是由猎户星空研发的预训练多语言大语言模型,以其140亿参数规模展现出了卓越的性能。
|
7月前
|
算法 计算机视觉 开发者
YOLOv10发布,性能效率双提升,魔搭社区最佳实践来啦!
YOLO(You Only Look Once)系列目标检测框架,由于其在计算成本与检测性能之间实现了有效平衡,故而成为实时物体检测领域的标杆。
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
社区供稿 | 元象发布255B大规模MoE开源大模型,落地应用登顶港台榜
元象XVERSE发布 中国最大MoE开源模型:XVERSE-MoE-A36B,加速AI应用低成本部署,将国产开源提升至国际领先水平。
社区供稿 | 元象发布255B大规模MoE开源大模型,落地应用登顶港台榜
|
4月前
|
人工智能 Swift 决策智能
社区供稿 | 面向多样应用需求,书生·浦语2.5开源超轻量、高性能多种参数版本
在 2024 年 7 月 4 日的 WAIC 科学前沿主论坛上,上海人工智能实验室推出了书生·浦语系列模型的全新版本——InternLM2.5。
|
4月前
|
机器学习/深度学习 编译器 PyTorch
自研分布式训练框架EPL问题之吸引社区参与共建如何解决
自研分布式训练框架EPL问题之吸引社区参与共建如何解决
|
6月前
|
域名解析 弹性计算 开发者
期待已久,重磅回归,阿里云推出全新《高效构建企业门户网站方案》,你想了解的,这一篇就足够了。
期待已久,重磅回归,《高效构建企业门户网站方案》,你想了解的,这一篇就足够了。
24475 2
|
7月前
|
数据采集 人工智能 自然语言处理
中科院国产多语言大模型-YAYI2开源!家族AI应用场景全覆盖!
中科院国产多语言大模型-YAYI2开源!家族AI应用场景全覆盖!
114 1
|
7月前
|
人工智能 文字识别 物联网
新一代端侧模型,面壁 MiniCPM 2.0开源,魔搭社区最佳实践
MiniCPM-V 2.0 不仅带来优秀端侧多模态通用能力,更带来惊艳的 OCR 表现。通过自研的高清图像解码技术,可以突破传统困境,让更为精准地识别充满纷繁细节的街景、长图在端侧成为可能。
|
人工智能 API 云计算
飞天技术观|ModelScope:共建模型生态,以模型自由加速AI应用创新
基于「模型即服务」,即MaaS(ModelasaService)的理念,ModelScope通过不断降低模型应用门槛,让AI更普惠,帮助开发者在ModelScope上能够低成本、高效地使用模型,并建立起良好的模型生态和开发者生态。
810 0

热门文章

最新文章