KittenDecoder.load constructor
KittenDecoder.load(})
Implementation
factory KittenDecoder.load(
Map<String, MlxArray> tensors, {
String prefix = 'decoder',
required ModelConfig config,
bool activationQuant = false,
}) {
return KittenDecoder(
config: config,
encode: AdainResBlk1d.load(
tensors,
'$prefix.encode',
dimIn: config.hiddenDim + 2,
dimOut: config.maxConvDim,
styleDim: config.styleDim,
quant: config.quantization,
activationQuant: activationQuant,
),
decode: List<AdainResBlk1d>.generate(
4,
(index) => AdainResBlk1d.load(
tensors,
'$prefix.decode.$index',
dimIn: config.maxConvDim + 2 + config.asrResDim,
dimOut:
index == 3 ? config.resolvedDecoderOutDim : config.maxConvDim,
styleDim: config.styleDim,
upsample: index == 3,
quant: config.quantization,
activationQuant: activationQuant,
),
growable: false,
),
f0Conv: ConvWeighted.load(
tensors,
'$prefix.F0_conv',
stride: 2,
padding: 1,
groups: 1,
activationQuant: activationQuant,
),
nConv: ConvWeighted.load(
tensors,
'$prefix.N_conv',
stride: 2,
padding: 1,
groups: 1,
activationQuant: activationQuant,
),
asrRes: ConvWeighted.load(
tensors,
'$prefix.asr_res.0',
padding: 0,
activationQuant: activationQuant,
),
generator: Generator.load(
tensors,
prefix: '$prefix.generator',
config: config,
activationQuant: activationQuant,
),
);
}