大模型微调实战指南:从LoRA选型到数据准备与效果验收

模型给自己的回答总是四平八稳,业务上却总差着一口气。你要它按企业内部流程输出,它给你一篇放之四海皆准的通用文案;你要它从一堆工单里提取关键信息,它宁可跟你绕圈子也不肯直接给结论——这就是为什么我一直建议身边搞技术的朋友,别只在提示词层面想办法,真正该学的是大模型微调。

大模型微调这件事,听起来门槛很高,其实拆开了就是一套固定的动作:准备数据、选对方法、启动训练、验收效果。这篇文章我就按自己实际跑项目的顺序,把从原理到实操的完整链路写清楚,尽量不堆术语,让第一次接触微调的读者也能照着做。内容围绕“开源基座模型 + 参数高效微调”这条主线展开,适合想快速在自己的业务里落地模型能力的程序员。

1. 为什么开源大模型还要自己动手微调:先搞清楚边界在哪里

很多人上来就问“微调要用什么框架”,我反而想先聊一个更基础的问题:你到底需不需要微调。这个判断做错了,后面再努力都是在给错误方向加速。

1.1 基座模型与业务需求的“最后一公里”

基座模型本身是个“通才”,它知道大量通用知识,也能把句子写通顺,但不了解你业务里的行话、格式、规则和隐藏逻辑。拿客服场景举例,通用模型回复客户永远彬彬有礼,但公司的客服标准要求先道歉、再给解决方案、最后留工单号,这个流程是写在内部手册里的,模型没读过,就不可能每次都照做。

微调的本质,就是拿一批“符合你业务期望的输入-输出样例”,让模型在这批样例上继续训练,从而调整它的行为习惯。它不是灌输全新的知识,而是让模型学会“在这个场景里应该这么干活”。这也是微调和提示词工程最大的区别:提示词是每次请求都临时叮嘱一下,微调是把规矩直接刻进模型的参数里。

1.2 微调与日常工程的差别:不只是调参,而是改变模型行为

做普通开发时,我们写代码、修bug、上线,逻辑链路是本身确定的。微调不一样,你面对的是一个已经训练好的庞大模型,你没办法也没必要重头训练它,你要做的是在它已有能力的基础之上“校准方向”。

这里有个很实在的判断标准:如果同样效果靠提示词、少样本示例或者检索增强就能达到,就不要微调。微调要花时间、花算力,还带来模型管理成本。我见过不少团队,明明数据里就那几个固定模板,非要去微调一个几十亿参数的模型,最后效果还不如在提示里写三条few-shot示例。

1.3 什么时候应该坚定地选择微调

反过来也有几种情况,提示词是真的搞不定的。第一种,输出格式必须强约束,比如让模型从非结构化文本里抽取字段并转成固定JSON结构,提示词写再细也会偶发偏离,而微调后这种偏离能降到很低。第二种,业务术语冷门且成体系,比如特定行业内的编码规则、产品代号,通用模型根本不认识。第三种,你需要降低每次调用的提示长度和成本,微调后提示词可以缩得很短,模型依然能按业务规则输出。

还有一种常见的隐藏需求是“模仿风格”。比如某个社区的内容审核规则、某个大V的写作口吻,这类东西很难用语言定义,但用几百条样例就能让模型学出感觉,这也是微调非常擅长的场景。

2. 微调前的最后一道知识关:全参、LoRA与QLoRA怎么选

确定要微调之后,接着就要选微调方案。市面上能见到的方案基本分三类:全参微调、低秩适配(通常叫LoRA)以及低秩适配的量化版本(通常叫QLoRA)。名字看起来玄,背后的取舍逻辑其实很朴素:用多少显存,换多少效果。

2.1 全参微调的真相:能改的不只是“性格”,还有“知识”

全参微调就是加载基座模型之后,让所有参数都参与训练。它是最“正统”的微调方式,效果上限最高,知识更新的能力最强,但代价也最大。

一个7B参数规模的模型,以半精度加载就需要至少14GB显存,这还只是“放进去”。训练过程还需要保存梯度、优化器状态,通常在几十GB量级。很多场景下的全参微调需要多卡并行,配置成本直线上升。我不建议第一次上手就选全参,除非你的硬件条件足够好,或者任务确实需要模型学习全新的知识体系。

