LLaMA-Factory微调ChatGLM3报错: Segmentation fault (core dumped)

SFT训练模型的命令

CUDA_VISIBLE_DEVICES=0 python src/train_bash.py \--stage sft \--model_name_or_path models/chatglm3-6b \--do_train \--dataset self_cognition \--template chatglm3 \--finetuning_type lora \--lora_target query_key_value \--output_dir output/chatglm3_sft_lora_self/ \--overwrite_cache \--per_device_train_batch_size 4 \--gradient_accumulation_steps 4 \--lr_scheduler_type cosine \--logging_steps 10 \--save_steps 200 \--learning_rate 5e-5 \--num_train_epochs 100 \--plot_loss \--fp16

模型基座是下载正确的,torch.cuda.is_available()也是True

训练报错:

11/21/2023 09:11:23 - INFO - llmtuner.data.loader - Loading dataset self_cognition.json...
Using custom data configuration default-aaabbbccc
Loading Dataset Infos from /usr/local/lib/python3.10/site-packages/datasets/packaged_modules/json
Generating dataset json (/root/.cache/huggingface/datasets/json/default-aaabbbccc/0.0.0/34bc96c741b2e8a1f18598ffdd8bb11242116d54740a1d4f2a2872c7a28b6900)
Downloading and preparing dataset json/default to /root/.cache/huggingface/datasets/json/default-aaabbbccc/0.0.0/34bc96c741b2e8a1f18598ffdd8bb11242116d54740a1d4f2a2872c7a28b6900...
Downloading data files: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00, 6364.65it/s]
Downloading took 0.0 min
Checksum Computation took 0.0 min
Extracting data files:   0%|                                                      | 0/1 [00:00<?, ?it/s]train.sft.1gpu.lora.fp16.self.sh: line 19:  2551 Segmentation fault      (core dumped) CUDA_VISIBLE_DEVICES=0 python src/train_bash.py --stage sft --model_name_or_path models/chatglm3-6b --do_train --dataset self_cognition --template chatglm3 --finetuning_type lora --lora_target query_key_value --output_dir output/chatglm3_sft_lora_self/ --overwrite_cache --per_device_train_batch_size 4 --gradient_accumulation_steps 4 --lr_scheduler_type cosine --logging_steps 10 --save_steps 200 --learning_rate 5e-5 --num_train_epochs 100 --plot_loss --fp16

调试

  • 用pycharm,跟踪入口,从src/train_bash.py进去,一步一步看
  • 根据报错log,找到"Loading dataset {}…"
  • 然后加断点,单步调试

调试后定位到:Segmentation fault (core dumped)是在 运行 datasets的 load_dataset() 函数发生的,单独调用这个函数也复现问题了: https://github.com/hiyouga/LLaMA-Factory/blob/main/src/llmtuner/data/loader.py#L56

试了好几个和datasets的Segmentation fault (core dumped)报错相关的修复方案,都也没有解决,包括网上搜到要更新一些相关库的版本,也都不行。

最终从报错的ubuntu18.04切换到20.04,换了个操作系统,就没有这个报错了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/208181.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Docker网络原理

Docker网络概述 1.桥接模式介绍 bridge模式是docker的默认网络模式。 桥接模式是一种用于连接两个不同网络段的设备&#xff0c;使它们能够共享通信的一种方式。 桥接设备工作在OSI模型的第二层&#xff0c;即数据链路层&#xff0c;通常基于MAC地址进行帧转发。 物理层连接…

一个简单的 postman设置接口关联让我措施了大厂的机会

postman设置接口关联 在实际的接口测试中&#xff0c;后一个接口经常需要用到前一个接口返回的结果&#xff0c; 从而让后一个接口能正常执行&#xff0c;这个过程的实现称为关联。 在postman中实现关联操作的步骤如下&#xff1a; 1、利用postman获取上一个接口指定的返回值…

YOLOv8 YoLov8l 模型输出及水果识别

&#x1f368; 本文为[&#x1f517;365天深度学习训练营学习记录博客 &#x1f366; 参考文章&#xff1a;365天深度学习训练营 &#x1f356; 原作者&#xff1a;[K同学啊 | 接辅导、项目定制] &#x1f680; 文章来源&#xff1a;[K同学的学习圈子](https://www.yuque.com/m…

LeetCode双指针:有序数组中的单一元素

LeetCode双指针&#xff1a;有序数组中的单一元素 题目描述 给你一个仅由整数组成的有序数组&#xff0c;其中每个元素都会出现两次&#xff0c;唯有一个数只会出现一次。 请你找出并返回只出现一次的那个数。 你设计的解决方案必须满足 O(log n) 时间复杂度和 O(1) 空间复…

关于什么是 JVM

关于什么是 JVM&#xff0c;看看普通⼈和⾼⼿的回答。 普通人 JVM 就是 Java 虚拟机&#xff0c;是⽤来运⾏我们平时所写的 Java 代码的。优点是它会 ⾃动进⾏内存管理和垃圾回收&#xff0c;缺点是⼀旦发⽣问题&#xff0c;要是不了解 JVM 的运⾏ 机制&#xff0c; 就很难…

是谁还没玩AI扩图?快跟上节奏啦

最近&#xff0c;抖音上的AI扩图突然火了&#xff0c;看完真的让人笑掉大牙&#xff5e;&#xff5e;&#xff5e; 这一热议的话题#AI扩图#在短视频平台抖音上的播放量已经突破7.8亿次&#xff0c;而相关的讨论也如同星火燎原&#xff0c;迅速点燃了公众的好奇心。从“用AI扩图…

