Ce face hf jobs ls / inspect / logs / stats / wait / cancel / rerun / labels / expose / ssh / hardware
hf jobs ls (aliasuri list, ps) arată implicit Job-urile care rulează sau se programează; -a le arată pe toate. Filtrele --status, --label și --name se combină (un Job trebuie să le respecte pe toate). Implicit se afișează maximum 100 de Job-uri; --limit 0 le arată pe toate.
inspect afișează detaliile unuia sau mai multor Job-uri, logs afișează logurile disponibile (-f le urmărește până la final), iar stats arată consumul de resurse (-f pentru afișare live). wait așteaptă unul sau mai multe Job-uri și iese cu 0 doar dacă toate s-au terminat cu succes. cancel anulează un Job, iar rerun pornește un Job nou cu aceeași specificație salvată.
labels schimbă numele sau etichetele unui Job (--label înlocuiește toate etichetele, --name singur le păstrează). expose înlocuiește porturile expuse ale unui Job care rulează, fără repornire. ssh deschide o sesiune SSH într-un Job pornit cu --ssh, iar hardware listează flavor-urile disponibile.
Sintaxă și opțiuni
| Opțiune / Parametru | Descriere |
|---|---|
ls -a, --all |
Toate Job-urile; nu se combină cu --status. |
ls --status [COMPLETED|CANCELED|ERROR|DELETED|SCHEDULING|RUNNING] |
Una sau mai multe stări, separate prin virgulă sau repetate. |
ls -l, --label / --name |
Filtre pe etichete key=value / pe nume. |
ls --limit INTEGER |
Implicit 100; 0 = fără limită. |
inspect JOB_IDS... |
Detalii despre unul sau mai multe Job-uri. |
logs -f, --follow / -n, --tail N |
Urmărire live / ultimele N linii. |
stats [JOB_IDS]... [-f] |
Resurse folosite; fără ID-uri, Job-urile care rulează. |
wait JOB_IDS... [--timeout] |
Așteaptă finalul; toate Job-urile trebuie să fie în același namespace. |
cancel JOB_ID |
Anulează Job-ul. |
rerun JOB_ID [-d] |
Job nou cu aceeași specificație; -d nu așteaptă. |
labels JOB_ID --name / -l / --clear |
Redenumire, etichete noi, ștergerea etichetelor. |
expose JOB_ID [PORTS]... --public N / --clear |
Porturi cu token (poziționale), publice, sau închiderea tuturor. |
ssh JOB_ID -i FIȘIER / --dry-run |
Cheia SSH / doar afișarea comenzii. |
hardware |
Flavor-urile disponibile pentru Jobs. |
--namespace TEXT |
Contul sau organizația Job-ului; ID-ul poate fi și namespace/job_id. |
--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: Toate Job-urile terminate
hf jobs ls -a --status completed
Exemplul 2: Job-uri care rulează, cu două etichete
hf jobs ls --status running --label env=prod --label team=ml
Exemplul 3: Ultimele 100 de linii, apoi live
hf jobs logs -f --tail 100 JOB_ID
Exemplul 4: Așteptarea tuturor Job-urilor active
hf jobs ls -q | xargs hf jobs wait
Exemplul 5: Port 8000 cu token, 9000 public
hf jobs expose JOB_ID 8000 --public 9000
Exemplul 6: SSH într-un Job
hf jobs run --ssh --detach python:3.12 sleep infinity
hf jobs ssh JOB_ID
Greșeli frecvente și bune practici
- Te bazezi pe
logs -fpentru starea finală. Urmărirea se oprește când se termină fluxul de loguri, indiferent de rezultat; verifică cuhf jobs inspectsau foloseștehf jobs wait. - Rulezi
labels --label ...crezând că adaugi o etichetă. Opțiunea înlocuiește toate etichetele existente. - Folosești
hf jobs ps --filterdin versiuni vechi. A fost înlocuit de--statusși--label.