TeleAI 星辰语义大模型全尺寸开源,function call能力突出

简介: 星辰语义大模型TeleChat2是由中国电信人工智能研究院(TeleAI)研发训练的大语言模型。今年9月,TeleAI 正式发布并开源了首个基于全国产化万卡集群和国产深度学习框架训练的千亿参数大模型 TeleChat2-115B ,近日又进一步开源了 TeleChat2-3B、7B和35B,以适配不同场景的应用需求。

01.引言

星辰语义大模型TeleChat2是由中国电信人工智能研究院(TeleAI)研发训练的大语言模型。今年9月,TeleAI 正式发布并开源了首个基于全国产化万卡集群和国产深度学习框架训练的千亿参数大模型 TeleChat2-115B ,近日又进一步开源了 TeleChat2-3B、7B和35B,以适配不同场景的应用需求。

  • 本次开源的 TeleChat2-3B、TeleChat2-7B、TeleChat2-35B 模型已支持工具调用功能。在 Function Call 方面针对性进行了效果优化,在相关榜单评测上相比同尺寸模型均有较好表现。
  • 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的模型结构配置如下表所示:

image.png

开源的 TeleChat2 模型:

  • 支持deepspeed微调,开源了基于deepspeed的训练代码,支持Zero并行显存优化,同时集成了FlashAttention2
  • 多轮能力支持。开源了多轮数据构建方式,针对多轮模型训练集成了针对多轮的mask loss训练方式,更好的聚焦多轮答案,提升问答效果。

本次发布版本和下载链接:

  • telechat2-3B

https://modelscope.cn/models/TeleAI/TeleChat2-3B

  • telechat2-7B

https://modelscope.cn/models/TeleAI/TeleChat2-7B

  • telechat2-35B

https://modelscope.cn/models/TeleAI/TeleChat2-35B-Nov

  • telechat2-115B

https://modelscope.cn/models/TeleAI/TeleChat2-115B

02.效果评测

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

评测集介绍

通用能力

  • MMLU 数据集是一个全面的英文评测数据集,涵盖了 57 个学科,包括人文学科、社会科学、自然科学、初等数学、美国历史、计算机科学、法律等等。
  • CEVAL 数据集是一个全面的中文评估测试集,包括初中、高中、大学和专业难度级别的多项选择题,涵盖了 52 个不同的学科领域。
  • CMMLU 数据集同样是一个全面的中文评估测试集,涵盖了从基础学科到高级专业水平的67个主题。

推理和代码能力

  • GSM8K 数据集包含了8.5K高质量的小学数学题,能够评估语言模型在数学推理能力上的表现。
  • HumanEval 数据集是一个由openai提供的代码能力测试数据集,它由 164 个编程问题组成,要求根据给定的问题和代码模板,生成正确的代码片段。
  • BBH 数据集全名为BIG-Bench Hard(BBH),包含23个具有挑战性的BIG-Bench任务,均为之前的语言模型评估中没有超过平均人类评审者表现的任务。
  • MBPP 数据集包含大约1000个众包的Python编程问题,涵盖编程基础知识、标准库功能等。每个问题包括任务描述、代码解决方案和3个自动化测试用例。

主观题能力

  • AlignBench是一个多维度全面评估中文大模型对齐水平的评测基准,包含638道单轮主观评测题。
  • MT-bench是一个用于评估聊天助手的具有挑战性的多轮开放式问题集,包含80通多轮主观评测题。

指令遵循能力

  • IFEval旨在评估语言模型对指令的精确遵循能力,它包含了500条可精确验证的指令,是Open LLM Leaderboard中使用的核心基准测试之一。

评测结果如下

Dataset

TeleChat2-115B

TeleChat2-35B

TeleChat2-7B

TeleChat2-3B

C-Eval

86.9

85

82

75

MMLU

80.9

82

79.6

72.9

CMMLU

89.94

90.18

84.6

73

BBH

89.04

88.6

77.3

65.99

GSM8K

92.2

91

86.8

64.7

HumanEval

75

73

56

38

MBPP

78

75

62.6

47

AlignBench

8.03

7.88

6.96

5.74

MT-bench

8.89

8.2

7.2

5.72

IFEval

82.81

79.63

73.1

61.29

03.模型推理

模型推理

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

模型推理方法示范

import os
import torch
from modelscope import AutoModelForCausalLM, AutoTokenizer, GenerationConfig
tokenizer = AutoTokenizer.from_pretrained('TeleAI/TeleChat2-3B', trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained('TeleAI/TeleChat2-3B', trust_remote_code=True, device_map="auto",
                                                  torch_dtype=torch.float16)
prompt = "生抽与老抽的区别?"
messages = [{"role": "user", "content": prompt}]
text = tokenizer.apply_chat_template(messages,
  tokenize=False,
       add_generation_prompt=True
)
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
generated_ids = model.generate(
    **model_inputs,
    max_new_tokens=512
)
generated_ids = [
    output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)
]

不同版本模型显存占用对比(MB):

telechat2-3B

telechat2-7B

5963.42

14659.34

04.模型微调

这里我们介绍使用ms-swift 3.0对TeleChat2-3B进行自我认知微调。

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

# 安装ms-swift
git clone https://github.com/modelscope/ms-swift.git
cd ms-swift
pip install -e .[llm]

微调脚本如下:

