Hub 文件

marimo on Spaces

Hugging Face's logo
加入 Hugging Face 社群

並獲得增強的文件體驗

開始使用

marimo on Spaces

marimo 是一個用於 Python 的響應式筆記本,它將筆記本建模為資料流圖。當你執行一個單元格或與 UI 元素互動時,marimo 會自動執行受影響的單元格(或將其標記為過期),保持程式碼和輸出的一致性,並在錯誤發生前進行預防。每個 marimo 筆記本都以純 Python 形式儲存,可以作為指令碼執行,並可以部署為應用程式。

主要特點

  • ⚡️ 響應式: 執行一個單元格後,marimo 會響應式地執行所有依賴單元格或將其標記為過期
  • 🖐️ 互動式: 將滑塊、表格、繪圖等繫結到 Python — 無需回撥
  • 🔬 可復現: 無隱藏狀態,確定性執行,內建包管理
  • 🏃 可執行: 作為 Python 指令碼執行,透過 CLI 引數進行引數化
  • 🛜 可共享: 部署為互動式 Web 應用或幻燈片,透過 WASM 在瀏覽器中執行
  • 🛢️ 為資料設計: 使用 SQL 查詢資料框和資料庫,過濾和搜尋資料框

在 Spaces 上部署 marimo 應用

要在 Spaces 上開始使用 marimo,請點選下面的按鈕

這將使用 marimo 的 Docker 模板開始構建你的 Space。如果成功,你應該會看到一個與 marimo 介紹筆記本 類似的應用程式。

自定義你的 marimo 應用

當你建立 marimo Space 時,你會得到一些關鍵檔案來幫助你入門

1. app.py

這是你的主 marimo 筆記本檔案,定義了你應用程式的邏輯。marimo 筆記本是純 Python 檔案,使用 @app.cell 裝飾器定義單元格。要了解更多關於構建筆記本和應用程式的資訊,請參閱 marimo 文件。隨著你的應用程式的增長,你可以將程式碼組織成模組並匯入到你的主筆記本中。

2. Dockerfile

marimo 應用程式的 Dockerfile 是最小的,因為 marimo 幾乎沒有系統依賴。主要要求是

  • 它會安裝 requirements.txt 中列出的依賴項(使用 uv
  • 它會建立一個非 root 使用者以確保安全
  • 它會使用 marimo run app.py 執行應用程式

如果你的應用程式需要額外的系統依賴項、許可權或其他 CLI 標誌,你可能需要修改此檔案。

3. requirements.txt

Space 會自動安裝 requirements.txt 檔案中列出的依賴項。至少,你必須在此檔案中包含 marimo。你還需要新增你的應用程式所需的任何其他包。

marimo Space 模板提供了一個基本設定,你可以根據自己的需求進行擴充套件。部署後,你的筆記本將以“應用程式模式”執行,該模式會隱藏程式碼單元格,只顯示互動式輸出——非常適合與終端使用者共享。你可以透過在 Dockerfile 中將 --include-code 新增到 marimo run 命令來選擇在應用程式中包含程式碼單元格。

其他資源和支援

故障排除

如果你遇到問題

  1. 確保你的筆記本使用 marimo run app.py 在本地以應用程式模式執行
  2. 檢查 requirements.txt 中是否列出了所有必需的包
  3. 驗證埠配置是否匹配(Spaces 預設為 7860)
  4. 檢查 Space 日誌中是否存在任何 Python 錯誤

如需更多幫助,請訪問 marimo Discord提交問題

< > 在 GitHub 上更新

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