diff --git a/convlab/deploy/dep_config.json b/convlab/deploy/dep_config.json
index 5b0bea7ab632afa78319575ffa135509e68114db..b9cb0b676c872da16606c551fd4696aa446693d3 100755
--- a/convlab/deploy/dep_config.json
+++ b/convlab/deploy/dep_config.json
@@ -33,7 +33,7 @@
       "ini_params": {
         "mode": "all",
         "config_file": "crosswoz_all.json",
-        "model_file": "https://convlab.blob.core.windows.net/convlab-2/bert_crosswoz_all.zip"
+        "model_file": "https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_crosswoz_all.zip"
       },
       "model_name": "bert-cro",
       "max_core": 1,
@@ -46,7 +46,7 @@
       "ini_params": {
         "mode": "all",
         "config_file": "multiwoz_all.json",
-        "model_file": "https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_all.zip"
+        "model_file": "https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_all.zip"
       },
       "model_name": "bert-mul",
       "max_core": 1,
diff --git a/convlab/dst/comer/multiwoz/comer.py b/convlab/dst/comer/multiwoz/comer.py
index 4ec5681487aadbb53bb4a42c2e7b38555cb6c092..598c1bb0d3e17f3dad6bef69a8bf45cf92680e68 100755
--- a/convlab/dst/comer/multiwoz/comer.py
+++ b/convlab/dst/comer/multiwoz/comer.py
@@ -44,8 +44,8 @@ def revert_state(model_output:dict, reversed_vocab:dict):
 
 
 class ComerTracker(DST):
