Skip to content

Conversation

@Amoshen
Copy link

@Amoshen Amoshen commented Dec 10, 2025

1. 参数配置扩展 (arguments.py)

  • 新增LoRA相关参数:

    • use_lora: 是否启用LoRA训练
    • lora_r: LoRA秩,默认8
    • lora_alpha: LoRA缩放因子,默认16
    • lora_dropout: dropout率,默认0.05
    • lora_target_modules: 目标模块,默认"q_proj"

2. 配置文件更新 (configs/config.json)

  • 添加LoRA配置示例:

    • 启用LoRA训练 (use_lora: true)
    • 设置更大的秩和alpha值 (r=16, alpha=32)
    • 指定多个目标模块 ("q_proj,v_proj,o_proj")

3. 模型集成 (model.py)

  • 新增PEFT库导入:from peft import LoraConfig, get_peft_model, TaskType

  • F2LLM类中添加_apply_lora()方法:

    • 支持"all-linear"模式自动选择所有线性层
    • 支持自定义目标模块列表
    • 配置LoRA参数并应用到模型
    • 使用FEATURE_EXTRACTION任务类型适配embedding模型

4. 依赖更新 (requirements.txt)

  • 新增PEFT库依赖:peft

5. 训练流程优化 (run.py)

  • 修复gradient checkpointing的兼容性问题

  • 优化参数选择逻辑:

    • LoRA模式下只优化可训练参数
    • 打印可训练参数数量信息
    • 保持向后兼容性

@Amoshen
Copy link
Author

Amoshen commented Dec 10, 2025

#7

1 similar comment
@Amoshen
Copy link
Author

Amoshen commented Dec 10, 2025

#7

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant