numpy tensorflow gradio pillow matplotlib