Hub 文件
Gradio Spaces
並獲得增強的文件體驗
開始使用
Gradio Spaces
Gradio 提供了一個簡單且直觀的介面,可用於從輸入列表中執行模型,並以影像、音訊、3D 物件等多種格式顯示輸出。Gradio 現在甚至提供了一個 Plot 輸出組件,用於建立 Matplotlib、Bokeh 和 Plotly 的資料視覺化!更多詳細資訊,請參閱 Gradio 團隊提供的入門指南 (Getting started)。
在建立新 Space 時選擇 Gradio 作為 SDK,將會透過在 README.md 檔案的 YAML 區塊中將 sdk 屬性設定為 gradio,來以最新版本的 Gradio 初始化您的 Space。如果您想要更改 Gradio 版本,可以編輯 sdk_version 屬性。
請瀏覽 Gradio 文件以了解其所有功能,並查看 Gradio 指南以獲取一些實用的教學,幫助您快速上手!
您的第一個 Gradio Space:熱狗分類器
在接下來的章節中,您將學習如何建立 Space、進行設定,以及將程式碼部署到其中。我們將使用 Gradio 建立一個熱狗分類器 (Hot Dog Classifier) Space,用於展示 julien-c/hotdog-not-hotdog 模型,該模型可以偵測給定的圖片中是否包含熱狗 🌭
您可以在 NimaBoscarino/hotdog-gradio 找到此專案的完整託管版本。
建立一個新的 Gradio Space
我們將從建立一個全新的 Space 並選擇 Gradio 作為 SDK 開始。Hugging Face Spaces 是 Git 儲存庫,這意味著您可以透過推送提交 (push commits) 來逐步(且協同地)開發您的 Space。在繼續之前,請參閱儲存庫入門指南以了解如何建立和編輯檔案。
添加依賴項
對於熱狗分類器,我們將使用 🤗 Transformers pipeline 來呼叫模型,因此我們需要先安裝一些依賴項。這可以透過在我們的儲存庫中建立一個 requirements.txt 檔案,並將以下依賴項添加到其中來完成。
transformers
torchSpaces 的執行環境會處理依賴項的安裝!
建立 Gradio 介面
要建立 Gradio 應用程式,請在儲存庫中建立一個名為 app.py 的新檔案,並添加以下程式碼。
import gradio as gr
from transformers import pipeline
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_app = gr.Interface(
predict,
inputs=gr.Image(label="Select hot dog candidate", sources=['upload', 'webcam'], type="pil"),
outputs=[gr.Image(label="Processed Image"), gr.Label(label="Result", num_top_classes=2)],
title="Hot Dog? Or Not?",
)
if __name__ == "__main__":
gradio_app.launch()此 Python 指令碼使用 🤗 Transformers pipeline 來載入 julien-c/hotdog-not-hotdog 模型,該模型供 Gradio 介面使用。Gradio 應用程式將要求您上傳一張圖片,然後它會將其分類為「熱狗」或「非熱狗」。一旦您將程式碼儲存到 app.py 檔案中,請前往 App 分頁來查看您的應用程式實際運作!

在其他網頁上嵌入 Gradio Spaces
您可以透過使用 Web Components 或 HTML <iframe> 標籤,將 Gradio Space 嵌入到其他網頁上。請查看我們的文件或 Gradio 文件以了解更多詳細資訊。