Hub 文件

Spaces 上的 Shiny

Hugging Face's logo
加入 Hugging Face 社群

並獲得增強的文件體驗

開始使用

Spaces 上的 Shiny

Shiny 是一個開源框架,用於構建簡單、美觀且高效能的資料應用程式。開發 Shiny 的目標是構建一個足夠簡單、能在一下午教會別人,但又足夠可擴充套件以支援大型、任務關鍵型應用程式的框架。您可以在幾分鐘內建立一個有用的 Shiny 應用程式,但如果您的專案範圍擴大,您可以確信 Shiny 可以適應該應用程式。

Shiny 與其他框架的主要區別在於其響應式執行模型。當您編寫 Shiny 應用程式時,框架會推斷輸入、輸出和中間計算之間的關係,並使用這些關係僅渲染因使用者操作而需要更改的部分。結果是使用者可以輕鬆開發高效、可擴充套件的應用程式,而無需顯式快取資料或編寫回調函式。

Python 版 Shiny

Python 版 Shiny 是 Shiny 的純 Python 實現。這讓您可以訪問 Shiny 的所有強大功能,如響應式、複雜佈局和模組,而無需使用 R。Python 版 Shiny 非常適合 Hugging Face 應用程式,因為它與 Hugging Face 的其他工具無縫整合。

要開始部署 Space,請點選此按鈕選擇您的硬體並指定您想要公共還是私人 Space。Space 模板將填充一些檔案以啟動您的應用程式。

app.py

此檔案定義您的應用程式邏輯。要了解如何修改此檔案,請參閱Python 版 Shiny 文件。隨著應用程式變得越來越複雜,最好將應用程式邏輯分解為模組

Dockerfile

Python 版 Shiny 應用程式的 Dockerfile 非常精簡,因為該庫沒有許多系統依賴項,但如果您的應用程式有額外的系統依賴項,您可能需要修改此檔案。此檔案的一個基本特徵是它在 Space README 檔案中指定的埠(預設為 7860)上暴露並執行應用程式。

requirements.txt

Space 將自動安裝 requirements.txt 檔案中列出的依賴項。請注意,您必須在此檔案中包含 shiny。

R 版 Shiny

R 版 Shiny 是 R 社群中一個流行且成熟的應用程式框架,如果您想在 Hugging Face 基礎設施上託管 R 應用程式或使用一些很棒的Shiny R 擴充套件,它是一個不錯的選擇。要將 Hugging Face 工具整合到 R 應用程式中,您可以使用httr2 呼叫 Hugging Face API,或者使用reticulate 呼叫其中一個 Hugging Face Python SDK。

要部署 R Shiny Space,請點選此按鈕並填寫 Space 元資料。這將為您的 Space 填充所有所需的檔案以開始使用。

app.R 此檔案包含您所有的應用程式邏輯。如果您願意,可以將此檔案拆分為 ui.Rserver.R

Dockerfile

Dockerfile 基於 rocker shiny 映象構建。您需要修改此檔案以使用其他軟體包。如果您使用大量 tidyverse 軟體包,我們建議將基礎映象切換到 rocker/shinyverse。您可以透過將它們新增到 dockerfile 的 RUN install2.r 部分來安裝額外的 R 軟體包,並且可以透過在 RUN installGithub.r 下新增儲存庫來安裝 github 軟體包。

此 Dockerfile 有兩個主要要求

  • 首先,檔案必須暴露您在 README 中列出的埠。預設為 7860,除非有特殊原因,否則我們建議不要更改此埠。

  • 其次,目前您必須使用開發版本的 httpuv,它解決了 Hugging Face 上的應用程式超時問題。

< > 在 GitHub 上更新

© . This site is unofficial and not affiliated with Hugging Face, Inc.