ViperEkura
|
4e324d8f26
|
fix: benchmark 改用 PagedCache 替代已删除的 persistent_key_values
|
2026-05-08 21:26:55 +08:00 |
|
ViperEkura
|
6ed0506491
|
fix: 减少调度器延迟 — 移除解码路径 5ms 睡眠,修复 refill 任务丢失 bug
|
2026-05-08 21:13:52 +08:00 |
|
ViperEkura
|
30cc2d67a4
|
refactor: 分页 KV cache 替换固定 slot,删除 PrefixCache 及相关死代码
- 用 PagedCache + CacheView 替换固定 slot 式 KV cache,attention 层只通过 page_table 间接索引
- 删除 PrefixCache(radix tree)及 scheduler 中所有 prefix cache 命中/插入/释放逻辑
- 删除无用函数:pin、version、free_count、_mark_seq_mask 及 seq_mask 分配
- 修复 write 在多页 prefill 时 offset 为负导致 chunk 计算错误
- _make_page_table_tensor 改用 list 拼接一次 tensor,去掉逐元素赋值
- 清理 model 接口参数:kv_cache, slot_indices → paged_cache(CacheView)
- 精简 docstring 为单行,删除冗余 section 注释和旧代码
- 修复 test_scheduler_concurrency.py 缺少 import pytest
|
2026-05-08 20:44:05 +08:00 |
|
ViperEkura
|
7ddebf2cd9
|
refactor: 统一采样路径为 Strategy + batch tensor,删除 apply_sampling_strategies
- TemperatureStrategy / TopKStrategy / TopPStrategy 支持 Union[float, Tensor]
- SamplingPipeline.sample() 一条调用完成 apply + softmax + multinomial
- 新增 sample() 独立函数作为 scheduler 入口
- scheduler decode 改为 batch tensor 参数传递,支持任意 batch size
- 删除 apply_sampling_strategies(被 sample() 取代)
|
2026-05-08 19:07:14 +08:00 |
|
ViperEkura
|
78dc2bd41c
|
docs: 修正文档错误并补充训练参数说明
- README: 补充训练参数速查表,完善训练命令示例
- design.md: 同步 inference 类图(SlotAllocator、GenerationParams、采样策略等
新增类),修正参数名和类型错误,统一泛型符号
- params.md: 修正默认值(batch_size=1、num_workers=4),移除不存在参数
(grpo_*、model_type、resume_dir),补充完整示例
- dataflow.md: _RadixNode 命名修正
|
2026-05-08 18:07:57 +08:00 |
|
ViperEkura
|
44d7a4e959
|
refactor: 设计模式优化 inference 模块导入结构
- 新建 cache.py:SlotAllocator 对象池 + PrefixCacheManager
- 新建 sampling.py:Temperature/TopK/TopP 可组合策略
- TaskStatus 改用 Enum,GenerationParams 值对象模式
- _STOP 移至 cache.py,解除 engine→scheduler 轻量耦合
- 更新测试导入路径,ruff 格式检查通过
|
2026-05-08 16:57:57 +08:00 |
|
ViperEkura
|
c4401512f2
|
fix: 修复长对话截断方向错误,保留最新 token 而非最早
- add_task 中 prompt 超长时改为保留末尾 token(prompt_ids[-max_prompt_len:])
而非开头 token,确保多轮对话时模型能看到最近的提问上下文
|
2026-05-08 15:52:48 +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
|
ffff05b2c6
|
refactor: 替换魔法字符串为_STOP sentinel,修复generator清理逻辑
|
2026-05-06 20:37:16 +08:00 |
|
ViperEkura
|
b89f8436ea
|
refactor: 将KV缓存槽位映射下沉到模型注意力层,移除_remap_kv和_writeback_kv
|
2026-05-06 20:01:22 +08:00 |
|
ViperEkura
|
123f25e339
|
fix: 修复KV缓存槽位索引错位、版本校验缺失与注意力掩码问题,合并预填充方法
|
2026-05-06 19:51:14 +08:00 |
|
ViperEkura
|
520de3ebe8
|
refactor: 重构推理引擎控制逻辑,修复连续批处理核心缺陷
- 修复 decode 阶段新任务覆盖已有任务的严重缺陷
- 修复线程安全问题(热路径无锁竞争)
- 修复前缀缓存引用计数管理不当导致缓存被驱逐
- 修复 pad_id 缺失导致全量 prefill 崩溃
- 修复 RoPE 位置错乱(不同位置任务共用 start_pos)
- 新增 slot 版本追踪实现前缀缓存零拷贝复用
- 新增异步流式生成接口避免阻塞事件循环
- 添加完整英文文档字符串
|
2026-05-06 16:04:06 +08:00 |
|
ViperEkura
|
466c34d7a8
|
ci: 添加 Docker 镜像自动构建工作流
|
2026-04-10 13:09:58 +08:00 |
|
ViperEkura
|
6831a15424
|
docs: 更新镜像构建部分说明
|
2026-04-10 12:59:50 +08:00 |
|
ViperEkura
|
0f9e5c5049
|
build: 修改docker 配置
|
2026-04-10 12:53:08 +08:00 |
|
ViperEkura
|
cb0e7f2a80
|
build: 修改docker 构建流程
|
2026-04-10 11:25:00 +08:00 |
|
ViperEkura
|
296db909aa
|
docs: 更新设计文档
|
2026-04-09 20:05:54 +08:00 |
|
ViperEkura
|
a2ae742988
|
chore: 增加并发测试
|
2026-04-09 18:10:28 +08:00 |
|
ViperEkura
|
29beb174a5
|
fix: 修复删除节点问题
|
2026-04-09 16:58:29 +08:00 |
|
ViperEkura
|
bbeaff4c60
|
refactor: 精简推理引擎代码,优化参数传递规范
|
2026-04-09 14:17:48 +08:00 |
|
ViperEkura
|
ab5e207f42
|
feat: 增加缓存处理
|
2026-04-08 20:54:14 +08:00 |
|
ViperEkura
|
b0eff02446
|
chore: 修改RMSNorm 实现
|
2026-04-06 20:27:01 +08:00 |
|
ViperEkura
|
408f0cb513
|
docs: 更新网络接口文档
|
2026-04-06 13:39:51 +08:00 |
|
ViperEkura
|
64b78ecce3
|
fix: 增加旋转位置编码扩展
|
2026-04-06 13:29:39 +08:00 |
|
ViperEkura
|
f2ffdf60d0
|
chore: 修改错误拼写
|
2026-04-06 10:37:19 +08:00 |
|
ViperEkura
|
ace8f6ee68
|
chore: 优化未使用的模块
|
2026-04-06 09:54:17 +08:00 |
|
ViperEkura
|
a57a16430d
|
fix: 修复tokenizer存储的问题
|
2026-04-06 09:36:29 +08:00 |
|
ViperEkura
|
3fee87897d
|
chore: 修改拼写错误问题
|
2026-04-06 09:28:16 +08:00 |
|
ViperEkura
|
3f67e53088
|
fix: 修复tokenizer 参数问题
|
2026-04-06 09:22:46 +08:00 |
|
ViperEkura
|
bf7adb35b3
|
docs: 更新文档
|
2026-04-06 00:50:37 +08:00 |
|
ViperEkura
|
feaa3fca36
|
ci: 优化 GitHub Actions 工作流
|
2026-04-05 22:40:16 +08:00 |
|
ViperEkura
|
39766aa1dc
|
chore: 修改类名,优化导入顺序
|
2026-04-05 22:27:57 +08:00 |
|
ViperEkura
|
9b22b1651e
|
refactor: 优化工具脚本接口并修复批处理问题
|
2026-04-05 21:56:22 +08:00 |
|
ViperEkura
|
e58dbd7c57
|
chore: 精简实现代码部分
|
2026-04-05 21:16:38 +08:00 |
|
ViperEkura
|
d2fe8afbd1
|
chore: 更新文档, 修正代码格式
|
2026-04-05 20:59:52 +08:00 |
|
ViperEkura
|
23ce4bc3ae
|
fix: 修复异常处理问题
|
2026-04-05 20:44:35 +08:00 |
|
ViperEkura
|
d2b36cc85d
|
fix: 修复特殊token 的问题
|
2026-04-05 20:09:47 +08:00 |
|
ViperEkura
|
fc278d17ab
|
feat: 实现模型动态注册机制
|
2026-04-05 19:38:12 +08:00 |
|
ViperEkura
|
ff43a2fab8
|
docs: 更新设计文档
|
2026-04-05 00:17:35 +08:00 |
|
ViperEkura
|
2b26f03bd3
|
refactor: 拆分engine.py 文件
|
2026-04-05 00:07:21 +08:00 |
|
ViperEkura
|
861d33b1a1
|
refactor: 更新inference 部分的实现
|
2026-04-04 23:49:18 +08:00 |
|
ViperEkura
|
99b821ebf5
|
docs: 更新文档类图等
|
2026-04-04 18:11:36 +08:00 |
|
ViperEkura
|
c94a246c71
|
chore: 重命名目录
|
2026-04-04 17:03:22 +08:00 |
|
ViperEkura
|
2dc9545d7f
|
refactor: 实现 chat template 分派设置
|
2026-04-04 16:56:31 +08:00 |
|
ViperEkura
|
9c31d78a22
|
chore: 将data 模块命名为dataset
|
2026-04-04 16:16:27 +08:00 |
|
ViperEkura
|
bd9741dc5f
|
refactor: 从data 模块分离tokenizer
|
2026-04-04 16:12:58 +08:00 |
|
ViperEkura
|
b531232a9b
|
style: 修改为显式导入
|
2026-04-04 16:02:49 +08:00 |
|
ViperEkura
|
3346c75584
|
feat: 优化工厂模式的实现
|
2026-04-04 15:49:46 +08:00 |
|
ViperEkura
|
aa5e03d7f6
|
fix: 修复工厂模式问题并增加chat-template设置
|
2026-04-04 12:05:05 +08:00 |
|
ViperEkura
|
073baf105c
|
chore: 修复docker配置问题
|
2026-04-04 11:35:14 +08:00 |
|
ViperEkura
|
e97536758f
|
refactor: 优化工厂模式结构
|
2026-04-04 11:33:58 +08:00 |
|
ViperEkura
|
7861af12e4
|
chore: 增加docker 配置
|
2026-04-04 10:59:32 +08:00 |
|
ViperEkura
|
7f0552013a
|
chore: 增加提交检测脚本
|
2026-04-04 10:43:24 +08:00 |
|
ViperEkura
|
3535de5cc4
|
fix: 同步device 和 dtype
|
2026-04-04 10:25:39 +08:00 |
|
ViperEkura
|
26989e54aa
|
feat: 优化server 部分设置
|
2026-04-04 01:41:01 +08:00 |
|
ViperEkura
|
70d52935f0
|
fix: 修复参数问题
|
2026-04-03 23:34:21 +08:00 |
|
ViperEkura
|
c0e0e6afd9
|
docs: 更新文档
|
2026-04-03 22:11:19 +08:00 |
|
ViperEkura
|
0852b852f8
|
refactor: 优化参数传递,清理导入样式
|
2026-04-03 22:06:32 +08:00 |
|
ViperEkura
|
3a7d98a950
|
fix: 修复测试部分导入问题
|
2026-04-03 15:01:39 +08:00 |
|
ViperEkura
|
c5560740b6
|
refactor: 修改分词器部分结构, 更新特殊token等
|
2026-04-03 14:52:35 +08:00 |
|
ViperEkura
|
94c6a015c8
|
chore: 更新ignore
|
2026-04-03 14:31:05 +08:00 |
|
ViperEkura
|
8b6509b305
|
docs: 更新 design.md 项目结构和模块文档
|
2026-04-02 20:11:19 +08:00 |
|
ViperEkura
|
912d7c7f54
|
chore: 更新脚本并且修改gitignore
|
2026-04-02 15:40:31 +08:00 |
|
ViperEkura
|
475de51c7d
|
feat: 增加server, 并且修改测试单元
|
2026-04-02 15:05:07 +08:00 |
|
ViperEkura
|
9f1561afe7
|
reafactor: 修改ModelParameter
|
2026-03-31 16:00:55 +08:00 |
|
ViperEkura
|
e7721eafc6
|
docs: 更新说明内容
|
2026-03-31 15:18:49 +08:00 |
|
ViperEkura
|
4ead0a20cf
|
chore: 修改文件夹结构
|
2026-03-31 10:14:08 +08:00 |
|
ViperEkura
|
b1527d9575
|
docs: 优化文档结构并添加 GitHub 模板
|
2026-03-31 10:00:49 +08:00 |
|
ViperEkura
|
2e009cf59a
|
chore: 更新项目名称
|
2026-03-31 09:34:11 +08:00 |
|
ViperEkura
|
780b9e1855
|
fix: 修复参数传递问题
|
2026-03-31 01:23:29 +08:00 |
|
ViperEkura
|
aef7615abd
|
docs: 更新README
|
2026-03-31 00:50:01 +08:00 |
|
ViperEkura
|
50488bd659
|
chore: 简化格式并更新文档
|
2026-03-31 00:28:58 +08:00 |
|
ViperEkura
|
eb57e55fca
|
chore: 更新计算顺序
|
2026-03-30 23:35:22 +08:00 |
|
ViperEkura
|
426af2d75f
|
style: 使用ruff 工具优化代码风格
|
2026-03-30 23:32:28 +08:00 |
|
ViperEkura
|
345fd2f091
|
fix: 修复参数传递问题
|
2026-03-30 22:22:36 +08:00 |
|
ViperEkura
|
e1f9901384
|
build: 更新设置
|
2026-03-30 21:44:50 +08:00 |
|
ViperEkura
|
0e7fc623b4
|
fix: 修复部分已知问题
|
2026-03-30 21:42:00 +08:00 |
|
ViperEkura
|
3e33c14376
|
reafactor: 统一并增强项目中的工厂模式实现
|
2026-03-30 01:33:14 +08:00 |
|
ViperEkura
|
60f4df95bd
|
fix: 修复一些已知问题
|
2026-03-30 01:08:19 +08:00 |
|
ViperEkura
|
c01791ff54
|
feat: 增加推理部分工厂模式
|
2026-03-30 00:55:15 +08:00 |
|
ViperEkura
|
980299cd54
|
fix: 修复参数传递问题
|
2026-03-20 21:54:13 +08:00 |
|
ViperEkura
|
3e8f2eba81
|
fix: 修复路径问题
|
2026-03-20 21:14:02 +08:00 |
|
ViperEkura
|
361cdeb296
|
chore: 修改策略命名
|
2026-03-19 23:08:41 +08:00 |
|
ViperEkura
|
50f76cd7c7
|
refactor: 重构数据模块中的数据集类命名和文件结构
|
2026-03-19 22:37:32 +08:00 |
|
ViperEkura
|
0f518473af
|
fix: 修复强化学习算法问题
|
2026-03-19 22:23:51 +08:00 |
|
ViperEkura
|
a5574f92e2
|
feat: 初步实现grpo 算法逻辑
|
2026-03-19 20:56:53 +08:00 |
|
ViperEkura
|
abcedf892e
|
feat: 增加 MLA 模块
|
2026-03-18 16:41:46 +08:00 |
|
ViperEkura
|
abc3a06266
|
chore: 增加ppl计算工具并优化代码格式
|
2026-03-18 16:16:02 +08:00 |
|
ViperEkura
|
62fba9a298
|
refactor: 优化接口设置, 去除冗余代码
|
2026-03-18 15:07:35 +08:00 |
|
ViperEkura
|
e23a5ca426
|
fix: 修复metric 保存时机的问题
|
2026-03-16 20:07:36 +08:00 |
|
ViperEkura
|
e55b57d771
|
fix: 修复梯度平均问题
|
2026-03-13 23:00:26 +08:00 |
|
ViperEkura
|
c4feab96fe
|
fix: 统一state_dict 处理方式
|
2026-03-13 22:41:56 +08:00 |
|
ViperEkura
|
e35cb0d84a
|
feat: 增加 label smoothing 设置
|
2026-03-13 22:37:27 +08:00 |
|
ViperEkura
|
6d6ef6dbb6
|
refactor: 修改project logo
|
2026-03-06 12:15:49 +08:00 |
|
ViperEkura
|
493fe4e84b
|
feat: 增加 label smothing
|
2026-03-06 11:41:14 +08:00 |
|
ViperEkura
|
82d22c5742
|
fix: 修复callback 时机不一致的问题
|
2026-03-06 10:51:22 +08:00 |
|
ViperEkura
|
96744ac2d2
|
refactor: 修改metric_util.py
|
2026-03-06 10:33:44 +08:00 |
|
ViperEkura
|
2331713fde
|
refactor: 修改训练脚本
|
2026-03-05 14:40:26 +08:00 |
|
ViperEkura
|
c74fbf84b7
|
build: 增加h5py 版本号
|
2026-03-04 21:29:37 +08:00 |
|
ViperEkura
|
5a8c442315
|
docs: 修改 README
|
2026-03-04 20:51:09 +08:00 |
|