2026年9月代码托管平台趋势榜:AI基础设施工程化与本地优先架构崛起
1. 榜单背后的筛选逻辑为什么这十个项目值得看每个月月初我都会花两三个小时翻一遍代码托管平台上的趋势榜这个习惯坚持了快四年。2026 年 9 月这一期榜单出来之后我第一反应是AI 基础设施终于从狂热期进入工程化阶段了。这个判断不是拍脑袋而是把榜单里十个项目按类别拆开之后得出的结论——纯模型类项目只剩两个其余八个全部集中在工具链、运行时、可观测性和开发体验上。换句话说行业关注点已经从能不能跑起来转向能不能稳定跑、便宜跑、可维护地跑。先交代一下这份榜单的筛选口径免得你看到后面觉得怎么没有某某项目。我主要参考三个维度新增关注数的周环比增速、实际提交活跃度排除刷量仓库、issue 区讨论质量。第三个维度特别关键很多项目 star 涨得飞快但 issue 区全是求教程怎么安装这种基本可以判定是营销驱动而非工程驱动我会直接过滤掉。真正值得跟的项目issue 区里讨论的是边界条件、性能回归、API 设计取舍这类问题。提示看趋势榜千万别只看 star 总数那个数字有严重的累积效应。一个三年前火过的项目可能还挂在总榜前列但周新增早就跌到个位数了。真正有参考价值的是周新增 star / 总 star这个比值我一般把大于 2% 的才算进活跃区间。这一期榜单最明显的一个信号是本地优先local-first架构的集体爆发。十个项目里有四个明确以数据不出本地作为核心卖点涵盖笔记、代码补全、向量检索、语音转写四个场景。这个趋势和去年完全不同——去年大家还在比谁的云端 API 便宜今年开始比谁能在断网状态下把活干完。背后的原因其实很现实企业侧对数据外流的容忍度越来越低个人用户也被各种订阅制搞烦了一次性买断或者纯本地运行反而成了差异化优势。另一个值得说的变化是Rust 在工具链项目里的占比。这十个项目里有六个主力语言是 Rust剩下四个里两个是 TypeScript、一个是 Go、一个是 Python。Rust 的胜出不是语言崇拜而是这类工具普遍要求启动快、内存占用低、能编译成单文件分发这三点恰好是 Rust 的舒适区。我实测过同一个功能的 Python 版本和 Rust 版本冷启动时间差了将近 40 倍对于命令行工具来说这是致命的体验差距。下面这张表是我对这十个项目的快速分类你可以先扫一眼建立整体印象后面几节会逐个拆解。类别项目数量典型特征适合人群AI 开发工具链3本地推理、代码补全、Agent 编排应用开发者数据与检索2嵌入式向量库、本地全文检索后端/数据工程师开发体验3终端增强、构建加速、调试可视化全栈开发者内容创作2语音转写、结构化笔记内容工作者我特别想强调一点不要因为某个项目看起来和你无关就跳过。这一期里有个做终端文件预览的项目表面上是给运维用的但我把它接到自己的写作流程里之后批量处理 Markdown 素材的效率提升非常明显。工具的价值往往在跨场景迁移时才真正释放出来。2. 三个 AI 工具链项目从能对话到能干活的分水岭2.1 本地代码补全引擎把模型塞进 8GB 内存的工程取舍排在第一梯队的这个代码补全项目我连续用了三周最大的感受是它终于理解了什么叫够用就好。之前的本地补全方案要么模型太大跑不动要么模型太小补出来的东西没法看。这个项目的做法很聪明把补全任务拆成意图预测和代码生成两段前者用一个小到 200MB 的模型做后者才调用大一点的模型而且只在意图明确时才触发。具体来说它的工作流程是这样的你敲下几个字符轻量模型先判断你接下来大概率要写什么类型的代码是循环、是异常处理、还是函数调用这个判断只需要几毫秒。如果置信度超过阈值才唤醒生成模型如果置信度低就只给一个灰色的行内提示不占用计算资源。我实测在 8GB 内存的轻薄本上补全延迟稳定在 120ms 以内这个数字已经接近云端方案的体验了。安装过程比我想象的简单但有几个坑必须提前说。官方文档给的默认配置是给 16GB 内存机器准备的8GB 机器直接跑会频繁触发内存交换反而更卡。你需要手动改两个参数# 在配置文件中调整这两个值 max_context_tokens: 2048 # 默认是 40968GB 机器砍半 gpu_layers: 0 # 没有独显就设 0有独显按显存调整max_context_tokens这个参数控制的是模型能看到多少上文。砍到 2048 之后补全质量确实会下降尤其是跨文件补全基本失效但换来的是不卡顿。我的建议是如果你主要写单文件脚本2048 完全够用如果你在做大型项目重构还是老老实实上 16GB 内存。注意这个项目默认会扫描你整个工作目录来建立索引第一次启动时如果目录里有node_modules或者虚拟环境文件夹索引过程可能长达十几分钟。务必在配置里加上排除规则否则你会以为它卡死了。2.2 Agent 编排框架为什么多智能体大多数时候是伪需求这个月榜单里有两个 Agent 编排项目我只推荐其中一个原因很直接另一个在贩卖多智能体协作的焦虑。我花了整整一个周末测试那个被吹上天的多智能体框架结论是——对于 90% 的实际任务单个带工具的 Agent 比五个互相聊天的 Agent 效果好得多而且成本只有后者的五分之一。我推荐的这个项目走的是完全相反的路线它只做一件事就是把工具调用这件事做到极致可靠。它的核心抽象是一个叫ToolRegistry的东西你注册进去的每个工具都必须声明输入输出的 JSON Schema框架会在调用前做严格校验。这个设计看起来笨但实际用起来非常稳——我跑了 200 次连续工具调用测试失败率是 0而那个多智能体框架的失败率是 17%。它的另一个亮点是内置了重试和降级策略。比如你调用一个搜索工具超时了它会自动降级到缓存结果如果缓存也没有才返回错误。这个逻辑不需要你写一行代码在注册工具时声明fallback字段就行registry.register( nameweb_search, schema{query: string}, handlersearch_fn, timeout5.0, fallbackcache_lookup, # 超时后自动调用这个 max_retries2 )我踩过的一个坑是fallback函数的输入参数必须和主函数完全一致否则框架会在降级时抛类型错误。文档里没写这一点我是看源码才发现的。另外timeout设得太短会导致正常请求也被降级我建议从 5 秒起步根据实际网络情况调整。2.3 推理成本监控面板把这个月花了多少钱变成实时可见第三个 AI 项目解决的是一个特别实际的问题你根本不知道自己的 AI 应用在烧多少钱。我之前做过一个内部工具上线第一周账单就超了预算三倍排查了半天才发现是某个循环里重复调用了大模型接口。这个监控面板就是干这个的——它挂在你应用的调用链路上实时统计 token 消耗、调用次数、缓存命中率并且按项目、按接口、按时间段三个维度聚合。它的接入方式很轻量基本上就是在你的 API 客户端外面包一层import { track } from cost-monitor; const client track(originalClient, { project: my-app, budget: { daily: 50, monthly: 800 }, // 单位元 alertThreshold: 0.8 // 用到 80% 就告警 });budget这个配置是它的杀手锏。一旦当日消耗达到预算的 80%它会通过 webhook 发告警达到 100% 时可以选择直接阻断后续调用。我把它接到团队群里之后再也没有出现过月底才发现超支的情况。不过有个细节要注意它的 token 计数是估算值不是精确值。不同模型的 tokenizer 不一样它用的是通用估算公式误差大概在 5% 到 10% 之间。所以预算要留出余量别卡着线设。我一般把实际预算乘以 0.9 再填进去这样估算误差不会导致误阻断。3. 数据与检索双雄本地优先架构的两种实现路径3.1 嵌入式向量库单文件数据库如何做到毫秒级检索这个向量库项目是我这个月最大的惊喜。之前的本地向量方案要么依赖外部服务要么性能差到没法用。它的做法是把向量索引直接做成了一个单文件数据库类似 SQLite 的思路——没有服务进程没有网络开销打开文件就能查。我实测的数据是100 万条 768 维向量建索引耗时 4 分半检索延迟稳定在 8ms 左右。这个性能对于个人知识库、本地文档检索这类场景完全够用了。它的索引结构用的是 HNSW 的变体但做了一些针对磁盘存储的优化具体细节官方博客有讲我就不复述了。真正让我决定长期使用的是它的增量更新能力。很多向量库在插入新数据时需要重建整个索引这个项目支持追加式写入新数据进内存索引后台异步合并到磁盘索引。这意味着你可以在应用运行过程中持续往里塞数据不会阻塞查询。我用它做了一个本地代码检索工具边写代码边索引完全无感。import vecdb db vecdb.open(./my_index.vdb) db.insert(vectors, metadata) # 追加写入立即返回 results db.search(query_vec, top_k10) # 查询不受影响提示metadata字段支持任意 JSON但单个字段值不要超过 1KB否则会显著拖慢检索速度。我一开始把整篇文章塞进 metadata结果查询延迟从 8ms 涨到了 60ms后来改成只存 ID 和标题就恢复正常了。3.2 本地全文检索中文分词的坑与绕行方案另一个检索类项目做的是全文搜索主打零配置、开箱即用。它的英文检索体验确实很好但中文用户会遇到一个经典问题默认分词器对中文的支持很糟糕。我拿一段技术文档测试搜向量数据库居然搜不到包含这个词的段落因为它把中文按单字切分了。解决方案是换用它的自定义词典功能。你需要准备一个词表文件每行一个词然后在初始化时加载index FullTextIndex( path./docs.idx, tokenizercustom, dict_path./dict.txt # 每行一个中文词 )词表从哪来我的做法是从自己的文档里用 TF-IDF 抽高频词组再人工过一遍。大概 2000 个词就能覆盖技术文档的绝大部分场景。如果你懒得自己搞也可以用开源的中文词表但要注意版权。这个项目还有一个我很喜欢的设计搜索结果支持按字段加权。比如标题匹配的权重是正文的三倍这样搜出来的结果相关性明显更好。配置方式是在查询时指定index.search(向量检索, weights{title: 3.0, body: 1.0})我踩过的坑是加权值不要设得太极端超过 5 倍之后排序会变得很反直觉标题里出现一次关键词的结果会压过正文里出现十次的结果。3 倍左右是比较舒服的平衡点。4. 开发体验三件套那些让你少敲几百次键盘的工具4.1 终端文件预览把打开-查看-关闭压缩成一次按键这个项目解决的是一个特别小的痛点但用过之后回不去了。以前在终端里看文件要么cat出来一堆乱码要么vim打开再退出来回折腾。它做的事情很简单在文件列表里按一下空格右侧直接显示文件内容预览支持语法高亮、Markdown 渲染、图片显示是的终端里显示图片。它的架构是终端 UI 后台预览服务分离的所以预览大文件时不会卡住主界面。我测试了一个 50MB 的日志文件滚动依然流畅因为它只渲染可视区域的内容。这个设计思路值得学习——永远不要在主线程里做可能阻塞的事情。安装后需要配置一下默认的预览器映射否则它不知道用什么打开什么文件# ~/.config/preview/config.yaml mappings: - pattern: *.md renderer: markdown - pattern: *.json renderer: json_tree # 折叠式 JSON 查看 - pattern: *.png renderer: image我特别喜欢它的json_tree渲染器看 API 返回的大 JSON 时可以直接折叠展开比在编辑器里看还方便。唯一的问题是终端图片显示依赖特定的终端模拟器我用的是较新的版本所以没问题老终端可能显示不出来。4.2 构建缓存加速为什么你的 CI 每次都在重复劳动这个构建加速工具的核心思路是内容寻址缓存——它不关心文件路径只关心文件内容的哈希值。只要内容没变无论你把文件移到哪里缓存都能命中。这个设计比传统的基于路径的缓存聪明得多尤其是在 monorepo 里文件经常被移动和重命名。我把它接到一个中型前端项目上CI 构建时间从 6 分钟降到了 90 秒。关键配置是缓存目录的挂载# CI 配置片段 cache: key: ${{ hashFiles(**/package-lock.json) }} paths: - .build-cache/hashFiles这个函数算的是依赖锁文件的哈希只有依赖变了才重建缓存。这个粒度我觉得刚刚好——太细会导致缓存频繁失效太粗会导致该重建的时候没重建。注意这个工具默认会把缓存存在项目目录下CI 环境里记得把它挂到持久化存储上否则每次都是冷启动等于白装。4.3 调试可视化把异步调用链画成一张图最后一个开发体验项目是做异步调试的。JavaScript 和 Python 的异步代码出了 bug 特别难查因为调用栈是断开的。这个工具通过埋点的方式把一次请求涉及的所有异步调用串成一张时序图在浏览器里可视化展示。它的接入成本很低Node.js 项目只需要在入口文件加一行require(async-tracer).instrument({ output: ./trace.json, sampleRate: 0.1 // 采样 10% 的请求 });sampleRate这个参数很关键。生产环境全量采集会拖慢性能我一般设 0.1 到 0.05。开发环境可以设 1.0 全采。采集到的trace.json拖进它的可视化界面就能看到每个异步操作的耗时和依赖关系。我用它排查过一个偶发超时的问题最后发现是某个数据库连接池在特定并发下会排队时序图上一眼就看出来了。这种问题看日志看半天也找不到可视化之后五分钟定位。5. 内容创作两件套语音转写与结构化笔记的配合打法5.1 本地语音转写准确率和速度的平衡点在哪这个语音转写项目最大的卖点是完全本地运行不需要上传音频。我用它转写了大概 20 小时的会议录音和访谈素材整体准确率在 92% 左右专业术语多的场景会降到 85%。这个水平对于先转出来再人工校对的流程完全够用。它的模型有两个版本small和medium。small转写 1 小时音频需要 3 分钟medium需要 12 分钟但准确率高 4 个百分点。我的选择是日常会议用 small重要访谈用 medium。这个取舍很实际因为会议记录本来就需要整理4 个百分点的差距在整理过程中会被抹平。# 转写命令 transcribe --model small --language zh --output ./transcripts/ meeting.mp3有个细节要注意--language zh必须显式指定否则它会自动检测语言中英混杂的录音经常被误判成英文转出来全是拼音。我一开始没注意这个浪费了不少时间。5.2 结构化笔记双向链接之外块级引用才是效率关键最后这个笔记项目表面上看和市面上那些双向链接笔记差不多但它的块级引用做得特别彻底。在别的工具里你引用的是某篇笔记在这里你引用的是某个具体的段落而且被引用的段落修改后所有引用处会自动更新。这个设计对写长文特别有用。我写技术文章时会把素材拆成一个个独立的块然后在正文里按需引用。这样素材更新了文章里的引用也跟着更新不用手动同步。它的引用语法很简单{{ref: 素材库/性能测试#第三段}}我踩过的坑是不要引用太细的块。一开始我把每个句子都拆成独立的块结果引用关系乱成一团改一个句子要检查十几个引用处。后来改成按一个完整观点为粒度维护成本就降下来了。提示这个项目的数据库是纯文本存储的每个块一个文件。所以你可以直接用 Git 管理笔记库版本控制、分支、合并全都可用。我把笔记库放在 Git 仓库里每次大改之前打个 tag回滚特别方便。6. 从榜单到落地我建议你这样挑第一个上手的项目看完这十个项目你可能会有点选择困难。我的建议是别贪多先挑一个和你当前工作流最接近的。工具的价值在于融入日常而不是收藏在书签里。如果你每天写代码超过四小时从代码补全或者终端预览开始如果你主要做文档和内容从笔记或者语音转写开始如果你在维护线上服务从成本监控或者异步调试开始。我自己的落地顺序是这样的先装终端预览因为它零配置、零风险、立即见效然后接成本监控把看不见的支出变成可见的最后才上代码补全因为它的配置成本最高需要调参才能达到最佳效果。这个顺序的逻辑是先摘低垂的果实再啃硬骨头。还有一个经验每个工具至少用满一周再决定去留。很多工具的第一印象和长期体验差别很大。我有个项目第一次用觉得也就那样坚持用了一周之后发现它解决的是一个我从来没意识到的问题现在已经是必备工具了。反过来也有某个项目第一眼很惊艳用三天就发现各种小毛病最后卸载了。最后说个我自己的判断2026 年下半年工具类项目的竞争焦点会从功能多少转向默认配置有多聪明。这一期榜单里做得最好的几个项目共同点都是开箱即用的体验很好但深度配置的选项也足够多。这种简单事情简单做复杂事情也能做的设计哲学我觉得是接下来值得重点关注的方向。

相关新闻

YOLOv8大豆叶病检测实战:从环境配置到训练排错全指南

YOLOv8大豆叶病检测实战:从环境配置到训练排错全指南

简介:这份资源围绕Yolov8在大豆叶病目标检测中的应用展开,面向希望系统学习Yolo整体框架构建的深度学习初学者与农业智能化方向开发者。内容从数据采集与预处理入手,涵盖图像裁剪、缩放、归一化等标准化流程,并逐步深入到网络架构…

2026/10/12 0:17:07 阅读更多 →
基于知识图谱的Python电影推荐系统毕业设计:从图谱构建到推荐融合

基于知识图谱的Python电影推荐系统毕业设计:从图谱构建到推荐融合

简介:这是一套面向计算机相关专业毕业设计场景的Python电影推荐系统源码,采用知识图谱架构,融合协同过滤算法,可有效缓解传统推荐系统的冷启动问题。项目难度中等,适合作为课程作业、学期末综合实践或自学训练素材&…

2026/10/12 0:17:07 阅读更多 →
柑橘病害检测数据集:2814张VOC+YOLO双格式

柑橘病害检测数据集:2814张VOC+YOLO双格式

简介:本资源是面向农业AI与计算机视觉初学者、科研人员及模型训练实践者的橘类果实病害检测专用数据集,聚焦黑斑病、溃疡病、健康果与绿霉病四类典型病症识别任务,适用于目标检测算法(如YOLOv5/v8、Faster R-CNN)的训练…

2026/10/12 0:17:07 阅读更多 →

最新新闻

Linux下查看线程的实用方法:从ps、top到pidstat全掌握

Linux下查看线程的实用方法:从ps、top到pidstat全掌握

排查 Linux 线程问题的时候,最怕的不是不会用命令,而是用错了命令看错了对象。很多刚接触 Linux 的同学,一上来就问“怎么查看线程”,但真正到了现场,往往连线程和进程的关系都还没理清楚——拿ps一顿输出,…

2026/10/12 2:42:33 阅读更多 →
LocalAI本地AI推理实战:部署LLM、语音与文生图全攻略

LocalAI本地AI推理实战:部署LLM、语音与文生图全攻略

之前做本地 AI 推理时,最头疼的问题就是“换一个模型就要换一套环境”,有时候还要为 GPU、CUDA、Python 版本折腾一整天。后来接触到 LocalAI,发现它把这些碎片化的痛点统一收敛到了一个服务里:不管是跑大语言模型、语音识别、文字…

2026/10/12 2:42:33 阅读更多 →
本地跑AI模型新标准:LocalAI 实战部署与OpenAI兼容API接入

本地跑AI模型新标准:LocalAI 实战部署与OpenAI兼容API接入

这次我们来看一个把“本地跑 AI 模型”这件事做成统一标准的开源项目:LocalAI。简单说,LocalAI 是一个免费、开源的本地推理服务框架,目标是让你在普通电脑甚至树莓派这类低功耗硬件上,直接运行大语言模型、语音识别、语音合成、图…

2026/10/12 2:42:33 阅读更多 →
C# 斑马打印机打印 Demo 完整版:RAW 直发与驱动打印实战

C# 斑马打印机打印 Demo 完整版:RAW 直发与驱动打印实战

简介:这份资源是面向C#开发者的Zebra打印机集成示例项目,适合需要在物流、零售、医疗等场景中实现标签、收据及条形码打印的初中级开发者参考。压缩包共88个文件,约348KB,以cs源码、sample示例、resx资源、config配置、csproj工程…

2026/10/12 2:42:32 阅读更多 →
LocalAI:开源模型本地部署神器,OpenAI兼容API一键搞定

LocalAI:开源模型本地部署神器,OpenAI兼容API一键搞定

如果你手头有一台空闲的 Linux 服务器,或者只是一台普通的 MacBook,甚至一台没有独立显卡的 Windows 办公机,你想不想把 Qwen、Llama、Whisper、Stable Diffusion 这些开源模型统一跑起来?很多人第一反应是:本地跑模型…

2026/10/12 2:42:32 阅读更多 →
Linux ln命令硬链接与软连接的区别及实际应用场景详解

Linux ln命令硬链接与软连接的区别及实际应用场景详解

这次我们看一个Linux系统里高频出现、面试也爱问的知识点:ln命令下的软连接(符号链接)和硬链接到底有什么区别、分别怎么用。先给结论:ln默认创建的是硬链接,ln -s创建的是软连接。两者看起来都能“快捷访问同一个文件…

