文件最后提交记录最后更新时间
[Bugfix] 虚推在长序列场景下请求失败挂死 Co-authored-by: Huangzjun<zijunhua@usc.edu> # message auto-generated for no-merge-commit merge: !417 merge fix_0214 into dev [Bugfix] 虚推在长序列场景下请求失败挂死 Created-by: Huangzjun Commit-by: Zijun Huang;Huangzjun Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20251225 --> # 合入背景 长序列场景下系统处于高负载,虚推健康探针持续发送请求。由于所有虚推共用固定的 SIMULATE_SEQUENCE_ID(9223372036854774),虚推请求不断下发一直在等待,从而引发两个问题: C++ 侧:新虚推的 requestId 无法注册到 LiveInferContext,导致超时 STOP 请求找不到目标,abort 失败 Python 侧:fill_dummy() 中使用 np.setdiff1d 去重后得到的 seqId 数量与实际 group 数量不一致,导致 num_top_tokens 维度小于 group_indices,最终在 response_builder.py 中触发 IndexError Fix part of [#229](https://gitcode.com/Ascend/MindIE-LLM/issues/229) # 修改内容 1:src/sequence/live_infer_context.cpp — Add(): 当虚推 seqId 冲突时,不再整体拒绝请求,而是只注册 requestId 映射。旧虚推继续保留 seqId 所有权,清理时仍能正确移除 seqId 映射,新虚推的 requestId 被成功注册,STOP 请求可以通过 requestId 找到对应上下文并执行 abort,非虚推请求行为不变(seqId 唯一,不会命中虚推分支) 2:src/sequence/live_infer_context.cpp — Remove(RequestId): 在删除 seqId 映射前增加归属检查(seqIt->second == seqGroup)。防止清理旧虚推时误删后续虚推重新注册的 seqId 映射,通过 shared_ptr 指针比较确保只有 seqId 的“所有者”才能删除映射,正常请求的 seqId 唯一,归属检查始终为 true,行为不变。 3:mindie_llm/text_generator/utils/generation_output.py — fill_dummy() 方法: num_new_sequences 的计算方式由len(new_sequence_ids)(去重后的数量)改为sum(len(sg) for sg in new_sequence_ids_group)(实际的新增 group 数量),确保 num_top_tokens、token_ids 等数组的 padding 行数与 group_indices 的真实增长量一致 # 资料变更 不涉及 # 接口变更 不涉及。 # 测试结果 开启虚推A3单机通用场景性能_128k冒烟测试 ![02251.jpg](https://raw.gitcode.com/user-images/assets/8772840/bbe8d976-239a-4c80-a14e-63a909804f96/02251.jpg '02251.jpg') ![02252.jpg](https://raw.gitcode.com/user-images/assets/8772840/4736a263-07df-4e68-89ab-c3c8ec4f7f34/02252.jpg '02252.jpg') ![02253.jpg](https://raw.gitcode.com/user-images/assets/8772840/c17a3331-115c-4db6-9dbb-a50b5fc0de21/02253.jpg '02253.jpg') # CheckList > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x]。 - [x] 代码注释完备 - [x] 正确记录错误日志 - [x] 进行了返回值校验 (禁止使用void屏蔽安全函数、自研函数返回值;考虑接口的异常场景;调用底层组件接口时,需要进行返回值校验) - [x] 进行了空指针校验 - [x] 若存在资源申请,使用后资源被正确的释放了 - [x] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 - [x] 按照[代码仓中提供的格式模板](https://gitcode.com/Ascend/MindIE-LLM/blob/master/.clang-format),使用clang-format工具格式化代码 - [x] 符合Ascend社区的编码规范。[C++ 语言编程指导](https://gitcode.com/Ascend/community/blob/master/docs/contributor/Ascend-cpp-coding-style-guide.md) | [C++ 语言安全编程指导](https://gitcode.com/Ascend/community/blob/master/docs/contributor/Ascend-cpp-secure-coding-guide.md) See merge request: Ascend/MindIE-LLM!4172 个月前
[Feat] 结构化输出支持PD分离场景及重计算 Co-authored-by: earthmanylf<yulinfeng2@huawei.com> Co-authored-by: stanzzzzz<zonghaoxin@huawei.com> Co-authored-by: KaiMa<KaiMa_SDU@outlook.com> Co-authored-by: zhaokerui<zhaokerui@huawei.com> Co-authored-by: ella07<xiechangxiu3@h-partners.com> Co-authored-by: czy6<cuizhengyao@huawei.com> Co-authored-by: LinWei100<linwei100@huawei.com> Co-authored-by: dongyubin1<dongyubin1@h-partners.com> Co-authored-by: yangshuai047<yangshuai153@huawei.com> Co-authored-by: shiqiangA<shiqiang15@huawei.com> Co-authored-by: taojiovvo<jitao12@huawei.com> Co-authored-by: zhang980530<zhanghao680@h-partners.com> # message auto-generated for no-merge-commit merge: !603 merge cherry-pick-eeaa6db into dev [Feat] 结构化输出支持PD分离场景及重计算 Created-by: LinWei100 Commit-by: LinWei100;shiqiangA;ella07;zhaokerui;KaiMa;taojiovvo;stanzzzzz;yangshuai047;zhang980530;dongyubin1;czy6;earthmanylf Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20251225 --> # 合入背景 > 请描述为什么要做这个PR内的改动。\ > 如涉及,请关联前序PR或同特性/需求下的其他PR。\ > 如果是修复之前PR引入的问题,请关联引入问题的PR。\ > 注意:Fixes #ISSUE ID会自动关闭issue,如问题部分解决请不要使用Fixes,可以用Fix part of #ISSUE ID替代. Fixes [#358](https://gitcode.com/Ascend/MindIE-LLM/issues/358) # 修改内容 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列。\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容)。 1. response_format改为context机制 2. seqid改为context handle 3. 支持pd分离、重计算场景 (replay机制) 4. mtp叠加结构化输出校验拦截 # 资料变更 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及”。 # 接口变更 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及”。 # 测试结果 > 请说明测试场景,测试方法以及测试结果。\ > 测试用例设计时需考虑硬件、部署方式、功能、性能、精度、显存等维度。 ![image.png](https://raw.gitcode.com/user-images/assets/8772840/72540674-9c3c-4361-b6a8-1e35bbd609fe/image.png 'image.png') ![image.png](https://raw.gitcode.com/user-images/assets/8772840/fdb221c6-93c1-4706-94d0-0aceb05f4dc5/image.png 'image.png') # CheckList > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x]。 - [ ] 代码注释完备 - [ ] 正确记录错误日志 - [ ] 进行了返回值校验 (禁止使用void屏蔽安全函数、自研函数返回值;考虑接口的异常场景;调用底层组件接口时,需要进行返回值校验) - [ ] 进行了空指针校验 - [ ] 若存在资源申请,使用后资源被正确的释放了 - [ ] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 - [ ] 按照[代码仓中提供的格式模板](https://gitcode.com/Ascend/MindIE-LLM/blob/master/.clang-format),使用clang-format工具格式化代码 - [ ] 符合Ascend社区的编码规范。[C++ 语言编程指导](https://gitcode.com/Ascend/community/blob/master/docs/contributor/Ascend-cpp-coding-style-guide.md) | [C++ 语言安全编程指导](https://gitcode.com/Ascend/community/blob/master/docs/contributor/Ascend-cpp-secure-coding-guide.md) See merge request: Ascend/MindIE-LLM!6032 个月前
dsv32支持mtp叠加异步 Co-authored-by: earthmanylf<yulinfeng2@huawei.com> # message auto-generated for no-merge-commit merge: !592 merge mtpp into dev dsv32支持mtp叠加异步 Created-by: earthmanylf Commit-by: earthmanylf Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20251225 --> # 合入背景 > 请描述为什么要做这个PR内的改动。\ > 如涉及,请关联前序PR或同特性/需求下的其他PR。\ > 如果是修复之前PR引入的问题,请关联引入问题的PR。\ > 注意:Fixes #ISSUE ID会自动关闭issue,如问题部分解决请不要使用Fixes,可以用Fix part of #ISSUE ID替代. Fix part of [#103](https://gitcode.com/Ascend/MindIE-LLM/issues/103) # 修改内容 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列。\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容)。 支持dsv32的mtp叠加异步,并适配主线的warmup重构,主要添加适配异步的SpecWorkerExp类,并对mtp插件进行了aclgraph的异步适配,使用ENV.model_runner_exp进行了代码隔离 # 资料变更 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及”。 # 接口变更 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及”。 # 测试结果 > 请说明测试场景,测试方法以及测试结果。\ > 测试用例设计时需考虑硬件、部署方式、功能、性能、精度、显存等维度。 # CheckList > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x]。 - [x] 代码注释完备 - [x] 正确记录错误日志 - [x] 进行了返回值校验 (禁止使用void屏蔽安全函数、自研函数返回值;考虑接口的异常场景;调用底层组件接口时,需要进行返回值校验) - [x] 进行了空指针校验 - [x] 若存在资源申请,使用后资源被正确的释放了 - [x] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 - [x] 按照[代码仓中提供的格式模板](https://gitcode.com/Ascend/MindIE-LLM/blob/master/.clang-format),使用clang-format工具格式化代码 - [x] 符合Ascend社区的编码规范。[C++ 语言编程指导](https://gitcode.com/Ascend/community/blob/master/docs/contributor/Ascend-cpp-coding-style-guide.md) | [C++ 语言安全编程指导](https://gitcode.com/Ascend/community/blob/master/docs/contributor/Ascend-cpp-secure-coding-guide.md) See merge request: Ascend/MindIE-LLM!5922 个月前
[dev]Synchronize code Co-authored-by: forcekeng<gengli8@huawei.com> 5 个月前