hf sandbox (create, exec, cp, spawn, process, pool, kill) în Hugging Face Hub & Transformers

CLI hf: Spaces, Jobs și Endpoints huggingface_hub 2.3 / CLI hf (octombrie 2026)

Mașini izolate în cloud, construite peste Jobs (experimental): le creezi, rulezi comenzi cu ieșire live, copiezi fișiere și le închizi; pool-urile permit multe sandbox-uri CPU ieftine.

Sintaxă & invocare Python
hf sandbox create [IMAGINE] [--flavor F] [--pool POOL_ID] [--idle-timeout T]
hf sandbox exec | spawn SANDBOX_ID -- COMANDĂ...
hf sandbox cp SURSĂ DESTINAȚIE
hf sandbox process ls | kill ...
hf sandbox pool create | ls | delete ...
hf sandbox kill [SANDBOX_ID] [--all]

Ce face hf sandbox (create, exec, cp, spawn, process, pool, kill)

hf sandbox pornește mașini izolate pe Hugging Face Jobs. Funcția este experimentală: API-ul și comportamentul se pot schimba fără anunț. Orice imagine Docker cu /bin/sh merge. create așteaptă până când sandbox-ul este gata și afișează ID-ul lui; --idle-timeout (implicit 10m) îl oprește după inactivitate.

exec rulează o comandă și transmite ieșirea live, cu codul de ieșire al comenzii. spawn pornește o comandă de durată în fundal și întoarce PID-ul; process ls și process kill gestionează aceste procese. cp copiază fișiere în stil Docker (SANDBOX_ID:/cale). kill oprește un sandbox, o gazdă partajată întreagă sau, cu --all, tot din namespace.

Pentru multe sandbox-uri CPU ieftine, pool create pornește o mașină gazdă (implicit 50 de sandbox-uri pe gazdă), iar create --pool ID creează sandbox-uri partajate în ea. Sandbox-urile din pool nu au canal de secrete criptate: --secrets este respins, folosești --env. Documentația recomandă sandbox-uri partajate doar pentru sarcini din aceeași zonă de încredere.

Sintaxă și opțiuni

Opțiune / Parametru Descriere
create [IMAGE] Imaginea Docker (trebuie să aibă /bin/sh).
create --flavor [...] Hardware-ul; implicit cpu-basic. Cu --pool vine din pool.
create --pool TEXT Sandbox partajat în pool-ul dat.
create --idle-timeout TEXT Oprire după inactivitate (de exemplu 10m). Implicit 10m.
create -e / --env-file Variabile de mediu.
create -s / --secrets-file Secrete criptate (nu în pool).
create -l, --label / -v, --volume Etichete pe Job-ul de bază / volume montate.
create --forward-hf-token Pune tokenul tău ca HF_TOKEN în sandbox.
exec SANDBOX_ID COMMAND... [-w DIR] [-e] [--timeout SEC] Rulează și așteaptă; ieșire live.
spawn SANDBOX_ID COMMAND... [-w DIR] [-e] Pornește în fundal și întoarce PID-ul.
process ls SANDBOX_ID / process kill SANDBOX_ID PID Procesele din fundal.
cp SRC DST Cale locală sau SANDBOX_ID:/cale.
kill [SANDBOX_ID] [--all] [-y] Oprește un sandbox, o gazdă sau tot.
pool create [IMAGE] --flavor / --per-host N / --max-hosts N / --idle-timeout Pool nou; --per-host implicit 50.
pool ls / pool delete POOL_ID [-y] Listare / ștergerea tuturor gazdelor pool-ului.
--namespace TEXT Contul sau organizația.
--token TEXT Token de acces (User Access Token) creat în huggingface.co/settings/tokens. Implicit se folosește tokenul salvat de hf auth login.

Exemple practice

Exemplul 1: Creare

hf sandbox create

Rezultat

✓ Sandbox ready id=687f911eaea852de79c4a50a image=python:3.12 elapsed=6.0s

Exemplul 2: Comandă în sandbox

hf sandbox exec 687f911eaea852de79c4a50a -- python -c "print('hi')"

Rezultat

hi

Exemplul 3: Copiere înăuntru și înapoi

hf sandbox cp data.csv 687f911eaea852de79c4a50a:/data/data.csv
hf sandbox cp 687f911eaea852de79c4a50a:/app/results.json results.json

Exemplul 4: Server pornit în fundal

hf sandbox spawn SANDBOX_ID -- python -m http.server 8000

Exemplul 5: Secrete citite din mediu (sandbox dedicat)

hf sandbox create -s OPENAI_API_KEY -s HF_TOKEN

Exemplul 6: Oprire

hf sandbox kill 687f911eaea852de79c4a50a

Greșeli frecvente și bune practici

  • Dai --secrets unui sandbox din pool. Este respins; pool-urile au doar --env.
  • Pui în același pool sarcini care nu au încredere una în alta. Pentru ele folosește sandbox-uri dedicate.
  • Uiți de sandbox-urile pornite. Se opresc după --idle-timeout, dar hf sandbox kill le oprește imediat.

Comenzi înrudite