下載與安裝

SAMFIT 在你自己的機器上跑,所以要先把它裝起來。以下是每一步,以及這台機器需要具備什麼。

最低需求

  • NVIDIA 顯示卡,支援 bfloat16,實際可用 VRAM 至少 5.5 GB(標註)或 6.2 GB(LoRA 微調)
  • 影片追蹤需要可用 VRAM 8.4 GB,這是影片預測器常駐的總量,不是再加上去的
  • 資料碟至少 12 GB 可用空間:基礎權重加一組檢查點
  • Windows 10 或 11,附 PowerShell(啟動腳本是 .ps1)
  • Python 3.12 與已安裝的 SAM 3 套件
  • Hugging Face 帳號,且已接受 facebook/sam3 的授權條款
  • Node.js 20 以上與 pnpm,網頁介面要用
  • ffmpeg 與 ffprobe,處理影片時才需要

裝好之後開啟「系統設定」頁按一次硬體檢測,SAMFIT 會實際量這台機器:模型載入時間、單張編碼、 一次提示、推論的 VRAM 峰值、資料碟寫入速度,然後告訴你能不能標註、能不能追蹤影片、 該用哪一種訓練配方。上面那些 VRAM 數字是門檻比對,不是猜的。

訓練的 VRAM 峰值與每步耗時要按「含訓練步數」那顆按鈕才會量,因為它會真的跑兩個訓練步、 佔用顯示卡約二十秒。標準檢測不會動到訓練路徑。

先準備好這些

下面的安裝步驟只裝 SAMFIT 自己的相依套件。模型與工具鏈要先就位,否則第 4 步會停在檢查。

SAM 3 本體

這是模型本身,SAMFIT 只是包在外面的工作室。先照 Meta 在 github.com/facebookresearch/sam3 的說明,把 sam3 裝進一個 Python 3.12 環境。下面這行要能印出版本號才算成功。

python -c "import sam3; print(sam3.__version__)"

基礎權重的存取權

facebook/sam3 在 Hugging Face 上是受管制的權重庫。先用瀏覽器開那一頁接受授權條款,再在本機登入,否則第一次載入模型會停在下載階段的授權錯誤。這一步很容易被忽略,因為它不是「安裝」而是「授權」。

python -m pip install "huggingface_hub[cli]"
hf auth login

基礎權重約 3 GB,第一次載入模型時才會下載,所以那一次會明顯比之後慢。

Node.js 與 pnpm

網頁介面需要它們。啟動腳本第一次會自動執行 pnpm install,但不會替你安裝 pnpm 本身。

node --version
npm install -g pnpm
pnpm --version

ffmpeg 與 ffprobe

只有要處理影片時才需要,而且兩個都要。官方的 ffmpeg 套件本來就含 ffprobe,只要確認兩個都在 PATH 上。

ffmpeg -version
ffprobe -version

安裝

  1. 1. 取得原始碼

    從 GitHub 取得,之後更新只要再拉一次。

    git clone https://github.com/chaoyunghuang/samfit.git
    cd samfit
  2. 2. 安裝相依套件

    在已經裝好 SAM 3 的那個 Python 環境裡,補上網頁層與訓練層需要的套件。用的必須是同一個直譯器,否則後端會找不到 sam3。

    python -m pip install -r backend/requirements.txt
  3. 3. 允許執行本機腳本

    Windows 預設不執行 .ps1。下面這行只影響目前這個視窗,不會更動系統設定。

    Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass

    若不想改動任何原則,也可以直接用 powershell -ExecutionPolicy Bypass -File .\start.ps1 啟動。

  4. 4. 啟動

    腳本會依序檢查環境、起後端、等待健康檢查、第一次執行時安裝前端相依、起前端,然後開瀏覽器。

    .\start.ps1

    工作室在 http://localhost:3000,後端在 http://127.0.0.1:8770。

  5. 5. 登入並配對這台機器

    在這個網站的「我的帳號」頁按「配對新機器」取得一枚裝置權杖,只會顯示一次。接著在本機工作室開啟「系統設定」頁,右側「配對這台機器」面板有貼上的欄位。

    http://localhost:3000/settings

    貼上時會立刻向這個網站驗證,權杖不對當場就會說。配對後只會回報硬體能力,影像、標註與專案內容都不會離開你的機器;面板上的「會送出哪些資料」可以逐欄看到實際內容。

驅動與相依套件

顯示卡驅動與 CUDA Toolkit 請從 NVIDIA 官方取得,這個網站不轉發驅動安裝檔。 SAMFIT 會偵測你目前的驅動與 CUDA 版本並判讀是否符合需求,不符時會指出要裝哪一版。

NVIDIA 驅動下載

卡住的時候

「因為這個系統上停用指令碼執行」
就是第 3 步。開一個新的 PowerShell 視窗,先執行 Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass,再跑 start.ps1。
「Could not find the sam3 environment」
啟動腳本預設去找 %USERPROFILE%\.conda\envs\sam3\python.exe。若你的環境不在那裡,把 SAMFIT_PYTHON 設成那個直譯器的完整路徑再啟動。
「Backend dependencies are missing」
第 2 步裝到了別的環境。用腳本印出來的那個 python 重跑一次 pip install,路徑要一模一樣。
pnpm 找不到
前端相依沒辦法自動安裝。先 npm install -g pnpm,再重新執行 start.ps1。
第一次載入模型停在 401 或 403
基礎權重在 Hugging Face 上受管制。用瀏覽器開 huggingface.co/facebook/sam3 接受授權條款,再執行 hf auth login,然後重試。
設定頁一直說找不到 SAM 3 原始碼
只用 pip 裝套件時會這樣。SAMFIT 另外會看 SAM3_REPO 指向的原始碼目錄;把它設成你的 sam3 檢出路徑就會消失。只是標註與推論不受這個警告影響。
權杖貼上後說被拒絕
權杖只顯示一次,重新整理後就看不到了。回到「我的帳號」撤銷舊的、配對一枚新的即可。