mindformers.models.PretrainedConfig
===================================
.. py:class:: mindformers.models.PretrainedConfig(**kwargs)
所有配置类的基类。处理所有模型配置的通用参数以及加载、下载、保存配置的方法。
.. note::
配置文件可以被加载并保存到磁盘。加载配置文件并使用这个文件初始化模型**不会**加载模型权重。它只影响模型的配置。
参数:
- **\*\*kwargs** (Any) - 关键字参数。
- **name_or_path** (str, 可选) - 存储传递给 :func:`mindformers.models.PreTrainedModel.from_pretrained` 的字符串作为 ``pretrained_model_name_or_path`` ,如果配置是用这种方法创建的。默认值: ``""`` 。
- **checkpoint_name_or_path** (str, 可选) - checkpoint 文件的路径或名称。默认值: ``None`` 。
- **mindformers_version** (str, 可选) - MindSpore Transformers 的版本。默认值: ``""`` 。
返回:
PretrainedConfig类实例。
.. py:method:: convert_to_transformer_config(is_mla_model=False)
从 PretrainedConfig 转换为 TransformerConfig。
参数:
- **is_mla_model** (bool, 可选) - 是否是MLA模型, 默认值: ``False``。
返回:
TransformerConfig, 从 PretrainedConfig 转换后的配置对象。
异常:
- **NotImplementedError** - 继承自 PretrainedConfig 的模型配置类未实现该方法。
.. py:method:: from_dict(config_dict, **kwargs)
:classmethod:
从参数字典实例化 PretrainedConfig。
参数:
- **config_dict** (Dict[str, Any]) - 用于实例化配置对象的字典。这样的字典可以通过利用 :func:`mindformers.models.PretrainedConfig.get_config_dict` 方法从预训练的检查点检索。
返回:
PretrainedConfig, 从这些参数实例化的配置对象。
.. py:method:: from_json_file(json_file)
:classmethod:
从 JSON 文件的路径实例化 PretrainedConfig。
参数:
- **json_file** (Union[str, os.PathLike]) - 参数的 JSON 文件路径。
返回:
PretrainedConfig, 从该 JSON 文件实例化的配置对象。
.. py:method:: from_pretrained(yaml_name_or_path, **kwargs)
:classmethod:
通过 yaml 名称或路径实例化配置。
参数:
- **yaml_name_or_path** (str) - 当前只支持传入模型YAML配置文件路径(.yaml)。
- **\*\*kwargs** (Any) - 关键字参数。
- **pretrained_model_name_or_path** (str, 可选) - 等同于 `yaml_name_or_path`,如果设置了 `pretrained_model_name_or_path`,则 `yaml_name_or_path` 无效。默认值: ``None`` 。
返回:
PretrainedConfig: 继承自 PretrainedConfig 的模型配置。
.. py:method:: get_config_dict(pretrained_model_name_or_path, **kwargs)
:classmethod:
从 'pretrained_model_name_or_path' 解析到一个参数字典,用于使用 :func:`mindformers.models.PretrainedConfig.from_dict` 实例化 PretrainedConfig。
参数:
- **pretrained_model_name_or_path** (Union[str, os.PathLike]) - 预训练检查点的标识符, 我们希望从中获得参数字典。
返回:
Tuple[dict, dict]: 用于实例化配置对象的字典。
.. py:method:: save_pretrained(save_directory=None, save_name="mindspore_model", **kwargs)
将预训练的配置保存到指定目录。
参数:
- **save_directory** (str, 可选) - 配置文件的保存目录。默认值: ``None`` 。
- **save_name** (str, 可选) - 保存文件的名称,默认值: ``mindspore_model`` 。
.. py:method:: to_dict()
将此实例序列化为 Python 字典。
返回:
dict,包含构成此配置实例的所有属性的字典。
.. py:method:: to_diff_dict()
移除与默认配置属性对应的所有属性,以提高可读性,并序列化为 Python 字典。
返回:
dict: 包含此配置实例的所有属性的字典。
.. py:method:: to_json_file(json_file_path, use_diff=True)
将此实例保存到 JSON 文件。
参数:
- **json_file_path** (Union[str, os.PathLike]) - 此配置实例参数将被保存的 JSON 文件路径。
- **use_diff** (bool, 可选) - 如果设置为 True,仅序列化配置实例与默认 :class:`mindformers.models.PretrainedConfig` 的差异到 JSON 文件。默认值: ``True`` 。
.. py:method:: to_json_string(use_diff=True)
将此实例序列化为 JSON 字符串。
参数:
- **use_diff** (bool, 可选) - 如果设置为 True,仅序列化配置实例与默认 PretrainedConfig() 的差异到 JSON 字符串。默认值: ``True`` 。
返回:
str,包含此配置实例所有属性的 JSON 格式字符串。