diff --git a/internlm/utils/model_checkpoint.py b/internlm/utils/model_checkpoint.py index 87a303c..0bc1948 100644 --- a/internlm/utils/model_checkpoint.py +++ b/internlm/utils/model_checkpoint.py @@ -902,6 +902,14 @@ now step_count is {train_state.step_count}", latest_ckpt, step = self.query_latest_snapshot_step_boto3() if latest_ckpt and not latest_ckpt.startswith("boto3:"): latest_ckpt = ":".join(["boto3", latest_ckpt]) + elif backend == "oss2": + latest_ckpt, step = self.query_latest_snapshot_step_boto3() + if latest_ckpt and not latest_ckpt.startswith("oss2:"): + latest_ckpt = ":".join(["oss2", latest_ckpt]) + elif backend == "volc": + latest_ckpt, step = self.query_latest_snapshot_step_boto3() + if latest_ckpt and not latest_ckpt.startswith("volc:"): + latest_ckpt = ":".join(["volc", latest_ckpt]) elif backend == "local": latest_ckpt, step = self.query_latest_snapshot_step_local() if latest_ckpt and not latest_ckpt.startswith("local:"): diff --git a/internlm/utils/storage_manager.py b/internlm/utils/storage_manager.py index 151af04..7414c8e 100644 --- a/internlm/utils/storage_manager.py +++ b/internlm/utils/storage_manager.py @@ -739,10 +739,8 @@ class AliClient(StorageClient): if AliClient.is_fp_exists(handler, fp): folder_name_list = [] for obj in handler.handler.ObjectIteratorV2(handler.client, prefix=fp): - folder_name_list.append(obj.key.split("/")[-1]) - + folder_name_list.append(obj.key.split(fp, maxsplit=1)[1].strip("/").split("/", maxsplit=1)[0]) return list(set(folder_name_list)) - else: if is_rank_for_log(): logger.warning(f"'{fp}' not found!")