Get Model


Provides utilities to download foolbox-compatible robust models to easily test attacks against them by simply providing a git-URL.


Instantiate a model:

>>> from foolbox import zoo
>>> url = ""
>>> model = zoo.get_model(url)  # doctest: +SKIP

Only works with a foolbox-zoo compatible repository. I.e. models need to have a file with a create()-function, which returns a foolbox-wrapped model.

Example repositories:

Parameters:url – URL to the git repository
Returns:a foolbox-wrapped model instance

Fetch Weights

foolbox.zoo.fetch_weights(weights_uri, unzip=False)[source]

Provides utilities to download and extract packages containing model weights when creating foolbox-zoo compatible repositories, if the weights are not part of the repository itself.


Download and unzip weights:

>>> from foolbox import zoo
>>> url = ''  # noqa F501
>>> weights_path = zoo.fetch_weights(url, unzip=True)
  • weights_uri – the URI to fetch the weights from
  • unzip – should be True if the file to be downloaded is a zipped package

local path where the weights have been downloaded and potentially unzipped to