From fc35657048089eaaa017254166d9b9c2cb11dc34 Mon Sep 17 00:00:00 2001 From: Yingda Chen Date: Wed, 19 Feb 2025 16:47:20 +0800 Subject: [PATCH] fix --- modelscope/cli/cli.py | 3 --- modelscope/cli/download.py | 3 +-- modelscope/cli/upload.py | 3 +-- modelscope/hub/api.py | 17 ++++++++++++----- 4 files changed, 14 insertions(+), 12 deletions(-) diff --git a/modelscope/cli/cli.py b/modelscope/cli/cli.py index afadfa91..1cb98ea0 100644 --- a/modelscope/cli/cli.py +++ b/modelscope/cli/cli.py @@ -40,9 +40,6 @@ def run_cmd(): if not hasattr(args, 'func'): parser.print_help() exit(1) - if args.token is not None: - api = HubApi() - api.login(args.token) cmd = args.func(args) cmd.execute() diff --git a/modelscope/cli/download.py b/modelscope/cli/download.py index 42ad9062..3d54aa26 100644 --- a/modelscope/cli/download.py +++ b/modelscope/cli/download.py @@ -127,8 +127,7 @@ class DownloadCMD(CLICommand): cookies = None if self.args.token is not None: api = HubApi() - _, cookies = api.login( - access_token=self.args.token, save_session=False) + cookies = api.get_cookies(access_token=self.args.token) if self.args.model: if len(self.args.files) == 1: # download single file model_file_download( diff --git a/modelscope/cli/upload.py b/modelscope/cli/upload.py index 3aa18908..a14a04b1 100644 --- a/modelscope/cli/upload.py +++ b/modelscope/cli/upload.py @@ -140,8 +140,7 @@ class UploadCMD(CLICommand): cookies = None if self.args.token: api = HubApi(endpoint=self.args.endpoint) - _, cookies = api.login( - access_token=self.args.token, save_session=False) + cookies = api.get_cookies(access_token=self.args.token) else: cookies = ModelScopeConfig.get_cookies() if cookies is None: diff --git a/modelscope/hub/api.py b/modelscope/hub/api.py index 89b39546..3a249f26 100644 --- a/modelscope/hub/api.py +++ b/modelscope/hub/api.py @@ -34,6 +34,7 @@ from modelscope.hub.constants import (API_HTTP_CLIENT_MAX_RETRIES, API_RESPONSE_FIELD_USERNAME, DEFAULT_CREDENTIALS_PATH, DEFAULT_MAX_WORKERS, + DEFAULT_MODELSCOPE_DOMAIN, MODELSCOPE_CLOUD_ENVIRONMENT, MODELSCOPE_CLOUD_USERNAME, MODELSCOPE_REQUEST_ID, ONE_YEAR_SECONDS, @@ -112,10 +113,19 @@ class HubApi: self.upload_checker = UploadingCheck() + def get_cookies(self, access_token): + from requests.cookies import RequestsCookieJar + jar = RequestsCookieJar() + jar.set('m_session_id', + access_token, + domain=os.getenv('MODELSCOPE_DOMAIN', + DEFAULT_MODELSCOPE_DOMAIN), + path='/') + return jar + def login( self, - access_token: Optional[str] = None, - save_session: Optional[bool] = True + access_token: Optional[str] = None ): """Login with your SDK access token, which can be obtained from https://www.modelscope.cn user center. @@ -147,9 +157,6 @@ class HubApi: token = d[API_RESPONSE_FIELD_DATA][API_RESPONSE_FIELD_GIT_ACCESS_TOKEN] cookies = r.cookies - if not save_session: - return None, cookies - # save token and cookie ModelScopeConfig.save_token(token) ModelScopeConfig.save_cookies(cookies)