2.2 LoRA的低秩适配逻辑:为什么能省这么多显存

LoRA的思路非常巧妙:它不直接改动原始权重矩阵,而是在原始权重旁边额外插入两个小的可训练矩阵,用它们的乘积来模拟一个“低秩增量”。训练时只更新这两个小矩阵,原来模型的权重全部冻结。

举个例子可能更好理解。原始矩阵好比一本已经编好的字典,LoRA不重写字典,而是贴了一页便利贴,上面写着“这几个词条请往这个方向微调”。最终你要的是“原始权重加增量”,所以训练完可以把便利贴上的内容合并回字典,也可以单独拿着便利贴到处跑,推理时再动态叠加。

这样可训练参数量通常只有总量的1%上下,显存需求大幅下降。一个7B模型用LoRA方式训练,单张24GB显存的卡就基本能跑,这也是绝大多数个人开发者和中小企业选择它的原因。

2.3 QLoRA与量化态训练:进一步压缩显存

QLoRA是在LoRA基础上再做一步:把原始模型权重压缩到4bit精度后再冻结,只留着LoRA的低秩矩阵保持较高精度去训练。说得直白点,就是给模型穿上压缩衣,训练时只需要一个很小的“工作台”,效果据我实测会和全精度有一定差距,但多数业务场景可接受。

我对QLoRA的建议是:如果显存紧张,比如只有16GB甚至更低的单卡,或者想用一个消费级显卡跑完整个流程,QLoRA是救命级方案。代价是训练速度会慢一些,因为量化权重在计算时要反复做反量化,时间成本高。做选择题的时候记住一个原则:显存够用就别强行上量化,精度损失能省则省。

2.4 三种方案的选型建议

方案可训练参数量显存需求(7B级模型)训练速度效果上限适合场景
全参微调100%多卡或大显存(累计60GB+)较慢最高有充足算力,或需强知识注入
LoRA约1%单卡24GB可起步较快高大部分业务场景首选
QLoRA约1%单卡16GB甚至更低最慢中上显存受限、个人试水

从我自己的项目经历来看,除非是专门做模型底座或者研究型任务,绝大多数实际业务用LoRA就够了。先用LoRA跑通一版,再根据效果瓶颈判断要不要往全参方向靠,这样试错效率最高。

3. 决定微调成败的数据准备:格式、数量与清洗细节

方案定了,就到了整个微调流程里最费时间、也最容易被低估的环节——数据。我可以很直接地说,微调项目的成与败,八成取决于数据,而不是训练参数。模型架构大家用的差不多,参数设置也有成熟的经验区间,唯独数据是每个业务独特的,别人帮不了你。

3.1 数据格式先对齐:指令字段与对话模板

主流微调框架通常接受这样结构的样本:一条“指令”加上一段“输入”,对应一段“期望输出”。举个例子,如果你想训练模型做合同条款的摘要,数据大概是这样的:

{"instruction": "请对以下合同条款进行摘要,保留金额、期限、违约责任三项关键信息", "input": "甲方应于本协议生效之日起十五个工作日内向乙方支付首期服务费人民币十万元整……", "output": "金额:首期服务费10万元,支付期限为协议生效后15个工作日内;违约责任:……"}

如果做的是多轮对话场景,数据往往要按对话模板组织:从系统提示开始,交替拼接用户和助手的消息。这里有个小细节要留意,不同框架的对话模板格式不太一样,甚至不同基座模型的模板也有差异。数据格式没对齐的话,训练时模型学习的输入分布和推断时的输入结构就对不上,效果会打折扣。

3.2 样本数量不是越多越好:从几百条起步

我从第一个微调项目开始就有一个感受:微调数据不在于“量”,而在于“覆盖度和一致性”。一个明确的行业规则、固定输出格式的任务,几百条高质量样本就可以见效;反之,几万条互相矛盾的样本会把模型练成“四不像”。

以文本分类或字段抽取这类单轮指令任务为例,我的经验是最少300到500条起步,覆盖典型场景和常见边界情况。如果做对话风格模仿,建议1000条以上,让模型有足够的机会学到语气。数据再往上加时,收益会明显递减,这时候更应该回去做数据质量检查。

