Label Studio · SAM · Docker · Supabase · MinIO · Cloudflare Tunnel
專案概述
上游 Label Studio ML backend 截至 2026-04 尚未提供維護中的 SAM3 生產部署整合路徑。本專案補上這個缺口:以 Docker Compose 把 Label Studio、PostgreSQL、Redis、MinIO、Nginx、Cloudflare Tunnel 打包成核心堆疊,再用可選的 GPU overlay 掛上 SAM3 與 SAM2.1 的圖片和影片推論後端。Label Studio 的資料庫後端走 Supabase standalone(v1.1.x 主線),若偏好原生 PostgreSQL 模式可切換到 v1.0.4 版本線。
核心功能
make up一次帶起核心堆疊(Label Studio + PostgreSQL + Redis + MinIO + Nginx + Cloudflare Tunnel)- SAM3 後端:原生點嵌入(圖片 + 影片)、多種遮罩選取模式(
adaptive/top1/topk/threshold/all)、雙向影片追蹤、多物件軌跡合併、執行時 UI 覆寫閾值與模式 - SAM2.1 後端:圖片與影片推論
- SAM3 Agent(選用):LLM 輔助遮罩選取,支援 vLLM、Ollama、OpenAI、Gemini、Groq 等具備視覺能力的模型端點
- 批次標註:透過 CLI 或瀏覽器 Web UI 對整個 Label Studio 專案執行 SAM3/SAM2.1 批次推論,不需開終端機
- 分離的環境設定檔(
.env/.env.ml/.env.supabase/.env.tools)避免單一過大的 env 檔 - Cloudflare Tunnel 選用路由(Supabase Studio、RedisInsight 等管理介面)
推論後端
可選的 GPU overlay 提供三種推論後端,依任務性質挑選:專案架構
快速開始
1
複製 repo 並準備環境設定
<PLACEHOLDER> 欄位。LABEL_STUDIO_USER_TOKEN 長度上限 40 字元,可用 openssl rand -hex 20 產生。.env 與 .env.supabase 的 POSTGRES_PASSWORD 必須一致。2
啟動 Supabase 與核心堆疊
make init-minio 是一次性指令,初始化 MinIO bucket 與服務帳號。完成後開 http://localhost:18090 確認 Label Studio 正常運作。3
(選用)掛上 GPU 推論後端
4
確認堆疊健康
注意事項
實際應用面
用於精準畜牧影像資料集的標註作業,以 SAM 自動產生初始遮罩再由標註者修正,比全手動標註省時。批次標註模式可一次對整個 Label Studio 專案的圖片或影片跑推論,適合大批次資料的初步分割。相關連結
- GitHub:felimet/label-anything-sam
- Label Studio ML backend 上游:HumanSignal/label-studio-ml-backend