基于盘古系列大模型提供大模型应用落地技术帮助用户高效的落地超大预训练模型到实际场景。
鹏程·盘古系列大模型整个框架特点如下:
鹏程·盘古系列大模型能力体系具体包括:
数据层
安全开放的数据集:约1.1TB的高质量中文语料数据集、53种语种高质量单双语数据集1TB。目前鹏城实验室率先在鹏城AI靶场开放了上述数据集,研究人员可在基于鹏城AI靶场的众智AI协同计算平台AISynergy 2.0版本上安全使用上述数据集。
数据集的构建流程包括3个主要步骤:基于规则的数据清洗、基于模型的过滤、数据去重。并我们通过人工和模型分别对数据质量进行评估,通过不断的迭代前两个不足来提升数据质量。整个数据集的构建过程通过基于spark搭建的大数据处理平台完成。
模型层
[鹏程·盘古α]:全球首个2千亿参数中文全开源预训练语言模型,鹏城云脑II支持AI超大规模分布式并行训练的首次, 支持鹏程·盘古pytorch版本和鹏程·盘古mindspore版本。
[鹏程·盘古增强版]:增强版在FewCLUE小样本学习榜单中,以及在科学文献学科分类CSLDCP、新闻分类TNEWSF、应用描述主题分类IFLYTEK 3个任务中取得第一。
[鹏程·盘古多语言模型]:在WMT多语言任务赛道上对比榜单No.1已覆盖的50种语言100个翻译方向平均BLEU值提升0.354。
[鹏程·盘古开放域对话模型]:该模型在各项指标上达到了中文纯模型生成式对话SOTA水平,其中在静态指标上,在Kdconv多轮数据集上,鹏程·盘古对话生成在BLEU指标上较EVA2模型超越了20%,在人工评估上:尤其多轮对话上,鹏程·盘古模型对话生成的综合质量达到业界领先水平。
Maas层
在探索盘古系列大模型应用落地的过程中,为了减少企业或高校科研人员需要投入的学习、开发和计算成本,同时满足企业或高校科研人员进行模型开发定制的需求。目前主要提供了以下几种模式:
1) API模式:目前鹏程·盘古SDK已发布1.2版本,将鹏程·盘古一系列开源模型、以及基于该模型的一系列任务拓展与持续学习得到的模型从语料数据预处理到模型训练推理部署整个流水线封装成开发工具包,工具包包含的功能有:数据预处理、模型预训练、推理、微调、模型转换、模型压缩等。您可以基于此轻松地开发自己的模型。
2) 开源模式:我们为开发者直接提供了免费的AI算法、算力和模型技术,开发者获得技术后可以根据开源模型自行研发训练符合业务需求的模型,直接推动大模型技术从实验室走向高校或企业。
3) MaaS模式:鹏程·盘古系列模型提供Python API 获取盘古系列模型推理MaaS服务,其优势在于将大模型直接封装成成熟的AI服务,为用户提供便利支持,帮助用户以相对开源更低的成本进行模型的部署工作,减少很多开发方面的投入。
使用环境
1)用户本地环境调用鹏程·盘古系列模型SDK进行体验以及产生业务模型;
2)在启智社区使用免费的算力调用鹏程·盘古系列模型SDK产出用户模型;
3)在鹏城AI靶场平台使用开源的数据集和全流程的训练、微调代码;
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks
# 需要有GPU,device为GPU编号
pipeline_ins = pipeline(
Tasks.text_generation,
model='OpenICommunity/pangu_2_6B',
device=0,
model_revision='v1.0.3'
)
print(pipeline_ins('中国有哪些菜系?', max_length=50))
# [{'generated_text': '中国有哪些菜系?\n中国菜系的划分,可分为八大菜系:鲁菜、川菜、粤菜、苏菜、浙菜、闽菜、湘菜、徽菜。<eot>'}]
「鹏程·盘古α」由以鹏城实验室为首的联合攻关技术团队基于国产芯片昇腾910的E级智能算力平台-鹏城云脑II上训练了全球首个全开源2000亿参数自回归中文预训练语言大模型-鹏程·盘古α,突破了100TB级中文语料清理评估大数据平台、随机顺序自回归中文语言模型算法、国产E级智算平台软硬件协同优化、大规模分布式训练与图算融合、多任务小样本学习等核心关键技术,成功研制出全球首个2000亿参数中文预训练语言模型,鹏程·盘古α预训练模型支持丰富的场景应用,在知识问答、知识检索、知识推理、阅读理解等文本生成领域表现突出,具备很强的小样本学习能力。
鹏程·盘古α提供了3个参数不断增加的模型,即鹏程·盘古2.6B、鹏程·盘古13B、鹏程·盘古200B,如下表所示:
模型 | 参数总数量 | 层数 | 内层维度 | FFN大小 | 头数 |
---|---|---|---|---|---|
鹏程·盘古2.6B | 2.6B | 32 | 2560 | 10240 | 32 |
鹏程·盘古13B | 13.1B | 40 | 5120 | 20480 | 40 |
鹏程·盘古200B | 207.0B | 64 | 16384 | 65536 | 128 |
此项目是将鹏程·盘古2.6B模型迁移至Huggingface Transfromers库,方便用户使用,支持CPU、GPU、以及int8推理
推理速度(s/token)对比结果如下表:
模型 | V100 CPU 推理 | V100 CPU推理 Jit模式 | V100 GPU fp16推理 | V100 GPU int8推理 |
---|---|---|---|---|
鹏程·盘古2.6B | 0.16(s/token) | 0.14(s/token) | 0.04(s/token) | 不支持 |
模型 | A100 GPU fp16推理 | A100 GPU int8推理 |
---|---|---|
鹏程·盘古2.6B | 0.034(s/token) | 0.102(s/token) |
当前模型正在集成到ModelScope library,关于「鹏程·盘古α」更多的模型介绍也正准备中,敬请期待。