3.3 数据清洗里最容易忽略的三个细节

首先是去重和查冲突。同一个输入对应了不同输出的样本,在训练时会让模型左右摇摆。我用脚本统计过,项目里光这类冲突数据就占8%,清完之后效果肉眼可见地稳定了。

其次是截断问题。基座模型有固定上下文长度,比如1024或2048个token,超出部分在训练时会被直接截掉。如果输出刚好被截断,模型就等于在学习一段不完整的句子。整理数据时务必检查超长样本,要么截断前先确认关键信息都在,要么干脆拆分成多条样本。

还有一个隐蔽陷阱是“答案藏在输入里”。如果输出里有直接从输入复制过来的实体,没关系;但如果你把期望的推理过程写得太直白,模型会学会“抄原文”而不是“学推理”。训练集里的输出要确保是模型需要自己生成的,而不是喂到嘴边的东西。

3.4 数据增强与配比思路

当高质量数据不够时,可以做数据增强,但不要无脑改写。我自己常用两种方法:一是基于现有样本做同义替换,把输入里的关键实体换掉,保留结构,相当于扩充覆盖面;二是用强提示词从大模型生成一批候选数据,再人工抽查修正。自动生成的数据必须人工过一遍,否则错误模式会被放大十倍。

配比方面有个经验:如果业务既要有指令遵循能力,又要保持通用对话能力,可以在训练数据里掺入一部分通用指令数据,比例大约在10%到20%,能有效缓解“专精后变呆”的问题,这一点在后面的排错章节还会讲到。

4. 从零跑通一次微调的完整路径:从显存估算到训练启动

接下来进入实操。我按最推荐给新手使用的方案来描述,也就是“开源基座模型 + LoRA方式 + 常见训练脚本”,这套组合硬件门槛低、调试方便、踩坑有大量经验可参考。

4.1 先算显存账:7B规模模型到底要多大GPU

选型框架时别只看功能,先做算力评估。以7B参数量的模型为例,做LoRA微调时模型权重本身占一半,也就是大约14GB半精度显存,加上LoRA新增参数、梯度和优化器,整体开销会在20GB上下波动。所以结论很直接:单张24GB显存的卡是舒适区,16GB会偏紧,需要配合梯度累积把有效批量做上去。

如果你的卡只有16GB,有两个处理方向。一是把基座模型以4bit量化加载,内存占用会降到6GB左右,给LoRA训练留出充足空间,这是在消费级显卡上跑训练的主要手段。二是降低序列长度,训练时把输入输出裁剪得更短,显存占用是线性下降的。预算允许的话,我还是建议大家至少拿24GB显存起步,省下的调试时间远超硬件差价。

4.2 环境准备与模型准备的关键动作

环境方面,核心依赖几乎都是那几个常见组件:训练框架、上下文化组件、优化相关库。安装时注意一点,PyTorch版本和CUDA版本必须匹配,否则在模型加载阶段就会出错。我的习惯是先建一个独立的Python环境,再逐个安装依赖,避免污染机器上的其他项目。

模型准备这一步,很多新手会忽略。从模型仓库下载下来的基座模型,要确认两点:第一,文件是否完整,至少有配置文件、权重文件和词表文件;第二,本地缓存路径不要有中文或空格,否则个别组件读取会异常。定好路径之后,把模型在本地加载一次,能正常跑通一条推理才继续下一步,这个习惯能帮你节省大量排查时间。

4.3 训练启动时的关键参数解读

训练脚本里的参数,看来看去其实就三类:数据从哪里读、模型往哪里存、训练过程怎么控。下面这份是我常用的参数骨架:

python train.py \ --model_path /data/pretrained/base_model \ --train_data /data/train.jsonl \ --val_data /data/val.jsonl \ --output_dir /data/output/finetuned_model \ --lora_rank 8 \ --learning_rate 2e-5 \ --num_epochs 3 \ --max_length 1024 \ --batch_size 4 \ --accumulation_steps 8

这里每个参数我都建议先“理解再使用”。learning_rate在最开始的LoRA训练里设成2e-5到5e-5之间是安全区间,太大会导致loss震荡甚至飞掉。batch_size受显存约束,如果单卡放不下太大批量,就靠accumulation_steps做梯度累积,相当于攒几个小批量再更新一次参数。lora_rank是低秩矩阵的维度,8到16够用,再大只是增加训练成本,效果提升不明显。