中伟视界:皮带跑偏、异物检测AI算法除了矿山行业应用,还能在钢铁、火电、港口等行业中使用吗?

随着工业化的发展&#xff0c;皮带输送机已经成为各行业中不可或缺的重要设备&#xff0c;但是在使用过程中&#xff0c;由于各种原因&#xff0c;皮带常常出现跑偏问题&#xff0c;给生产运营带来了诸多困扰。不仅仅是矿山行业&#xff0c;钢铁、火电、港口等行业也都面临着皮…

C语言 扫雷游戏

代码在一个项目里完成&#xff0c;分成三个.c.h文件(game.c,game.h,main.c) 在Clion软件中通过运行调试。 /大概想法/ 主函数main.c里是大框架(菜单,扫雷棋盘初始化&#xff0c;随机函数生成雷&#xff0c;玩家扫雷) game.h函数声明(除main函数和游戏函数外的一些函数声明) ga…

RepidJson将内容写入文件

使用 RapidJSON 将内容写入文件的步骤如下&#xff1a; 创建一个 rapidjson::Document 对象&#xff0c;将需要写入文件的内容存储到其中。创建一个 rapidjson::StringBuffer 对象来保存 JSON 字符串。将 rapidjson::Document 对象转换为 JSON 字符串&#xff0c;并将其放入 r…

日志打印传值 传引用 右值引用性能测试

结论 ubuntu x86平台qnx平台优化传值都是比传引用的差 但是差距很小 测试代码 #include <cstdint> #include <ctime> #include <string>#ifdef __linux__#define ITERATIONS 10000000 #else#define ITERATIONS 100000 #endiftemplate <typename... AR…

rust高级 异步编程 一 future

文章目录 Async 编程简介async/.await 简单入门 Future 执行器与任务调度Future 特征使用 Waker 来唤醒任务构建一个定时器执行器 Executor构建执行器 完整代码 Async 编程简介 OS 线程, 它最简单&#xff0c;也无需改变任何编程模型(业务/代码逻辑)&#xff0c;因此非常适合作…

Linux设置root初始密码

目录 一、Linux系统中普通用户和特权用户&#xff08;root&#xff09; 二、Linux系统中设置root初始密码 一、Linux系统中普通用户和特权用户&#xff08;root&#xff09; windows 系统中有普通用户和特权用户&#xff0c;特权用户是 administer&#xff0c;普通用户可以…

mybatisplus调用oracle存储过程

mybatisplus调用oracle存储过程 创建一个测试的oracle存储过程 -- 创建携带返回值存储过程 CREATE OR REPLACE PROCEDURE SP_SUM_PROC_2023(number1 IN NUMBER, number2 IN NUMBER, result OUT NUMBER,result2 OUT NUMBER) is BEGIN result : number1 number2; result2 : 99…

微服务01

笔记&#xff1a; day03-微服务01 - 飞书云文档 (feishu.cn) 数据库连接不上&#xff1f; 要在虚拟机启动MySQL容器。docker start mysql 服务治理 服务提供者&#xff1a;暴露服务接口&#xff0c;供其他服务调用 服务消费者&#xff1a;调用其他服务提供的接口 注册中心&…

Java IO流(一) 基本知识

Java IO流 一、基础知识 IO流即存储和读取数据的解决方案。 &#xff08;一&#xff09;File 表示系统中的文件或者文件夹的路径 获取文件信息(大小&#xff0c;文件名&#xff0c;修改时间) 创建文件/文件夹 删除文件/文件夹 判断文件的类型 注意&#xff1a;File类只能对…

STL(五)(queue篇)

我发现之前一版在电脑上看 常用函数部分 没有问题,由于是手打上去的,在手机上看会发生错位问题,现已将电脑原版 常用函数部分 截图改为图片形式,不会再发生错位问题,非常感谢大家的支持 ### priority_queue优先队列出现频率非常高,尤为重要(是一定要掌握的数据结构) 1.queue队…

A : DS静态查找之顺序查找

Description 给出一个队列和要查找的数值&#xff0c;找出数值在队列中的位置&#xff0c;队列位置从1开始 要求使用带哨兵的顺序查找算法 Input 第一行输入n&#xff0c;表示队列有n个数据 第二行输入n个数据&#xff0c;都是正整数&#xff0c;用空格隔开 第三行输入t&…

Spring-retry失败重试机制

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、引入依赖二、主启动类上加EnableRetry三、Server层注意 四、失败后回调方法总结 前言 提示&#xff1a;SpringBoot项目为例 原文链接&#xff1a;https://…

docker全解

docker全解 一、docker的基本概念 什么是docker? docker是一个开源的应用容器引擎&#xff0c;让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中&#xff0c;然后发布到任何流行的Linux或Windows机器上&#xff0c;也可以实现虚拟化。容器是完全使用沙箱机制&#…

MIT线性代数笔记-第26讲-对称矩阵及正定性

目录 26.对称矩阵及正定性打赏 26.对称矩阵及正定性 实对称矩阵的特征值均为实数&#xff0c;并且一定存在一组两两正交的特征向量 这对于单位矩阵显然成立 证明特征值均为实数&#xff1a; ​    设一个对称矩阵 A A A&#xff0c;对于 A x ⃗ λ x ⃗ A \vec{x} \lambda…