MCPcopy Create free account
hub / github.com/pytorch/pytorch / downloadModel

Function downloadModel

caffe2/python/models/download.py:83–129  ·  view source on GitHub ↗
(model, args)

Source from the content-addressed store, hash-verified

81
82
83def downloadModel(model, args):
84 # Figure out where to store the model
85 model_folder = '{folder}'.format(folder=model)
86 dir_path = os.path.dirname(os.path.realpath(__file__))
87 if args.install:
88 model_folder = '{dir_path}/{folder}'.format(dir_path=dir_path,
89 folder=model)
90
91 # Check if that folder is already there
92 if os.path.exists(model_folder) and not os.path.isdir(model_folder):
93 if not args.force:
94 raise Exception("Cannot create folder for storing the model,\
95 there exists a file of the same name.")
96 else:
97 print("Overwriting existing file! ({filename})"
98 .format(filename=model_folder))
99 os.remove(model_folder)
100 if os.path.isdir(model_folder):
101 if not args.force:
102 response = ""
103 query = "Model already exists, continue? [y/N] "
104 try:
105 response = raw_input(query)
106 except NameError:
107 response = input(query)
108 if response.upper() == 'N' or not response:
109 print("Cancelling download...")
110 sys.exit(0)
111 print("Overwriting existing folder! ({filename})".format(filename=model_folder))
112 deleteDirectory(model_folder)
113
114 # Now we can safely create the folder and download the model
115 os.makedirs(model_folder)
116 for f in ['predict_net.pb', 'init_net.pb']:
117 try:
118 downloadFromURLToFile(getURLFromName(model, f),
119 '{folder}/{f}'.format(folder=model_folder,
120 f=f))
121 except Exception as e:
122 print("Abort: {reason}".format(reason=str(e)))
123 print("Cleaning up...")
124 deleteDirectory(model_folder)
125 sys.exit(0)
126
127 if args.install:
128 os.symlink("{folder}/__sym_init__.py".format(folder=dir_path),
129 "{folder}/__init__.py".format(folder=model_folder))
130
131
132def validModelName(name):

Callers 1

download.pyFile · 0.85

Calls 8

ExceptionClass · 0.85
deleteDirectoryFunction · 0.85
downloadFromURLToFileFunction · 0.85
getURLFromNameFunction · 0.85
makedirsMethod · 0.80
formatMethod · 0.45
removeMethod · 0.45
exitMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…