4.4 训练过程中的观察点:loss收敛信号

训练开始后,盯住loss曲线是最重要的事。正常情况下loss应该在前几百步快速下降,然后进入缓慢下降区;验证集的loss则不应该和训练loss背离太多。

我在实际项目里遇到过这种状况:训练loss一路降到1.0以下,验证集的生成质量却越来越差,这说明训练已经过拟合到“背答案”的程度。如果发现验证loss已经开始回升或者持平很久,就应当停止训练,不要为了凑epoch数继续烧卡。很多框架都支持在训练过程中留检查点,我一般会按epoch保存一份,后面评估的时候用来对比不同阶段的模型能力。

5. 微调结果该怎么验收:评估指标、badcase分析与参数修正

模型训练完不是终点,而是新一轮循环的起点。缺了系统验收这一步,你根本不知道这版模型是“变好了”还是“只是变了”。

5.1 不要迷信loss:训练损失低不等于效果好

loss只能反映模型在训练集上的拟合程度,不能反映它在真实场景的表现。我见过一个项目,训练loss非常漂亮,样例里每个字段都抽取对了,但拿一条线上真实数据一测,立刻打得乱七八糟。原因就在于训练数据里的输入格式太规整,跟真实用户输入差别太大。

所以验收必须建立在独立的评估集上。创建评估集时注意几点:第一,不要从训练数据里挖几条出来当验证,这等于开卷考试;第二,评估集要覆盖正常情况、边界情况和异常情况,比如空输入、超长输入、带错别字的输入;第三,尽量按业务真实分布去采样,而不是自己臆想几种完美的输入。

5.2 建立微调后的评估框架,从几个维度打分

对生成类任务,我习惯把评估分成三个维度。第一维度是格式正确率,看输出是否符合约定的JSON结构或模板要求,这决定功能能不能跑通。第二维度是内容准确率,把关键字段或关键内容抽出来人工或规则对比,看是不是正确。第三维度是越界行为,比如模型是否回答了不该回答的、是否擅自改变了输出风格,这类问题最容易在微调里悄悄出现。

针对每个维度做一个打分表,每轮跑50到100条评估样本,对比旧版本和新版本的得分。这比随机看十几条生成结果可靠得多。把评估脚本做成固定命令,训练完一键执行,有效提升迭代速度。

5.3 案例:badcase驱动的一轮参数修正

我自己做过一个律所类案卷摘要项目,第一版微调出来格式达标了,但明显“太啰嗦”,每一条摘要都像在复述原文。看badcase的时候发现,期望输出里保留了太多细节,导致模型学到的是“尽可能多抄”,而不是“提取要点”。

修正动作分了两步:先把训练数据里过长摘要全部重写,让输出更凝练;然后把max_length从原来的1500降到800,训练时让模型适应更短的输出空间。重训一轮之后,摘要长度明显收敛,人工评估的准确率提升了近两成。这个例子说明,很多时候效果问题不是出在参数,而是出在数据里的输出风格定义。

5.4 权重保存与合并发布

LoRA训练完,默认输出的是增量权重,也就是那两张“便利贴”。推理时有两种用法:一种是临时加载增量权重叠加到基座模型上,适合快速试验;另一种是把增量权重合并进原始模型,生成一份完整的可部署权重,适合发布上线。

合并权重这一步,本质上就是把基座模型的参数加上增量矩阵,计算得到新的完整权重文件。合并后务必做推理冒烟测试,因为个别量化训练方案合并后会因为精度对齐问题出现轻微效果损失,提前发现问题比上线后被用户发现要好得多。

6. 真实训练中踩过的坑与性能调优记录

最后这部分,我想把项目里反复踩过的坑集中列一下。这些内容很难在框架文档里学到,都是在一次次“为什么这里崩了”的过程中攒出来的。

6.1 OOM与batch size的拉锯战

显存溢出可能是新手遇到最多的问题了。报错信息通常很醒目,就是CUDA out of memory。我的处理顺序是:先砍max_length,再砍batch_size,最后考虑换量化方案。很多新手一上来就动batch_size,但真实情况是长文本才是显存大户,把1024的长度砍到512,显存占用能直接降四成。

