model_config_utils

ModelConfig 的常用工具。

函数

merge_fc1_gate

将model_config中的qkv字段从QKVConfig合并为单个LinearConfig。

merge_qkv

将 model_config 中的 qkv 字段从 QKVConfig 合并为单个 LinearConfig。

model_config_from_dict

将字典加载到ModelConfig实例中。

model_config_to_dict

将实例转换为python字典。

naive_quantization

生成一个具有目标量化的恒定缩放因子(1)。

pack_linear_weights

将模型配置中的量化线性权重打包为量化格式。

pad_weights

返回填充后的权重到tp_size。

restore_model_config

递归地从json恢复model_config,并从weights加载np.ndarray或torch.Tensor权重。

split_config_and_weights

用于将嵌套配置中的权重或任何 torch.Tensor 拆分为权重的实用函数。

merge_fc1_gate(model_config)

将model_config中的qkv字段从QKVConfig合并为单个LinearConfig。

merge_qkv(model_config)

将model_config中的qkv字段从QKVConfig合并为单个LinearConfig。

model_config_from_dict(d)

将字典加载到ModelConfig实例中。

Parameters:

d (字典) –

Return type:

ModelConfig

model_config_to_dict(model_config)

将实例转换为python字典。

Parameters:

model_config (ModelConfig) –

Return type:

字典

naive_quantization(config)

生成一个具有目标量化的恒定缩放因子(1)。

这仅用于调试和性能测量。

Parameters:

config (ModelConfig) –

pack_linear_weights(model_config)

将模型配置中的量化线性权重打包为量化格式。

Parameters:

model_config (ModelConfig) –

pad_weights(weights, tp_size)

返回填充后的权重到tp_size。

restore_model_config(model_config, weights)

递归地从json恢复model_config,并从weights加载np.ndarray或torch.Tensor权重。

Parameters:

weights (Dict[str, ndarray | Tensor]) –

split_config_and_weights(config, weights, prefix='transformer', layer_config_dict={})

用于将嵌套配置中的权重或任何 torch.Tensor 拆分为权重的实用函数。

一个以transformers或lm_head开头的权重id也会被生成,以将原始键链接到权重字典。 权重字典中的权重是连续的。

layer_config_dict: 一个包含分层量化格式信息和相关awq_block_size信息的字典。它用于导出auto_quant检查点的quantization.json文件。

Parameters:
  • weights (Dict[str, tensor]) –

  • prefix (str) –

  • layer_config_dict (dict) –