当前位置:网站首页>FlagAI飞智:AI基础模型开源项目,支持一键调用OPT等模型
FlagAI飞智:AI基础模型开源项目,支持一键调用OPT等模型
2022-06-23 18:32:00 【智源社区】
一背景
GPT-3、OPT系列、悟道等预训练模型在NLP领域取得了非常瞩目的效果,但是不同代码仓库有着不同实现风格,并且在预训练大模型过程中使用的技术也各不相同,造成了技术鸿沟。为了快速加载、训练、推理不同大模型,使用最新最快的模型并行技术以及提高用户训练和使用模型的便捷性,智源人工智能研究院推出了FlagAI(飞智)基础模型开源项目,为一键调大模型等功能提供支持。
二 FlagAI特点
FlagAI飞智是一个快速、易于使用和可扩展的AI基础模型工具包。 支持一键调用多种主流基础模型,同时适配了中英文多种下游任务。
- FlagAI支持最高百亿参数的悟道GLM(详见GLM介绍),同时也支持BERT、RoBERTa、GPT2、T5 模型、Meta OPT模型和 Huggingface Transformers 的模型。
- FlagAI提供 API 以快速下载并在给定(中/英文)文本上使用这些预训练模型,你可以在自己的数据集上对其进行微调(fine-tuning)或者应用提示学习(prompt-tuning)。
- FlagAI提供丰富的基础模型下游任务支持,例如文本分类、信息提取、问答、摘要、文本生成等,对中英文都有很好的支持。
- FlagAI由三个最流行的数据/模型并行库(PyTorch/Deepspeed/Megatron-LM)提供支持,它们之间实现了无缝集成。 在FlagAI上,你可以用不到十行代码来并行你的训练、测试过程,也可以方便的使用各种模型提速技巧。
开源项目地址:https://github.com/BAAI-Open/FlagAI

三应用示例
一键调用Pipeline
例如:调用GLM预训练模型直接进行中文问答、词句补全任务

只需要三行代码便可以加载GLM-large-ch模型与对应的tokenizer。
此外,我们还支持一键调用:
- 标题生成任务
- 通用NER命名实体识别任务
- 文本续写任务
- 语义相似度匹配任务等
训练样例
除了可以方便的进行不同任务的一键调用,FlagAI还提供了丰富的训练样例,并对每个训练例子提供了数据样例,可以更加方便的理解训练流程。
例如使用Bert模型进行标题生成任务的训练,训练相关的目录结构组织如下(详见开源代码仓库examples目录 https://github.com/BAAI-Open/FlagAI/tree/master/examples):

其中data目录为样例的数据结构,news.tsv为样例数据格式,可以更方便的理解训练过程;train.py为训练的脚本文件;generate.py为推理的脚本文件。
FlagAI提供了非常丰富了中文/英文训练样例,可以直接下载相关数据进行训练,也可以灵活的切换自己的数据集,实现训练、推理全流程支持。
四多种数据并行、模型并行训练方式支持
FlagAI支持多种并行的训练策略,包括:
- pytorch:常规的pytorch单卡训练
- pytorchDDP:常规的pytorch数据并行,多卡训练
- deepspeed:微软开源的高效深度学习训练优化库,增大多卡训练显存利用效率,详情请看:https://github.com/microsoft/DeepSpeed
- deepspeed+mpu:mpu为英伟达开源的megatron-lm模型并行方法,详情请看:https://github.com/NVIDIA/Megatron-LM
在FlagAI中,可以根据模型的大小任意选择不同的训练方式,并且FlagAI中还集成了很多实用的技巧操作,例如fp16半精度、梯度累积、梯度重计算、CPU offload及各种并行计算策略等。对于Bert-base级别的模型,组合使用这些技巧可将显存占用率减少50%以上,训练速度得到大幅提升;使用单卡V100也可以轻松finetune百亿级别的模型,快来试试吧。
五后续计划
目前FlagAI所支持的大多为NLP中常用的模型,在后续的版本中,FlagAI将会继续集成计算机视觉和多模态方向的预训练模型,例如Vit、Swin-Transformer、PVT等,使FlagAI更加通用。欢迎大家试用,并提出宝贵的意见,也可以通过多种方式加入我们,共同讨论大模型技术。
项目地址:https://github.com/BAAI-Open/FlagAI
FlagAI技术交流群:

边栏推荐
- Advanced network accounting notes (V)
- GES图计算引擎HyG揭秘之图切分
- Jerry added an input capture channel [chapter]
- 从零开发小程序和公众号【第二期】
- Machine learning jobs
- 各种解背包问题
- 【One by One系列】IdentityServer4(六)授权码流程原理之SPA
- Pisces: a programmable, protocol independent software switch (summary)
- Graffiti intelligence passed the hearing: Tencent is an important shareholder planning to return to Hong Kong for listing
- 【One by One系列】IdentityServer4(八)使用EntityFramework Core对数据进行持久化
猜你喜欢

How long do you need to prepare for the PMP Exam?

今年,安徽母基金大爆发

Docker搭建redis集群

Convex optimization notes

亚香香料深交所上市:市值40亿 鼎龙博晖与涌耀投资是股东

Principles of microcomputer Chapter VIII notes arrangement

对比学习(Contrastive Learning)综述

Vprom notes

Programmable, protocol independent software switch (read the paper)

Heavyweight: the domestic ide was released, developed by Alibaba, and is completely open source! (high performance + high customization)
随机推荐
杰理之.强制升级【篇】
GES图计算引擎HyG揭秘之图切分
Principles of microcomputer Chapter 6 notes arrangement
物联网平台搭建设备,附源代码
Function definition and function parameters
Various solutions to knapsack problems
Advanced network accounting notes (6)
Requirements and precautions for applying for multi domain SSL certificate
杰理之无缝循环播放【篇】
How long do you need to prepare for the PMP Exam?
Noah fortune passed the hearing: with an annual revenue of 4.3 billion yuan, Wang Jingbo has 49% voting rights, and Sequoia is a shareholder
博睿数据出席阿里云可观测技术峰会,数字体验管理驱动可持续发展
#19生成器函数经典案例
Principles of microcomputer Chapter VIII notes arrangement
今年,安徽母基金大爆发
Ges graph computing engine hyg unveils the secrets of Graph Segmentation
[one by one series] spa of identityserver4 (VI) authorization code process principle
Develop small programs and official account from zero [phase I]
What does logistics service and management mainly learn
When Jerry's serial port is set up, it prints garbled code, and the internal crystal oscillator is not calibrated [chapter]