无双的个人博客

无双的个人博客

LoRA多卡训练梯度累积失效:有效batch size远小于预期导致模型收敛异常

设了gradient_accumulation_steps=8,理论有效batch=32,结果每个step的loss降得像火箭一样快,还以为学习率太高。排查了两天才发现DeepSpeed的配置覆盖问题,实际有效batch只有1。

vLLM推理OOM排查记:不是显存不够,是你没搞清楚max_length和batch_size的坑

70B模型配了4张80G卡,长文本一推就爆。查了一圈发现不是显存容量问题,是max_length设太大,kv cache按最坏情况预分配显存。上线前没做profiling,差点多花20万买卡。

LoRA微调时梯度消失导致训练无效:从日志异常到optimizer状态分析

loss明明在降,验证集指标却一动不动。查了半天发现只有少数几层LoRA权重在更新,其他层梯度几乎为零。这个坑花了我两天才定位清楚,分享下排查思路和具体操作。

LoRA微调实战:使用QLoRA在单卡GPU上微调70亿参数大模型

朋友想在单张4090上微调7B模型做客服,我一开始觉得不可能。按项目交付手册走,从业务场景、数据清洗到上线评估,踩了一堆坑,最后用QLoRA搞定了。这里分享下完整的交付过程和可运行的脚本。

微调数据准备的坑:从原始文本到训练数据集的完整流水线

技术同事电话打过来,说微调后的模型输出全是乱码。我一看,训练数据格式错了,差点没把自己绕进去。这篇文章记录了我从原始文档到训练数据集的完整流水线,包括数据清洗、标注、质量检查的坑,还有可复用的代码。

FreeSWITCH 双向实时语音流模块:支持 AI 对话打断的完整语音链路方案

本文介绍了一款面向 FreeSWITCH 场景的双向实时语音流模块,支持音频实时推流与回注,兼容 WebSocket(ws/wss)协议,适用于 ASR、TTS 及大模型语音交互系统集成。模块具备低延迟 PCM 主链路、播放打断(interrupt_play)、状态回传及断线重连等能力,可实现“用户插话即打断机器人”的自然语音交互效果。该模块适用于电话机器人、智能外呼、语音客服及呼叫中心语音中台建设,支持高并发生产环境部署,并提供标准化交付与定制开发能力,帮助企业快速落地 AI 语音应用。

使用Ansible自动化H3C防火墙安全策略部署:实现零接触配置

本文复盘一起因Ansible自动化部署H3C防火墙安全策略导致的网络中断事件。我们从业务场景出发,详细记录故障现象、时间线、日志片段和止损动作,并补充数据说明、调用方式和Ansible playbook示例,提供验证方法和常见坑点,帮助网络工程师避免类似故障,提升自动化配置的可靠性和安全性。