# 导入 Gradio 库并命名为 gr import gradio as gr # 从 transformers 库中导入 pipeline 函数 from transformers import pipeline # 创建一个图像分类的管道,使用 "julien-c/hotdog-not-hotdog" 模型 pipeline = pipeline(task="image-classification", model="julien-c/hotdog-not-hotdog") # 定义预测函数,接受输入图像 def predict(input_img): # 使用管道对输入图像进行预测 predictions = pipeline(input_img) # 返回处理后的图像和预测结果的标签及分数 return input_img, {p["label"]: p["score"] for p in predictions} # 创建 Gradio 界面 gradio_app = gr.Interface( # 指定预测函数 predict, # 定义输入组件为图像,允许上传或使用摄像头,输出类型为 PIL 图像 inputs=gr.Image(label="选择热狗候选图片", sources=['upload', 'webcam'], type="pil"), # 定义输出组件为处理后的图像和标签,显示前两个结果 outputs=[gr.Image(label="处理后的图像"), gr.Label(label="结果", num_top_classes=2)], # 设置界面标题 title="是热狗吗?", ) # 如果当前模块是主模块,则启动 Gradio 应用 if __name__ == "__main__": gradio_app.launch()