class_docstr: The ServeGradio Class enables to quickly create a ``gradio`` based UI for your LightningApp.
  
  In the example below, the ``ServeGradio`` is subclassed to deploy ``AnimeGANv2``.
  
  .. literalinclude:: ../../../../examples/app/components/serve/gradio/app.py
      :language: python
  
  The result would be the following:
  
  .. image:: https://pl-public-data.s3.amazonaws.com/assets_lightning/anime_gan.gif
      :alt: Animation showing how to AnimeGANv2 UI would looks like.
code: def run(self, *args: Any, **kwargs: Any):
      if self._model is None:
          self._model = self.build_model()
      fn = partial(self.predict, *args, **kwargs)
      fn.__name__ = self.predict.__name__
      self.ready = True
      gradio.Interface(
          fn=fn,
          inputs=self.inputs,
          outputs=self.outputs,
          examples=self.examples,
          title=self.title,
          description=self.description,
          theme=self._theme,
      ).launch(
          server_name=self.host,
          server_port=self.port,
          enable_queue=self.enable_queue,
      )
  
file_path: pytorch-lightning/src/lightning/app/components/serve/gradio_server.py
imports: import abc
  from functools import partial
  from types import ModuleType
  from typing import Any, List, Optional
  from lightning.app.core.work import LightningWork
  from lightning.app.utilities.imports import _is_gradio_available, requires
label_desc: Use image node_id 5 for calling the ServeGradio obj's underlying member method code with example usage: obj.run() without return types