#3711·peft

Transformers v5 MoE 转换错误地重写完全限定的共享专家 LoRA 目标

作者: orr-hirundo创建于 2026年9月10日更新于 2026年9月16日

QQ 系统信息

环境

  • 型号:`amd/Instella-MoE-16B-A3B-Think'

  • PEFT: 0.2.0 (韩语).

  • 变压器:5.16.1

  • `信任'代码 忠义

  • 谁能帮忙?

无回复( N)

  • 复制

问题

Instella对教育部的预测有两种不同的表述:

  1. 路由专家使用三维参数,例如:

`模范.layers.12.mlp.专家. down proj'

  1. 共享的专家是含有 " nn.Linear " 层的普通MLP模块,例如:

" 模型.layers.12.mlp.shared 专家. down proj "

因此,混合LORA组合合法地使用“目标参数”和“目标模块”:

2zz
配置 = Loraconfig ()
r=8, (单位:千美元)
目标 模块=[
"模型.layers.12.mlp.shared experts.down proj", 互联网档案馆的存檔,存档日期2014-12-02.
[
目标 参数=[
"模范. layers 12.mlp. 专家. down proj","模范.
[
(中文(简体) ).

peft model = get peft model(模型,配置)

预期行为 :

  • “模型.layers.12.mlp.shared experts.down-proj”作为模块目标保留。
  • `模范.layers.12.mlp. experts.down-proj'作为参数目标保留。
  • PEFT在共享专家上安装了普通的LORA层,在路由专家库上安装了参数包装.

实际行为 :

配置. targe modules ===()
配置 目标========

只创建了路由专家参数包. 共享专家`nn.Linear'模块没有调整。 完全合格的、与层有关的目标还被简化为通称 " down-proj " ,有可能将其扩大到其他匹配的专家参数。

因为... Instella)报告"模型 类型="deepseek v3". 当启用变形器 v5 转换时, PEFT 应用了 deepseek v3 - > qwen2 moe' 检查站转换映射 。 教育部的转换逻辑将等于或结束于下-proj'的任何目标模块视为一个老的路由-专家目标。 它不检查路径是指.专家.'还是.共享-专家.'。

因此,这个普通线性模块:

模型.layers.12.mlp.shared experts.down proj

被误认为是被保险的路由专家参数。 它被从"目标-模块"中去除,只有它的叶名"下-proj"被添加到"目标-参数"中.

这种转换也适用于新创建的“LoraConfig”对象,传递给“get peft model”;它不限于装入遗留适配器。

相关模型文件 :

相关的 PEFT 转换逻辑 :

复制码:

从类型导入简单Namespace

导入火炬
从 peft 导入 Loraconfig
从
. . . . . . .

内容来源: huggingface/peft