上周调试RT-DETR时遇到个头疼的问题:导出ONNX模型后,动态batch推理总报shape不匹配。翻源码发现BaseDETR里的输出层写死了静态维度,官方代码仓里居然没人提过这事儿。这让我动了念头——不如自己修了,顺手给官方提个PR(Pull Request)。今天这篇笔记,就聊聊怎么给这类主流算法仓库贡献代码,毕竟咱们调bug时攒的经验,回馈社区才是开源精神的精髓。第一步:别急着改代码,先翻Issues和PR列表打开RT-DETR的GitHub仓库,先搜关键词“ONNX dynamic batch”。果然,三个月前就有人提过类似问题,但讨论到一半楼主失联了。这种情况很常见——社区项目维护者精力有限,旧issue容易沉底。确认没重复问题后,我顺手把调试时写的复现脚本贴到issue评论区:“附个最小复现代码,方便后续验证补丁”。这个小动作很关键,维护者看到能快速复现的case,合并意愿会高很多。第二步:Fork仓库,在本地建分支点完fork按钮,别直接在main分支上改。我习惯用功能命名分支:gitcheckout-bfix/onnx_dynamic_batch_output这里踩过坑:曾经在分支名里用中文括号,GitHu
【RT-DETR实战】195、贡献开源社区:如何为RT-DETR官方提交PR
上周调试RT-DETR时遇到个头疼的问题:导出ONNX模型后,动态batch推理总报shape不匹配。翻源码发现BaseDETR里的输出层写死了静态维度,官方代码仓里居然没人提过这事儿。这让我动了念头——不如自己修了,顺手给官方提个PR(Pull Request)。今天这篇笔记,就聊聊怎么给这类主流算法仓库贡献代码,毕竟咱们调bug时攒的经验,回馈社区才是开源精神的精髓。第一步:别急着改代码,先翻Issues和PR列表打开RT-DETR的GitHub仓库,先搜关键词“ONNX dynamic batch”。果然,三个月前就有人提过类似问题,但讨论到一半楼主失联了。这种情况很常见——社区项目维护者精力有限,旧issue容易沉底。确认没重复问题后,我顺手把调试时写的复现脚本贴到issue评论区:“附个最小复现代码,方便后续验证补丁”。这个小动作很关键,维护者看到能快速复现的case,合并意愿会高很多。第二步:Fork仓库,在本地建分支点完fork按钮,别直接在main分支上改。我习惯用功能命名分支:gitcheckout-bfix/onnx_dynamic_batch_output这里踩过坑:曾经在分支名里用中文括号,GitHu