CUDA_VISIBLE_DEVICES=0 swift sft \
    --model TeleAI/TeleChat2-3B \
    --dataset AI-ModelScope/alpaca-gpt4-data-zh#500 \
           AI-ModelScope/alpaca-gpt4-data-en#500 \
              swift/self-cognition#500 \
    --train_type lora \
    --lora_rank 8 \
    --lora_alpha 32 \
    --num_train_epochs 1 \
    --logging_steps 5 \
    --torch_dtype float16 \
    --max_length 2048 \
    --learning_rate 1e-4 \
    --output_dir output \
    --target_modules all-linear \
    --model_name 小黄 'Xiao Huang' \
    --model_author 魔搭 ModelScope \
    --per_device_train_batch_size 1 \
    --gradient_accumulation_steps 16

训练显存占用:

image.png

推理脚本:

CUDA_VISIBLE_DEVICES=0 swift infer \
    --ckpt_dir output/vx-xxx/checkpoint-xxx \
    --stream true

推理效果:

image.png

点击阅读链接即可跳转模型合集:ModelScope 魔搭社区

相关文章
|
1天前
|
存储 运维 安全
云上金融量化策略回测方案与最佳实践
2024年11月29日,阿里云在上海举办金融量化策略回测Workshop,汇聚多位行业专家,围绕量化投资的最佳实践、数据隐私安全、量化策略回测方案等议题进行深入探讨。活动特别设计了动手实践环节,帮助参会者亲身体验阿里云产品功能,涵盖EHPC量化回测和Argo Workflows量化回测两大主题,旨在提升量化投研效率与安全性。
云上金融量化策略回测方案与最佳实践
|
15天前
|
人工智能 自动驾驶 大数据
预告 | 阿里云邀您参加2024中国生成式AI大会上海站,马上报名
大会以“智能跃进 创造无限”为主题,设置主会场峰会、分会场研讨会及展览区,聚焦大模型、AI Infra等热点议题。阿里云智算集群产品解决方案负责人丛培岩将出席并发表《高性能智算集群设计思考与实践》主题演讲。观众报名现已开放。
|
7天前
|
自然语言处理 数据可视化 API
Qwen系列模型+GraphRAG/LightRAG/Kotaemon从0开始构建中医方剂大模型知识图谱问答
本文详细记录了作者在短时间内尝试构建中医药知识图谱的过程,涵盖了GraphRAG、LightRAG和Kotaemon三种图RAG架构的对比与应用。通过实际操作,作者不仅展示了如何利用这些工具构建知识图谱,还指出了每种工具的优势和局限性。尽管初步构建的知识图谱在数据处理、实体识别和关系抽取等方面存在不足,但为后续的优化和改进提供了宝贵的经验和方向。此外,文章强调了知识图谱构建不仅仅是技术问题,还需要深入整合领域知识和满足用户需求,体现了跨学科合作的重要性。
|
1月前
|
存储 人工智能 弹性计算
阿里云弹性计算_加速计算专场精华概览 | 2024云栖大会回顾
2024年9月19-21日,2024云栖大会在杭州云栖小镇举行,阿里云智能集团资深技术专家、异构计算产品技术负责人王超等多位产品、技术专家,共同带来了题为《AI Infra的前沿技术与应用实践》的专场session。本次专场重点介绍了阿里云AI Infra 产品架构与技术能力,及用户如何使用阿里云灵骏产品进行AI大模型开发、训练和应用。围绕当下大模型训练和推理的技术难点,专家们分享了如何在阿里云上实现稳定、高效、经济的大模型训练,并通过多个客户案例展示了云上大模型训练的显著优势。
|
3天前
|
人工智能 容器
三句话开发一个刮刮乐小游戏!暖ta一整个冬天!
本文介绍了如何利用千问开发一款情侣刮刮乐小游戏,通过三步简单指令实现从单个功能到整体框架,再到多端优化的过程,旨在为生活增添乐趣,促进情感交流。在线体验地址已提供,鼓励读者动手尝试,探索编程与AI结合的无限可能。
|
3天前
|
人工智能 自然语言处理 前端开发
从0开始打造一款APP:前端+搭建本机服务,定制暖冬卫衣先到先得
通义灵码携手科技博主@玺哥超carry 打造全网第一个完整的、面向普通人的自然语言编程教程。完全使用 AI,再配合简单易懂的方法,只要你会打字,就能真正做出一个完整的应用。
3435 15
|
7天前
|
Cloud Native Apache 流计算
PPT合集|Flink Forward Asia 2024 上海站
Apache Flink 年度技术盛会聚焦“回顾过去,展望未来”,涵盖流式湖仓、流批一体、Data+AI 等八大核心议题,近百家厂商参与,深入探讨前沿技术发展。小松鼠为大家整理了 FFA 2024 演讲 PPT ,可在线阅读和下载。
3297 10
PPT合集|Flink Forward Asia 2024 上海站
|
20天前
|
人工智能 自然语言处理 前端开发
100个降噪蓝牙耳机免费领,用通义灵码从 0 开始打造一个完整APP
打开手机,录制下你完成的代码效果,发布到你的社交媒体,前 100 个@玺哥超Carry、@通义灵码的粉丝,可以免费获得一个降噪蓝牙耳机。
5902 16
|
1月前
|
缓存 监控 Linux
Python 实时获取Linux服务器信息
Python 实时获取Linux服务器信息
|
2天前
|
消息中间件 人工智能 运维
12月更文特别场——寻找用云高手,分享云&AI实践
我们寻找你,用云高手,欢迎分享你的真知灼见!
354 34