在 parse_model 函数中添加了自定义模块支持

news/2025/11/17 23:07:42/文章来源:https://www.cnblogs.com/quantum-mydream/p/19234751


第一段代码(已修改版本)

在 parse_model 函数中添加了自定义模块支持:

n = n_ = max(round(n * depth), 1) if n > 1 else n # depth gain

# Custom modules support - Added for RFAConv, HSFPN, HATHead integration
custom_base_module_names = {'RFAConv', 'RFCBAMConv', 'RFABlock'}
is_base_module = m in base_modules or (hasattr(m, '__name__') and m.__name__ in custom_base_module_names)

if is_base_module: # 👈 使用 is_base_module
c1, c2 = ch[f], args[0]
# ... 后续处理

第二段代码(原始版本)

直接检查模块是否在 base_modules 中:

n = n_ = max(round(n * depth), 1) if n > 1 else n # depth gain

if m in base_modules: # 👈 直接使用 m in base_modules
c1, c2 = ch[f], args[0]
# ... 后续处理

修改的意义

第一段代码的修改允许:
1. 扩展自定义模块支持:除了内置的 base_modules,还支持 RFAConv、RFCBAMConv、RFABlock 这些自定义注意力模块
2. 动态检查模块名称:通过 hasattr(m, '__name__') 检查模块是否有名称属性
3. 灵活性更强:可以轻松添加更多自定义模块到 custom_base_module_names 集合中

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

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

相关文章

20232311 2025-2026-1 《网络与系统攻防技术》实验六实验报告

实验内容发现靶机Metasploitable2并进行端口扫描、版本扫描以及漏洞扫描等等 利用Vsftpd源码包后门漏洞进行攻击 利用SambaMS-RPC Shell命令注入漏洞 利用Java RMI SERVER命令执行漏洞 利用PHP CGI参数执行注入漏洞实验…

线程池的概念

线程池的概念核心线程数: 1.corePoolSize:线程池长期维持的线程数量,即使这些线程处于空闲状态,也不会被销毁,(除非设置了allowCoreThreadTimeOut). 2.maximumPolloSize(最大线程数): 线程池允许创建最大的线程…

android compose viewModel 传参数

