LLaMA微调记录

2023-11-19

本文基于开源代码https://github.com/Lightning-AI/lit-llama/tree/main执行微调

其他参考链接:

Accelerating LLaMA with Fabric: A Comprehensive Guide to Training and Fine-Tuning LLaMA - Lightning AI

结构化数据示例: BelleGroup/train_0.5M_CN · Datasets at Hugging Face

finetune记录

在Alpaca数据集上finetune

下载代码,配置环境:https://github.com/Lightning-AI/lit-llama/blob/main/README.md

准备模型:https://github.com/Lightning-AI/lit-llama/blob/main/howto/download_weights.md

 finetune on Alpaca dataset:https://github.com/Lightning-AI/lit-llama/blob/main/README.md

 

 在个人数据集finetune

准备数据集:

        对于结构化数据集(json结构,包含“instructions”、“output”字段),复制lit-llama-main/scripts/prepare_alpaca.py代码,修改相应的输入文件、训练校验集划分、保存路径等

        对于非结构化数据集,复制lit-llama-main/scripts/prepare_any_text.py代码,修改相应内容。可参考以下链接https://github.com/Lightning-AI/lit-llama/blob/main/howto/unstructured_dataset.md

训练:

修改lit-llama-main/finetune/lora.py代码中的数据集路径、输出数据路径,运行代码即开始训练

推理:

修改lit-llama-main/generate/lora.py模型路径,进行推理

 

改bug记录

bug:

执行generate.py出错:ValueError: Precision 'bf16-true' is invalid. Allowed precision values: ('16-mixed', 'bf16-mixed', '32-true', '64-true', 64, 32, 16, '64', '32', '16', 'bf16')

解决:

lightning 版本错误

pip uninstall -y lightning; pip install -r requirements.txt

或下载lighning zip,然后 pip install lightning-master.zip -U
GitHub - Lightning-AI/lightning: Deep learning framework to train, deploy, and ship AI products Lightning fast.cc

 参考:

ValueError: Precision 'bf16-true' is invalid. Allowed precision values: ('16-mixed', 'bf16-mixed', '32-true', '64-true', 64, 32, 16, '64', '32', '16', 'bf16') · Issue #241 · Lightning-AI/lit-gpt · GitHub

bug:No module named 'torch.utils._device'

解决:No module named 'torch.utils._device' · Issue #135 · Lightning-AI/lit-llama · GitHub

 

 bug:RuntimeError: CUDA error: device-side assert triggered CUDA kernel errors might be asynchronously reported at some other API call, so the stacktrace below might be incorrect. For debugging consider passing CUDA_LAUNCH_BLOCKING=1. Compile with `TORCH_USE_CUDA_DSA` to enable device-side assertions.

解决:bug记录往上翻看到是max_seq_length的问题,定位到对应函数,传入更大的max_seq_length。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

LLaMA微调记录 的相关文章

  • 关于制作rpm包的patch的方法

    原文链接 http blkart blog 51cto com 1142352 1542533 1 准备工作 安装rpm build软件包 2 生成rpmbuild目录 以root用户登陆 执行命令 rpmbuild ba abc spec