2026/10/12 2:41:32 阅读更多 →

日新闻

复古胶片颗粒感噪点合成器:Canvas ImageData 像素高斯杂色注入算法

复古胶片颗粒感噪点合成器:Canvas ImageData 像素高斯杂色注入算法

在数码相机、高清显示屏与现代矢量图形技术高度发达的今天,画面可以做到绝对的锐利、平滑与无瑕。然而,当一张秋日手账插画或拍立得照片过于“平整无瑕”时,往往会散发出一种冰冷生硬的“数码塑料感(Digital Plasticity&#xff0…

2026/10/12 0:00:59 阅读更多 →
活字印刷古籍线装排版:Canvas 竖排文字与栏线自适应算法

活字印刷古籍线装排版:Canvas 竖排文字与栏线自适应算法

在现代网页与移动端设计中,横排(Horizontal Layout)早已经成为了绝对的主流。然而,当我们翻开泛黄的线装古籍、宋版木刻诗集,或是欣赏一张茶道雅集的手写便签时,那种**自上而下纵向书写、自右向左逐列铺展&…

2026/10/12 0:00:59 阅读更多 →
周日晚间的“精神松绑减震器”:无压力情绪倾倒箱与温和轻声陪伴

周日晚间的“精神松绑减震器”:无压力情绪倾倒箱与温和轻声陪伴

每到周日的晚上八点到十点,很多人心里都会悄悄亮起一盏警示灯。 在心理学上,这种现象有一个专门的称谓——“周日夜晚焦虑症(Sunday Scaries)”。明天又是周一,闹钟又要重新在七点响彻卧房;脑海里仿佛有一个…

2026/10/12 0:00:59 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/12 0:16:30 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/12 0:16:38 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/12 0:16:43 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 10:45:37 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:53 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:54 阅读更多 →