大模型LLM基于PEFT的LoRA微调详细步骤---第一篇:模型下载篇

模型下载:

HuggingFace官网:https://huggingface.co/  ---- 需要VPN

魔搭社区:https://modelscope.cn/home  ---- 国内映射,不需要VPN

写在篇始:国内关注方法一即可。其余几种都需要VPN,而且在服务器下载的速度有限~~。

下一篇:微调详细流程以及环境...

方法一:魔搭(modelscope)下载

# 需要安装 pip install modelscope
from modelscope import snapshot_download
model_name = '要下载的模型名称'
local_model_dir = '保存的模型路径'
model_dir = snapshot_download(
    model_name, # 要下载的模型名称
    cache_dir=local_model_dir, # 下载到那个目录
    revision='master',
    ignore_file_pattern='.pth',# 配置过滤,不下载“.pth”的原始文件。只下载“.safetensors”的模型文件
)

方法二:huggingface_hub下载 - VPN

# ### pip install huggingface_hub
# 设置环境变量
import os
# 专用多线程下载器 hfd 环境变量
os.environ["HF_ENDPOINT"] = "https://hf-mirror.com"

# 代码下载
from huggingface_hub import hf_hub_download
hf_hub_download(repo_id="amritgupta/qafacteval",filename="README.md",local_dir="./qafacteval")

方法三:使用transformers库下载 

使用 Hugging Face 的 transformers 库,Hugging Face 的 transformers 库可以自动下载和管理这些文件。

只需要指定模型名称或路径即可。

# 需要安装 pip install transformers 
from transformers import AutoModel, AutoTokenizer

# 指定模型名称或路径
model_name = "your-model-name-or-path"

# 自动下载并加载模型和分词器
model = AutoModel.from_pretrained(model_name)
tokenizer = AutoTokenizer.from_pretrained(model_name)

方法四:网页下载 - VPN

base:代表基础模型;

Instruct:代表在基础模型上面已经训练过一次了。

Qwen/Qwen2-VL-2B-Instruct-GPTQ-Int8:其中的int8代表量化等级为8;Instruct代表已经预训练了一次;

文件名

说明

.gitattributes

Git 配置文件,用于管理仓库的文本格式和换行符设置。通常不需要关心。

LICENSE

模型的许可证文件,说明模型的使用限制和权限。

README.md

模型的说明文档,通常包含模型的描述、使用方法、训练信息等。

chat_template.json

聊天模板配置文件,用于定义聊天模型的输入输出格式(如果有的话)。

config.json

模型的主配置文件,包含模型的结构信息(如层数、隐藏层大小等)。

generation_config.json

生成文本时的配置(如最大生成长度、温度参数等)。

merges.txt

分词器的合并规则文件(用于 BPE 分词器,如 GPT 系列模型)。

model-00001-of-00002.safetensors

模型权重文件的分片(第 1 部分)。总共有 2 个分片。

model-00002-of-00002.safetensors

模型权重文件的分片(第 2 部分)。总共有 2 个分片。

model.safetensors.index.json

模型权重分片的索引文件,指示如何加载分片文件。

preprocessor_config.json

预处理器的配置文件(通常用于图像模型,文本模型可能不需要)。

tokenizer.json

分词器的配置文件,包含分词器的规则和设置。

tokenizer_config.json

分词器的额外配置(如特殊 token、填充方式等)。

vocab.json

分词器的词汇表文件,包含所有 token 及其对应的 ID。

除了.gitattributes、README.md、LICENSE其余全下即可 

微调时需要下载哪些文件?

必需文件

模型权重文件

        model-00001-of-00002.safetensors

        model-00002-of-00002.safetensors

        model.safetensors.index.json(用于加载分片文件)

配置文件

        config.json(模型结构配置)

分词器文件

        tokenizer.json 或 tokenizer_config.json(分词器配置)

        vocab.json(词汇表)

        merges.txt(如果使用 BPE 分词器,如 GPT 系列)

生成配置文件(可选):

        generation_config.json(用于文本生成任务)

可选文件 

README.md:了解模型的背景和使用方法。

LICENSE:查看模型的使用限制。

chat_template.json:如果微调的是聊天模型,可能需要这个文件。

总结 

必需文件:模型权重分片(.safetensors)、config.json、分词器文件(tokenizer.json、vocab.json 等)。

可选文件:README.md、LICENSE、generation_config.json 等。

下载方式:使用 transformers 库自动下载,或手动从 Hugging Face 页面下载。

微调代码:使用 Trainer 或自定义训练循环进行微调。

 使用下载的模型

方法一:使用本地模型地址

AutoModelForCausalLM.from_pretrained("/data/gpt2") # 使用本地模型全路径

方法二:仅使用模型名称 --- 系统在VPN的情况下会自动下载

之所以不用写具体路径是因为huggingface工具链会在 .cache/huggingface/ 下维护一份模型的符号链接,无论你是否指定了模型的存储路径 ,缓存目录下都会链接过去,这样可以避免自己忘了自己曾经下过某个模型,此外调用的时候就很方便。
AutoModelForCausalLM.from_pretrained("huggyllama/llama-7b(模型名称)")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值