当前位置:   article > 正文

使用gradio搭建服务_gradio部署到服务器

gradio部署到服务器

使用参考gradio官方教程

  1. 三种基本输入:image,text,checkbox
  2. 多个输出,gr.outputs实现
import gradio as gr
import numpy as np
def predict(prompt,image,is_rain):
    print('prompt',type(prompt))
    print('image',type(image))
    print('is_rain',type(is_rain))

    image = np.fliplr(image)

    if prompt:
        output1 = prompt.upper()
        output2 = prompt.lower()
    else:
        output1=0
        output2 = 0
    return output1, output2, image

outputs = [
    gr.outputs.Textbox(label="Uppercase"),
    gr.outputs.Textbox(label="Lowercase"),
    gr.outputs.Image(type = 'numpy',label="Flipped Image")

]

demo = gr.Interface(
    fn=predict,
    inputs=[ "text",'image','checkbox'],
    outputs=outputs,
)
demo.launch()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30

输出

prompt <class 'str'>
image <class 'numpy.ndarray'>
is_rain <class 'bool'>
  • 1
  • 2
  • 3

在这里插入图片描述
图片左边3个框是输入部分,显示的名字为传入参数的名字。右边的三个框是输出部分,名字是output中定义的label

  • 如果要同一局域网的其他设备访问服务,设置最后启动的launch(server_name="0.0.0.0"),访问的时候将127.0.0.1更换成运行设备的ip

显示表格

import gradio as gr
import numpy as np

import gradio as gr
import pandas as pd

def display_table(image):
    data = {'Name': ['Alice', 'Bob', 'Charlie'],
            'Age': [25, 30, 35],
            'City': ['New York', 'London', 'Paris']}
    df = pd.DataFrame(data)
    
    return df


# iface.launch()

if __name__ == "__main__":
    # demo.launch()
    demo = gr.Interface(fn=display_table,inputs=['image'], outputs="dataframe")
    demo.launch(server_name="0.0.0.0") ## ip地址+端口号

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
  

闽ICP备14008679号