随机推荐

  • 详解接口加密了怎么测?

    1 定义加密需求 确定哪些数据需要进行加密 这可以是用户敏感信息 密码 身份验证令牌等 确定使用的加密算法 如对称加密 如AES 或非对称加密 如RSA 2 生成密钥 对称加密 生成一个密钥 确保密钥的安全性和随机性 可以使用密钥生成库或算
  • Vue自定义InputNumber 计数器组件

    1 为什么要自己封装一个InputNumber 计数器组件 因为原始的el element的el input number组件有问题 原生组件能输入英文 不能限制只能输入数值 原始组件能通过键盘上的删除按钮 将数据全部删除 若提交表单的话
  • Vue3.0的新特性(8)Suspense

    Suspense是Vue3推出的一个内置组件 它允许我们的程序在等待异步组件时渲染一些后备的内容 可以让我们创建一个平滑的用户体验 Vue中加载异步组件其实在Vue2 x中已经有了 我们用的vue router中加载的路由组件其实也是一个异
  • 风口之上,为什么说区块链能改变世界?

    近几年 区块链被炒得热火朝天 各大媒体都能看见区块链的身影 其中很多甚至开设了区块链或比特币频道 你甚至很难找到一个科技或垂直网站 在标题中没有至少一篇意为 区块链改变世界 的文章 它们想传达的是 比特币和其他加密货币底层的区块链技术是如何
  • Idea 报Error:java:无效的源发行版13

    首先打开自己的项目 点击File gt Settings进入界面找到如图位置 并将相信应位置设置成自己的安装版本号 本人使用 1 8版本 别忘了点击OK 下一步 点击File选择Project Structure 进入 还是看自己的安装版本
  • java如何查询并显示一个表,如何从表中获取数据并将其显示在Java的另一个表中?...

    将数据从一个表复制到另一个表的Netbean项目 希望这可以帮助 import javax swing table DefaultTableModel To change this license header choose License
  • 概率论【离散型二维变量与连续性二维变量(下)】--猴博士爱讲课

    6 连续型二维变量 下 1 7 求边缘分布函数 边缘概率密度 边缘概率密度 2 7 求边缘密度函数 边缘概率密度 3 7 判断连续型二维变量的独立性 F x y Fx X Fy Y 那么X Y互相独立 f x y fx X fy Y 那么X
  • 【论文阅读 08】Adaptive Anomaly Detection within Near-regular Milling Textures

    2013年 太老了 先不看 比较老的一篇论文 近规则铣削纹理中的自适应异常检测 1 Abstract 在钢质量控制中的应用 我们提出了图像处理算法 用于无监督地检测隐藏在全局铣削模式内的异常 因此 我们考虑了基于全局傅里叶的方法和局部剪切波
  • php判断2个多维数组是否相同,PHP如何判断一个数组是一维还是多维

    什么叫多维数组呢 多维数组 本质上是以数组作为数组元素的数组 二维数组又称为矩阵 一个数组的元素如果是一维数组 那么我们就称这个数组是二维数组 怎么判断一个数组是否是一维数组呢 通过count 函数 int count mixed var
  • 【FPGA】:频率测量

    转载 1 FPGA频率测量的三种方法 直接测量法 间接测量法 等精度测量法
  • Go中sync 包的 Once 使用

    文章目录 背景 One 简介 示例 注意 源码解读 背景 在系统初始化的时候 某些代码只想被执行一次 这时应该怎么做呢 没有学习 Once 前 大家可能想到 声明一个标识 表示是否初始化过 然后初始化这个标识加锁 更新这个标识 但是学会了
  • .net IOC之Spring.Net

    一 开发环境 编译器 VS2013 Net版本 net framework4 5 二 涉及程序集 Spring Core dll 1 3 Common Logging 三 开发过程 1 项目结构 2 添加Person cs namespac
  • 数码管电子时钟

    文章目录 前言 一 回顾数码管 二 任务描述 三 系统框图 四 模块调用 五 模块原理图 六 工程源码 6 2 时钟计数模块代码 6 2 数码管驱动模块代码 6 3 顶层模块代码 七 仿真测试 7 1 测试代码 7 2 仿真结果 八 管脚信
  • networkmanager无法打开

    中午登录ubuntu刚要连接无可线发现个的问题 无线的图标不见了 这可肿么办啊 怎么找都找不到 开始想系统还原 后来发现还挺麻烦的 毕竟菜鸟 系统方面的还不怎么懂 幸好有两台电脑 可以google 唉 最近两天google也不正常 今天也不
  • Llama 美洲鸵(大羊驼)改进之一:均方层归一化RMSNorm

    Layer Normalization LayerNorm Root Mean Square Layer Normalization RMSNorm 原理 对特征张量按照某一维度或某几个维度进行0均值 1方差的归一化 操作 LayerNor
  • 神经网络控制系统的特点,神经网络控制的优点

    什么是神经网络控制 神经网络控制技术是一项复杂的系统控制技术 一般应用在变频器的控制中 它是通过对系统的辨识 运算后对变频器进行控制的一种新技术 而且神经网络控制可以同时控制多个变频器 所以应用在多个变频器级联控制中比较合适 谷歌人工智能写
  • angularjs官方教程中的两处错误

    看到官方教程中HTTP小节之前还在向同事夸angularjs的教程做的厚道 没有什么坑 结果到http就出现了 发现了两处错误 度娘各种搜索没有发现相关的帖子 于是记录下来 希望能被高效收录 以解广大IT民工之困扰 getHero id n
  • stream流常用

    从一个List中获得每个object的对象的id组成一个list List
  • 卓越性能代码_「Win」被隐藏起来的卓越性能模式,为何不想让人发现?

    前言 众所周知 电脑电源管理中包含三大模式 分别是 节能模式 平衡模式 高性能模式 其对电脑的性能影响还是比较大的 但是今天所说的 卓越性能模式 应该很多人都没听说过 又是何方神圣 其为何要隐藏起来不想被人发现 如何开启 卓越性能 模式 右
  • LLaMA微调记录

    本文基于开源代码https github com Lightning AI lit llama tree main执行微调 其他参考链接 Accelerating LLaMA with Fabric A Comprehensive Guid