android compose viewModel 传参数android compose viewModel 传参数 在MainActivity 里面可以用viewModelsval userDao = db.userDao()val viewModel by viewModels<MyArticleViewModel>(factoryProducer = {ob…

奶牛快传服务调整公告

奶牛快传服务调整公告 尊敬的奶牛快传用户 感谢您长期以来的信任与支持。为了更好地服务创作者,未来我们将专注于 稿定设计 的升级与创新。基于这一战略调整,奶牛快传将于 **2025 年 12 月 8 日 ** 正式停止服务。届…

从零实现 REINFORCE/GRPO —— 大模型推理强化微调实践

一文吃透:不依赖成熟 RL 库,如何实现 REINFORCE、REINFORCE-baseline 与 GRPO;数理推理模型的强化学习微调实践;训练/参考/采样模型的多卡调度。引言 你是否也遇到过:模型“会思考”,但少数题正确,格式还常常不…

java for linux 下载

在 Linux 系统上下载 Java,通常有以下几种常见方式:? 方法一:使用 yum(Debian/Ubuntu)安装 Java sudo apt update sudo apt install openjdk-17-jdkopenjdk-17-jdk 是 Java 17 的 JDK(Java Development Kit)。…

13 个 pytest 宝藏插件推荐!(存存存)

pytest-html 核心:一键生成直观的 HTML 测试报告,便于结果查看与分享。allure-pytest 核心:支持步骤描述、附件、分类等,比pytest-html更高级,让测试结果一目了然。pytest-xdist 核心:支持并行测试,通过将测试用…

java 1.8 linux

如果您是在使用 Java 1.8 在 Linux 系统上进行开发或运行,以下是一些常见的命令和脚本示例,帮助您管理 Java 1.8 环境:一、安装 Java 1.8 1. 使用 yum(适用于基于 RHEL/CentOS/Scientific Linux 的系统) sudo yum…

iOS开发Linux

你提到的“iOS开发Linux”可能是一个误解或混淆。iOS 是苹果公司开发的移动操作系统,主要用于苹果设备(如 iPhone、iPad、Apple Watch 等),而 Linux 是一个开源的操作系统,主要用于服务器、嵌入式系统、桌面计算机…

手撸大模型的分布式训练:深刻理解大模型训练的“起飞”原理

单卡不够?内存爆炸?训练太慢? 在大型语言模型(LLM)的训练过程中,单设备算力和内存往往成为性能瓶颈。如何高效地利用多GPU甚至多节点资源进行分布式训练,是每个LLM研究者和工程师必须面对的挑战。本文将深入剖析…

XHORSE XZBT42EN 2-Button HON.D PCBs for Honda Fit XR-V Jazz City 2018-2022 (5pcs/lot)

Solving Honda Remote Key PCB Issues: The XHORSE XZBT42EN Advantage Is your Honda Fit, XR-V, Jazz, or City struggling with unresponsive remote controls? For European and American automotive repair prof…

事件循环其实很简单!

一、概念 JavaScript 是单线程执行(基于执行栈 / 调用栈 call stack),事件循环负责不断地从各种任务队列里取任务执行——以保证异步任务的函数回调按规则有序运行,浏览器环境和 Node.js 环境都使用事件循环,尽管…

从0到1:揭秘LLM预训练前的海量数据清洗全流程

读完这篇文章,你将用监督微调(SFT)把一个 1.5B 规模的数学模型在 GSM8K 上的零样本推理正确率从 1.56% → 62.9%,同时把输出格式遵循率从 18.9% → 100%。我们将完整走通数据集下载、Prompt 架构、训练配置和评估方…

Upgrade Your Key Programming: New Style CG A22-3+1 Flip-4BTN Wire Remote for CGDI K2 (5pcs/lot)

The Frustration of Unreliable Key Remotes: A Problem for Mechanics and Car Owners Alike In the bustling world of automotive repair, few issues frustrate European and American mechanics more than unreli…

深入解析:使用 Triton 实现 Flash Attention2 - 让大模型训练飞起来

引言 你是否曾经在训练大型语言模型时,眼睁睁地看着 GPU 内存不断飙升,最终因为 OOM(Out of Memory)错误而前功尽弃?或者在处理长序列时,发现注意力机制的计算时间呈平方级增长,让人望而却步? 如果你有过这样的…

AI技术落地实践

好的,这是一个极具前瞻性的问题,充分体现了您对技术趋势的敏锐度。下面我将详细阐述我们在AI技术落地,特别是前端与AI结合方面的完整思考与实践。8. AI技术落地实践 第一部分:SQL编辑器集成LLM的完整实践 1. 技术选…

Day22flex布局

1.felx的组成<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1…

CF2169A题解

贪心传送门:https://codeforces.com/problemset/problem/2169/A 将数组排序,如下情况:\(11\ 12\ 13\ 14\ 14\ 15\),假设 \(a=14\),我们发现我们无论如何选择只能选取 \(a\) 左边或右边的数,又因为平局不算分,贪…

re.compile为什么能提高速度?

re.compile(pattern, flags=0) 的核心作用是 “编译正则表达式模式,生成可重复使用的 Pattern 对象”——本质是把正则字符串“编译”成正则引擎可直接执行的“字节码”,核心价值是 提升重复使用时的效率 + 简化代码…

从 0 搭建 LLM 不再难!这个 PyTorch 项目帮你吃透大模型底层逻辑

如果你曾想深入理解大语言模型(LLM)的 “五脏六腑”,却被框架封装的黑盒接口、复杂的源码结构劝退;如果你希望亲手实现 Transformer 的每一个组件,而非单纯调用transformers库 —— 那么今天推荐的这个开源项目,…