Skip to content

tinker_cookbook.renderers.register_renderer

tinker_cookbook.renderers.register_renderer(name, factory)

Register a custom renderer factory in the global registry.

Once registered, the renderer can be created by passing its name to get_renderer(). This is useful for adding support for custom model formats without modifying the built-in renderer registry.

Parameters:

  • name (str) – The renderer name. Use a namespaced format (e.g., "Org/model_renderer") to avoid collisions with built-in renderers.
  • factory (Callable[[Tokenizer, Any], Renderer]) – A callable that takes (tokenizer, image_processor) and returns a Renderer instance. image_processor may be None for text-only models.

Returns: None

def my_renderer_factory(tokenizer, image_processor=None):
return MyCustomRenderer(tokenizer)
register_renderer("Foo/foo_renderer", my_renderer_factory)
renderer = get_renderer("Foo/foo_renderer", tokenizer)