ViperEkura
|
08dde46778
|
fix: 修复训练循环 step/backward 顺序,重构为三重循环嵌套
- 训练循环改用 itertools.batched 实现 epoch→step→batch 三重嵌套
- on_step_begin 包裹 batch 循环,on_step_end 后接 optimizer.step/scheduler.step
- 修复首次 iteration=0 时 optimizer.step() 在 backward 之前触发的 bug
- GradientClippingCallback 改为 on_step_end(梯度已累积,step 前裁剪)
- SchedulerCallback 移除,schduler.step 由 trainer 在 optimizer.step 后直接调用
- metric_util 提取 _grad_stat 公共 helper,if param.grad: 修正为 is not None
|
2026-05-15 14:44:44 +08:00 |
ViperEkura
|
b98c9cefdc
|
refactor: 移除 device_ids 参数设计,统一通过 CUDA_VISIBLE_DEVICES 控制 GPU 分配;更新 README 训练示例
- setup.py: 移除 device_ids 参数,setup_parallel 直接用 rank 作为设备索引
- train_config.py: 移除 device_ids 字段
- trainer.py: 不再传递 device_ids
- train.py: ddp_wrap 用 get_rank() 直接取值
- README.md, README-zh-CN.md: 训练示例改为多行命令风格,去掉参数表格
|
2026-05-09 14:55:43 +08:00 |
ViperEkura
|
283bcaf2ff
|
fix: 修复 CLI 参数缺失/重复、device_ids 越界、generate 参数名不一致、scheduler 时序、非流式截断等 bug
- train.py: 补上 --batch_size、--grpo_clip_eps,删除 3 处重复 --group_size
- generate.py: --model_dir 改为 --param_path 对齐 README
- automodel.py: from_pretrained 新增 strict 参数(默认 True)
- parallel/setup.py: 修复 device_ids 索引越界
- train_callback.py: scheduler.step() 移至 on_step_end
- test_train_strategy.py: 测试中补 optimizer.step()
- engine.py: 非流式改为循环等待所有任务完成,补 remove_task 清理
- scheduler.py: Task 添加 _pages_freed 标志,杜绝双重释放
- trainer.py: accumulation_steps=0 时 clamp 为 1
- tokenizer.py: save_pretrained 添加 _tokenizer is None 检查
- benchmark.py: 修复 ModelConfig 过时 import 路径
- inference/__init__.py: 修复 stale docstring
|
2026-05-09 14:36:42 +08:00 |
ViperEkura
|
a6f5ff3b37
|
fix: 修复 remove_task 未释放 KV cache slot 导致第二轮对话死锁
- remove_task() 现在释放 KV cache slot 和 prefix cache 引用
- _refill_active_batch 中 alloc 失败时将剩余 task 推回 waiting_queue
- 主循环增加 try/except 异常兜底,发送 _STOP 给所有 task
- 重构:server.py 全局变量改为 ServerState 类;automodel.py
使用 Registry 替代裸 dict;合并 TrainContextBuilder 的 with_*
方法到 build()
|
2026-05-08 14:53:04 +08:00 |
ViperEkura
|
39766aa1dc
|
chore: 修改类名,优化导入顺序
|
2026-04-05 22:27:57 +08:00 |
ViperEkura
|
bd9741dc5f
|
refactor: 从data 模块分离tokenizer
|
2026-04-04 16:12:58 +08:00 |
ViperEkura
|
3346c75584
|
feat: 优化工厂模式的实现
|
2026-04-04 15:49:46 +08:00 |
ViperEkura
|
0852b852f8
|
refactor: 优化参数传递,清理导入样式
|
2026-04-03 22:06:32 +08:00 |
ViperEkura
|
2e009cf59a
|
chore: 更新项目名称
|
2026-03-31 09:34:11 +08:00 |