LLama-Factory 遇到的问题
目录
一、LLama-Factory安装
二、LLama-Factory 遇到的问题
(一)包不兼容问题
(二)使用文件路径,加载模型
一、LLama-Factory安装
参考官网介绍:https://github.com/hiyouga/LLaMA-Factory
二、LLama-Factory 遇到的问题
(一)包不兼容问题
按照提示安装对应的版本,只要不相互冲突即可
(二)使用文件路径,加载模型
1.提示:NameError: name 'AsyncLLMEngine' is not defined
解决方案:在文件:src/llamafactory/chat/base_engine.py
将from vllm import AsyncLLMEngine 改为 from vllm_engine import AsyncLLMEngine
2.使用chat的时候修改gpu的使用个数和号
在运行训练程序前,在用户根目录下配置环境(~/.bashrc):
import os
os.environ["CUDA_VISIBLE_DEVICES"] = '0,1'
或:
export CUDA_VISIBLE_DEVICES = NUM
NUM是用户指定显卡的序号(0,1,2…),可以先用 nvidia-smi 查看当前哪块显卡可用。但这种方法限制了用户可见的GPU数量,比如你的其他程序在你的目录里无法选择别的GPU; 你的程序也没法使用multiple GPUs。
注意!!!!!!
ValueError: Total number of attention heads (28) must be divisible by tensor parallel size (6).
如果改后报这个错误,一定注意注意力头数要能被gpu卡数除尽!
并在src/llamafactory/chat/vllm_engine.py将下面get_device_count() 改为自己设置的gpu并行个数,如果是占用机器上的全部gpu数量则不需要改,如果少于机器上gpu数量一定要修改为自己设定的数。
"tensor_parallel_size": get_device_count() or 1
src/llamafactory/extras/misc.py
def get_device_count() -> int:r"""Gets the number of available GPU or NPU devices."""if is_torch_xpu_available():return torch.xpu.device_count()elif is_torch_npu_available():return torch.npu.device_count()elif is_torch_cuda_available():return 4 # 将cuda加载的设备数修改,得保证能够被注意头除尽#return torch.cuda.device_count()else:return 0
但是查看gpu使用情况,仍然是占用了所有的gpu 啊!!
3.使用train的时候修改gpu--没找到
设置环境变量CUDA_VISIBLE_DEVICES声明训练过程中允许使用4张显卡,显卡编号分别为1、2、3、4。使用 llamafactory-cli
命令启动训练
export CUDA_VISIBLE_DEVICES=1,2,3,4
llamafactory-cli train /data2/downloads/LLaMA-Factory/qwen2_lora_sft.yaml
4.Cannot use FlashAttention-2 backend because the flash_attn package is not found
pip install -U flash-attn==2.5.8
5.WARNING worker.py:1481 -- SIGTERM handler is not set because current thread is not the main thread.
gcs_rpc_client.h:179: Failed to connect to GCS at address 172.16.11.103:48924 within 5 seconds
Failed to get cluster ID from GCS server: TimedOut: Timed out while waiting for GCS to become available
6.RuntimeError: Cannot re-initialize CUDA in forked subprocess. To use CUDA with multiprocessing, you must use the 'spawn' start method
7.使用huggingface推理的Baichuan2-13B-Chat的时候,
提示: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.
8.用vllm加载模型的时候提示:Started a local Ray instance.
一个低级问题导致vLLM加载大模型时ray卡死 - badwood - 博客园
这两天一直被一个问题困扰,用vLLM加载千问时不能开并行(tensor_parallel_size>1),一开就会卡在ray阶段,最初是提示Started a local Ray instance,后来手工启动ray集群,就提示connected to Ray cluster。无论怎样调都无法跑下去,根本不会加载模型,换了各种版本的vllm、transformer、ray、显卡、甚至是用本来可以跑的docker,都不行,直到发现一个偶尔爆出的错误:ray pthread_create failed: Resource temporarily unavailable。一搜,第一条建议就是检查系统线程数设置。最终定位是系统设置的用户最大线程数太小(ulimit -u),设定为4096,修改到unlimited(/etc/security/limits.conf中增加app用户的nofile、nproc设置),顺利解决问题。
9.加载/home/sxw/3-model/1-patentWritten/10-glm-4-9b-chat模型的时候,huggingface推理,进行对话提示:KeyError: '<reserved_102>'
10.llama-factory加载chatglm3-6b-32k模型huggingface推理,对话提示:ValueError: too many values to unpack (expected 2)
解决方法:原因是transformers版本过高,修改为transformers==4.41.2【bug解决】chatglm3推理 ValueError: too many values to unpack (expected 2)_chatglm3 valueerror: too many values to unpack (ex-CSDN博客
11.llama-factory加载qwen2.5-14B模型huggingface推理,对话提示:RuntimeError: Could not infer dtype of NoneType
12.llama-factory加载glm-4-9b-chat-1m模型huggingface推理,对话提示:KeyError: 'sop'。
13.报错:“TypeError: ChatGLMTokenizer._pad() got an unexpected keyword argument ‘padding_side‘ ”_chatglm.pad has unexpected-CSDN博客
14.vllm 推理报错,无法导入本地大模型路径_vllm加载本地模型-CSDN博客
15.RuntimeError: Could not infer dtype of NoneType-CSDN博客
16.解决vscode远程连接Linux无权限保存的问题,解决vscode远程连接Linux无权限保存的问题_vscode无法保存linux主机上的网络共享恩家-CSDN博客
17. 为什么安装了autoawq后运行python文件的时候还是提示安装autoawq?
解决方法:直接git clone awq的源码,新建conda环境并安装awq依赖,在这个环境下运行,可以避免提示一直要安装autoawq问题,安装的autoawq版本是:0.2.6+cu121
18.vs code 提示:无法监视文件更改,请按照链接说明
【问题解决】VSCode报警:无法在这个大型工作区中监视文件更改。请按照说明链接来解决此问题。_无法在这个大型工作区文件夹中监视文件更改。请按照说明链接来解决此问题。-CSDN博客
19. ollama的open webui 在执行open-webui serve的时候提示:undefined symbol: __nvJitLinkAddData_12_1, version libnvJitLink.so.x报错缺失
undefined symbol: __nvJitLinkAddData_12_1, version libnvJitLink.so.x报错缺失_version libnvjitlink.so.12 not defined in file lib-CSDN博客
相关文章:
LLama-Factory 遇到的问题
目录 一、LLama-Factory安装 二、LLama-Factory 遇到的问题 (一)包不兼容问题 (二)使用文件路径,加载模型 一、LLama-Factory安装 参考官网介绍:https://github.com/hiyouga/LLaMA-Factory 二、LLama…...
I-CON: A UNIFYING FRAMEWORK FOR REPRESENTATION LEARNING
I-con:表示学习的统一框架 基本信息 ICLR 2025 博客贡献人 田心 作者 Shaden Alshammari, John Hershey, Axel Feldmann, William T. Freeman, Mark Hamilton 关键词 I-Con框架,表征学习,损失函数统一框架 摘要 随着表征学习领域的快速发展,各类…...

Missashe线代题型总结
Missashe线性代数考研题型总结 说明:这篇笔记用于博主对"线代"常考题型进行总结,99%为真题,大概可能应该会逐步更新解题思路。有目录可直接检索。 第一章 行列式 1 具体行列式计算 1)么字型 2015 数一 2016 数一三…...
蓝桥杯13届 卡牌
问题描述 这天, 小明在整理他的卡牌。 他一共有 n 种卡牌, 第 i 种卡牌上印有正整数数 i(i∈[1,n]), 且第 i 种卡牌 现有 ai 张。 而如果有 n 张卡牌, 其中每种卡牌各一张, 那么这 n 张卡牌可以被称为一 套牌。小明为了凑出尽可能多套牌, 拿出了 m 张空白牌, 他可以在上面…...

