基于MindSpore NLP的PEFT微调

创建notebook

登录控制台

创建notebook

如果出现提示按如下操作

回到列表页面创建notebook参数如下:

配置mindnlp环境

打开GitHub - mindspore-lab/mindnlp: Easy-to-use and high-performance NLP and LLM framework based on MindSpore, compatible with models and datasets of 🤗Huggingface.链接进入主页看到简介

复制代码
Install from Pypi
You can install the official version of MindNLP which is uploaded to pypi.

pip install mindnlp
Daily build
You can download MindNLP daily wheel from here.

Install from source
To install MindNLP from source, please run:

pip install git+https://github.com/mindspore-lab/mindnlp.git
# or
git clone https://github.com/mindspore-lab/mindnlp.git
cd mindnlp
bash scripts/build_and_reinstall.sh

执行pip install mindnlp 会看到下面会有些版本冲突,不用理会

执行mindnlp脚本

复制代码
pip install git+https://github.com/mindspore-lab/mindnlp.git
# or
git clone https://github.com/mindspore-lab/mindnlp.git
cd mindnlp
bash scripts/build_and_reinstall.sh

如果你现在去页面打开notebook脚本你就会发现会提示Mindformers冲突

执行pip uninstall mindformers命令,删除依赖包,OK基础环境处理好了。

执行notebook开始训练

首先需要训练脚本,训练脚本可以参考mindnlp/llm/peft at master · mindspore-lab/mindnlp · GitHub目录下的脚本,下载到本地

跟着文档执行会发现如下提示选y继续执行

问题1

如果出现如下异常多重试几次

问题2

这是因为获取不到huggingface库导致的

解决

到huggingface官网下载数据集

数据集目录:https://huggingface.co/datasets/takala/financial_phrasebank

下载数据集,在终端目录/home/ma-user/work目录下执行代码git clone https://huggingface.co/datasets/takala/financial_phrasebank获取数据集。

开始训练模型

跟着脚本一路往下,会看到首先创建模型,然后加载数据集,加载token,最后训练,输入精度结果,报存模型加载模型。

使用ia3算法微调模型

使用GLUE-MRPC数据集

选取ia3数据集mindnlp/llm/peft/ia3/seq_2_seq/peft_ia3_mindnlp.ipynb at master · mindspore-lab/mindnlp · GitHub

在终端目录/home/ma-user/work目录下执行代码git clone https://huggingface.co/datasets/nyu-mll/glue获取数据集。

改变脚本参数

在之前lora_seq2seq.ipynb脚本的基础上改配置

修改配置

注意:注释掉之前lora的配置改成ia3的。

改变导入包

复制代码
# from mindnlp.peft import get_peft_model, LoraConfig, TaskType
from mindnlp.peft import get_peft_config, get_peft_model, get_peft_model_state_dict, LoraConfig, TaskType,IA3Config

改变配置

复制代码
# creating model
# peft_config = LoraConfig(task_type=TaskType.SEQ_2_SEQ_LM, inference_mode=False, r=8, lora_alpha=32, lora_dropout=0.1)
peft_config = IA3Config(task_type=TaskType.SEQ_2_SEQ_LM, inference_mode=False)

改变数据集

复制代码
# loading dataset
# dataset = load_dataset("financial_phrasebank", "sentences_allagree",cache_dir='/home/ma-user/work/financial_phrasebank/')

dataset = load_dataset("financial_phrasebank", "sentences_allagree",cache_dir='/home/ma-user/work/glue/mrpc')

开始训练

训练的结果差一点哪位大佬提供下思路看看如何调整

发布到昇思大模型平台

配置参数

总结

开始上手大模型,要求不高跑起来就好,关注我后续持续优化深度探讨模型。

最后

点赞关注评论一键三连,每周分享技术干货、开源项目、实战经验、国外优质文章翻译等,您的关注将是我的更新动力

引用

GitHub - mindspore-lab/mindnlp: Easy-to-use and high-performance NLP and LLM framework based on MindSpore, compatible with models and datasets of 🤗Huggingface.

昇思大模型平台

【第二课】昇腾+MindSpore+MindSpore NLP:极简风的大模型微调实战_哔哩哔哩_bilibili

相关推荐
云道轩2 分钟前
使用Docker在Rocky Linux 9.5上在线部署LangFlow
linux·人工智能·docker·容器·langflow
POLOAPI20 分钟前
从模型到生产:AI 大模型落地工程与效率优化实践
人工智能·gpt·gemini
谷歌上搜百度24 分钟前
LLM并非“万能钥匙”——深度解析大语言模型的本质与边界
人工智能·llm
Wendy144139 分钟前
【图像掩膜】——图像预处理(OpenCV)
人工智能·opencv·计算机视觉
机器之心1 小时前
开启RL Scaling新纪元,siiRL开源:完全分布式强化学习框架,支持超千卡规模高效训练
人工智能
GISer_Jing1 小时前
Coze:字节跳动AI开发平台功能和架构解析
javascript·人工智能·架构·开源
我有一计3331 小时前
【算法笔记】5.LeetCode-Hot100-矩阵专项
人工智能·算法·程序员
阿里云大数据AI技术1 小时前
Hologres V3.1版本发布,Serverless型实例从零开始构建OLAP系统
大数据·人工智能·机器学习
vibag1 小时前
LLM大语言模型
人工智能·python·语言模型·自然语言处理
行然梦实1 小时前
KnEA(Knee-point-driven Evolutionary Algorithm)简介
人工智能·算法·机器学习