Ce face hf discussions (discuții și pull requests)
hf discussions ls (alias list) listează discuțiile și pull request-urile unui repository, implicit cele deschise, filtrate după tip, stare și autor. info arată metadatele și toate evenimentele unei discuții, iar diff afișează diff-ul unui pull request.
create deschide o discuție cu --title, sau un pull request cu --pull-request (--pr). Textul vine din --body sau dintr-un fișier cu --body-file (- pentru stdin). comment adaugă un comentariu, iar edit modifică unul existent după ID-ul lui (vizibil în info --format json).
--attach (la create, comment, edit) încarcă o imagine, un video sau un fișier audio și îl inserează în text, ca atunci când tragi fișierul în caseta de comentariu. Formate: PNG, JPEG, GIF, WebP, MP4, MOV, WebM, MP3 și WAV, până la 10 MB (50 MB pentru video). close, reopen și merge cer confirmare, pe care --yes o sare.
Sintaxă și opțiuni
| Opțiune / Parametru | Descriere |
|---|---|
REPO_ID / NUM |
Repository-ul și numărul discuției sau al PR-ului. |
ls -s, --status [open|closed|merged|draft|all] |
Starea. Implicit open. |
ls -k, --kind [all|discussion|pull_request] |
Tipul. Implicit all. |
ls --author TEXT / --limit INTEGER |
Autor; numărul de rezultate (implicit 30). |
create --title TEXT |
Titlul (obligatoriu). |
create --pull-request, --pr |
Creează un pull request în loc de discuție. |
--body TEXT / --body-file PATH |
Textul (Markdown), direct sau din fișier (- pentru stdin). |
--attach TEXT |
Atașament FIȘIER sau FIȘIER#text alternativ; se poate repeta. |
edit REPO_ID NUM COMMENT_ID |
Modifică un comentariu existent. |
close / reopen / merge --comment TEXT |
Comentariu adăugat la închidere, redeschidere sau unire. |
-y, --yes |
Fără confirmare (close, reopen, merge). |
rename REPO_ID NUM NEW_TITLE |
Titlul nou. |
--type, --repo-type [model|dataset|space|kernel] |
Tipul repository-ului. Implicit model. |
--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: Pull request-uri unite
hf discussions list username/my-model --kind pull_request --status merged
Exemplul 2: Discuție nouă cu text din fișier
hf discussions create username/my-model --title "Report" --body-file report.md
Exemplul 3: Comentariu din stdin
echo "LGTM" | hf discussions comment username/my-model 5 --body-file -
Exemplul 4: Comentariu cu video atașat
hf discussions comment username/my-model 5 --body "Here is a demo:" --attach demo.mp4
Exemplul 5: Unirea unui PR fără confirmare
hf discussions merge username/my-model 5 --yes
Exemplul 6: Diff-ul unui PR
hf discussions diff username/my-model 5
Greșeli frecvente și bune practici
- Uiți
--type datasetsau--type space. Implicit comanda caută un model. - Aștepți ca
create --pull-requestsă încarce și fișierele. Comanda deschide PR-ul; fișierele le adaugi cuhf upload ... --revision refs/pr/NUM. - Pentru ieșire fără culori în pipe, setează
NO_COLOR=1sau folosește--format json.