def list(short): """ List language models available in the central repository. """ show_props = [ ("name", "Full name"), ("ref_url", "Reference URL"), ("maintainer", "Maintainer"), ] for _, model in Z.get_registry().items(): if short: click.echo(model.name) else: click.echo(crayons.normal(model.name, bold=True)) click.echo("\t{0} {1}".format( crayons.normal("Image URI: ", bold=True), model.image_uri)) props = [] for key, label in show_props: if hasattr(model, key): props.append((label, getattr(model, key))) dt = dateutil.parser.isoparse(model.datetime) props.append(("Last updated", dt.strftime("%Y-%m-%d"))) props.append( ("Size", "%.02fGB" % (model.size / 1024 / 1024 / 1024))) for label, value in props: click.echo("\t" + crayons.normal(label + ": ", bold=True) + value)
import sys import traceback import click import crayons import dateutil import h5py import lm_zoo as Z from lm_zoo import errors from lm_zoo.backends import BACKEND_DICT zoo = Z.get_registry() class State(object): def __init__(self): self.requested_backend = "docker" self.verbose = False self.model = None self.model_checkpoint = None pass_state = click.make_pass_decorator(State, ensure=True) class CLIRunner(click.Group): ERROR_STRINGS = { errors.BackendConnectionError: \
def lmzoo_model(request): return Z.get_registry()[request.param]
def dummy_model(): r = get_registry() return r[next(iter(r))]
def _prepare_model(model_ref, checkpoint=None): model = get_registry()[model_ref] if checkpoint is not None: return model.with_checkpoint(checkpoint) return model
def registry(): return Z.get_registry()