当前位置:   article > 正文

LLama Factory 实操记录(一)_llama-factory dpo

llama-factory dpo

1. api端口参数说明: src/api

  1. -h, --help            显示帮助信息并退出
  2. --model_name_or_path MODEL_NAME_OR_PATH
  3.                       模型权重的路径或标识符,来自 huggingface.co/models 或 modelscope.cn/models。 (默认: None)
  4. --adapter_name_or_path ADAPTER_NAME_OR_PATH
  5.                       适配器权重的路径或标识符,来自 huggingface.co/models。 (默认: None)
  6. --cache_dir CACHE_DIR
  7.                       存储从 huggingface.co 或 modelscope.cn 下载的预训练模型的位置。 (默认: None)
  8. --use_fast_tokenizer [USE_FAST_TOKENIZER]
  9.                       是否使用基于 tokenizers 库支持的快速分词器。 (默认: True)
  10. --no_use_fast_tokenizer
  11.                       是否使用基于 tokenizers 库支持的快速分词器。 (默认: False)
  12. --split_special_tokens [SPLIT_SPECIAL_TOKENS]
  13.                       是否在标记化过程中拆分特殊标记。 (默认: False)
  14. --model_revision MODEL_REVISION
  15.                       要使用的特定模型版本(可以是分支名称、标签名称或提交 ID)。 (默认: main)
  16. --quantization_bit QUANTIZATION_BIT
  17.                       量化模型所需的位数。 (默认: None)
  18. --quantization_type {fp4,nf4}
  19.                       在 int4 训练中使用的量化数据类型。 (默认: nf4)
  20. --double_quantization [DOUBLE_QUANTIZATION]
  21.                       是否在 int4 训练中使用双重量化。 (默认: True)
  22. --no_double_quantization
  23.                       是否在 int4 训练中使用双重量化。 (默认: False)
  24. --rope_scaling {linear,dynamic}
  25.                       采用缩放的旋转位置嵌入。 (默认: None)
  26. --flash_attn [FLASH_ATTN]
  27.                       启用 FlashAttention-2 以加速训练。 (默认: False)
  28. --shift_attn [SHIFT_ATTN]
  29.                       启用由 LongLoRA 提出的 Shift Short Attention(S^2-Attn)。 (默认: False)
  30. --hf_hub_token HF_HUB_TOKEN
  31.                       用于登录 Hugging Face Hub 的身份验证令牌。 (默认: None)
  32. --ms_hub_token MS_HUB_TOKEN
  33.                       用于登录 ModelScope Hub 的身份验证令牌。 (默认: None)
  34. --template TEMPLATE   用于构建训练和推断提示的模板。 (默认: None)
  35. --dataset DATASET     要使用的提供的数据集名称。使用逗号分隔多个数据集。 (默认: None)
  36. --dataset_dir DATASET_DIR
  37.                       包含数据集的文件夹路径。 (默认: data)
  38. --split SPLIT         用于训练和评估的数据集拆分。 (默认: train)
  39. --cutoff_len CUTOFF_LEN
  40.                       标记化后模型输入的最大长度。 (默认: 1024)
  41. --reserved_label_len RESERVED_LABEL_LEN
  42.                       标记化后为标签保留的最大长度。 (默认: 1)
  43. --train_on_prompt [TRAIN_ON_PROMPT]
  44.                       是否在提示上禁用掩码。 (默认: False)
  45. --streaming [STREAMING]
  46.                       启用数据集流式处理。 (默认: False)
  47. --buffer_size BUFFER_SIZE
  48.                       在数据集流式处理中用于随机抽样的缓冲区大小。 (默认: 16384)
  49. --mix_strategy {concat,interleave_under,interleave_over}
  50.                       数据集混合策略(连接/交错)(欠采样/过采样)。 (默认: concat)
  51. --interleave_probs INTERLEAVE_PROBS
  52.                       从数据集中抽样数据的概率。使用逗号分隔多个数据集。 (默认: None)
  53. --overwrite_cache [OVERWRITE_CACHE]
  54.                       覆盖缓存的训练和评估集。 (默认: False)
  55. --preprocessing_num_workers PREPROCESSING_NUM_WORKERS
  56.                       用于预处理的进程数。 (默认: None)
  57. --max_samples MAX_SAMPLES
  58.                       用于调试目的,截断每个数据集的示例数。 (默认: None)
  59. --eval_num_beams EVAL_NUM_BEAMS
  60.                       
  61.  用于评估的束搜索数。该参数将传递给 `model.generate`。 (默认: None)
  62. --ignore_pad_token_for_loss [IGNORE_PAD_TOKEN_FOR_LOSS]
  63.                       是否在损失计算中忽略与填充标签相对应的标记。 (默认: True)
  64. --no_ignore_pad_token_for_loss
  65.                       是否在损失计算中忽略与填充标签相对应的标记。 (默认: False)
  66. --val_size VAL_SIZE   开发集的大小,应为整数或范围为 `[0,1)` 的浮点数。 (默认: 0)
  67. --sft_packing [SFT_PACKING]
  68.                       在监督微调阶段对问题和答案进行打包。 (默认: False)
  69. --cache_path CACHE_PATH
  70.                       保存或加载预处理数据集的路径。 (默认: None)
  71. --export_dir EXPORT_DIR
  72.                       保存导出模型的目录路径。 (默认: None)
  73. --export_size EXPORT_SIZE
  74.                       导出模型的文件分片大小(以 GB 为单位)。 (默认: 1)
  75. --export_quantization_bit EXPORT_QUANTIZATION_BIT
  76.                       用于量化导出模型的位数。 (默认: None)
  77. --export_quantization_dataset EXPORT_QUANTIZATION_DATASET
  78.                       用于量化导出模型的数据集路径或数据集名称。 (默认: None)
  79. --export_quantization_nsamples EXPORT_QUANTIZATION_NSAMPLES
  80.                       用于量化的样本数。 (默认: 128)
  81. --export_quantization_maxlen EXPORT_QUANTIZATION_MAXLEN
  82.                       用于量化的模型输入的最大长度。 (默认: 1024)
  83. --dpo_beta DPO_BETA   DPO 损失的 beta 参数。 (默认: 0.1)
  84. --dpo_loss {sigmoid,hinge}
  85.                       要使用的 DPO 损失类型。 (默认: sigmoid)
  86. --dpo_ftx DPO_FTX     DPO 训练中的监督微调损失系数。 (默认: 0)
  87. --ppo_buffer_size PPO_BUFFER_SIZE
  88.                       在 PPO 优化步骤中创建经验缓冲区的小批次数。 (默认: 1)
  89. --ppo_epochs PPO_EPOCHS
  90.                       在 PPO 优化步骤中执行的周期数。 (默认: 4)
  91. --ppo_logger PPO_LOGGER
  92.                       在 PPO 训练中记录日志,使用 "wandb""tensorboard"。 (默认: None)
  93. --ppo_score_norm [PPO_SCORE_NORM]
  94.                       在 PPO 训练中使用分数归一化。 (默认: False)
  95. --ppo_target PPO_TARGET
  96.                       用于自适应 KL 控制的目标 KL 值,在 PPO 训练中。 (默认: 6.0)
  97. --ppo_whiten_rewards [PPO_WHITEN_REWARDS]
  98.                       在 PPO 训练中计算优势之前是否漂白奖励。 (默认: False)
  99. --ref_model REF_MODEL
  100.                       用于 PPO 或 DPO 训练的参考模型路径。 (默认: None)
  101. --ref_model_adapters REF_MODEL_ADAPTERS
  102.                       参考模型的适配器路径。 (默认: None)
  103. --ref_model_quantization_bit REF_MODEL_QUANTIZATION_BIT
  104.                       用于量化参考模型的位数。 (默认: None)
  105. --reward_model REWARD_MODEL
  106.                       用于 PPO 训练的奖励模型路径。 (默认: None)
  107. --reward_model_adapters REWARD_MODEL_ADAPTERS
  108.                       奖励模型的适配器路径。 (默认: None)
  109. --reward_model_quantization_bit REWARD_MODEL_QUANTIZATION_BIT
  110.                       用于量化奖励模型的位数。 (默认: None)
  111. --reward_model_type {lora,full,api}
  112.                       在 PPO 训练中使用的奖励模型类型。LoRA 模型仅支持 LoRA 训练。 (默认: lora)
  113. --additional_target ADDITIONAL_TARGET
  114.                       除 LoRA 层之外要设置为可训练并保存在最终检查点中的模块的名称。 (默认: None)
  115. --lora_alpha LORA_ALPHA
  116.                       LoRA 微调的比例因子(默认为 lora_rank * 2)。 (默认: None)
  117. --lora_dropout LORA_DROPOUT
  118.                       LoRA 微调的 dropout 率。 (默认: 0.1)
  119. --lora_rank LORA_RANK
  120.                       LoRA 微调的内在维度。 (默认: 8)
  121. --lora_target LORA_TARGET
  122.                       要应用 LoRA 的目标模块的名称。使用逗号分隔多个模块。 (默认: None)
  123. --create_new_adapter [CREATE_NEW_ADAPTER]
  124.                       是否创建具有随机初始化权重的新适配器。 (默认: False)
  125. --name_module_trainable NAME_MODULE_TRAINABLE
  126.                       部分参数(冻结)微调的可训练模块的名称。使用逗号分隔多个模块。 (默认: mlp)
  127. --num_layer_trainable NUM_LAYER_TRAINABLE
  128.                       部分参数(冻结)微调的可训练层数。 (默认: 3)
  129. --stage {pt,sft,rm,ppo,dpo}
  130.                       训练中将执行哪个阶段。 (默认: sft)
  131. --finetuning_type {lora,freeze,full}
  132.                       使用哪种微调方法。 (默认: lora)
  133. --upcast_layernorm [UPCAST_LAYERNORM]
  134.                       是否在 fp32 中上升 layernorm 权重。 (默认: False)
  135. --plot_loss [PLOT_LOSS]
  136.                       是否在微调后绘制训练损失。 (默认: False)
  137. --do_sample [DO_SAMPLE]
  138.                       是否使用抽样,否则使用贪婪解码。 (默认: True)
  139. --no_do_sample        是否使用抽样,否则使用贪婪解码。 (默认: False)
  140. --temperature TEMPERATURE
  141.                       用于调整下一个标记概率的值。 (默认: 0.95)
  142. --top_p TOP_P         保留的最概然令牌集,其概率加起来达到 top_p 或更高。 (默认: 0.7)
  143.   --top_k TOP_K         保留的最高概率词汇令牌数量,用于 top-k 过滤。 (默认: 50)
  144.   --num_beams NUM_BEAMS
  145.                         用于波束搜索的波束数量。1 表示不进行波束搜索。 (默认: 1)
  146.   --max_length MAX_LENGTH
  147.                         生成令牌的最大长度。可以被 max_new_tokens 覆盖。 (默认: 512)
  148.   --max_new_tokens MAX_NEW_TOKENS
  149.                         生成的令牌的最大数量,忽略提示中的令牌数量。 (默认: 512)
  150.   --repetition_penalty REPETITION_PENALTY
  151.                         重复惩罚的参数。1.0 表示无惩罚。 (默认: 1.0)
  152.   --length_penalty LENGTH_PENALTY
  153.                         用于基于波束的生成的长度的指数惩罚。 (默认: 1.0)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/430714
推荐阅读
相关标签
  

闽ICP备14008679号