TeleAI 开源星辰语义大模型-TeleChat2!

简介: 2024.9.20 中国电信人工智能研究院(TeleAI)开源TeleChat2-115B模型,该模型是首个完全国产算力训练并开源的千亿参数模型。

01

引言

2024.9.20 中国电信人工智能研究院(TeleAI)开源TeleChat2-115B模型,该模型是首个完全国产算力训练并开源的千亿参数模型。

  • 星辰语义大模型TeleChat2是由TeleAI研发训练的大语言模型,该系列模型完全基于国产算力训练。
  • 本次开源TeleChat2-115B模型采用10万亿 Tokens中英文高质量语料进行训练,同步开源对话模型TeleChat2-115B的多格式、多平台权重文件。
  • TeleChat2在训练数据、训练方法等方面进行了改进,在通用问答和知识类、代码类、数学类榜单上相比TeleChat1均有大幅提升。
  • TeleChat2完全基于国产算力和国产深度学习框架进行训练,算力和算法框架更自主可控。优化MP、PP、SP实现方式提升模型性能,优化算子来提升训练速度。
  • 研究团队使用大量小模型实验来验证scaling law规律,在不同模型结构、不同数据配比和数据清洗方式中寻找最优设计。
  • 采用RingAttention及其他序列切分方式,实现长文训练性能提升;通过ntk-aware+attention-scaling的方式保证训练长度切换时的平稳过渡,以此来保证模型在不同长度数据下的训练效果。


  • 在微调数据方面,研究团队进行了指令复杂性提升与多样性扩充,通过数据合成和人工标注生成高质量数据,并使用拒绝采样生成多样的推理路径;通过研究一套基于base模型反向选择偏好对齐数据方案,基于适配数据最大限度提升模型效果。
  • 通用能力较TeleChat系列模型提升超过29%,在逻辑推理、总结摘要、长文写作和数学计算上均有大幅提升。

模型结构

研究团队采用标准的 Decoder-only 结构设计了 TeleChat2 模型,使用 Rotary Embedding 的位置编码方法、使用 SwiGLU 激活函数来替代GELU激活函数、使用基于 RMSNorm 的 Pre-Normalization进行层标准化操作。研究团队将TeleChat2的词嵌入层和输出lm head层参数分开,有助于增强训练稳定性和收敛性。研究团队选择了GQA以节约attention部分的参数量和计算量、提升训练和推理速度。

TeleChat2的模型结构配置如下表所示:


TeleChat模型相比同规模模型在评测效果方面也有较好的表现,研究团队的评测集涵盖了包括MMLU、C-Eval、CMMLU、 GSM8K、MATH、HumanEval、BBH等数据集,评测能力包括了指令遵循、考试能力、数学计算和推理、代码生成等。


02

模型推理

模型推理

当前模型推理兼容了单卡和多卡推理,以及针对长文推理做了部分优化工作。

模型推理代码