-    def __init__(self, model_file='https://convlab.blob.core.windows.net/convlab-2/comer.zip',
-                 embed_file='https://convlab.blob.core.windows.net/convlab-2/comer_embed.zip'):
+    def __init__(self, model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/comer.zip',
+                 embed_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/comer_embed.zip'):
         super().__init__()
         parser = argparse.ArgumentParser(description='predict.py')
         parser.add_argument('-config', default='config.yaml', type=str,
diff --git a/convlab/dst/comer/multiwoz/function.py b/convlab/dst/comer/multiwoz/function.py
index ac3767941a0f3f98ee466f8d432e31179d43c230..9999d950b8cbc3a99d17c01f2984f344ec3700b8 100755
--- a/convlab/dst/comer/multiwoz/function.py
+++ b/convlab/dst/comer/multiwoz/function.py
@@ -107,7 +107,7 @@ class ComerTracker(DST):
         self.state = None
         self.init_session()
 
-    def download_data(self, data_url="https://convlab.blob.core.windows.net/convlab-2/comer.zip"):
+    def download_data(self, data_url="https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/comer.zip"):
         """Automatically download the pretrained model and necessary data."""
         if os.path.exists(os.path.join(self.multiwoz_root, 'data/mwoz2_dm.dict')) and \
                 os.path.exists(os.path.join(self.multiwoz_root, 'data/mwoz2_sl.dict')) and \
diff --git a/convlab/dst/mdbt/multiwoz/dst.py b/convlab/dst/mdbt/multiwoz/dst.py
index 78218e3e3ea9febbb794a8c6ebc698da44a997ed..84d79b1e1b439999071fca593f9451c208af26b8 100755
--- a/convlab/dst/mdbt/multiwoz/dst.py
+++ b/convlab/dst/mdbt/multiwoz/dst.py
@@ -28,7 +28,7 @@ class MultiWozMDBT(MDBT):
         if data is None:
             loader = AgentDSTDataloader(MultiWOZDataloader())
             data = loader.load_data()
-        self.file_url = 'https://convlab.blob.core.windows.net/convlab-2/mdbt_multiwoz_sys.zip'
+        self.file_url = 'https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/mdbt_multiwoz_sys.zip'
         local_path = os.path.dirname(os.path.abspath(__file__))
         self.data_dir = os.path.join(local_path, data_dir)  # abstract data path
 
diff --git a/convlab/dst/sumbt/multiwoz/sumbt.py b/convlab/dst/sumbt/multiwoz/sumbt.py
index bb9da7b1faffd9aa4342dfcedf9ca6f434983805..506ea358018d451f6a76d003f50272c0b89fab5d 100755
--- a/convlab/dst/sumbt/multiwoz/sumbt.py
+++ b/convlab/dst/sumbt/multiwoz/sumbt.py
@@ -75,7 +75,7 @@ class SUMBTTracker(DST):
     """
 
 
-    def __init__(self, data_dir=DATA_PATH, model_file='https://convlab.blob.core.windows.net/convlab-2/sumbt.tar.gz', eval_slots=multiwoz_slot_list):
+    def __init__(self, data_dir=DATA_PATH, model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/sumbt.tar.gz', eval_slots=multiwoz_slot_list):
 
         DST.__init__(self)
 
@@ -153,7 +153,7 @@ class SUMBTTracker(DST):
         # model_file = os.path.join(DOWNLOAD_DIRECTORY, 'pytorch_model.zip')
 
         # if not os.path.isfile(model_file):
-        model_file = 'https://convlab.blob.core.windows.net/convlab-2/sumbt.tar.gz'
+        model_file = 'https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/sumbt.tar.gz'
 
         import tarfile
         if not os.path.isfile(os.path.join(DOWNLOAD_DIRECTORY, 'pytorch_model.bin')):
diff --git a/convlab/dst/trade/crosswoz/trade.py b/convlab/dst/trade/crosswoz/trade.py
index 68c38193bbccd12c5bf203d55d6a455a111d1876..d2dcc8aa7229211a764e84f7b7a49a4e38d20194 100755
--- a/convlab/dst/trade/crosswoz/trade.py
+++ b/convlab/dst/trade/crosswoz/trade.py
@@ -108,7 +108,7 @@ class CrossWOZTRADE(TRADE, nn.Module):
     def init_session(self):
         self.state = default_state()
 
-    def download_model(self, model_url="https://convlab.blob.core.windows.net/convlab-2/trade_crosswoz_model.zip"):
+    def download_model(self, model_url="https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/trade_crosswoz_model.zip"):
         """Automatically download the pretrained model and necessary data."""
         if os.path.exists(os.path.join(self.crosswoz_root, 'model/TRADE-multiwozdst')):
             return
@@ -134,7 +134,7 @@ class CrossWOZTRADE(TRADE, nn.Module):
             print('unzipping model file ...')
             zip_ref.extractall(model_dir)
 
-    def download_data(self, data_url="https://convlab.blob.core.windows.net/convlab-2/trade_crosswoz_data.zip"):
+    def download_data(self, data_url="https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/trade_crosswoz_data.zip"):
         """Automatically download the pretrained model and necessary data."""
         if os.path.exists(os.path.join(self.crosswoz_root, 'data/crosswoz')) and \
                 os.path.exists(os.path.join(self.crosswoz_root, 'data/dev_dials.json')):
diff --git a/convlab/dst/trade/crosswoz/train.py b/convlab/dst/trade/crosswoz/train.py
index 412910941a59dc6fc75775c5e50d86d90bdf7736..ffbf374e44d057d4d4c488accac17536c7d9d786 100755
--- a/convlab/dst/trade/crosswoz/train.py
+++ b/convlab/dst/trade/crosswoz/train.py
@@ -16,7 +16,7 @@ python train.py
 '''
 
 
-def download_data(data_url="https://convlab.blob.core.windows.net/convlab-2/trade_crosswoz_data.zip"):
+def download_data(data_url="https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/trade_crosswoz_data.zip"):
     """Automatically download the pretrained model and necessary data."""
     crosswoz_root = os.path.dirname(os.path.abspath(__file__))
     if os.path.exists(os.path.join(crosswoz_root, 'data/crosswoz')) and \
diff --git a/convlab/dst/trade/multiwoz/trade.py b/convlab/dst/trade/multiwoz/trade.py
index cbc6e8ec4fd44d7f1cf586e46c775108d24def25..11bbf28ea680724debad2442d0dcc75e90c2588a 100755
--- a/convlab/dst/trade/multiwoz/trade.py
+++ b/convlab/dst/trade/multiwoz/trade.py
@@ -116,7 +116,7 @@ class MultiWOZTRADE(TRADE, nn.Module):
     def init_session(self):
         self.state = default_state()
 
-    def download_model(self, model_url="https://convlab.blob.core.windows.net/convlab-2/trade_multiwoz_model.zip"):
+    def download_model(self, model_url="https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/trade_multiwoz_model.zip"):
         """Automatically download the pretrained model and necessary data."""
         if os.path.exists(os.path.join(self.multiwoz_root, 'model/TRADE-multiwozdst')):
             return
@@ -143,7 +143,7 @@ class MultiWOZTRADE(TRADE, nn.Module):
             print('unzipping model file ...')
             zip_ref.extractall(model_dir)
 
-    def download_data(self, data_url="https://convlab.blob.core.windows.net/convlab-2/trade_multiwoz_data.zip"):
+    def download_data(self, data_url="https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/trade_multiwoz_data.zip"):
         """Automatically download the pretrained model and necessary data."""
         if os.path.exists(os.path.join(self.multiwoz_root, 'data/multi-woz')) and \
                 os.path.exists(os.path.join(self.multiwoz_root, 'data/dev_dials.json')):
diff --git a/convlab/dst/trade/multiwoz/train.py b/convlab/dst/trade/multiwoz/train.py
index b5e1b01d2230795ab45794f7dd7bf6357b8bde0c..cf8eb9bafffddd1dd3f7c3eefab640777ae9c2a3 100755
--- a/convlab/dst/trade/multiwoz/train.py
+++ b/convlab/dst/trade/multiwoz/train.py
@@ -17,7 +17,7 @@ python train.py
 '''
 
 
-def download_data(data_url="https://convlab.blob.core.windows.net/convlab-2/trade_multiwoz_data.zip"):
+def download_data(data_url="https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/trade_multiwoz_data.zip"):
     """Automatically download the pretrained model and necessary data."""
     multiwoz_root = os.path.dirname(os.path.abspath(__file__))
     if os.path.exists(os.path.join(multiwoz_root, 'data/multi-woz')) and \
diff --git a/convlab/e2e/damd/multiwoz/damd.py b/convlab/e2e/damd/multiwoz/damd.py
index 0bba581409f561e3b072ed7e8e5320de028cc226..3f105390e05cb35bbcb649b069549bc7392feb3e 100755
--- a/convlab/e2e/damd/multiwoz/damd.py
+++ b/convlab/e2e/damd/multiwoz/damd.py
@@ -16,8 +16,8 @@ from convlab.e2e.damd.multiwoz.ontology import eos_tokens
 from convlab.dialog_agent import Agent
 
 DEFAULT_DIRECTORY = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
-DEFAULT_ARCHIVE_FILE_URL = "https://convlab.blob.core.windows.net/convlab-2/damd_multiwoz_data.zip"
-DEFAULT_MODEL_URL = "https://convlab.blob.core.windows.net/convlab-2/damd_multiwoz.zip"
+DEFAULT_ARCHIVE_FILE_URL = "https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/damd_multiwoz_data.zip"
+DEFAULT_MODEL_URL = "https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/damd_multiwoz.zip"
 
 class Damd(Agent):
     def __init__(self,
diff --git a/convlab/e2e/rnn_rollout/deal_or_not/README.md b/convlab/e2e/rnn_rollout/deal_or_not/README.md
index 95692a210fa50feb49869e69700241d52fec6b38..a693ef69c53bdded2ea3441682b20b19d53542c6 100755
--- a/convlab/e2e/rnn_rollout/deal_or_not/README.md
+++ b/convlab/e2e/rnn_rollout/deal_or_not/README.md
@@ -12,7 +12,7 @@ license when using the code and datasets.
 
 ## Data preparation
 To use this model, you have to first download the pre-trained models
-from [here](https://convlab.blob.core.windows.net/convlab-2/rnnrollout_dealornot.zip), and put the *.th
+from [here](https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/rnnrollout_dealornot.zip), and put the *.th
 files under ```convlab/e2e/rnn_rullout/deal_or_not/configs```.
 
 ## Run the Model
diff --git a/convlab/e2e/rnn_rollout/deal_or_not/model.py b/convlab/e2e/rnn_rollout/deal_or_not/model.py
index 08b079fcea5e6bce1331fd84659c65371e6d4f9f..5263af8aa1bda3c5b9b6758683a60b7d3df3f9fe 100755
--- a/convlab/e2e/rnn_rollout/deal_or_not/model.py
+++ b/convlab/e2e/rnn_rollout/deal_or_not/model.py
@@ -12,7 +12,7 @@ import shutil
 class DealornotAgent(RNNRolloutAgent):
     """The Rnn Rollout model for DealorNot dataset."""
     def __init__(self, name, args, sel_args, train=False, diverse=False, max_total_len=100,
-                 model_url='https://convlab.blob.core.windows.net/convlab-2/rnnrollout_dealornot.zip'):
+                 model_url='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/rnnrollout_dealornot.zip'):
         self.config_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'configs')
 
         self.file_url = model_url
@@ -75,7 +75,7 @@ def get_context_generator(context_file):
 #             os.path.exists(os.path.join(config_path, 'selection_model_state_dict.th')):
 #         exit()
 #     models_dir = os.path.join(config_path, 'models')
-#     file_url = 'https://convlab.blob.core.windows.net/convlab-2/rnnrollout_dealornot.zip'
+#     file_url = 'https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/rnnrollout_dealornot.zip'
 #     cached_path(file_url, models_dir)
 #     files = os.listdir(models_dir)
 #     target_file = ''
diff --git a/convlab/e2e/sequicity/camrest/README.md b/convlab/e2e/sequicity/camrest/README.md
index 9b55faad951f181d098c8f29b1e18ef51fffa155..a10a856ad94e574cdbfafe28b17299c4e6bf70f9 100755
--- a/convlab/e2e/sequicity/camrest/README.md
+++ b/convlab/e2e/sequicity/camrest/README.md
@@ -11,7 +11,7 @@ We adapt the code from [github](https://github.com/WING-NUS/sequicity) to work i
 
 ### Prepare data
 
-Download [data](https://convlab.blob.core.windows.net/convlab-2/sequicity_camrest_data.zip) and unzip here.
+Download [data](https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/sequicity_camrest_data.zip) and unzip here.
 
 ### Training with default parameters
 
@@ -36,7 +36,7 @@ $ python model.py -mode rl -model camrest -cfg camrest/configs/camrest.json
 
 ### Trained model
 
-Trained model can be download on [here](https://convlab.blob.core.windows.net/convlab-2/sequicity_camrest.zip). Place it under `output` dir.
+Trained model can be download on [here](https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/sequicity_camrest.zip). Place it under `output` dir.
 
 ### Predict
 
diff --git a/convlab/e2e/sequicity/camrest/sequicity.py b/convlab/e2e/sequicity/camrest/sequicity.py
index da819d204221a47ed3326d50de3a90c91b46a689..38614a197b3a05d88c841a977b3aeff5abfc70ab 100755
--- a/convlab/e2e/sequicity/camrest/sequicity.py
+++ b/convlab/e2e/sequicity/camrest/sequicity.py
@@ -25,8 +25,8 @@ from convlab.dialog_agent import Agent
 # DEFAULT_CUDA_DEVICE = -1
 DEFAULT_DIRECTORY = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
 DEFAULT_CONFIG_FILE = os.path.join(DEFAULT_DIRECTORY, "camrest/configs/camrest.json")
-DEFAULT_ARCHIVE_FILE_URL = "https://convlab.blob.core.windows.net/convlab-2/sequicity_camrest_data.zip"
-DEFAULT_MODEL_URL = "https://convlab.blob.core.windows.net/convlab-2/sequicity_camrest.zip"
+DEFAULT_ARCHIVE_FILE_URL = "https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/sequicity_camrest_data.zip"
+DEFAULT_MODEL_URL = "https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/sequicity_camrest.zip"
 
 
 def denormalize(uttr):
@@ -44,7 +44,7 @@ class Sequicity(Agent):
 
         Args:
             model_file (str):
-                trained model path or url. default="https://convlab.blob.core.windows.net/convlab-2/sequicity_camrest.zip"
+                trained model path or url. default="https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/sequicity_camrest.zip"
 
         Example:
             sequicity = Sequicity()
diff --git a/convlab/e2e/sequicity/multiwoz/README.md b/convlab/e2e/sequicity/multiwoz/README.md
index b91b8be3304bdab34b7829a7af4c3e12db3eeafb..c25386615091d1ba361724971bf0b4d55c70e53a 100755
--- a/convlab/e2e/sequicity/multiwoz/README.md
+++ b/convlab/e2e/sequicity/multiwoz/README.md
@@ -11,7 +11,7 @@ We adapt the code from [github](https://github.com/WING-NUS/sequicity) to work i
 
 ### Prepare data
 
-Download [data](https://convlab.blob.core.windows.net/convlab-2/sequicity_multiwoz_data.zip) and unzip here.
+Download [data](https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/sequicity_multiwoz_data.zip) and unzip here.
 
 ### Training with default parameters
 
@@ -36,7 +36,7 @@ $ python model.py -mode rl -model multiwoz -cfg multiwoz/configs/multiwoz.json
 
 ### Trained model
 
-Trained model can be download on [here](https://convlab.blob.core.windows.net/convlab-2/sequicity_multiwoz.zip). Place it under `output` dir.
+Trained model can be download on [here](https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/sequicity_multiwoz.zip). Place it under `output` dir.
 
 ### Predict
 
diff --git a/convlab/e2e/sequicity/multiwoz/sequicity.py b/convlab/e2e/sequicity/multiwoz/sequicity.py
index 30017b2023a4107d5cdeab3f0af173c571c42a41..1e50904d9a468978b11564e700b43b31b1ab3dd4 100755
--- a/convlab/e2e/sequicity/multiwoz/sequicity.py
+++ b/convlab/e2e/sequicity/multiwoz/sequicity.py
@@ -26,8 +26,8 @@ from convlab.dialog_agent import Agent
 # DEFAULT_CUDA_DEVICE = -1
 DEFAULT_DIRECTORY = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
 DEFAULT_CONFIG_FILE = os.path.join(DEFAULT_DIRECTORY, "multiwoz/configs/multiwoz.json")
-DEFAULT_ARCHIVE_FILE_URL = "https://convlab.blob.core.windows.net/convlab-2/sequicity_multiwoz_data.zip"
-DEFAULT_MODEL_URL = "https://convlab.blob.core.windows.net/convlab-2/sequicity_multiwoz.zip"
+DEFAULT_ARCHIVE_FILE_URL = "https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/sequicity_multiwoz_data.zip"
+DEFAULT_MODEL_URL = "https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/sequicity_multiwoz.zip"
 
 
 def denormalize(uttr):
@@ -46,7 +46,7 @@ class Sequicity(Agent):
 
         Args:
             model_file (str):
-                trained model path or url. default="https://convlab.blob.core.windows.net/convlab-2/sequicity_multiwoz.zip"
+                trained model path or url. default="https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/sequicity_multiwoz.zip"
 
         Example:
             sequicity = Sequicity()
diff --git a/convlab/laug/Text_Paraphrasing/Text_Paraphrasing.py b/convlab/laug/Text_Paraphrasing/Text_Paraphrasing.py
index 961692f301c87529a25a008240c93a46d8708e2b..3b24968f4950221c8957be2db9d21d8d8947a42a 100644
--- a/convlab/laug/Text_Paraphrasing/Text_Paraphrasing.py
+++ b/convlab/laug/Text_Paraphrasing/Text_Paraphrasing.py
@@ -6,7 +6,7 @@ class Text_Paraphrasing:
         if dataset=='multiwoz':
             self.model=SCGPT()
         if dataset=='frames':
-            self.model=SCGPT(model_file='https://convlab.blob.core.windows.net/convlab-2/nlg-gpt-frames.zip')
+            self.model=SCGPT(model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/nlg-gpt-frames.zip')
         self.model.init_session()
     def aug(self,text,span_info):
         t=span2tuple(span_info)
diff --git a/convlab/nlg/scgpt/multiwoz/scgpt.py b/convlab/nlg/scgpt/multiwoz/scgpt.py
index 2c4b10217d43e85198cefae488d7828d98c65f6e..304e97e93ac479f234a72548fe213d8f0fdb1502 100644
--- a/convlab/nlg/scgpt/multiwoz/scgpt.py
+++ b/convlab/nlg/scgpt/multiwoz/scgpt.py
@@ -19,7 +19,7 @@ class SCGPT(NLG):
         # If no filename is mentioned then set to default
         if not model_file:
             if is_user:
-                model_file = 'https://convlab.blob.core.windows.net/convlab-2/nlg-gpt-multiwoz.zip'
+                model_file = 'https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/nlg-gpt-multiwoz.zip'
             else:
                 model_file = 'https://zenodo.org/record/5767426/files/neo_scgpt_system.zip'
 
diff --git a/convlab/nlg/sclstm/camrest/README.md b/convlab/nlg/sclstm/camrest/README.md
index 1961cee0e9c557a9746233f9409bbbae38561f6e..9e74c0e04631300fdc2397a8feddb4d7628ede34 100755
--- a/convlab/nlg/sclstm/camrest/README.md
+++ b/convlab/nlg/sclstm/camrest/README.md
@@ -11,7 +11,7 @@ The code derives from [github](https://github.com/andy194673/nlg-sclstm-multiwoz
 
 ### Prepare the data
 
-unzip [zip](https://convlab.blob.core.windows.net/convlab-2/nlg_sclstm_camrest.zip) here
+unzip [zip](https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/nlg_sclstm_camrest.zip) here
 
 ### Train
 
diff --git a/convlab/nlg/sclstm/camrest/sc_lstm.py b/convlab/nlg/sclstm/camrest/sc_lstm.py
index 52085df8a3d179c12539f7fb0eb1574a8aec1b73..4fd4e5fa05640cff3afedf6aacaf1526b8a317b8 100755
--- a/convlab/nlg/sclstm/camrest/sc_lstm.py
+++ b/convlab/nlg/sclstm/camrest/sc_lstm.py
@@ -43,7 +43,7 @@ class SCLSTM(NLG):
                  archive_file=DEFAULT_ARCHIVE_FILE, 
                  use_cuda=False,
                  is_user=False,
-                 model_file='https://convlab.blob.core.windows.net/convlab-2/nlg_sclstm_camrest.zip'):
+                 model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/nlg_sclstm_camrest.zip'):
 
         if not os.path.isfile(archive_file):
             if not model_file:
diff --git a/convlab/nlg/sclstm/crosswoz/sc_lstm.py b/convlab/nlg/sclstm/crosswoz/sc_lstm.py
index 993b531e8bcc65c5183b29fbcce77988a716225d..439576e963297c64b37b6e11bc3d9fe477d57490 100755
--- a/convlab/nlg/sclstm/crosswoz/sc_lstm.py
+++ b/convlab/nlg/sclstm/crosswoz/sc_lstm.py
@@ -45,7 +45,7 @@ class SCLSTM(NLG):
                  archive_file=DEFAULT_ARCHIVE_FILE,
                  use_cuda=False,
                  is_user=False,
-                 model_file='https://convlab.blob.core.windows.net/convlab-2/nlg_sclstm_crosswoz.zip'):
+                 model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/nlg_sclstm_crosswoz.zip'):
 
         if not os.path.isfile(archive_file):
             if not model_file:
diff --git a/convlab/nlg/sclstm/multiwoz/README.md b/convlab/nlg/sclstm/multiwoz/README.md
index 19dd73505270abf2c3547aa0cdc3f30980ee3eb1..b530dc1ae36b40024142e7ef93be23e33980dd8f 100755
--- a/convlab/nlg/sclstm/multiwoz/README.md
+++ b/convlab/nlg/sclstm/multiwoz/README.md
@@ -11,7 +11,7 @@ The code derives from [github](https://github.com/andy194673/nlg-sclstm-multiwoz
 
 ### Prepare the data
 
-unzip [zip](https://convlab.blob.core.windows.net/convlab-2/nlg_sclstm_multiwoz.zip) here
+unzip [zip](https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/nlg_sclstm_multiwoz.zip) here
 
 ### Train
 
diff --git a/convlab/nlg/sclstm/multiwoz/sc_lstm.py b/convlab/nlg/sclstm/multiwoz/sc_lstm.py
index 7cfb6a659693a07110e3d5390ad0b00fd8f2488d..54a225b9458b7e3421b8b4c2a1789f60797c973e 100755
--- a/convlab/nlg/sclstm/multiwoz/sc_lstm.py
+++ b/convlab/nlg/sclstm/multiwoz/sc_lstm.py
@@ -43,7 +43,7 @@ class SCLSTM(NLG):
                  archive_file=DEFAULT_ARCHIVE_FILE, 
                  use_cuda=False,
                  is_user=False,
-                 model_file='https://convlab.blob.core.windows.net/convlab-2/nlg_sclstm_multiwoz.zip',
+                 model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/nlg_sclstm_multiwoz.zip',
                  unk_suppress=False):
 
         if not os.path.isfile(archive_file):
diff --git a/convlab/nlu/jointBERT/crosswoz/README.md b/convlab/nlu/jointBERT/crosswoz/README.md
index 022cc4373e0bf10f9ea7bee854344f703d9d6768..d0abd1333d6b5ef020556c182fb963db2dfb76d5 100755
--- a/convlab/nlu/jointBERT/crosswoz/README.md
+++ b/convlab/nlu/jointBERT/crosswoz/README.md
@@ -56,9 +56,9 @@ We have trained two models: one use context information (last 3 utterances)(`con
 
 Models can be download form:
 
-Without context: https://convlab.blob.core.windows.net/convlab-2/bert_crosswoz_all.zip
+Without context: https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_crosswoz_all.zip
 
-With context: https://convlab.blob.core.windows.net/convlab-2/bert_crosswoz_all_context.zip
+With context: https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_crosswoz_all_context.zip
 
 
 
diff --git a/convlab/nlu/jointBERT/crosswoz/nlu.py b/convlab/nlu/jointBERT/crosswoz/nlu.py
index 3716a359d199d63be43d0992f3cbabb51fc535e4..4b58c9f0d87c9c9924467781174f1b5595113f0c 100755
--- a/convlab/nlu/jointBERT/crosswoz/nlu.py
+++ b/convlab/nlu/jointBERT/crosswoz/nlu.py
@@ -13,7 +13,7 @@ from convlab.nlu.jointBERT.crosswoz.preprocess import preprocess
 
 class BERTNLU(NLU):
     def __init__(self, mode='all', config_file='crosswoz_all_context.json',
-                 model_file='https://convlab.blob.core.windows.net/convlab-2/bert_crosswoz_all_context.zip'):
+                 model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_crosswoz_all_context.zip'):
         assert mode == 'usr' or mode == 'sys' or mode == 'all'
         config_file = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'configs/{}'.format(config_file))
         config = json.load(open(config_file))
@@ -77,5 +77,5 @@ class BERTNLU(NLU):
 
 if __name__ == '__main__':
     nlu = BERTNLU(mode='all', config_file='crosswoz_all_context.json',
-                  model_file='https://convlab.blob.core.windows.net/convlab-2/bert_crosswoz_all_context.zip')
+                  model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_crosswoz_all_context.zip')
     print(nlu.predict("北京布提克精品酒店酒店是什么类型,有健身房吗?", ['你好,给我推荐一个评分是5分,价格在100-200元的酒店。', '推荐您去北京布提克精品酒店。']))
diff --git a/convlab/nlu/jointBERT/multiwoz/README.md b/convlab/nlu/jointBERT/multiwoz/README.md
index 5e576b8b8edd89890ada517b36acf52cf2e57f25..20206b67cb4abf888fadbe00cfa186e0331de133 100755
--- a/convlab/nlu/jointBERT/multiwoz/README.md
+++ b/convlab/nlu/jointBERT/multiwoz/README.md
@@ -56,9 +56,9 @@ We have trained two models: one use context information (`configs/multiwoz_all_c
 
 Models can be download form:
 
-Without context: https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_all.zip
+Without context: https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_all.zip
 
-With context: https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_all_context.zip
+With context: https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_all_context.zip
 
 
 
diff --git a/convlab/nlu/jointBERT/multiwoz/nlu.py b/convlab/nlu/jointBERT/multiwoz/nlu.py
index 1373919e5861156c87a2ba14d6506d13e0842204..eb776fcaeeb846abb63c2a8865c69b1c0257c614 100755
--- a/convlab/nlu/jointBERT/multiwoz/nlu.py
+++ b/convlab/nlu/jointBERT/multiwoz/nlu.py
@@ -19,7 +19,7 @@ from spacy.symbols import ORTH, LEMMA, POS
 
 class BERTNLU(NLU):
     def __init__(self, mode='all', config_file='multiwoz_all_context.json',
-                 model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_all_context.zip'):
+                 model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_all_context.zip'):
         assert mode == 'usr' or mode == 'sys' or mode == 'all'
         self.mode = mode
         config_file = os.path.join(os.path.dirname(
@@ -122,7 +122,7 @@ class BERTNLU(NLU):
 if __name__ == '__main__':
     text = "How about rosa's bed and breakfast ? Their postcode is cb22ha."
     nlu = BERTNLU(mode='all', config_file='multiwoz_all_context.json',
-                  model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_all_context.zip')
+                  model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_all_context.zip')
     print(nlu.predict(text))
     # text = "I don't care about the Price of the restaurant.I don't care about the Price of the restaurant.I don't care about the Price of the restaurant.I don't care about the Price of the restaurant.I don't care about the Price of the restaurant.I don't care about the Price of the restaurant.I don't care about the Price of the restaurant.I don't care about the Price of the restaurant.I don't care about the Price of the restaurant.I don't care about the Price of the restaurant.I don't care about the Price of the restaurant.I don't care about the Price of the restaurant.I don't care about the Price of the restaurant.I don't care about the Price of the restaurant.I don't care about the Price of the restaurant.I don't care about the Price of the restaurant.I don't care about the Price of the restaurant.I don't care about the Price of the restaurant.I don't care about the Price of the restaurant."
     # print(nlu.predict(text))
diff --git a/convlab/nlu/milu/multiwoz/nlu.py b/convlab/nlu/milu/multiwoz/nlu.py
index cf7c219522cd08f1c688a7287e9dd4b3730b5e0c..f6312c014fb12e05d9072fdbdc4e70eea7fb997b 100755
--- a/convlab/nlu/milu/multiwoz/nlu.py
+++ b/convlab/nlu/milu/multiwoz/nlu.py
@@ -28,7 +28,7 @@ class MILU(NLU):
     def __init__(self,
                 archive_file=DEFAULT_ARCHIVE_FILE,
                 cuda_device=DEFAULT_CUDA_DEVICE,
-                model_file="https://convlab.blob.core.windows.net/convlab-2/new_milu(20200922)_multiwoz_all_context.tar.gz",
+                model_file="https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/new_milu(20200922)_multiwoz_all_context.tar.gz",
                 context_size=3):
         """ Constructor for NLU class. """
 
@@ -88,7 +88,7 @@ class MILU(NLU):
 
 
 if __name__ == "__main__":
-    nlu = MILU(model_file="https://convlab.blob.core.windows.net/convlab-2/milu.tar.gz")
+    nlu = MILU(model_file="https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/milu.tar.gz")
     test_contexts = [
         "SENT_END",
         "SENT_END",
diff --git a/convlab/nlu/svm/camrest/README.md b/convlab/nlu/svm/camrest/README.md
index 6499366461c18cf649be5044e24f314be48e610c..474b7a2174a7f9a31c5dd753eed0e4e7a323ae3f 100755
--- a/convlab/nlu/svm/camrest/README.md
+++ b/convlab/nlu/svm/camrest/README.md
@@ -33,9 +33,9 @@ The model will be saved on `model/svm_camrest_[mode].pickle`. Also, it will be z
 
 Trained models can be download on: 
 
-- Trained on all data: [mode=all](https://convlab.blob.core.windows.net/convlab-2/svm_camrest_all.zip)
-- Trained on user utterances only: [mode=usr](https://convlab.blob.core.windows.net/convlab-2/svm_camrest_usr.zip)
-- Trained on system utterances only: [mode=sys](https://convlab.blob.core.windows.net/convlab-2/svm_multiwoz_usr.zip)
+- Trained on all data: [mode=all](https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/svm_camrest_all.zip)
+- Trained on user utterances only: [mode=usr](https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/svm_camrest_usr.zip)
+- Trained on system utterances only: [mode=sys](https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/svm_multiwoz_usr.zip)
 
 #### Evaluate
 
diff --git a/convlab/nlu/svm/camrest/nlu.py b/convlab/nlu/svm/camrest/nlu.py
index e5a8ceb7f22fd297a353db218a031073a1eb1f2a..66c6d3fceb761018517df4b3258cbc48db87669c 100755
--- a/convlab/nlu/svm/camrest/nlu.py
+++ b/convlab/nlu/svm/camrest/nlu.py
@@ -4,9 +4,9 @@ For more information, please refer to ``convlab/nlu/svm/camrest/README.md``
 
 Trained models can be download on:
 
-- https://convlab.blob.core.windows.net/convlab-2/svm_camrest_all.zip
-- https://convlab.blob.core.windows.net/convlab-2/svm_camrest_sys.zip
-- https://convlab.blob.core.windows.net/convlab-2/svm_camrest_usr.zip
+- https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/svm_camrest_all.zip
+- https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/svm_camrest_sys.zip
+- https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/svm_camrest_usr.zip
 
 Reference:
 
@@ -34,7 +34,7 @@ class SVMNLU(NLU):
             nlu = SVMNLU(mode='usr')
         """
         assert mode == 'usr' or mode == 'sys' or mode == 'all'
-        model_file = 'https://convlab.blob.core.windows.net/convlab-2/svm_camrest_{}.zip'.format(mode)
+        model_file = 'https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/svm_camrest_{}.zip'.format(mode)
         config_file = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'configs/camrest_{}.cfg'.format(mode))
         self.config = configparser.ConfigParser()
         self.config.read(config_file)
diff --git a/convlab/nlu/svm/multiwoz/README.md b/convlab/nlu/svm/multiwoz/README.md
index a0363e35169c71607c2b2f65f561eb54838eea60..f2a9c50bfaef5c1a61566f76992e81e441572663 100755
--- a/convlab/nlu/svm/multiwoz/README.md
+++ b/convlab/nlu/svm/multiwoz/README.md
@@ -33,9 +33,9 @@ The model will be saved on `model/svm_multiwoz_[mode].pickle`. Also, it will be
 
 Trained models can be download on: 
 
-- Trained on all data: [mode=all](https://convlab.blob.core.windows.net/convlab-2/svm_multiwoz_all.zip)
-- Trained on user utterances only: [mode=usr](https://convlab.blob.core.windows.net/convlab-2/svm_multiwoz_usr.zip)
-- Trained on system utterances only: [mode=sys](https://convlab.blob.core.windows.net/convlab-2/svm_multiwoz_usr.zip)
+- Trained on all data: [mode=all](https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/svm_multiwoz_all.zip)
+- Trained on user utterances only: [mode=usr](https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/svm_multiwoz_usr.zip)
+- Trained on system utterances only: [mode=sys](https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/svm_multiwoz_usr.zip)
 
 #### Evaluate
 
diff --git a/convlab/nlu/svm/multiwoz/nlu.py b/convlab/nlu/svm/multiwoz/nlu.py
index 3ac21509b741b6680f3c591ceb3f208930cef2df..4695777fb3199236cf83a155249af1994ccef845 100755
--- a/convlab/nlu/svm/multiwoz/nlu.py
+++ b/convlab/nlu/svm/multiwoz/nlu.py
@@ -4,9 +4,9 @@ For more information, please refer to ``convlab/nlu/svm/multiwoz/README.md``
 
 Trained models can be download on:
 
-- https://convlab.blob.core.windows.net/convlab-2/svm_multiwoz_all.zip
-- https://convlab.blob.core.windows.net/convlab-2/svm_multiwoz_sys.zip
-- https://convlab.blob.core.windows.net/convlab-2/svm_multiwoz_usr.zip
+- https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/svm_multiwoz_all.zip
+- https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/svm_multiwoz_sys.zip
+- https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/svm_multiwoz_usr.zip
 
 Reference:
 
@@ -34,7 +34,7 @@ class SVMNLU(NLU):
             nlu = SVMNLU(mode='all')
         """
         assert mode == 'usr' or mode == 'sys' or mode == 'all'
-        model_file = 'https://convlab.blob.core.windows.net/convlab-2/svm_multiwoz_{}.zip'.format(mode)
+        model_file = 'https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/svm_multiwoz_{}.zip'.format(mode)
         config_file = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'configs/multiwoz_{}.cfg'.format(mode))
         self.config = configparser.ConfigParser()
         self.config.read(config_file)
diff --git a/convlab/policy/dqn/dqn.py b/convlab/policy/dqn/dqn.py
index ff808e4e9aa853df73edc21e74c42a48ef39902c..eca90f5378c162277d54ea6d963d28c0f9378dc9 100644
--- a/convlab/policy/dqn/dqn.py
+++ b/convlab/policy/dqn/dqn.py
@@ -179,7 +179,7 @@ class DQN(Policy):
     @classmethod
     def from_pretrained(cls,
                         archive_file="",
-                        model_file="https://convlab.blob.core.windows.net/convlab-2/dqn_policy_multiwoz.zip",
+                        model_file="https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/dqn_policy_multiwoz.zip",
                         is_train=False,
                         dataset='Multiwoz'):
         with open(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'config.json'), 'r') as f:
diff --git a/convlab/policy/dqn/multiwoz/dqn_policy.py b/convlab/policy/dqn/multiwoz/dqn_policy.py
index c8fab2c9b6163e1ac7cdd4888e33be4afb05392b..313fe5240eff90fce40d6770137da59f0372c91c 100644
--- a/convlab/policy/dqn/multiwoz/dqn_policy.py
+++ b/convlab/policy/dqn/multiwoz/dqn_policy.py
@@ -7,7 +7,7 @@ class DQNPolicy(DQN):
                 is_train=False,
                 dataset="Multiwoz",
                 archive_file="",
-                model_file="https://convlab.blob.core.windows.net/convlab-2/dqn_policy_multiwoz.zip"):
+                model_file="https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/dqn_policy_multiwoz.zip"):
         super().__init__(is_train=is_train, dataset=dataset)
         with open(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'config.json'), 'r') as f:
             cfg = json.load(f)
diff --git a/convlab/policy/gdpl/gdpl.py b/convlab/policy/gdpl/gdpl.py
index eacf80efa209b9aa43dc78b9cb5b8bf697afb618..9931aa570fa59b635994ed0454bc4b1193173c21 100755
--- a/convlab/policy/gdpl/gdpl.py
+++ b/convlab/policy/gdpl/gdpl.py
@@ -271,7 +271,7 @@ class GDPL(Policy):
     @classmethod
     def from_pretrained(cls,
                         archive_file="",
-                        model_file="https://convlab.blob.core.windows.net/convlab-2/gdpl_policy_multiwoz.zip",
+                        model_file="https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/gdpl_policy_multiwoz.zip",
                         is_train=False,
                         dataset='Multiwoz'):
         with open(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'config.json'), 'r') as f:
diff --git a/convlab/policy/gdpl/multiwoz/README.md b/convlab/policy/gdpl/multiwoz/README.md
index c79fdc7153a050cfe6f6c54dbd8b1a2d81814dfd..a4ddac1dc4665fa8de5d884600093dc01686df8f 100755
--- a/convlab/policy/gdpl/multiwoz/README.md
+++ b/convlab/policy/gdpl/multiwoz/README.md
@@ -32,7 +32,7 @@ Performance:
 
 The model can be downloaded from: 
 
-https://convlab.blob.core.windows.net/convlab-2/gdpl_policy_multiwoz.zip
+https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/gdpl_policy_multiwoz.zip
 
 ## Reference
 
diff --git a/convlab/policy/gdpl/multiwoz/gdpl_policy.py b/convlab/policy/gdpl/multiwoz/gdpl_policy.py
index f7f82fd619c1d04d28ffa51ccd62eb7a3a732714..a3fdd1fafaea69462d49df5a731429cfb63ea689 100755
--- a/convlab/policy/gdpl/multiwoz/gdpl_policy.py
+++ b/convlab/policy/gdpl/multiwoz/gdpl_policy.py
@@ -7,7 +7,7 @@ class GDPLPolicy(GDPL):
                  is_train=False,
                  dataset='Multiwoz',
                  archive_file="",
-                 model_file="https://convlab.blob.core.windows.net/convlab-2/gdpl_policy_multiwoz.zip"):
+                 model_file="https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/gdpl_policy_multiwoz.zip"):
         super().__init__(is_train=is_train, dataset=dataset)
         with open(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'config.json'), 'r') as f:
             cfg = json.load(f)
diff --git a/convlab/policy/hdsa/multiwoz/hdsa.py b/convlab/policy/hdsa/multiwoz/hdsa.py
index 6335fa8c81bfa872843e49adedea81926ed7257c..2d2e941ac6406abbb66ffa8134303ee4bd815c48 100755
--- a/convlab/policy/hdsa/multiwoz/hdsa.py
+++ b/convlab/policy/hdsa/multiwoz/hdsa.py
@@ -10,7 +10,7 @@ DEFAULT_ARCHIVE_FILE = os.path.join(DEFAULT_DIRECTORY, "hdsa.zip")
 
 class HDSA(Policy):
 
-    def __init__(self, archive_file=DEFAULT_ARCHIVE_FILE, model_file="https://convlab.blob.core.windows.net/convlab-2/hdsa.zip", use_cuda=False):
+    def __init__(self, archive_file=DEFAULT_ARCHIVE_FILE, model_file="https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/hdsa.zip", use_cuda=False):
         self.predictor = HDSA_predictor(archive_file, model_file, use_cuda)
         self.generator = HDSA_generator(archive_file, model_file, use_cuda)
 
diff --git a/convlab/policy/larl/multiwoz/larl.py b/convlab/policy/larl/multiwoz/larl.py
index 207be82741a7a4858f2d7fb363ac0207c4286435..f98e948ccdb67673714c07ea1be8b5c8570da61d 100755
--- a/convlab/policy/larl/multiwoz/larl.py
+++ b/convlab/policy/larl/multiwoz/larl.py
@@ -238,7 +238,7 @@ class LaRL(Policy):
     def __init__(self,
                  archive_file=DEFAULT_ARCHIVE_FILE,
                  cuda_device=DEFAULT_CUDA_DEVICE,
-                 model_file="https://convlab.blob.core.windows.net/convlab-2/larl.zip"):
+                 model_file="https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/larl.zip"):
 
         if not os.path.isfile(archive_file):
             if not model_file:
diff --git a/convlab/policy/mdrg/multiwoz/auto_download.py b/convlab/policy/mdrg/multiwoz/auto_download.py
index 6533ae5059eea486416c0ab1f68a0079419b00dd..4c3d9503d0feef44c2d933477eb233fec9ff2e84 100755
--- a/convlab/policy/mdrg/multiwoz/auto_download.py
+++ b/convlab/policy/mdrg/multiwoz/auto_download.py
@@ -11,9 +11,9 @@ def auto_download():
     db_path = os.path.join(os.path.dirname(__file__), 'db')
     root_path = os.path.dirname(__file__)
 
-    urls = {model_path: 'https://convlab.blob.core.windows.net/convlab-2/mdrg_model.zip',
-            data_path: 'https://convlab.blob.core.windows.net/convlab-2/mdrg_data.zip',
-            db_path: 'https://convlab.blob.core.windows.net/convlab-2/mdrg_db.zip'}
+    urls = {model_path: 'https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/mdrg_model.zip',
+            data_path: 'https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/mdrg_data.zip',
+            db_path: 'https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/mdrg_db.zip'}
 
     for path in [model_path, data_path, db_path]:
         if not os.path.exists(path):
diff --git a/convlab/policy/mdrg/multiwoz/utils/dbPointer.py b/convlab/policy/mdrg/multiwoz/utils/dbPointer.py
index 4f4cbf39a086c0bcd323cd63c4b86e381d6ffead..efa49e2b360a997516c8b8190e0293bb3526e0dc 100755
--- a/convlab/policy/mdrg/multiwoz/utils/dbPointer.py
+++ b/convlab/policy/mdrg/multiwoz/utils/dbPointer.py
@@ -13,9 +13,9 @@ def auto_download():
     db_path = os.path.join(os.path.dirname(__file__), os.pardir, 'db')
     root_path = os.path.join(os.path.dirname(__file__), os.pardir)
 
-    urls = {model_path: 'https://convlab.blob.core.windows.net/convlab-2/mdrg_model.zip',
-            data_path: 'https://convlab.blob.core.windows.net/convlab-2/mdrg_data.zip',
-            db_path: 'https://convlab.blob.core.windows.net/convlab-2/mdrg_db.zip'}
+    urls = {model_path: 'https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/mdrg_model.zip',
+            data_path: 'https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/mdrg_data.zip',
+            db_path: 'https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/mdrg_db.zip'}
 
     for path in [model_path, data_path, db_path]:
         if not os.path.exists(path):
diff --git a/convlab/policy/mdrg/multiwoz/utils/dbquery.py b/convlab/policy/mdrg/multiwoz/utils/dbquery.py
index 6e79110167983f43153e1ce9131c541856ebfa08..10cd184535e078888ad12be7c58910e0f2a11812 100755
--- a/convlab/policy/mdrg/multiwoz/utils/dbquery.py
+++ b/convlab/policy/mdrg/multiwoz/utils/dbquery.py
@@ -11,9 +11,9 @@ def auto_download():
     db_path = os.path.join(os.path.dirname(__file__), os.pardir, 'db')
     root_path = os.path.join(os.path.dirname(__file__), os.pardir)
 
-    urls = {model_path: 'https://convlab.blob.core.windows.net/convlab-2/mdrg_model.zip',
-            data_path: 'https://convlab.blob.core.windows.net/convlab-2/mdrg_data.zip',
-            db_path: 'https://convlab.blob.core.windows.net/convlab-2/mdrg_db.zip'}
+    urls = {model_path: 'https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/mdrg_model.zip',
+            data_path: 'https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/mdrg_data.zip',
+            db_path: 'https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/mdrg_db.zip'}
 
     for path in [model_path, data_path, db_path]:
         if not os.path.exists(path):
diff --git a/convlab/policy/mle/mle.py b/convlab/policy/mle/mle.py
index 5dbfe113a405ce932d6d33ce0b62f5c8ab3310a0..ee7fafb4089196ac66a757bedbc5253d6bf4b325 100755
--- a/convlab/policy/mle/mle.py
+++ b/convlab/policy/mle/mle.py
@@ -88,7 +88,7 @@ class MLE(MLEAbstract):
     @classmethod
     def from_pretrained(cls,
                         archive_file=DEFAULT_ARCHIVE_FILE,
-                        model_file='https://convlab.blob.core.windows.net/convlab-2/mle_policy_multiwoz.zip'):
+                        model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/mle_policy_multiwoz.zip'):
         with open(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'config.json'), 'r') as f:
             cfg = json.load(f)
         model = cls()
@@ -99,7 +99,7 @@ class MLE(MLEAbstract):
 class MLEPolicy(MLE):
     def __init__(self,
                  archive_file=DEFAULT_ARCHIVE_FILE,
-                 model_file='https://convlab.blob.core.windows.net/convlab-2/mle_policy_multiwoz.zip'):
+                 model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/mle_policy_multiwoz.zip'):
         super().__init__()
         if model_file:
             with open(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'config.json'), 'r') as f:
diff --git a/convlab/policy/pg/multiwoz/README.md b/convlab/policy/pg/multiwoz/README.md
index 921838af789ebbdaacfedc54af2824345e8d58c3..d6461616976ef54b6510c88cf4b9c53a6b1b6b40 100755
--- a/convlab/policy/pg/multiwoz/README.md
+++ b/convlab/policy/pg/multiwoz/README.md
@@ -30,7 +30,7 @@ Performance:
 
 The model can be downloaded from: 
 
-https://convlab.blob.core.windows.net/convlab-2/pg_policy_multiwoz.zip
+https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/pg_policy_multiwoz.zip
 
 ## Reference
 
diff --git a/convlab/policy/pg/multiwoz/pg_policy.py b/convlab/policy/pg/multiwoz/pg_policy.py
index 12c95048f55422a11eb3fa34fc0f1d7b40f5a998..5a09078654ea622a96a4b4c83a147e17b862c4fa 100755
--- a/convlab/policy/pg/multiwoz/pg_policy.py
+++ b/convlab/policy/pg/multiwoz/pg_policy.py
@@ -4,7 +4,7 @@ import json
 
 class PGPolicy(PG):
     def __init__(self, is_train=False, dataset='Multiwoz', archive_file="",
-                        model_file="https://convlab.blob.core.windows.net/convlab-2/pg_policy_multiwoz.zip"):
+                        model_file="https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/pg_policy_multiwoz.zip"):
         super().__init__(is_train=is_train, dataset=dataset)
         with open(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'config.json'), 'r') as f:
             cfg = json.load(f)
diff --git a/convlab/policy/pg/pg.py b/convlab/policy/pg/pg.py
index dd47f44f0e733cf43fee69db135dbfef5f0ff614..060be694d06748bae2e737ba81853b3b0de2c29d 100755
--- a/convlab/policy/pg/pg.py
+++ b/convlab/policy/pg/pg.py
@@ -203,7 +203,7 @@ class PG(Policy):
     @classmethod
     def from_pretrained(cls,
                         archive_file="",
-                        model_file="https://convlab.blob.core.windows.net/convlab-2/pg_policy_multiwoz.zip"):
+                        model_file="https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/pg_policy_multiwoz.zip"):
         with open(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'config.json'), 'r') as f:
             cfg = json.load(f)
         model = cls()
diff --git a/convlab/policy/ppo/multiwoz/README.md b/convlab/policy/ppo/multiwoz/README.md
index 648b7479e99da954508a6ea7e80f5784b5fcff65..ea6560cb880fa91b345583a6bc0adf1ce82c0214 100755
--- a/convlab/policy/ppo/multiwoz/README.md
+++ b/convlab/policy/ppo/multiwoz/README.md
@@ -32,7 +32,7 @@ Performance:
 
 The model can be downloaded from: 
 
-https://convlab.blob.core.windows.net/convlab-2/ppo_policy_multiwoz.zip
+https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/ppo_policy_multiwoz.zip
 
 ## Reference
 
diff --git a/convlab/policy/ppo/multiwoz/ppo_policy.py b/convlab/policy/ppo/multiwoz/ppo_policy.py
index 42e3b353350fcbbe4c38ec3ce9532783c6e91b84..d8ebcf5ef232149d9311483770f79fda5e74420f 100755
--- a/convlab/policy/ppo/multiwoz/ppo_policy.py
+++ b/convlab/policy/ppo/multiwoz/ppo_policy.py
@@ -6,7 +6,7 @@ class PPOPolicy(PPO):
     def __init__(self,  is_train=False, 
                         dataset='Multiwoz', 
                         archive_file="",
-                        model_file="https://convlab.blob.core.windows.net/convlab-2/ppo_policy_multiwoz.zip"
+                        model_file="https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/ppo_policy_multiwoz.zip"
                         ):
         super().__init__(is_train=is_train, dataset=dataset)
         with open(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'config.json'), 'r') as f:
diff --git a/convlab/policy/rule/multiwoz/policy_agenda_multiwoz.py b/convlab/policy/rule/multiwoz/policy_agenda_multiwoz.py
index a1b372f5531e4c350a62b5db1d408743b45b8a92..625fbb9f2ded3ba44ea4fcb47b06ccb380e61c31 100755
--- a/convlab/policy/rule/multiwoz/policy_agenda_multiwoz.py
+++ b/convlab/policy/rule/multiwoz/policy_agenda_multiwoz.py
@@ -983,7 +983,7 @@ if __name__ == '__main__':
     # sys_agent = PipelineAgent(sys_nlu, sys_dst, sys_policy, sys_nlg, name='sys')
 
     # user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-    #                    model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+    #                    model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # user_dst = None
     # user_policy = RulePolicy(character='usr')
     # user_nlg = TemplateNLG(is_user=True)
@@ -1002,7 +1002,7 @@ if __name__ == '__main__':
     dst = RuleDST()
     #
     # user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-    #                    model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+    #                    model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     #
     goal_generator = GoalGenerator()
     # while True:
diff --git a/convlab/policy/vhus/camrest/vhus.py b/convlab/policy/vhus/camrest/vhus.py
index d0403592982762742996751fd9e080425e9483f6..65a6568b8ae07639702bb8e4133293efb4abf775 100755
--- a/convlab/policy/vhus/camrest/vhus.py
+++ b/convlab/policy/vhus/camrest/vhus.py
@@ -16,7 +16,7 @@ class UserPolicyVHUS(UserPolicyVHUSAbstract):
 
     def __init__(self,
                  archive_file=DEFAULT_ARCHIVE_FILE,
-                 model_file='https://convlab.blob.core.windows.net/convlab-2/vhus_simulator_camrest.zip'):
+                 model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/vhus_simulator_camrest.zip'):
         with open(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'config.json'), 'r') as f:
             config = json.load(f)
         manager = UserDataManager()
diff --git a/convlab/policy/vhus/multiwoz/README.md b/convlab/policy/vhus/multiwoz/README.md
index a0c23a0a95a99cbb8442e04ed5f2a390c4640dc5..1b3a6f1d2b4bfbaed0163fb32914bfe452cb0933 100755
--- a/convlab/policy/vhus/multiwoz/README.md
+++ b/convlab/policy/vhus/multiwoz/README.md
@@ -31,7 +31,7 @@ Performance:
 
 The model can be downloaded from: 
 
-https://convlab.blob.core.windows.net/convlab-2/vhus_simulator_multiwoz.zip
+https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/vhus_simulator_multiwoz.zip
 
 ## Reference
 
diff --git a/convlab/policy/vhus/multiwoz/vhus.py b/convlab/policy/vhus/multiwoz/vhus.py
index 85cd999e3c7ecafcad25c28e7779ee4d51a813f9..fc582bab92c99811a56c5ffc63f8769de677e1f6 100755
--- a/convlab/policy/vhus/multiwoz/vhus.py
+++ b/convlab/policy/vhus/multiwoz/vhus.py
@@ -18,7 +18,7 @@ class UserPolicyVHUS(UserPolicyVHUSAbstract):
     def __init__(self,
                  load_from_zip=False,
                  archive_file=DEFAULT_ARCHIVE_FILE,
-                 model_file='https://convlab.blob.core.windows.net/convlab-2/vhus_simulator_multiwoz.zip'):
+                 model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/vhus_simulator_multiwoz.zip'):
         with open(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'config.json'), 'r') as f:
             config = json.load(f)
         manager = UserDataManager()
diff --git a/examples/agent_examples/test_BERTNLU-RuleDST-DQNPolicy-TemplateNLG.py b/examples/agent_examples/test_BERTNLU-RuleDST-DQNPolicy-TemplateNLG.py
index 03c8b3e2e865626f0df9b456dcb9674e26b20657..3361188892febc786bad1589b8cf56194ae94e83 100644
--- a/examples/agent_examples/test_BERTNLU-RuleDST-DQNPolicy-TemplateNLG.py
+++ b/examples/agent_examples/test_BERTNLU-RuleDST-DQNPolicy-TemplateNLG.py
@@ -54,7 +54,7 @@ def test_end2end():
 
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-                       model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+                       model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = None
     # rule policy
diff --git a/examples/agent_examples/test_BERTNLU-RuleDST-GDPLPolicy-TemplateNLG.py b/examples/agent_examples/test_BERTNLU-RuleDST-GDPLPolicy-TemplateNLG.py
index f65273054f59719ac0cf0146d4030a5e2d4ba339..f722a85cf7abe020a14119e2bde3fcdf3e3b075b 100755
--- a/examples/agent_examples/test_BERTNLU-RuleDST-GDPLPolicy-TemplateNLG.py
+++ b/examples/agent_examples/test_BERTNLU-RuleDST-GDPLPolicy-TemplateNLG.py
@@ -54,7 +54,7 @@ def test_end2end():
 
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-                       model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+                       model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = None
     # rule policy
diff --git a/examples/agent_examples/test_BERTNLU-RuleDST-HDSA.py b/examples/agent_examples/test_BERTNLU-RuleDST-HDSA.py
index 0b0e35ad4a02ddf925006dcb991b2723f59b78e2..984c1f057c44c4840128f1bf8763778da5ce4fa9 100755
--- a/examples/agent_examples/test_BERTNLU-RuleDST-HDSA.py
+++ b/examples/agent_examples/test_BERTNLU-RuleDST-HDSA.py
@@ -54,7 +54,7 @@ def test_end2end():
 
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-                       model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+                       model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = None
     # rule policy
diff --git a/examples/agent_examples/test_BERTNLU-RuleDST-LaRL.py b/examples/agent_examples/test_BERTNLU-RuleDST-LaRL.py
index b394c9ae9ee93e508e3ea3cf6faa40acd829fcc6..b268373714c76d8320ab6c0eb56c9df5cb18efcb 100755
--- a/examples/agent_examples/test_BERTNLU-RuleDST-LaRL.py
+++ b/examples/agent_examples/test_BERTNLU-RuleDST-LaRL.py
@@ -56,7 +56,7 @@ def test_end2end():
 
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-                       model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+                       model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = None
     # rule policy
diff --git a/examples/agent_examples/test_BERTNLU-RuleDST-MDRG.py b/examples/agent_examples/test_BERTNLU-RuleDST-MDRG.py
index 21b2b8ffd3c327ec360af636ec6030ff49ffe6de..c2637a3a127215f0f3ea9f0fbe9e7dff66792106 100755
--- a/examples/agent_examples/test_BERTNLU-RuleDST-MDRG.py
+++ b/examples/agent_examples/test_BERTNLU-RuleDST-MDRG.py
@@ -54,7 +54,7 @@ def test_end2end():
 
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-                       model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+                       model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = None
     # rule policy
diff --git a/examples/agent_examples/test_BERTNLU-RuleDST-MLEPolicy-TemplateNLG.py b/examples/agent_examples/test_BERTNLU-RuleDST-MLEPolicy-TemplateNLG.py
index 935ded7da9141eba1f6598173532f68d2264a8f8..f9b8fe27f6cd14524e1e2a5146fd68d2a830bac2 100755
--- a/examples/agent_examples/test_BERTNLU-RuleDST-MLEPolicy-TemplateNLG.py
+++ b/examples/agent_examples/test_BERTNLU-RuleDST-MLEPolicy-TemplateNLG.py
@@ -54,7 +54,7 @@ def test_end2end():
 
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-                       model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+                       model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = None
     # rule policy
diff --git a/examples/agent_examples/test_BERTNLU-RuleDST-PGPolicy-TemplateNLG.py b/examples/agent_examples/test_BERTNLU-RuleDST-PGPolicy-TemplateNLG.py
index 8eff5789b634d7bab4f99eceb1f329e452178a80..72455ed73b40b9654e524c4ce14409b868e6294e 100755
--- a/examples/agent_examples/test_BERTNLU-RuleDST-PGPolicy-TemplateNLG.py
+++ b/examples/agent_examples/test_BERTNLU-RuleDST-PGPolicy-TemplateNLG.py
@@ -54,7 +54,7 @@ def test_end2end():
 
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-                       model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+                       model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = None
     # rule policy
diff --git a/examples/agent_examples/test_BERTNLU-RuleDST-PPOPolicy-TemplateNLG.py b/examples/agent_examples/test_BERTNLU-RuleDST-PPOPolicy-TemplateNLG.py
index 309dd4f3cd7ecb1c8447854d1152fbb9dbb68ba5..a6d8713c3a23a95d513f7f61a5b7e581f0d1928d 100755
--- a/examples/agent_examples/test_BERTNLU-RuleDST-PPOPolicy-TemplateNLG.py
+++ b/examples/agent_examples/test_BERTNLU-RuleDST-PPOPolicy-TemplateNLG.py
@@ -54,7 +54,7 @@ def test_end2end():
 
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-                       model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+                       model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = None
     # rule policy
diff --git a/examples/agent_examples/test_BERTNLU-RuleDST-RulePolicy-SCLSTM.py b/examples/agent_examples/test_BERTNLU-RuleDST-RulePolicy-SCLSTM.py
index d9f48546f0747169aacab7e674b47b25d8887956..aac3ee712d4933b97d5d31eea6d4a858179735aa 100755
--- a/examples/agent_examples/test_BERTNLU-RuleDST-RulePolicy-SCLSTM.py
+++ b/examples/agent_examples/test_BERTNLU-RuleDST-RulePolicy-SCLSTM.py
@@ -54,7 +54,7 @@ def test_end2end():
 
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-                       model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+                       model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = None
     # rule policy
diff --git a/examples/agent_examples/test_BERTNLU-RuleDST-RulePolicy-TemplateNLG.py b/examples/agent_examples/test_BERTNLU-RuleDST-RulePolicy-TemplateNLG.py
index 31f9ca263d79b4f3a522769c0a618b2f0c30bd00..51d666ba6ff3b7c3f1fd9c5d6da635182543afe9 100755
--- a/examples/agent_examples/test_BERTNLU-RuleDST-RulePolicy-TemplateNLG.py
+++ b/examples/agent_examples/test_BERTNLU-RuleDST-RulePolicy-TemplateNLG.py
@@ -56,7 +56,7 @@ def test_end2end(seed=20200202, n_dialogues=1000):
 
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-                       model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+                       model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = None
     # rule policy
diff --git a/examples/agent_examples/test_COMER_RulePolicy_TemplateNLG.py b/examples/agent_examples/test_COMER_RulePolicy_TemplateNLG.py
index 4db45060cf7e739ff94f80c83074494e19769278..6ed8150806600d059c205a701d584b50ede096dc 100755
--- a/examples/agent_examples/test_COMER_RulePolicy_TemplateNLG.py
+++ b/examples/agent_examples/test_COMER_RulePolicy_TemplateNLG.py
@@ -57,7 +57,7 @@ def test_end2end():
 
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-                       model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+                       model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = None
     # rule policy
diff --git a/examples/agent_examples/test_DAMD.py b/examples/agent_examples/test_DAMD.py
index e1f47d2ab250007550dcc23688a4564b1b5d2224..dd5b128dfc881c1f44a88e8969ea86819bd6153b 100755
--- a/examples/agent_examples/test_DAMD.py
+++ b/examples/agent_examples/test_DAMD.py
@@ -55,7 +55,7 @@ def test_end2end():
 
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-                       model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+                       model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = None
     # rule policy
diff --git a/examples/agent_examples/test_LAVA.py b/examples/agent_examples/test_LAVA.py
index d5b592c2e09f8c7f73ebf925abdf52b1a4be24b6..4172ef5aad0f67974fbcd4c7b6b54ed884c941e1 100755
--- a/examples/agent_examples/test_LAVA.py
+++ b/examples/agent_examples/test_LAVA.py
@@ -72,7 +72,7 @@ def test_end2end(args, model_dir):
     elif args.dst_type=="trippy":
         sys_dst = TRIPPY(model_type='roberta',
                     model_path='/gpfs/project/lubis/convlab-2/pre-trained-models/trippy-checkpoint-10647',
-                    nlu_path='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_all_context.zip')
+                    nlu_path='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_all_context.zip')
     elif args.dst_type=="setsumbt":
         sys_dst = SetSUMBTTracker(model_type='roberta',
                         model_path='/gpfs/project/lubis/convlab-2/pre-trained-models/end2')
diff --git a/examples/agent_examples/test_MDBT_RulePolicy_TemplateNLG.py b/examples/agent_examples/test_MDBT_RulePolicy_TemplateNLG.py
index 388f8332c7c0f88749df7263c7c74be5a4afbd23..f7f42c1740da49efd0455f697a418a66cacfddb7 100755
--- a/examples/agent_examples/test_MDBT_RulePolicy_TemplateNLG.py
+++ b/examples/agent_examples/test_MDBT_RulePolicy_TemplateNLG.py
@@ -55,7 +55,7 @@ def test_end2end():
 
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-                       model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+                       model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = None
     # rule policy
diff --git a/examples/agent_examples/test_MILU-RuleDST-RulePolicy-TemplateNLG.py b/examples/agent_examples/test_MILU-RuleDST-RulePolicy-TemplateNLG.py
index fbe8f08257f8a87826a22f8e8191f91b41c82f52..c869b3f060128b6c25abe561cf2982320cf39a02 100755
--- a/examples/agent_examples/test_MILU-RuleDST-RulePolicy-TemplateNLG.py
+++ b/examples/agent_examples/test_MILU-RuleDST-RulePolicy-TemplateNLG.py
@@ -54,7 +54,7 @@ def test_end2end():
 
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-                       model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+                       model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = None
     # rule policy
diff --git a/examples/agent_examples/test_NLG_end2end.py b/examples/agent_examples/test_NLG_end2end.py
index a1b0e0c0b6a926682f087e7e1d4e0a593a5009f2..67039fccd332d68ef74d1c20bacf5ca3965b8dba 100644
--- a/examples/agent_examples/test_NLG_end2end.py
+++ b/examples/agent_examples/test_NLG_end2end.py
@@ -57,7 +57,7 @@ def test_end2end(seed=20200202, n_dialogues=1000, nlg='TemplateNLG'):
     
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-                       model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+                       model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = None
     # rule policy
diff --git a/examples/agent_examples/test_SUMBT-LaRL.py b/examples/agent_examples/test_SUMBT-LaRL.py
index 6c8cea066f927e5deaefdfd084b0abcf313c3ee6..3f2e9a28912114ba931493b99c78e6300b80f6b4 100755
--- a/examples/agent_examples/test_SUMBT-LaRL.py
+++ b/examples/agent_examples/test_SUMBT-LaRL.py
@@ -54,7 +54,7 @@ def test_end2end():
 
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-                       model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+                       model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = None
     # rule policy
diff --git a/examples/agent_examples/test_SVMNLU-RuleDST-RulePolicy-TemplateNLG.py b/examples/agent_examples/test_SVMNLU-RuleDST-RulePolicy-TemplateNLG.py
index 5158532ba1c27e974a69683ef3181512c8566875..5dbf7d68f3fb6967df805acb61cc6ba403729b0e 100755
--- a/examples/agent_examples/test_SVMNLU-RuleDST-RulePolicy-TemplateNLG.py
+++ b/examples/agent_examples/test_SVMNLU-RuleDST-RulePolicy-TemplateNLG.py
@@ -54,7 +54,7 @@ def test_end2end():
 
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-                       model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+                       model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = None
     # rule policy
diff --git a/examples/agent_examples/test_Sequicity.py b/examples/agent_examples/test_Sequicity.py
index 8d1bbfab15a3e586a7bec7feb851daa564b08f00..49eb7c7ad7253d44e092ef884f21ae909e2fd678 100755
--- a/examples/agent_examples/test_Sequicity.py
+++ b/examples/agent_examples/test_Sequicity.py
@@ -55,7 +55,7 @@ def test_end2end():
 
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-                       model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+                       model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = None
     # rule policy
diff --git a/examples/agent_examples/test_TRADE_RulePolicy_TemplateNLG.py b/examples/agent_examples/test_TRADE_RulePolicy_TemplateNLG.py
index a67e6fb04a0d924bcdfbb0b763cf79f869a3b7ae..2afe089451151ce6c53e0fd5a1c7dc096672e147 100755
--- a/examples/agent_examples/test_TRADE_RulePolicy_TemplateNLG.py
+++ b/examples/agent_examples/test_TRADE_RulePolicy_TemplateNLG.py
@@ -55,7 +55,7 @@ def test_end2end():
 
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-                       model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+                       model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = None
     # rule policy
diff --git a/examples/agent_examples/test_end2end.py b/examples/agent_examples/test_end2end.py
index 5b0ad3f6892e24440f3f92cbace83aedda9c626d..38e144f8767245bfe73bf52059f2467ae3fb5e40 100755
--- a/examples/agent_examples/test_end2end.py
+++ b/examples/agent_examples/test_end2end.py
@@ -60,7 +60,7 @@ def test_end2end():
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='usr')
     # user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-    #                    model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+    #                    model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = RuleDST()
     # user_dst = None
diff --git a/tutorials/Train_RL_Policies/lava_train.py b/tutorials/Train_RL_Policies/lava_train.py
index 3ccf8a6df53ad0f776d5cea5f29e500c25393801..ff6d823a4dfb41799faa824003e0b9301f8ec288 100755
--- a/tutorials/Train_RL_Policies/lava_train.py
+++ b/tutorials/Train_RL_Policies/lava_train.py
@@ -260,7 +260,7 @@ if __name__ == '__main__':
     ##USER##
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-                       model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+                       model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = None
     # rule policy
diff --git a/tutorials/Train_RL_Policies/lava_train_TUS.py b/tutorials/Train_RL_Policies/lava_train_TUS.py
index 3eee925ac2ba80b407e2621a116f069d3eb2dcb1..22a1f96b0a405956425cff6abda0511898331546 100755
--- a/tutorials/Train_RL_Policies/lava_train_TUS.py
+++ b/tutorials/Train_RL_Policies/lava_train_TUS.py
@@ -279,7 +279,7 @@ if __name__ == '__main__':
     ##USER##
     # BERT nlu trained on sys utterance
     user_nlu = BERTNLU(mode='sys', config_file='multiwoz_sys_context.json',
-                       model_file='https://convlab.blob.core.windows.net/convlab-2/bert_multiwoz_sys_context.zip')
+                       model_file='https://huggingface.co/ConvLab/ConvLab-2_models/resolve/main/bert_multiwoz_sys_context.zip')
     # not use dst
     user_dst = None
     # specify the user config