import gradio as gr
# 创建 Block 界面(更灵活的界面布局)
with gr.Blocks() as demo:
# 标题(可选,让界面更好看)
gr.Markdown("# 最简单的 Gradio 输入框")
# 文本输入框
gr.Textbox(label="输入框", placeholder="请输入内容")
# 启动 Web 界面
if __name__ == '__main__':
demo.launch()
复制代码
#gr.Button => 创建一个按钮,可以用于绑定点击事件
import gradio as gr
# 创建Gradio Blocks应用
with gr.Blocks() as demo:
# 创建一个按钮
gr.Button("提交")
if __name__ == '__main__':
demo.launch()
复制代码
# gr.slider => 创建一个滑块
# 属性:
# minimum => 最小值
# maximum => 最大值
# value => 默认值
# label => 选择数值
import gradio as gr
def update_output(value):
return f"您选择的数值是:{value}"
# 创建Gradio Blocks应用
with gr.Blocks() as demo:
# 创建一个滑块
slider = gr.Slider(minimum=0, maximum=100, value=50, label="选择数值")
# 创建输出文本框
output = gr.Textbox(label="结果")
# 绑定滑块变化事件
slider.change(update_output, inputs=slider, outputs=output)
if __name__ == '__main__':
demo.launch()
复制代码
#下拉框
import gradio as gr
# 创建Gradio Blocks应用
with gr.Blocks() as demo:
dropdown = gr.Dropdown(choices=["选项1", "选项2", "选项3"], label="选择选项")
output = gr.Textbox(label="结果")
dropdown.change(lambda x: f"您选择的选项是:{x}", inputs=dropdown, outputs=output)
if __name__ == '__main__':
demo.launch()
复制代码
#文件上传
import gradio as gr
# 创建Gradio Blocks应用
with gr.Blocks() as demo:
gr.File(label="上传文件",file_types=["image", "video", "audio", "text", "pdf"])
if __name__ == '__main__':
demo.launch()
复制代码
#gradio聊天机器人
import gradio as gr
# 创建Gradio Blocks应用
with gr.Blocks() as demo:
gr.Chatbot(label="聊天机器人")
gr.Textbox(label="输入")
gr.Button("提交")
gr.Button("清空")
if __name__ == '__main__':
demo.launch()
复制代码
#row column
import gradio as gr
# 创建Gradio Blocks应用
with gr.Blocks() as demo:
with gr.Row():
# 左边的列,占4成的比例
with gr.Column(scale=4):
gr.Textbox(label="左边的输入框")
# 右边的列,占1成比例
with gr.Column(scale=1):
gr.Slider(minimum=0, maximum=100, value=50, label='右边滑块')
if __name__ == '__main__':
demo.launch()
复制代码
#click事件
import gradio as gr
def onbutton_output(value):
return f"您点击的数值是:{value}"
with gr.Blocks() as demo:
# 创建一个文本框,用于接受用户的输入
input_text = gr.Textbox(label="输入")
# 创建按钮
submit_button = gr.Button("提交")
# 创建一个文本框,用于显示结果
output_text = gr.Textbox(label="输出")
# 事件 => 点击事件 => click
submit_button.click(fn=onbutton_output, inputs=input_text, outputs=output_text)
if __name__ == '__main__':
demo.launch()
复制代码
#change事件
import gradio as gr
# 创建Gradio Blocks应用
with gr.Blocks() as demo:
dropdown = gr.Dropdown(choices=["选项1", "选项2", "选项3"], label="选择选项")
output = gr.Textbox(label="结果")
dropdown.change(lambda x: f"您选择的选项是:{x}", inputs=dropdown, outputs=output)
if __name__ == '__main__':
demo.launch()