安卓开发用到的设计模式(1)创建型模式
安卓开发用到的设计模式(1)创建型模式 文章目录 安卓开发用到的设计模式(1)创建型模式1. 单例模式(Singleton Pattern)2. 工厂模式(Factory Pattern)3. 抽象工厂模式(Abs…...
【PalladiumZ2 使用专栏 3 -- 信号值的获取与设置 及 memory dump 与 memory load】
文章目录 Overviewforce 命令语法value 命令语法memory loadmemory dump Overview 在调试问题的时,有时需要将某些信号强制设置为某个值,或者某几个信号强制设置为某个值,这里就要用到 force 命令。 force 命令语法 force -h force <na…...
flutter dart 函数语法
以下是 Dart 语言中函数语法的 详细实例说明,涵盖了所有常用写法 基本语法参数类型(必选、可选、命名、默认值)匿名函数、箭头函数高阶函数(函数作为参数/返回值)异步函数(async / await) 1. …...
课外活动:大语言模型Claude的技术解析 与 自动化测试框架领域应用实践
大语言模型Claude的技术解析与测试领域应用实践 一、Claude模型的核心优势解析 1.1 关键技术特性对比 维度Claude 3 OpusGPT-4 Turbo核心优势上下文窗口200K tokens128K tokens长文档处理能力提升56%逻辑推理准确率92.3% (GSM8K数据集)89.7%复杂场景稳定性更强代码生成速度7…...

线程的一些基本知识
前言 最近在学习线程,线程与进程是面试中可能常考的问题,我总结了线程的一些知识。分享给大家,希望可以帮组到大家。 线程知识总结(包含与进程的区别) 结语 希望可以帮助到有需要的人,bye~~...

【Python打卡Day30】模块与包的导入@浙大疏锦行
#一、导入官方库 我们复盘下学习python的逻辑,所谓学习python就是学习python常见的基础语法学习你所处理任务需要用到的第三方库 所以你用到什么学什么库即可。学习python本身就是个伪命题,就像你说学习科目一样,你没说清晰你学习的具体科目…...

26考研|高等代数:λ-矩阵
前言 本章知识点较为简单,是作为工具性的一章,在学习过程中,要注意区分行列式因子、不变因子以及初等因子,同时还要对若尔当标准型的计算应该足够熟悉,尤其是复矩阵的若尔当标准型计算是十分重要的。 课本重点回顾 …...

我店模式系统开发打造本地生活生态商圈
在当今快节奏的商业环境中,商家们面临着越来越多的挑战,包括市场竞争加剧、消费者需求多样化以及运营效率的提高等。为了应对这些挑战,越来越多的商家开始寻求信息化解决方案,以提升运营效率和客户体验。我的店模式系统平台应运而…...

数据库练习(3)
简单选择题要点: 1.锁协议: 数据库原理及应用(高级篇)01——封锁协议(图文并解,超详细,一看就会)_数据库锁协议-CSDN博客https://blog.csdn.net/qq_44236958/article/details/105790970 2.tablespace和datafile 一个tablespace可以有一个或多…...

OpenGL ES 基本基本使用、绘制基本2D图形
OpenGL ES 绘制基础图形 OpenGL ES基本概念 OpenGL ES (Embedded-System) 是专为嵌入式设备(如手机、平板、VR 设备)设计的图形 API,是 OpenGL 的轻量级版本。 |下面是一个Android使用 OpenGL ES的基本框架 MainActivity 设置一…...
spark调度系统核心组件SparkContext、DAGSchedul、TaskScheduler、Taskset介绍
目录 1. SparkContext2.DAGScheduler3. TaskScheduler4. 协作关系5 TaskSet的定义6. 组件关系说明Spark调度系统的核心组件主要有SparkContext、DAGScheduler和TaskScheduler SparkContext介绍 1. SparkContext 1、资源申请: SparkContext是Spark应用程序与集群管理器(如St…...

BU9792驱动段式LCD
1、C文件,需要自己添加软件iic或硬件iic驱动,该驱动在我的别的文章内有。亲测bu9792是正常驱动的(只用到了前14个SEG),说实话有点懵了。后面的ICSET有个P2根据不同的SEG地址要置1或0,读的时候最高位也是0?读命令寄存器…...
Springboot通过SSE实现实时消息返回
Server-Sent Events(SSE)是一种从服务器向客户端推送实时消息的技术。相较于WebSocket,SSE更为简单,适用于大多数实时消息场景。本文将深入探讨如何使用Spring Boot通过SSE实现实时消息返回。 一、什么是SSE SSE是一种允许服务器…...
SD-WAN技术详解:如何优化网络性能与QoS实现?(附QoS策略、链路聚合、网络架构对比)
随着企业数字化转型的快速推进,传统WAN架构逐渐难以满足企业在性能、成本和服务质量(QoS)方面的要求。尤其是企业关键业务应用(例如语音通话、高清视频会议、企业核心业务系统)对网络性能的要求越来越高。SD-WAN&#…...

力扣-将x减到0的最小操作数
1.题目描述 2.题目链接 1658. 将 x 减到 0 的最小操作数 - 力扣(LeetCode) 3.题目分析 1)正面求解困难 题目要求我们每次都从最左边或者最右边取一个数,使x-元素的值,并在数组中移除该元素。最后返回的最小操作数…...
Web前端开发: 什么是JavaScript?
什么是JavaScript? JavaScript 是一种广泛应用于网页开发的脚本语言,主要用于为网站添加交互性和动态功能。 1. 核心作用 前端开发:控制网页行为,例如点击按钮弹出提示、表单验证、动态加载内容等。 后端开发:通过 No…...

三、【数据建模篇】:用 Django Models 构建测试平台核心数据
【数据建模篇】:用 Django Models 构建测试平台核心数据 前言我们要设计哪些核心数据?准备工作:创建 Django App开始设计数据模型 (Models)1. 通用基础模型 (可选但推荐)2. 项目模型 (Project)3. 模块模型 (Module)4. 测试用例模型 (TestCase…...
【JAVA】比较器Comparator与自然排序(28)
JAVA 核心知识点详细解释 Java中比较器Comparator的概念和使用方法 概念 Comparator 是 Java 中的一个函数式接口,位于 java.util 包下。它用于定义对象之间的比较规则,允许我们根据自定义的逻辑对对象进行排序。与对象的自然排序(实现 Comparable 接口)不同,Comparat…...

shp2pgsql 导入 Shp 到 PostGIS 空间数据库
前言 ❝ shp2pgsql是PostGIS自带的命令行工具,用于将Shapefile文件声称SQL脚本导入到PostGIS空间数据库。 1. 安装 PostGIS 通过Application Stack Builder或者下载单独的PostGIS包进行安装。而shp2pgsql则是与PostGIS工具集成在一起,无需单独下载。该命…...

word设置如“第xx页 共xx页”格式的页码
问题1: 为word文档设置如“第xx页 共xx页”格式的页码。 解决方法: 1、鼠标双击页脚位置进入页脚编辑模式; 2、在页脚处输入“第 页 共 页”内容并居中; 3、将光标放在“第 页”之间并插入“Page”,执行操作“…...

DL00912-基于自监督深度聚类的高光谱目标检测含数据集
在科研的道路上,数据的获取与分析无疑是成功的关键。对于从事高光谱数据研究的你,我们为您带来了一款革命性的工具——基于自监督深度聚类的高光谱目标检测系统。 完整代码数据集见文末 这款系统通过最先进的自监督学习技术,结合深度聚类算…...
PostgreSQL架构
目录 一、PostgreSQL核心特性与优势 1.PostgreSQL简介 2.PostgreSQL的核心特点 (1)开源与自由 (2)高度符合SQL标准 (3)丰富的数据类型 (4)事务与并发控制 (5&…...
文章记单词 | 第111篇(六级)
一,单词释义 damage /ˈdmɪdʒ/ v./n. 损害;损坏;损失harbour /ˈhɑːbə(r)/ n. 港口;港湾 v. 庇护;窝藏(美式拼写:harbor)gasp /ɡsp/ v. 喘气;喘息 n. 喘息&#x…...
在Java中,将Object对象转换为具体实体类对象
在Java中,将Object对象转换为具体实体类对象可以通过以下几种方法实现: 1.使用instanceof关键字进行类型检查和转换: 首先,使用instanceof关键字检查Object对象是否为目标实体类的类型。 如果是,则进行强制类型…...

Runtipi - 开源个人家庭服务器管理工具
项目功能:家庭服务器管理 ▎项目介绍: 一个开源的个人家庭服务器管理工具,旨在简化在单一服务器上管理和运行多个服务的过程。 它基于 Docker 构建,提供了一个简单的 Web 界面,用户可以通过该界面轻松添加和管理服务…...
Vue3和React中插件化设计思想
Vue 3 和 React 都广泛支持插件化设计思想,但因为它们的架构和理念不同,插件化的实现方式也不尽相同。以下分别详细讲解这两者中如何实现插件化: 🟩 一、Vue 3 中的插件化实现 Vue 3 继承了 Vue 2 的插件机制,同时增强…...