砍参数之后如果还想保住有效批量,用梯度累积找补。比如原来batch_size为8,显存只够放2条样本,那就设batch_size为2、累积步数为4,数学上等价于一次更新8条样本的梯度。这么操作之后训练质量基本不损失,只是多花一点时间。

6.2 灾难性遗忘与通用能力的保存

微调之后,模型在目标任务上变强了,但可能“忘记”它原来会的东西,比如普通的问答能力变差、语言风格变机械。这也是“专精后变呆”问题,本质上因为训练数据太单一,模型被往一个方向使劲拉。

我的应对办法是混入通用数据。在业务数据之外,按一定比例掺入通用指令数据,比例大概10%到20%,让模型在学业务的同时还能保留通用对话能力。还有一种更简单的办法:控制训练轮数,不要盲目多跑epoch,很多遗忘发生在第3轮之后。每训练完一轮就在评估集上做一次通用能力抽查,发现有退化趋势就及时停。

6.3 学习率与过拟合的微妙关系

学习率设太大,loss会像心电图一样起伏不定;设太小,训练半天loss变化像乌龟爬。我做过的几次调参经历里,最适合新手的判断方式是:先跑一个100步左右的小实验,看loss下降速度是不是“平滑且够快”,如果200步内loss几乎不动,把学习率调大3倍再试。

如果loss降得很快、但验证集效果停滞,学习率可能偏大;反过来如果loss下降慢、但验证集一直在慢慢变好,可以考虑把它维持住跑完全程。我建议每次只调一个参数,改完记录结果,不要同时动学习率和训练轮数,否则你永远不知道是哪步起了作用。

6.4 我给新手的调试节奏建议

如果你第一次上手,我的建议是不要直接拿全部数据训练。先取200到300条数据,用最小的训练配置跑通全流程,包括数据加载、训练、保存、评估,确认每个环节都没有问题,再扩大到全量数据。这个“小步快跑”的方式看起来很笨,但能避开大量“训练到一半发现数据格式错误”的返工。

训练过程中养成记录的习惯也很有价值。每次训练的参数、数据量、评估结果都记在一张表里,后面复盘时能一眼看出哪个版本的模型值得保留。项目做久了你会发现,微调是个工程问题,不是技术表演,稳定可复现比一次惊艳更重要。

我个人做微调项目到现在,最大的体会是:真正花时间的不是训练那几十分钟,而是数据整理和效果验收。数据干净、评估清晰,哪怕参数只用默认配置,结果也差不到哪去;反之数据脏乱,再精妙的调参也救不回来。所以如果你正准备动手,我的建议很简单,先把数据当作第一优先级来打磨,然后再去研究训练脚本里的每一个参数——这个顺序能让你少走很多弯路。

相关新闻

STM32F1移植SSD1306 OLED驱动:IIC模拟时序与避坑指南

STM32F1移植SSD1306 OLED驱动:IIC模拟时序与避坑指南

简介:一套适配 STM32F1 微控制器、基于 IIC 接口的 OLED 显示驱动源码,采用 HAL 库编写,可直接集成到现有工程中。它重点解决屏幕初始化、清屏、命令与数据发送以及中文显示等常见需求,适合刚接触嵌入式显示或希望省去底层寄存器配…

2026/10/19 17:10:34 阅读更多 →
基于深度学习的智慧识花系统:图像分类到Web部署完整实战

基于深度学习的智慧识花系统:图像分类到Web部署完整实战

前阵子有同学拿着“基于深度学习的智慧识花系统”这个题目来找我,说课程设计要交源码、万字报告,还要准备讲解。我接过题目第一反应是:这项目看着不起眼,实际上把计算机视觉里图像分类的整条链路都串起来了——数据集怎么搭、模型…

2026/10/19 17:10:34 阅读更多 →
开源大模型本地部署实战:从硬件选型到企业私有化落地

开源大模型本地部署实战:从硬件选型到企业私有化落地

自从ChatGPT把大模型这个概念彻底带出圈之后,我身边越来越多朋友开始问同一个问题:我也想用AI,但每个月交订阅费有点心疼,数据还全在人家服务器上,有没有别的路子?有,而且这条路这几年越走越宽—…

