使用样例
限制与约束
- Atlas 800I A2 推理服务器和Atlas 300I Duo 推理卡硬件支持此特性。
- LLaMA3系列、Qwen2系列、Qwen3-14B和Qwen3-32B模型支持对接此特性。
- 并行解码支持的量化特性:W8A8量化与稀疏量化,其他量化特性暂不支持。
- 该特性不能和PD分离、Multi-LoRA、SplitFuse、Function Call、长序列、MTP、异步双发以及多机推理特性同时使用。
- 并行解码场景暂不支持流式推理。
- 并行解码惩罚类后处理仅支持重复惩罚。
- 该特性暂不支持n、best_of、use_beam_search、logprobs等与多序列推理相关的后处理参数。
- lookahead和memory_decoding算法不可同时使能。
配置项 |
取值类型 |
取值范围 |
配置说明 |
---|---|---|---|
speculationGamma |
uint32_t |
与plugin参数配置有关 |
memory_decoding时,该值配置应大于等于decoding_length。 建议值:等于decoding_length。 |
配置项 |
取值类型 |
取值范围 |
配置说明 |
---|---|---|---|
maxIterTimes |
uint32_t |
与plugin参数配置有关 |
如果dynamic_algo为true,该值需大于等于期望输出的长度+speculationGamma的值。 例:期望最大输出长度为512,则该值需要配置>=512+speculationGamma。 |
配置项 |
取值类型 |
取值范围 |
配置说明 |
---|---|---|---|
plugin_params |
std::string |
plugin_type:la level:[3, 16] window:[1, 16] guess_set_size:[1, 16] |
plugin_type配置la,表示当前选择lookahead并行解码。 level/window/guess_set_size为lookahead算法中的N/W/G参数,默认值为4/5/5,且每个参数可配置的上限不超过16。 配置示例: "{\"plugin_type\":\"la\",\"level\": 4,\"window\": 5,\"guess_set_size\": 5}" |
操作步骤
- 配置服务化参数。该特性需配合MindIE Motor使用,按照表1~表5在{MindIE安装目录}/latest/mindie-service/conf/config.json配置文件中添加对应参数,样例如下所示。
- memory_decoding算法的并行解码配置样例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
"ModelDeployConfig" : { "maxSeqLen" : 2560, "maxInputTokenLen" : 2048, "truncation" : false, "speculationGamma": 16, "ModelConfig" : [ { "plugin_params": "{\"plugin_type\":\"memory_decoding\",\"decoding_length\":16,\"dynamic_algo\":true}", "modelInstanceType" : "Standard", "modelName" : "Codellama-34B", "modelWeightPath" : "/data/weights/Codellama-34B", "worldSize" : 4, "cpuMemSize" : 5, "npuMemSize" : -1, "backendType" : "atb", "trustRemoteCode" : false } ] }
- lookahead算法的并行解码配置样例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
"ModelDeployConfig" : { "maxSeqLen" : 2560, "maxInputTokenLen" : 2048, "truncation" : false, "speculationGamma": 30, "ModelConfig" : [ { "plugin_params":"{\"plugin_type\":\"la\",\"level\":4,\"window\":5,\"guess_set_size\":5}", "modelInstanceType" : "Standard", "modelName" : "Qwen2.5-7B-Instruct", "modelWeightPath" : "/data/weights/Qwen2.5-7B-Instruct", "worldSize" : 1, "cpuMemSize" : 5, "npuMemSize" : -1, "backendType" : "atb", "trustRemoteCode" : false } ] }
- memory_decoding算法的并行解码配置样例:
- 启动服务,具体请参考启动服务。
父主题: 并行解码