LLaMA Factory操作界面微调时报disable multiprocessing.

LLaMA Factory操作界面微调时报disable multiprocessing.

LLaMA Factory操作界面微调时报disable multiprocessing

陈述问题

由于显卡性能不强,微调模型时会报以下下错误,GPU内存或系统内存不足,尤其在处理大规模数据或大模型时,子进程因内存溢出崩溃。

 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "G:\project\LLaMA-Factory\src\llamafactory\data\converter.py", line 420, in align_dataset return dataset.map( ^^^^^^^^^^^^ File "C:\Python312\Lib\site-packages\datasets\arrow_dataset.py", line 557, in wrapper out: Union["Dataset", "DatasetDict"] = func(self, *args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Python312\Lib\site-packages\datasets\arrow_dataset.py", line 3166, in map for rank, done, content in iflatmap_unordered( File "C:\Python312\Lib\site-packages\datasets\utils\py_utils.py", line 713, in iflatmap_unordered raise RuntimeError( RuntimeError: One of the subprocesses has abruptly died during map operation.To debug the error, disable multiprocessing. 

解决思路

我们可以调整LlamaFactory 训练命令中 --preprocessing_num_workers

–preprocessing_num_workers 是 LlamaFactoryLlamaFactory(以及基于 Hugging Face 生态的大模型训练框架)中用于数据预处理阶段的核心参数,具体作用如下: 核心定义
这个参数指定了数据预处理时使用的进程 / 线程数量(这里设置为 16),用于并行处理训练数据(比如加载数据集、分词、格式化、生成
attention mask 等操作)。 具体工作机制 默认情况下,preprocessing_num_workers 为
0,意味着所有数据预处理工作都在主线程中串行执行; 设置为 16 时,框架会启动 16 个独立的 worker 进程 /
线程,同时对不同批次的数据集进行预处理,充分利用 CPU 多核资源。 实际效果 ✅ 加速数据预处理:对于大尺寸数据集(比如几万 /
几十万条样本),多 worker 并行处理能显著减少数据加载和预处理的耗时,避免训练过程中出现 “GPU 等数据” 的空闲情况; ⚠️
资源占用注意:worker 数量并非越多越好: 如果设置的数值超过你的 CPU 核心数(比如你的 CPU 只有 8 核却设为
16),会导致进程切换开销增大,反而变慢; 过多的 worker 还会占用更多内存,可能引发 OOM(内存溢出)。 适用场景
这个参数仅作用于训练前的数据预处理阶段(比如分词、数据格式化),训练过程中的计算(如前向 / 反向传播)仍由 GPU
负责,不会影响训练阶段的并行逻辑。 实用建议 推荐设置值:通常设为你的 CPU 物理核心数(比如 8 核 CPU 设为 8,16 核设为
16),或核心数的 1-2 倍; 调试阶段:如果出现数据加载报错(如 BrokenPipeError),可以先将该值设为
0(单线程)排查问题; 内存敏感场景:如果数据集样本长、内存紧张,适当降低该值(比如 8 或 4)。 总结
–preprocessing_num_workers 16 表示启用 16 个并行进程处理训练数据的预处理(分词、格式化等); 核心作用是利用多核 CPU 加速数据加载,避免 GPU 训练时等待数据; 取值需匹配 CPU
核心数,并非越大越好,否则会增加开销或导致内存不足。

解决办法

点击‘预览命令’查看命令,可以看到命令中 --preprocessing_num_workers 16 `

在这里插入图片描述

先把之前运行网页的llamafactory-cli webui的进程停了⚠️⚠️⚠️
再把命令复制到cmd执行,执行前把–preprocessing_num_workers 改小

在这里插入图片描述


看到以下界面说明已经在跑了

在这里插入图片描述


跑完之后再运行网页的llamafactory-cli webui的进程
再进到网页查看刚才的训练参数可以选择导出了

在这里插入图片描述

Read more

【FPGA】Quartus Prime Lite 23.1 最新版 安装教程 ModelSim_18.1 下载安装 + 联调仿真教程 + 详细安装教程 2025最新

【FPGA】Quartus Prime Lite 23.1 最新版 安装教程 ModelSim_18.1 下载安装 + 联调仿真教程 + 详细安装教程 2025最新

前言         本文章基于截至2025年 Quartus_Prime_Lite的最新版 23.1 版本,详细的,一步一步的教你怎么安装,每一步都教你怎么做,按照流程绝对能安装成功。创作不易希望大家看完后点个赞支持创作,谢谢大家啦! 目录  软件下载地址 Quartus Prime Lite 23.1 ModelSim-Intel® FPGA 标准版软件版本 18.1 若不想在官网下载或官网下载速度太慢 点个关注+收藏可以免费用下面的百度链接进行下载  两个软件的安装包都在里面。如果使用百度链接下载则可跳过两个软件的下载流程,直接看安装流程。 一、Quartus Prime Lite 23.1 下载以及安装流程 1.1 Quartus Prime Lite 23.1 官方网站下载流程 第一步 打开上方链接到达如下界面 确保软件名称和版本如下图

探索React与Microi吾码的完美结合:快速搭建项目,低代码便捷开发教程

探索React与Microi吾码的完美结合:快速搭建项目,低代码便捷开发教程

一、摘要 在当今的数字化时代,软件开发就像是一场探险,每个开发者都是探险家,探索着代码的奥秘。React作为前端开发的领军框架,其组件化和高效的渲染机制为开发者提供了强大的工具。而Microi吾码低代码平台的出现,则为这一探险之旅提供了捷径,让开发者能够以更低的成本、更快的速度构建出复杂的应用。本文将带领大家深入了解如何在React项目中使用Microi吾码,实现低代码开发的便捷与高效。 二、Microi吾码介绍 2.1 功能介绍 * 低代码开发:通过拖拽式界面设计,减少代码编写,提升开发效率。 * 组件丰富:提供大量预设组件,满足各种业务需求。 * 跨平台支持:适用于Web、移动端、小程序等多种平台。 * 灵活扩展:支持自定义组件和API,满足个性化需求。 2.2 团队介绍 * 研发团队:由经验丰富的开发者组成,专注于低代码平台的研发与优化。 * 客户支持:提供专业的技术支持和培训服务,确保用户顺利上手。 2.3 上线项目案例 * 电商平台:快速搭建了功能完整的电商系统,支持商品管理、订单处理等。 * 企业管理系统:

论文阅读详细版K-RagRec:Knowledge Graph Retrieval-Augmented Generation for LLM-based Recommendation

摘要(Abstract) 翻译 推荐系统在我们的日常生活中变得越来越重要,有助于缓解各类面向用户的在线服务中的信息过载问题。大语言模型(LLMs)的出现取得了显著成就,展现出其推动下一代推荐系统发展的潜力。尽管取得了这些进展,基于大语言模型的推荐系统仍面临源于其模型架构的固有局限性,尤其是幻觉问题(生成虚假信息)以及缺乏最新知识和领域特定知识的问题。近年来,检索增强生成(RAG)技术受到了广泛关注,它通过利用外部知识源来增强大语言模型的理解和生成能力,从而解决这些局限性。然而,传统的 RAG 方法往往会引入噪声,并且忽略了知识中的结构化关系,这限制了它们在基于大语言模型推荐系统中的效果。为了解决这些问题,我们提出从知识图谱中检索高质量、最新的结构化信息,以增强推荐效果。具体而言,我们设计了一个检索增强框架,名为 K-RagRec,该框架通过整合外部知识图谱的结构化信息,助力推荐生成过程。我们进行了大量实验,验证了所提方法的有效性。 讲解 * 摘要就是论文的 “浓缩版故事”,核心逻辑: 1. 背景:推荐系统很重要,大语言模型能做推荐,但有两个大问题 ——“瞎编(幻觉)”

FPGA板上基于Simulink与ModelSim联合仿真验证的Buck闭环设计及调试

FPGA板上基于Simulink与ModelSim联合仿真验证的Buck闭环设计及调试

simulink与modelsim联合仿真buck闭环设计 主电路用simulink搭建,控制电路完全有verilog语言实现(包括DPWM,PI补偿器) 适用于验证基于fpga的电力电子变换器控制,由于控制回路完全由verilog语言编写,因此仿真验证通过,可直接下载进fpga板子,极大缩短了开发数字电源的研发周期。 buck变换器指标如下: (*额定输入电压*) Vin->20, (*最大输入电压*) Vin_max->25, (*最小输入电压*) Vin_min->15, (*输出电压*)Vo>10, (*开关频率*)fs->50*10^3, (*输出功率*)Po->100, (*最小占空比*)Dmin->0.1, (*额定占空比*)D ->0.5,