import os
import torch
from modelscope import snapshot_download
from transformers import AutoModelForCausalLM, AutoTokenizer, GenerationConfig
model_dir =snapshot_download('TeleAI/TeleChat2-115B')
tokenizer = AutoTokenizer.from_pretrained(model_dir, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(model_dir, trust_remote_code=True, device_map="auto",
                                                  torch_dtype=torch.float16)
generate_config = GenerationConfig.from_pretrained(model_dir)
question = "生抽与老抽的区别?"
answer, history = model.chat(tokenizer=tokenizer, question=question, history=[], generation_config=generate_config,
                                  stream=False)
print(answer)

显存占用

模型训练

我们介绍使用ms-swift对telechat2-115b进行自定义数据集微调的例子. ms-swift是魔搭社区官方提供的大模型与多模态大模型微调推理框架,支持400+大语言模型和100+多模态大模型的微调到部署。

ms-swift开源地址:

https://github.com/modelscope/ms-swift

在开始微调之前,请确保您的环境已正确安装

pip install "ms-swift==2.*" -U

自定义数据集格式:(custom.jsonl)

{"messages": [{"role": "system", "content": "00000"}, {"role": "user", "content": "11111"}, {"role": "assistant", "content": "22222"}]}
{"messages": [{"role": "user", "content": "aaaaa"}, {"role": "assistant", "content": "bbbbb"}, {"role": "user", "content": "ccccc"}, {"role": "assistant", "content": "ddddd"}]}
{"messages": [{"role": "user", "content": "AAAAA"}, {"role": "assistant", "content": "BBBBB"}, {"role": "user", "content": "CCCCC"}, {"role": "assistant", "content": "DDDDD"}]}

微调脚本:

# 实验环境: 4卡A100
# 其中自定义文件为`custom.jsonl`
CUDA_VISIBLE_DEVICES=0,1,2,3 swift sft \
    --model_type telechat2-115b \
    --model_id_or_path TeleAI/TeleChat2-115B \
    --dataset custom.jsonl \
    --learning_rate 1e-4 \
    --output_dir output \
    --lora_target_modules ALL

微调显存消耗:

微调后推理脚本如下,这里的ckpt_dir需要修改为训练生成的last checkpoint文件夹。我们对训练集中的验证集进行推理。

CUDA_VISIBLE_DEVICES=0 swift infer \
    --ckpt_dir output/telechat2-115b/vx-xxx/checkpoint-xxx \
    --load_dataset_config true --show_dataset_sample 10 \
    --do_sample false 
# merge-lora并推理
CUDA_VISIBLE_DEVICES=0 swift infer \
    --ckpt_dir output/telechat2-115b/vx-xxx/checkpoint-xxx \
    --load_dataset_config true --show_dataset_sample 10 \
    --merge_lora true --do-sample false


点击链接👇直达模型~

https://modelscope.cn/models/TeleAI/TeleChat2-115B?from=alizishequ__text

相关文章
|
10天前
|
机器学习/深度学习 人工智能 机器人
何恺明新作出炉!异构预训练Transformer颠覆本体视觉学习范式,AI性能暴涨超20%
【10月更文挑战第29天】在机器人学习领域,训练通用模型面临数据异构性的挑战。近期研究“Scaling Proprioceptive-Visual Learning with Heterogeneous Pre-trained Transformers”提出异构预训练Transformer(HPT),通过大规模预训练学习跨不同本体和任务的共享表示,显著提升了性能。实验结果显示,HPT在未见过的任务上表现优异,性能提升超过20%。
29 6
|
6月前
|
机器学习/深度学习 物联网 数据处理
社区供稿 | 封神榜团队提出首个引入视觉细化器的多模态大模型Ziya-Visual-Lyrics,多个任务SOTA
封神榜大模型团队基于在多模态领域积累的先进技术,首次在多模态大模型上加入图像标记、目标检测、语义分割模块,推出了多模态大模型Ziya-Visual-Lyrics。
|
6月前
|
编解码 人工智能 自然语言处理
贾佳亚团队新模型对标ChatGPT+DALL-E 3王炸组合!
【4月更文挑战第15天】贾佳亚团队推出Mini-Gemini模型,旨在缩小与GPT-4和Gemini的性能差距。该模型采用双视觉编码器处理高分辨率图像,提升视觉对话和推理准确性。搭配高质量数据集,增强图像理解和推理能力。Mini-Gemini在零样本基准测试中表现出色,尤其在高分辨率图像处理上。不过,模型在复杂视觉推理和计数能力上仍有改进空间。
35 1
贾佳亚团队新模型对标ChatGPT+DALL-E 3王炸组合!
|
6月前
|
人工智能 自然语言处理 测试技术
多模态大模型有了统一分割框架,华科PSALM多任务登顶,模型代码全开源
【4月更文挑战第24天】华中科技大学团队推出PSALM模型,革新多模态图像分割,实现语义、实例及交互式分割任务统一处理,提升效率。模型在多项基准测试中表现优异,支持零样本学习,适用于开放词汇分割等任务。代码开源促进研究,但面临复杂场景处理和计算资源优化的挑战。[链接](https://arxiv.org/abs/2403.14598)
212 2
|
6月前
|
机器学习/深度学习 人工智能 自然语言处理
2024 年最强?!深度剖析 OpenAI 最新 Sora 王炸模型!
2024 年最强?!深度剖析 OpenAI 最新 Sora 王炸模型!
59 1
|
6月前
|
机器学习/深度学习 自然语言处理 安全
18LLM4SE革命性技术揭秘:大型语言模型LLM在软件工程SE领域的全景解析与未来展望 - 探索LLM的多维应用、优化策略与软件管理新视角【网安AIGC专题11.15】作者汇报 综述
18LLM4SE革命性技术揭秘:大型语言模型LLM在软件工程SE领域的全景解析与未来展望 - 探索LLM的多维应用、优化策略与软件管理新视角【网安AIGC专题11.15】作者汇报 综述
652 0
|
机器学习/深度学习 达摩院 数据建模
ICML 2023 | 基于模块化思想,阿里达摩院提出多模态基础模型mPLUG-2
ICML 2023 | 基于模块化思想,阿里达摩院提出多模态基础模型mPLUG-2
239 0
清华朱军团队开源首个基于Transformer的多模态扩散大模型,文图互生、改写全拿下(2)
清华朱军团队开源首个基于Transformer的多模态扩散大模型,文图互生、改写全拿下
224 0
|
人工智能 算法 网络架构
清华朱军团队开源首个基于Transformer的多模态扩散大模型,文图互生、改写全拿下(1)
清华朱军团队开源首个基于Transformer的多模态扩散大模型,文图互生、改写全拿下
196 0
|
达摩院 文字识别 物联网
达摩院猫头鹰mPLUG-Owl亮相:模块化多模态大模型,追赶GPT-4多模态能力
达摩院猫头鹰mPLUG-Owl亮相:模块化多模态大模型,追赶GPT-4多模态能力
282 0