From bd265b7fd8b5cbb118f140e87dfb56cec9347112 Mon Sep 17 00:00:00 2001 From: Jintao Huang Date: Sat, 6 Sep 2025 22:35:14 +0800 Subject: [PATCH] update --- ...273\244\350\241\214\345\217\202\346\225\260.md" | 8 ++++---- swift/llm/dataset/loader.py | 14 +++++++------- swift/llm/model/register.py | 5 ++--- 3 files changed, 13 insertions(+), 14 deletions(-) diff --git "a/docs/source/Instruction/\345\221\275\344\273\244\350\241\214\345\217\202\346\225\260.md" "b/docs/source/Instruction/\345\221\275\344\273\244\350\241\214\345\217\202\346\225\260.md" index 24e613576e..8430b6b040 100644 --- "a/docs/source/Instruction/\345\221\275\344\273\244\350\241\214\345\217\202\346\225\260.md" +++ "b/docs/source/Instruction/\345\221\275\344\273\244\350\241\214\345\217\202\346\225\260.md" @@ -10,16 +10,16 @@ ## 基本参数 - 🔥tuner_backend: 可选为'peft','unsloth'。默认为'peft'。 -- 🔥train_type: 可选为: 'lora'、'full'、'longlora'、'adalora'、'llamapro'、'adapter'、'vera'、'boft'、'fourierft'、'reft'。默认为'lora'。 +- 🔥train_type: 可选为'lora'、'full'、'longlora'、'adalora'、'llamapro'、'adapter'、'vera'、'boft'、'fourierft'、'reft'。默认为'lora'。 - 🔥adapters: 用于指定adapter的id/path的list,默认为`[]`。 - external_plugins: 外部plugin py文件列表,这些文件会被注册进plugin模块中,例子请参见[这里](https://github.com/modelscope/ms-swift/tree/main/examples/train/grpo/plugin/run_external_reward_func.sh)。默认为`[]`。 -- seed: 默认为42。 +- seed: 全局随机种子,默认为42。注意该随机种子与控制数据集随机的`data_seed`相不影响。 - model_kwargs: 特定模型可传入的额外参数,该参数列表会在训练推理时打印日志进行提示。例如`--model_kwargs '{"fps_max_frames": 12}'`。默认为None。 - load_args: 当指定`--resume_from_checkpoint`、`--model`、`--adapters`会读取保存文件中的`args.json`,读取的keys查看[base_args.py](https://github.com/modelscope/ms-swift/blob/main/swift/llm/argument/base_args/base_args.py)。推理和导出时默认为True,训练时默认为False。 -- load_data_args: 如果将该参数设置为True,则会额外读取`args.json`中的数据参数。默认为False。 +- load_data_args: 如果将该参数设置为True,则会额外读取`args.json`中的数据参数。默认为False。通常用于`swift infer`时对训练中切分的验证集进行推理。 - use_hf: 控制模型下载、数据集下载、模型推送使用ModelScope还是HuggingFace。默认为False,使用ModelScope。 - hub_token: hub token. modelscope的hub token可以查看[这里](https://modelscope.cn/my/myaccesstoken)。默认为None。 -- custom_register_path: 自定义模型、对话模板和数据集注册的`.py`文件路径的list。默认为`[]`。 +- custom_register_path: 传入自定义模型、对话模板和数据集注册的`.py`文件路径的列表,这些文件会被额外加载。默认为`[]`。 - ddp_timeout: 默认为18000000,单位为秒。 - ddp_backend: 可选为"nccl"、"gloo"、"mpi"、"ccl"、"hccl" 、"cncl"、"mccl"。默认为None,进行自动选择。 - ignore_args_error: 用于兼容notebook。默认为False。 diff --git a/swift/llm/dataset/loader.py b/swift/llm/dataset/loader.py index daf685f611..da1f080759 100644 --- a/swift/llm/dataset/loader.py +++ b/swift/llm/dataset/loader.py @@ -99,10 +99,10 @@ def get_dataset_meta(self, use_hf: bool): dataset_meta_mapping = self._get_dataset_meta_mapping() dataset_type = self.dataset_type if dataset_type == 'path': - dataset_meta = dataset_meta_mapping.get((dataset_type, self.dataset.lower())) + dataset_meta = dataset_meta_mapping.get((dataset_type, self.dataset)) else: dataset_type = 'repo' if os.path.isdir(self.dataset) else {True: 'hf', False: 'ms'}[use_hf] - dataset_meta = dataset_meta_mapping.get((dataset_type, self.dataset.lower())) + dataset_meta = dataset_meta_mapping.get((dataset_type, self.dataset)) return dataset_meta or self._get_matched_dataset_meta(dataset_meta_mapping) or DatasetMeta() @staticmethod @@ -114,11 +114,11 @@ def _get_dataset_meta_mapping() -> Dict[Tuple[str, str], DatasetMeta]: for dataset_meta in DATASET_MAPPING.values(): if dataset_meta.dataset_path is not None: dataset_type = 'repo' if os.path.isdir(dataset_meta.dataset_path) else 'path' - _dataset_meta_mapping[(dataset_type, dataset_meta.dataset_path.lower())] = dataset_meta + _dataset_meta_mapping[(dataset_type, dataset_meta.dataset_path)] = dataset_meta if dataset_meta.ms_dataset_id is not None: - _dataset_meta_mapping[('ms', dataset_meta.ms_dataset_id.lower())] = dataset_meta + _dataset_meta_mapping[('ms', dataset_meta.ms_dataset_id)] = dataset_meta if dataset_meta.hf_dataset_id is not None: - _dataset_meta_mapping[('hf', dataset_meta.hf_dataset_id.lower())] = dataset_meta + _dataset_meta_mapping[('hf', dataset_meta.hf_dataset_id)] = dataset_meta return _dataset_meta_mapping @staticmethod @@ -137,9 +137,9 @@ def get_dataset_name(dataset_id: str) -> str: def _get_matched_dataset_meta(self, dataset_meta_mapping): suffix_dataset_meta_mapping = {} for dataset_name, dataset_meta in dataset_meta_mapping.items(): - dataset_name = self.get_dataset_name(dataset_name[1]).lower() + dataset_name = self.get_dataset_name(dataset_name[1]) suffix_dataset_meta_mapping[dataset_name] = dataset_meta - dataset_name = self.get_dataset_name(self.dataset).lower() + dataset_name = self.get_dataset_name(self.dataset) dataset_meta = suffix_dataset_meta_mapping.get(dataset_name) return dataset_meta diff --git a/swift/llm/model/register.py b/swift/llm/model/register.py index c4a893b043..27bac7ca2b 100644 --- a/swift/llm/model/register.py +++ b/swift/llm/model/register.py @@ -90,8 +90,7 @@ def get_matched_model_group(self, model_name: str) -> Optional[ModelGroup]: for model in model_group.models: for key in ['ms_model_id', 'hf_model_id', 'model_path']: value = getattr(model, key) - - if isinstance(value, str) and model_name == value.rsplit('/', 1)[-1].lower(): + if isinstance(value, str) and model_name == value.rsplit('/', 1)[-1]: return model_group def check_requires(self, model_info=None): @@ -435,7 +434,7 @@ def get_all_models() -> List[str]: def get_matched_model_meta(model_id_or_path: str) -> Optional[ModelMeta]: - model_name = get_model_name(model_id_or_path).lower() + model_name = get_model_name(model_id_or_path) for model_type, model_meta in MODEL_MAPPING.items(): model_group = ModelMeta.get_matched_model_group(model_meta, model_name) if model_group is not None: