tinynn/graph/interop.py (19 lines of code) (raw):

import importlib def try_import(pkg): try: return importlib.import_module(pkg) except Exception: return None def register_on(name): def wrapper(func): name_parts = name.split('.') pkg = '.'.join(name_parts[:-1]) prop = name_parts[-1] mod = try_import(pkg) if mod is not None: cls = getattr(mod, prop) setattr(cls, '__repr__', func) return wrapper @register_on('transformers.models.opt.modeling_opt.OPTLearnedPositionalEmbedding') def __OPTLearnedPositionalEmbedding__repr__(self): return f"{self.__class__.__name__}({self.num_embeddings - self.offset}, {self.embedding_dim})"