2025-04-30
概览想在自己的仓库里“魔改”PEFT,最常见的套路是:
Clone 官方 peft 源码
在 tuner/ 里新建一个模块目录
用可编辑安装(pip install -e)替换你项目中的 PEFT
按需写 config.py、layer.py、model.py
下面我用 LoRA(低秩适配器)举例,带你一步步梳理如何从零创建一个可复用的 PEFT Module。读不懂的地方我会...
2025-04-27
Steps
Get a pretrained model from Huggingface
Load the model and tokenizer
Prepare the dataset
Prepare the training arguments
Prepare the trainer
Add the model
Train the model
Save the model
Get a p...
LLM Training StagesCurrently the training of Large Language Models (LLMs) can be divided into three stages:
graph LR
A[Pre-training] --> B[Fine-tuning] --> C[Inference]
Pre-trainingPre-training...
Model Quantization量化是一种用来减少模型大小和加速推理的技术。主要是通过把模型权重从较高精度的数据类型如FP32转换为较低精度的数据类型如FP16/INT8来实现的。当然也有更加激进的量化方式,比如把权重量化到INT4,甚至是二值化,BitNet恐怖如斯。
这里可能要注意一下,量化到INT8和FP8是不一样的,INT8是整数,FP8是浮点数,两者的表示范围和精度是不一样的。一般来...
Mermaid Diagram TestThis post demonstrates the mermaid diagram rendering capability in the blog.
Flowchart Exampleflowchart TD
A[Start] --> B{Is it working?}
B -->|Yes| C[Great!]
B -->|No|...
1. GPU ECC(Error‑Correcting Code)
原理:在显存(VRAM)中为每 N 位数据生成冗余校验位,常见为 SECDED(单错纠正、双错检测)。
实现:
专业级卡(Tesla/Quadro/A100、AMD Instinct)默认支持 ECC,消费级卡多关闭或不支持。
ECC 逻辑集成在内存控制器,对程序透明。
优缺点:
优点:避免显存位翻转导致的 S...
2025-04-17
最近看了一篇ICLR的文章,https://openreview.net/forum?id=GdXI5zCoAt,里面提到的一个idea,感觉很有意思,记录一下。
Peft在减少参数方面的几种Principal
Sparse Training: 只训练一部分参数,其余参数保持不变。这样可以减少计算量和内存占用,但需要设计合适的稀疏模式和更新策略。
Low-Rank Training: 将参数矩阵...
括号是一类有趣的问题,主要与有效括号相关,例如:
检查字符串是否是有效括号
在子串中找到最长的有效括号(子串)
在子串中找到最长的有效括号(子序列)
为给定长度生成所有有效括号
…
在深入探讨每个主题之前,让我们定义什么是有效括号。()、()()()()和((((((()))))))(())()。
123456789101112131415161718192021def isValidPare...
限流器是分布式系统中的一个关键组件。通常,我们可以用它来防止DDoS或恶意请求。在这篇文章中,我们将介绍几种可用于限流的算法。
令牌桶令牌桶是一个具有预定义容量的容器。令牌以预设的速率定期放入桶中。一旦桶满了,就不会再添加令牌。如图所示,令牌桶容量为4。填充器每秒向桶中放入2个令牌。一旦桶满了,多余的令牌就会溢出。
令牌桶可以处理突发请求,并且可以确保限制不会超过预设的容量。
漏桶漏桶类似于令...