首页
开源
资讯
活动
开源许可证
软件工程云服务
软件代码质量检测云服务
持续集成与部署云服务
社区个性化内容推荐服务
贡献审阅人推荐服务
群体化学习服务
重睛鸟代码扫描工具
登录
注册
代码拉取完成,页面将自动刷新
Watch
155
Star
996
Fork
738
MindSpore
/
mindformers
Fork 仓库
加载中
取消
确认
代码
Issues
144
Pull Requests
157
Wiki
6
统计
发行版
最新版
v1.3.0
debac6a
2024-11-14 15:49
对比
MindFormers v1.3.0
suhaibo
# MindSpore Transformers Release Notes ## MindSpore Transformers 1.3.0 Release Notes 以下为 MindSpore Transformers (以下称为 MindFormers ) 套件 1.3.0 版本的变更日志,相较于1.2.0版本有以下关键新特性和 bugfix 。 ### 新特性 - [安装验证](https://www.mindspore.cn/mindformers/docs/zh-CN/dev/mindformers/mindformers.run_check.html):新增了便捷的API用以查询MindFormers的安装是否成功。 - [日志优化]:优化 MindFormers 日志,打印信息更全面,更易于精度定位以及训练状态的监控。 - [LLM对话API](https://www.mindspore.cn/mindformers/docs/zh-CN/dev/generation/mindformers.generation.GenerationMixin.html#mindformers.generation.GenerationMixin.chat):提供了大型语言模型的对话文本生成推理接口。 - [量化推理](https://www.mindspore.cn/mindformers/docs/zh-CN/dev/usage/quantization.html#):集成 MindSpore Golden Stick 工具组件,提供统一量化推理流程。 - [BIN格式数据集](https://www.mindspore.cn/mindformers/docs/zh-CN/dev/function/dataset.html#bin-%E6%A0%BC%E5%BC%8F%E6%95%B0%E6%8D%AE%E9%9B%86):新增对 BIN 格式数据集的处理能力,包括如何制作 BIN 格式数据集和在任务中使用 BIN 格式数据集。 - [在线数据集](https://www.mindspore.cn/mindformers/docs/zh-CN/dev/function/dataset.html#%E5%9C%A8%E7%BA%BF%E6%95%B0%E6%8D%AE%E9%9B%86):训练时支持加载在线数据集,无需本地离线处理。 - [榜单评测](https://www.mindspore.cn/mindformers/docs/zh-CN/dev/usage/evaluation.html):基于 Harness 评测框架,支持加载 MindFormers 模型进行评测,支持自定义 prompt 和评测指标,包含 loglikelihood、 generate_until、 loglikelihood_rolling 三种类型的评测任务。基于 VLMEvalKit 评测框架,支持加载 MindFormers 多模态大模型进行评测,支持自定义 prompt 和评测指标,包含 MME、 MMEBench、 COCO caption 三种图文理解评估方法。 - [Benchmark工具](https://gitee.com/mindspore/mindformers/tree/r1.3.0/docs/feature_cards/benchmark.md):新增预置大模型训练推理 Benchmark 工具,支撑用户实现快捷部署。 - [长序列训练](https://gitee.com/mindspore/mindformers/tree/r1.3.0/docs/feature_cards/Long_Sequence_Training.md):新增支持多种长序列并行,序列长度支持至10M。 - [断点续训优化](https://www.mindspore.cn/mindformers/docs/zh-CN/dev/function/resume_training.html#%E6%96%AD%E7%82%B9%E7%BB%AD%E8%AE%AD):断点续训场景下,优化权重和全局一致性文件保存流程,减少续训权重的校验完整性过程,加速恢复时间。 - [流水线并行优化](https://www.mindspore.cn/docs/zh-CN/master/model_train/parallel/pipeline_parallel.html#interleaved-pipeline%E8%B0%83%E5%BA%A6):提升流水线并行的效率,减少 Bubble 的占比,采用 interleaved pipeline 调度,且做了内存优化。 - [动态shape]:新增 Llama3-8B 和 Qwen2-7B 模型支持监督微调数据的输入长度动态变化。 ### 新模型 以下为新支持模型: | 模型 | 规格 | |--------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------| | [Llama3.1](https://gitee.com/mindspore/mindformers/tree/r1.3.0/research/llama3_1/llama3_1.md) | Llama3.1-8B (微调、推理)、Llama3.1-70B (微调、推理) | | [GLM4](https://gitee.com/mindspore/mindformers/tree/r1.3.0/docs/model_cards/glm4.md) | GLM4-9B (微调、推理) | | [CogVLM2_Video](https://gitee.com/mindspore/mindformers/tree/r1.3.0/docs/model_cards/cogvlm2_video.md) | CogVLM2-Video-Chat-13B (微调、推理) | | [CogVLM2_Image](https://gitee.com/mindspore/mindformers/tree/r1.3.0/docs/model_cards/cogvlm2_image.md) | CogVLM2-Llama3-Chat-19B (推理) | | [Qwen1.5](https://gitee.com/mindspore/mindformers/blob/r1.3.0/research/qwen1_5/qwen1_5.md) | Qwen1.5-0.5B (推理)、Qwen1.5-1.8B (推理)、Qwen1.5-4B (推理)、Qwen1.5-32B (推理) | | [Qwen2](https://gitee.com/mindspore/mindformers/tree/r1.3.0/research/qwen2/qwen2.md) | Qwen2-0.5B (微调、推理)、Qwen2-1.5B (微调、推理)、Qwen2-7B (微调、推理)、Qwen2-57B-A14B (推理)、Qwen2-57B (预训练、微调、推理)、Qwen2-72B (微调、推理) | | [DeepSeek Coder1.5](https://gitee.com/mindspore/mindformers/tree/r1.3.0/research/deepseek1_5/deepseek1_5.md) | DeepSeek-Coder-7B-V1.5 (微调、推理) | | [DeepSeekV2](https://gitee.com/mindspore/mindformers/tree/r1.3.0/research/deepseek2/deepseek2.md) | DeepSeek-V2 (预训练、微调、推理) | | [Whisper](https://gitee.com/mindspore/mindformers/tree/r1.3.0/docs/model_cards/whisper.md) | Whisper-Large-V3 (微调) | ### Bugfix 在当前版本发布周期内,我们进行了模型/功能/易用性/文档等诸多方面的 bugfix ,在此仅列举部分修复内容: - [!3674](https://gitee.com/mindspore/mindformers/pulls/3674):修复 Internlm2 模型解码不符合预期的问题。 - [!4401](https://gitee.com/mindspore/mindformers/pulls/4401):修复 Baichuan2-13B 模型 MindIE 推理精度问题。 ### 贡献者 感谢以下人员做出的贡献: Chong Li,chenyijie,heqinglin,huangshengshuai,lilei,lizhihao,lizheng,moran,paolo poggi,wangshaocong,wutiancheng,xiaoshihan,yangminghai,yangzhenzhang,zhanzhan,zhaozhengquan,ZhouJingfeng,zhouyaqiang,包淦超,常少中,陈心锐,陈昱坤,陈志坚,程鹏,楚浩田,戴仁杰,冯浩,冯明昊,冯汛,耿辰华,郭儒辰,古雅诗,贺冬冬,何泽泉,胡思超,胡映彤,宦晓玲,黄磊,黄新元,黄勇,黄子灵,金仁操,孔德硕,孔紫怡,寇凯睿,蓝翔,李俊标,李洋,李文,李永文,李子垠,林鑫,林盈来,刘晨晖,刘奇,刘烙彬,刘力力,刘思铭,吕凯盟,倪钰鑫,牛君豪,邱杨,任峪瑾,赛尧,孙宇轩,唐德志,谭纬城,王浩然,汪家傲,王嘉霖,王廖辉,王双玲,魏琢艺,吴治锋,吴致远,吴昊天,杨星宇,杨犇,杨承翰,杨璇,易阳,尤日帆,俞涵,张浩,张泓铨,张吉昊,张俊杰,张敏利,张森镇,张伟,张一飞,张奕晖,张雨强,赵奕舜,周洪叶,周小琪,朱亿超,邹文祥 欢迎以任何形式对项目提供贡献!
最后提交信息为:
!4633
[bugfix] [r1.3.0] [docs] ReleaseNote 文档规范
v1.2.0
980171a
2024-07-24 19:00
对比
Mindfomers v1.2.0
hsshuai
# MindSpore Transformers 1.2.0 RELEASE NOTE 以下为MindSpore Transformers (以下称为MindFormers) 套件 1.2.0 版本的变更日志,相较于[1.1.0](https://gitee.com/mindspore/mindformers/blob/r1.1.0/docs/RELEASE_NOTE.md)版本有以下关键新特性和bug fix。 ## 新特性 - **新增模型支持带框架推理**:新增支持模型包含Qwen1.5_7b、Qwen1.5_14b、Qwen1.5_72b、Llama3_70b、Yi_34b等。 - **新增模型支持bfloat16训练**:新增支持模型包含Qwen1.5_7b、Qwen1.5_14b、Qwen1.5_72b、Llama3_70b、Yi_34b等。 - [AdamW优化器](https://gitee.com/mindspore/mindformers/pulls/3310):新增AdamW优化器,对齐Megatron AdamW。 - **支持MindIE进行服务化部署**:[MindIE](https://www.hiascend.com/software/mindie),全称Mind Inference Engine,是华为昇腾针对AI全场景业务的推理加速套件。MindFormers新增对MindIE的对接,承载在模型应用层MindIE-LLM,通过MindIE-Service对MindFormers中LLM模型进行部署。 - [长序列训练](https://gitee.com/mindspore/mindformers/tree/r1.2.0/docs/feature_cards/Long_Sequence_Training.md):新增支持长序列训练特性,通过在配置yaml文件中设置`parallel_config.context_parallel`开启序列并行,当前支持32k至256k。 - [断点续训权重加载2.0](https://gitee.com/mindspore/mindformers/tree/r1.2.0/docs/feature_cards/Resume_Training.md):断点续训场景下,新增指定续训权重功能,新增故障恢复下进行权重完整性校验并自动加载最新完整权重。 - [权重自动转换2.0](https://gitee.com/mindspore/mindformers/tree/r1.2.0/docs/feature_cards/Transform_Ckpt.md):自动权重转换新增多进程转换。 ## 新模型 以下为新支持模型: | 模型 | 规格 | |-----------------------------------------------------------------------------------------------|---------------------------------------------------------------| | [Mixtral](https://gitee.com/mindspore/mindformers/tree/r1.2.0/research/mixtral/mixtral.md) | Mixtral_8x7b(新增32k预训练、推理) | [Qwen1.5](https://gitee.com/mindspore/mindformers/tree/r1.2.0/research/qwen1_5/qwen1_5.md) | Qwen1.5_7b(预训练、微调、推理)、Qwen1.5_14b(预训练、微调、推理)、Qwen1.5_72b(新增预训练) | | [Llama3](https://gitee.com/mindspore/mindformers/tree/r1.2.0/research/llama3/llama3.md) | Llama3_70b(新增预训练、微调) | | [Deepseek](https://gitee.com/mindspore/mindformers/tree/r1.2.0/research/deepseek/deepseek.md) | Deepseek_Coder_33b(新增微调) | | [Yi](https://gitee.com/mindspore/mindformers/tree/r1.2.0/research/yi/yi.md) | Yi_6b(新增微调)、Yi_34b(新增预训练、微调) | | [QwenVL](https://gitee.com/mindspore/mindformers/tree/r1.2.0/research/qwenvl/qwenvl.md) | QwenVL_9.6b(微调、推理) | ## Bugfix 在当前版本发布周期内,我们进行了模型/功能/易用性/文档等诸多方面的Bugfix,在此仅列举部分修复内容: - [!3345](https://gitee.com/mindspore/mindformers/pulls/3345):修复`Linear`在`transpose_b=False`时传入正确`weight`仍报错问题。 - [!3277](https://gitee.com/mindspore/mindformers/pulls/3277):修复使用梯度累积时,`warpper`传入了错误的`micro_batch_num`问题。 ## 贡献者 感谢以下人员做出的贡献: Chenhua Geng,heqinglin,koukairui,renyujin,shuchi,陈心锐,陈子恒,冯浩,胡思超,黄磊,黄生帅,黄勇,黄子灵,倪钰鑫,苏海波,李子垠,杨星宇,牛君豪,张森镇,张又文,谭纬城,吴致远,杨星宇,刘群,曹宇麟,方泽华,金仁操,刘群,李永文,钱驾宏,吴昊天,杨璇,汪家傲,范益,陈昱坤,李洋 欢迎以任何形式对项目提供贡献!
最后提交信息为:
!3597
baichuan2_7b推理精度问题修复
v1.1.0
598e154
2024-05-16 15:23
对比
Mindfomers v1.1.0
Lin
# MindSpore Transformers 1.1.0 RELEASE NOTE 以下为MindSpore Transformers (以下称为MindFormers) 套件 1.1.0 版本的变更日志,相较于1.0.2版本有以下关键新特性和bug fix。 ## MindSpore版本适配 该版本对MindSpore2.3版本进行了适配,该版本支持MindSpore版本为MindSpore 2.3.0-rc2,请注意安装配套版本,其他版本可能会出现问题,同时支持的硬件为Atlas 800T A2服务器。 ## 新特性 - [msrun启动方式](https://gitee.com/mindspore/mindformers/blob/r1.1.0/README.md#方式一使用msrun方式启动仅适用于配套mindspore23以上版本): msrun是动态组网启动方式的封装,用户可使用msrun以单个命令行指令的方式在各节点拉起多进程分布式任务,并且无需手动设置动态组网环境变量,并且无需依赖第三方库以及配置文件。 - [LoRA权重合并](https://gitee.com/mindspore/mindformers/tree/r1.1.0/docs/feature_cards/Transform_Lorackpt.md): LoRA权重合并将LoRA分支权重合并到原模型对应权重,合并后权重可以使用原模型直接进行推理。 - [生成任务min_length控制](https://gitee.com/mindspore/mindformers/pulls/2267): 生成任务支持最短生成长度min_length和最短生成tokens数min_new_tokens配置,用以控制最短生成长度,防止模型生成长度过短。 - [ckpt权重转换至torch bin权重](https://gitee.com/mindspore/mindformers/tree/r1.1.0/docs/feature_cards/Convert_Weight.md): 使用Mindformers训练得到的ckpt权重,可以通过提供的权重转换功能转换成torch bin权重,用于推理评估等下游任务。 - [GLM3支持多轮对话训练](https://gitee.com/mindspore/mindformers/tree/r1.1.0/docs/model_cards/glm3.md#多轮对话格式数据集): GLM3模型新增多轮对话训练,提供多轮对话的数据集处理方式。 - **训推一体**: 训推一体通过使用高性能算子库,在MindFormers框架中下发性能优化、tiling cache、动态shape、PagedAttention等方式,以在线推理方式达成高效的推理性能,实现训练到推理零成本迁移。目前语言类模型均支持训推一体。 - **BF16训练**:支持模型包含Llama2_7b、Llama2_13b、Llama2_70b、wizardcoder、glm3_6b、qwen_7b、qwen_14b等。 - [学习率优化](https://gitee.com/mindspore/mindformers/pulls/2301): 新增学习率CosineAnnealingLR和CosineAnnealingWarmRestarts,及对存量学习率warmup steps及decay steps配置,详见[!2300](https://gitee.com/mindspore/mindformers/pulls/2300)。 - [qwen系列支持8k序列长度训练](https://gitee.com/mindspore/mindformers/blob/r1.1.0/research/qwen/qwen.md#全参微调): qwen系列支持8k序列长度进行全参微调,支持规模为7b及14b。 ## 新模型 以下为 research 模型: | 模型 | 规格 | |-----------------------------------------------------------------------------------------------|---------------| | [deepseek](https://gitee.com/mindspore/mindformers/tree/r1.1.0/research/deepseek/deepseek.md) | deepseek_coder_33b | | [Llama3](https://gitee.com/mindspore/mindformers/tree/r1.1.0/research/llama3/llama3.md) | llama3_8b | | [mixtral](https://gitee.com/mindspore/mindformers/tree/r1.1.0/research/mixtral/mixtral.md) | mixtral_8x7b | | [qwen_1.5](https://gitee.com/mindspore/mindformers/tree/r1.1.0/research/qwen1_5/qwen1_5.md) | qwen1.5_72b qwen1.5_14B | | [yi](https://gitee.com/mindspore/mindformers/tree/r1.1.0/research/yi/yi.md) | yi_6b, yi_34b | ## Bugfix 在当前版本发布周期内,我们进行了模型/功能/易用性/文档等诸多方面的Bugfix,在此仅列举部分修复内容: - [!2918](https://gitee.com/mindspore/mindformers/pulls/2918): 修复training_dataloader中在开启isAlign时数组index问题,修复多进程下host内存占用过多问题。 - [!2360](https://gitee.com/mindspore/mindformers/pulls/2360): 修复CrossEntropy损失函数在logits数值较大时计算结果不对问题。 - [#I9BETP](https://gitee.com/mindspore/mindformers/issues/I9BETP):修复PolynomialWithWarmUpLR学习率与PyTorch实现不一致问题。 ## 贡献者 感谢以下人员做出的贡献: Chenhua Geng, dingxu (E), heqinglin, koukairui, renyujin, shuchi, 陈心锐, 陈子恒, 冯浩, 胡桂鹏, 胡思超, 黄磊, 黄生帅, 黄勇, 黄子灵, 焦毅, 林鑫, 倪钰鑫, 彭康, 苏海波, 田凯, 李子垠, 杨星宇, 牛君豪, 张森镇, 张小雯, 张又文, 赵栢杨, 周胜凯, 朱国栋, 张银霞, 谭纬城,吴致远,杨星宇,刘群,曹宇麟,方泽华,金仁操,刘群,李永文,钱驾宏,吴昊天,杨璇,汪家傲 欢迎以任何形式对项目提供贡献!
最后提交信息为:
update README.md.
v1.0.2
45d1fa5
2024-04-23 12:05
对比
Mindfomers v1.0.2
Lin
# MindSpore Transformers 1.0.2 RELEASE NOTE 以下为MindSpore Transformers (以下称为MindFormers) 套件 1.0.2 版本的变更日志,相较于1.0.1版本有以下关键新特性和bug fix修复。 ## 新特性 - [GLM3](./model_cards/glm3.md)/[GLM3-32k](../research/glm32k/glm32k.md)新增支持Paged Attention推理。 ## 新模型 以下为 research 模型: | 模型 | 规格 | |-------------------------------------------|-------------| | [Qwen1_5](https://gitee.com/mindspore/mindformers/blob/r1.0/research/qwen1_5/qwen1_5.md) | qwen1_5_72b | | [Mengzi3](https://gitee.com/mindspore/mindformers/blob/r1.0/research/mengzi3/mengzi3.md) | mengzi3_13b | ## Bugfix 在当前版本发布周期内,我们进行了模型/功能/文档等Bugfix,修复内容如下: - [#I9EWKI](https://gitee.com/mindspore/mindformers/issues/I9EWKI):修复了离线推理启动脚本[run_infer_main.py](https://gitee.com/mindspore/mindformers/blob/r1.0/run_infer_main.py)中dynamic开关和paged attention开关同时开启时报错的问题。 - [#I9G6BG](https://gitee.com/mindspore/mindformers/issues/I9G6BG):修复了多卡权重自动转换Rank 0进程出错时,其他Rank进程不会自动终止的问题。 # MindSpore Transformers 1.0.1 RELEASE NOTE 以下为MindSpore Transformers (以下称为MindFormers) 套件 1.0.1 版本的变更日志,相较于1.0.0版本有以下关键bug fix修复。 ## Bugfix 在当前版本发布周期内,我们进行了模型/功能/文档等Bugfix,修复内容如下: - [#I91T78](https://gitee.com/mindspore/mindformers/issues/I91T78):修复了大模型断点续训时日志显示的epoch与所加载ckpt的epoch不一致问题。 # MindSpore Transformers 1.0.0 RELEASE NOTE 以下为MindSpore Transformers (以下称为MindFormers) 套件 1.0.0 版本的变更日志 ## 新特性 - [LLM数据在线加载](./feature_cards/LLM_DataLoader.md):对于LLM模型的训练场景,该特性支持直接读取非MindRecord格式的数据,如json、parquet等,减少了将数据转换为MindRecord格式的工作量; - [Flash Attention](./feature_cards/Training_Algorithms.md#flash-attention):Flash Attention(简称FA),是深度学习业界主流的注意力计算加速算法;MindSpore+Ascend架构也提供了FA实现,当前MindFormers对部分模型进行了FA的适配,可使用 `model_config` 中的 `use_flash_attention` 配置项控制模型是否使用FA;依赖MindSpore2.2.10及以上版本; - [断点续训支持Step级别恢复](./feature_cards/Resume_Training.md):对断点续训特性进行了更新迭代,现在使用断点续训特性时,可以自动跳过已训练的数据,恢复到断点权重对应的step位置继续训练; - [梯度累积](./feature_cards/Training_Algorithms.md#梯度累积):梯度累积算法是业界常用的扩大batch_size,解决OOM的一种算法,MindSpore在2.1.1之后的版本中增加了 `mindspore.nn.wrap.cell_wrapper.GradAccumulationCell` 这一梯度累积实现接口,通过拆分MiniBatch的形式实现了梯度累积;MindFormers套件对上述实现接口进行了适配,新增 `gradient_accumulation_steps` 配置项以控制梯度累积步数;限制:梯度累积当前仅支持在半自动并行模式下使用; - output文件夹路径支持自定义:MindFormers现在支持配置 `output_dir` 以自定义训练权重,切分策略等文件的保存路径;日志文件的保存路径由环境变量 `LOG_MF_PATH` 控制,可在[环境变量使用说明](https://mindformers.readthedocs.io/zh-cn/r1.0/docs/practice/Environment.html)中查看具体信息; - [自动并行](./feature_cards/Auto_Parallel.md):自动并行模式让用户可以无需为网络中的每一个算子配置并行策略,即可达到高效并行训练的效果。详情参考MindSpore官网关于[自动并行](https://www.mindspore.cn/tutorials/experts/zh-CN/master/parallel/auto_parallel.html)的说明。当前本特性为实验性特性,仅在llama2模型上提供了自动并行的使用配置; - [adaptive loss scale](./feature_cards/Training_Algorithms.md#adaptive-loss-scaling):现有dynamic loss scaling方案使用固定scale window,在FP16或更低精度(8bit浮点格式)混合精度训练训练时,如果选用较大的scale window,存在loss scaling 调整不及时的风险,影响模型收敛性和收敛速度;如果选用较小的scale window,loss scale调整至合适的值时,仍会频繁上调,损失大量训练数据;Adaptive loss scaling方案,通过动态调节scale window,实现自适应调整loss scale,实时将loss scale调整至FP16和8bit浮点格式正常训练所需的合适的值,同时避免损失大量训练数据; - [LLM大模型通用export接口](./feature_cards/Inference.md#模型导出增量推理为例):执行MindSpore Lite推理时需导出MindIR文件,本特性提供了适用于LLM大模型的通用export导出接口,用户可使用接口便捷地完成导出功能; - [动态组网分布式启动方式](./feature_cards/Dynamic_Cluster.md):MindSpore2.2.0以上版本提供了动态组网的启动方式,可以在不依赖rank table和第三方库的情况下拉起分布式任务;MindFormers在此提供了相应的脚本和使用教程; - beam search采样:文本生成新增支持beam search后处理采样,调用model.generate()接口时,num_beams入参设置大于1的整数值即可启用beam search采样;当前尚不支持与增量推理,流式推理特性同时使用; - 模型权重分次加载:MindFormers新增支持了模型权重分次加载的逻辑,适用于低参微调场景,分别加载base权重和lora微调权重;使用方式可参考[configs/README.md](https://gitee.com/mindspore/mindformers/blob/r1.0/configs/README.md)中关于 `load_checkpoint` 参数的介绍。 ## 新模型 | 模型 | 规格 | | --------------------------------------- | ---------------- | | [CodeGeeX2](./model_cards/codegeex2.md) | codegeex2_6b | | [CodeLLaMA](./model_cards/codellama.md) | codellama_34b | | [GLM2-PTuning](./model_cards/glm2.md) | glm2_6b_ptuning2 | | [GLM3](./model_cards/glm3.md) | glm3_6b | | [GPT2](./model_cards/gpt2.md) | gpt2_13b | 以下为 research 模型: | 模型 | 规格 | | ----------------------------------------------------- | ------------------------------------- | | [InternLM](../research/internlm/internlm.md) | interlm_20b (仅推理) | | [Qwen](../research/qwen/qwen.md) | qwen_7b<br/>qwen_7b_lora<br/>qwen_14b | | [Skywork](../research/skywork/skywork.md) | skywork_13b | | [VisualGLM](../esearch/visualglm/visualglm.md) | visualglm_6b | | [WizardCoder](../research/wizardcoder/wizardcoder.md) | wizardcoder_15b | ## Bugfix 在当前版本发布周期内,我们进行了模型/功能/易用性/文档等诸多方面的Bugfix,在此仅列举部分修复内容: - [#I8URBL](https://gitee.com/mindspore/mindformers/issues/I8URBL):修复了部分数据集在半自动并行+full_batch下仍错误地进行shard导致的训练数据不正确的问题。 - [#I8JVTM](https://gitee.com/mindspore/mindformers/issues/I8JVTM):修复了在使用Trainer传入模型实例时,GradAccumulation,PipelineCell等封装工具类未正确生效的问题。 - [#I8L4LZ](https://gitee.com/mindspore/mindformers/issues/I8L4LZ):修复了断点续训传入数据集实例时无法跳过已训练数据的问题。 - [#I8NHO5](https://gitee.com/mindspore/mindformers/issues/I8NHO5):修复了get_pet_model方法的加载权重逻辑,解决无法加载部分低参微调模型权重的问题。 - [#I8THC3](https://gitee.com/mindspore/mindformers/issues/I8THC3):修复了权重切分创建软链接时多进程读写操作冲突的问题。 欢迎对本项目提出意见与建议,以帮助项目持续改进。 ## 贡献者 感谢以下人员做出的贡献: Chenhua Geng, dingxu (E), fushengshi, heqinglin, koukairui, liuzhidan, renyujin, shuchi, Zhenhao Li, ZhidanLiu, 陈心锐, 陈子恒, 冯浩, 胡桂鹏, 胡思超, 黄磊, 黄生帅, 黄欣靓, 黄勇, 黄子灵, 姜海涛, 焦毅, 李兴炜, 林鑫, 倪钰鑫, 彭康, 苏海波, 田凯, 杨贵龙, 杨路航, 余金, 张森镇, 张小雯, 张又文, 赵栢杨, 周胜凯, 朱国栋 欢迎以任何形式对项目提供贡献!
最后提交信息为:
!2762
【r1.0】修复glm2_6b_ptuning2在增量推理时kvcache的序列维度没有扩充prefix的问题
v1.0.0
d25941f
2024-01-24 14:28
对比
Mindfomers v1.0.0
huanglei
# MindSpore Transformers 1.0.0 RELEASE NOTE 本文为MindSpore Transformers (以下称为MindFormers) 套件 1.0.0 版本的变更日志 ## 新特性 - LLM数据在线加载:对于LLM模型的训练场景,该特性支持直接读取非MindRecord格式的数据,如json、parquet等,减少了将数据转换为MindRecord格式的工作量; - Flash Attention:Flash Attention(简称FA),是深度学习业界主流的注意力计算加速算法;MindSpore+Ascend架构也提供了FA实现,当前MindFormers对部分模型进行了FA的适配,可使用 `model_config` 中的 `use_flash_attention` 配置项控制模型是否使用FA;依赖MindSpore2.2.10及以上版本; - 断点续训支持Step级别恢复:对断点续训特性进行了更新迭代,现在使用断点续训特性时,可以自动跳过已训练的数据,恢复到断点权重对应的step位置继续训练; - 梯度累积:梯度累积算法是业界常用的扩大batch_size,解决OOM的一种算法,MindSpore在2.1.1之后的版本中增加了 `mindspore.nn.wrap.cell_wrapper.GradAccumulationCell` 这一梯度累积实现接口,通过拆分MiniBatch的形式实现了梯度累积;MindFormers套件对上述实现接口进行了适配,新增 `gradient_accumulation_steps` 配置项以控制梯度累积步数;限制:梯度累积当前仅支持在半自动并行模式下使用; - output文件夹路径支持自定义:MindFormers现在支持配置 `output_dir` 以自定义训练权重,切分策略等文件的保存路径;日志文件的保存路径由环境变量 `LOG_MF_PATH` 控制,可在[环境变量使用说明](https://mindformers.readthedocs.io/zh-cn/r1.0/docs/practice/Environment.html)中查看具体信息; - 自动并行:自动并行模式让用户可以无需为网络中的每一个算子配置并行策略,即可达到高效并行训练的效果。详情参考MindSpore官网关于[自动并行](https://www.mindspore.cn/tutorials/experts/zh-CN/master/parallel/auto_parallel.html)的说明。当前本特性为实验性特性,仅在llama2模型上提供了自动并行的使用配置; - adaptive loss scale:现有dynamic loss scaling方案使用固定scale window,在FP16或更低精度(8bit浮点格式)混合精度训练训练时,如果选用较大的scale window,存在loss scaling 调整不及时的风险,影响模型收敛性和收敛速度;如果选用较小的scale window,loss scale调整至合适的值时,仍会频繁上调,损失大量训练数据;Adaptive loss scaling方案,通过动态调节scale window,实现自适应调整loss scale,实时将loss scale调整至FP16和8bit浮点格式正常训练所需的合适的值,同时避免损失大量训练数据; - LLM大模型通用export接口:执行MindSpore Lite推理时需导出MindIR文件,本特性提供了适用于LLM大模型的通用export导出接口,用户可使用接口便捷地完成导出功能; - 动态组网分布式启动方式:MindSpore2.2.0以上版本提供了动态组网的启动方式,可以在不依赖rank table和第三方库的情况下拉起分布式任务;MindFormers在此提供了相应的脚本和使用教程; - beam search采样:文本生成新增支持beam search后处理采样,调用model.generate()接口时,num_beams入参设置大于1的整数值即可启用beam search采样;当前尚不支持与增量推理,流式推理特性同时使用; - 模型权重分次加载:MindFormers新增支持了模型权重分次加载的逻辑,适用于低参微调场景,分别加载base权重和lora微调权重;使用方式可参考[configs/README.md](https://gitee.com/mindspore/mindformers/blob/r1.0/configs/README.md)中关于 `load_checkpoint` 参数的介绍。 ## 新模型 | 模型 | 规格 | | --------------------------------------- | ---------------- | | CodeGeeX2 | codegeex2_6b | | CodeLLaMA | codellama_34b | | GLM2-PTuning | glm2_6b_ptuning2 | | GLM3 | glm3_6b | | GPT2 | gpt2_13b | 以下为 research 模型: | 模型 | 规格 | | ----------------------------------------------------- | ------------------------------------- | | InternLM | interlm_20b (仅推理) | | Qwen | qwen_7b<br/>qwen_7b_lora<br/>qwen_14b | | Skywork | skywork_13b | | VisualGLM | visualglm_6b | | WizardCoder | wizardcoder_15b | ## Bugfix 在当前版本发布周期内,我们进行了模型/功能/易用性/文档等诸多方面的Bugfix,在此仅列举部分修复内容: - [#I8URBL](https://gitee.com/mindspore/mindformers/issues/I8URBL):修复了部分数据集在半自动并行+full_batch下仍错误地进行shard导致的训练数据不正确的问题。 - [#I8JVTM](https://gitee.com/mindspore/mindformers/issues/I8JVTM):修复了在使用Trainer传入模型实例时,GradAccumulation,PipelineCell等封装工具类未正确生效的问题。 - [#I8L4LZ](https://gitee.com/mindspore/mindformers/issues/I8L4LZ):修复了断点续训传入数据集实例时无法跳过已训练数据的问题。 - [#I8NHO5](https://gitee.com/mindspore/mindformers/issues/I8NHO5):修复了get_pet_model方法的加载权重逻辑,解决无法加载部分低参微调模型权重的问题。 - [#I8THC3](https://gitee.com/mindspore/mindformers/issues/I8THC3):修复了权重切分创建软链接时多进程读写操作冲突的问题。 欢迎对本项目提出意见与建议,以帮助项目持续改进。 ## 贡献者 感谢以下人员做出的贡献: Chenhua Geng, dingxu (E), fushengshi, heqinglin, koukairui, liuzhidan, renyujin, shuchi, Zhenhao Li, ZhidanLiu, 陈心锐, 陈子恒, 冯浩, 胡桂鹏, 胡思超, 黄磊, 黄生帅, 黄欣靓, 黄勇, 黄子灵, 姜海涛, 焦毅, 李兴炜, 林鑫, 倪钰鑫, 彭康, 苏海波, 田凯, 杨贵龙, 杨路航, 余金, 张森镇, 张小雯, 张又文, 赵栢杨, 周胜凯, 朱国栋 欢迎以任何形式对项目提供贡献!
最后提交信息为:
!2180
更新环境配置
v0.6.0
66360eb
2023-07-29 13:26
对比
Mindfomers v0.6.0
huanglei
Mindformers v0.6.0版本
最后提交信息为:
update mindspore depency
下载
请输入验证码,防止盗链导致资源被占用
取消
下载