2026/10/19 17:10:34 阅读更多 →

最新新闻

PowerToys v0.97.0实测:窗口管理与快捷启动的效率指南

PowerToys v0.97.0实测:窗口管理与快捷启动的效率指南

说实话,我挺理解那些在Windows上折腾窗口管理的人。你可能跟我一样,桌面一多开几个应用,就开始在屏幕前手动拖拽,好不容易对齐了,换个显示器分辨率又全乱套。后来又去装各种窗口管理软件,要么收费&#xff…

2026/10/19 17:52:02 阅读更多 →
黑客攻击的7种常见手法:从原理到防御的完整指南

黑客攻击的7种常见手法:从原理到防御的完整指南

1. 先从一件小事说起:为什么你总觉得黑客离你很远,又很近做安全攻防这些年,被问最多的一句话,既不是某个新漏洞的技术细节,也不是某个安全产品的配置方法,而是特别朴素的一句:黑客到底是怎么打进…

2026/10/19 17:52:02 阅读更多 →
artcraft从创意到成品:手工创作全流程与工具材料选择指南

artcraft从创意到成品:手工创作全流程与工具材料选择指南

1. 从“artcraft”这个名字说起:它到底想解决什么问题第一次看到“artcraft”这个词,我脑子里蹦出来的第一反应是“艺术”加“手艺”的组合。这不是一个随便拼出来的名字,它背后指向的是一类非常具体的东西——把创意想法变成看得见摸得着的实…

2026/10/19 17:52:02 阅读更多 →
具身智能人形机器人从舞台到量产:核心技术栈与工程实现解析

具身智能人形机器人从舞台到量产:核心技术栈与工程实现解析

前阵子朋友圈刷到一条消息,说的是某家做人形机器人的创业团队上了台大型晚会的现场展示,还放风说正在把商业融资节奏往前推、为冲击公开资本市场做准备。底下评论五花八门,有说“这赛道终于要起飞了”的,也有说“又是PPT造机器人”…

2026/10/19 17:52:02 阅读更多 →
AI辅助教材写作全攻略:从原创内容到低重复率

AI辅助教材写作全攻略:从原创内容到低重复率

一提起“低查重AI教材写作”,很多人第一反应是“又有人教人钻空子了”。我在出版和内容策划这行做了快十年,类似的询问接了不少。但我要先泼一盆冷水:如果你的目标只是把重复率压下去,那你大概率写不出能用的教材。真正的好教材&a…

2026/10/19 17:52:02 阅读更多 →
研究生论文写作效率提升:8个亲测好用的AI辅助工具

研究生论文写作效率提升:8个亲测好用的AI辅助工具

我读研究生那几年,论文写作占掉了差不多三分之二的精力。最折磨人的不是“想不出写什么”,而是大量时间耗在重复劳动里:文献翻了半天找不到一句合适的话、段落写完读着像白开水、参考文献格式改到半夜、最后降重又降得面目全非。后来我把市面…

2026/10/19 17:51:01 阅读更多 →

日新闻

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

简介:本资源为电源技术方向的学术研究文档,聚焦介质阻挡放电型臭氧发生器电源的频率跟踪型PWM控制策略,面向电力电子、高压电源及臭氧应用领域的科研人员与工程技术人员。针对负载呈容性、等效电容随外加电压升高而增大、谐振频率随之漂移的难…

2026/10/19 0:00:47 阅读更多 →
Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

Vibe Coding 遇上 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/19 0:00:47 阅读更多 →
HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

【免费下载链接】HundredCV-Chat 项目地址: https://ai.gitcode.com/hf_mirrors/Jax-dan/HundredCV-Chat 点击查看 免费下载 HundredCV-Chat 是一个由 100 位青年简历数据开发而来的中文多轮对话数据集,共包含 24,750 组日常闲聊对话和 4,871 个话题标签…

2026/10/19 0:00:47 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/19 10:02:04 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/19 17:32:41 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/19 1:30:52 阅读更多 →

月新闻

我发现了一个新思路:用 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/19 2:54:50 阅读更多 →
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/19 9:10:22 阅读更多 →
黑夜航拍船只数据集训练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/18 12:16:16 阅读更多 →