Skip to content

Commit e981dea

Browse files
WauplinLysandreJik
andauthored
Rename CLI to 'hf' + reorganize syntax (#3229)
* Rename CLI to 'hf' + reorganize them * fix test_command_delete_cache.py * fix tests/test_utils_cache.py * Update src/huggingface_hub/cli/__init__.py Co-authored-by: Lysandre Debut <hi@lysand.re> * Document hf instead of huggingface-cli everywhere * Remove deprecated options * fix tests --------- Co-authored-by: Lysandre Debut <hi@lysand.re>
1 parent 6e31992 commit e981dea

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

72 files changed

+2576
-526
lines changed

.github/ISSUE_TEMPLATE/bug-report.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ body:
3333
description: |
3434
Please dump your environment info by running the following command and copy-paste the result here:
3535
```txt
36-
huggingface-cli env
36+
hf env
3737
```
3838
3939
If you are working in a notebook, please run it in a code cell:

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ Did not find it? :( So we can act quickly on it, please follow these steps:
5959

6060
- A short, self-contained, code snippet that allows us to reproduce the bug in less than 30s;
6161
- Provide the _full_ traceback if an exception is raised by copying the text from your terminal in the issue description.
62-
- Include information about your local setup. You can dump this information by running `huggingface-cli env` in your terminal;
62+
- Include information about your local setup. You can dump this information by running `hf env` in your terminal;
6363

6464
### Do you want a new feature?
6565

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,9 +97,9 @@ Files will be downloaded in a local cache folder. More details in [this guide](h
9797
The Hugging Face Hub uses tokens to authenticate applications (see [docs](https://huggingface.co/docs/hub/security-tokens)). To log in your machine, run the following CLI:
9898

9999
```bash
100-
huggingface-cli login
100+
hf auth login
101101
# or using an environment variable
102-
huggingface-cli login --token $HUGGINGFACE_TOKEN
102+
hf auth login --token $HUGGINGFACE_TOKEN
103103
```
104104

105105
### Create a repository

docs/source/cn/quick-start.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,9 +49,9 @@ filename: 要下载的文件名,这里是 "config.json"
4949
运行以下代码,这将使用您的用户访问令牌登录到Hugging Face模型库
5050

5151
```bash
52-
huggingface-cli login
52+
hf auth login
5353

54-
huggingface-cli login --token $HUGGINGFACE_TOKEN
54+
hf auth login --token $HUGGINGFACE_TOKEN
5555
```
5656

5757
或者,你可以在笔记本电脑或脚本中使用 [`login`] 来进行程序化登录,请运行以下代码:
@@ -63,7 +63,7 @@ huggingface-cli login --token $HUGGINGFACE_TOKEN
6363

6464
您还可以直接将令牌传递给 [`login`],如下所示:`login(token="hf_xxx")`。这将使用您的用户访问令牌登录到 Hugging Face 模型库,而无需您输入任何内容。但是,如果您这样做,请在共享源代码时要小心。最好从安全保管库中加载令牌,而不是在代码库/笔记本中显式保存它
6565

66-
您一次只能登录一个帐户。如果您使用另一个帐户登录您的机器,您将会从之前的帐户注销。请确保使用命令 `huggingface-cli whoami`来检查您当前使用的是哪个帐户。如果您想在同一个脚本中处理多个帐户,您可以在调用每个方法时提供您的令牌。这对于您不想在您的机器上存储任何令牌也很有用
66+
您一次只能登录一个帐户。如果您使用另一个帐户登录您的机器,您将会从之前的帐户注销。请确保使用命令 `hf auth whoami`来检查您当前使用的是哪个帐户。如果您想在同一个脚本中处理多个帐户,您可以在调用每个方法时提供您的令牌。这对于您不想在您的机器上存储任何令牌也很有用
6767

6868
<Tip warning={true}>
6969

docs/source/de/guides/download.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -136,53 +136,53 @@ Hier ist eine Tabelle, die die verschiedenen Optionen zusammenfasst, um Ihnen zu
136136

137137
## Herunterladen mit dem CLI
138138

139-
Sie können den `huggingface-cli download`-Befehl im Terminal verwenden, um Dateien direkt aus dem Hub herunterzuladen. Intern verwendet es die gleichen [`hf_hub_download`] und [`snapshot_download`] Helfer, die oben beschrieben wurden, und gibt den zurückgegebenen Pfad im Terminal aus:
139+
Sie können den `hf download`-Befehl im Terminal verwenden, um Dateien direkt aus dem Hub herunterzuladen. Intern verwendet es die gleichen [`hf_hub_download`] und [`snapshot_download`] Helfer, die oben beschrieben wurden, und gibt den zurückgegebenen Pfad im Terminal aus:
140140

141141
```bash
142-
>>> huggingface-cli download gpt2 config.json
142+
>>> hf download gpt2 config.json
143143
/home/wauplin/.cache/huggingface/hub/models--gpt2/snapshots/11c5a3d5811f50298f278a704980280950aedb10/config.json
144144
```
145145

146-
Standardmäßig wird das lokal gespeicherte Token (mit `huggingface-cli login`) verwendet. Wenn Sie sich ausdrücklich authentifizieren möchten, verwenden Sie die `--token` Option:
146+
Standardmäßig wird das lokal gespeicherte Token (mit `hf auth login`) verwendet. Wenn Sie sich ausdrücklich authentifizieren möchten, verwenden Sie die `--token` Option:
147147

148148
```bash
149-
>>> huggingface-cli download gpt2 config.json --token=hf_****
149+
>>> hf download gpt2 config.json --token=hf_****
150150
/home/wauplin/.cache/huggingface/hub/models--gpt2/snapshots/11c5a3d5811f50298f278a704980280950aedb10/config.json
151151
```
152152

153153
Sie können mehrere Dateien gleichzeitig herunterladen, wobei eine Fortschrittsleiste angezeigt wird und der Snapshot-Pfad zurückgegeben wird, in dem sich die Dateien befinden:
154154

155155
```bash
156-
>>> huggingface-cli download gpt2 config.json model.safetensors
156+
>>> hf download gpt2 config.json model.safetensors
157157
Fetching 2 files: 100%|████████████████████████████████████████████| 2/2 [00:00<00:00, 23831.27it/s]
158158
/home/wauplin/.cache/huggingface/hub/models--gpt2/snapshots/11c5a3d5811f50298f278a704980280950aedb10
159159
```
160160

161161
Wenn Sie die Fortschrittsleisten und mögliche Warnungen stummschalten möchten, verwenden Sie die Option `--quiet`. Dies kann nützlich sein, wenn Sie die Ausgabe an einen anderen Befehl in einem Skript weitergeben möchten.
162162

163163
```bash
164-
>>> huggingface-cli download gpt2 config.json model.safetensors
164+
>>> hf download gpt2 config.json model.safetensors
165165
/home/wauplin/.cache/huggingface/hub/models--gpt2/snapshots/11c5a3d5811f50298f278a704980280950aedb10
166166
```
167167

168168
Standardmäßig werden Dateien im Cache-Verzeichnis heruntergeladen, das durch die Umgebungsvariable `HF_HOME` definiert ist (oder `~/.cache/huggingface/hub`, wenn nicht angegeben). Sie können dies mit der Option `--cache-dir` überschreiben:
169169

170170
```bash
171-
>>> huggingface-cli download gpt2 config.json --cache-dir=./cache
171+
>>> hf download gpt2 config.json --cache-dir=./cache
172172
./cache/models--gpt2/snapshots/11c5a3d5811f50298f278a704980280950aedb10/config.json
173173
```
174174

175175
Wenn Sie Dateien in einen lokalen Ordner herunterladen möchten, ohne die Cache-Verzeichnisstruktur, können Sie `--local-dir` verwenden. Das Herunterladen in einen lokalen Ordner hat seine Einschränkungen, die in dieser [Tabelle](https://huggingface.co/docs/huggingface_hub/guides/download#download-files-to-local-folder) aufgeführt sind.
176176

177177
```bash
178-
>>> huggingface-cli download gpt2 config.json --local-dir=./models/gpt2
178+
>>> hf download gpt2 config.json --local-dir=./models/gpt2
179179
./models/gpt2/config.json
180180
```
181181

182182
Es gibt weitere Argumente, die Sie angeben können, um aus verschiedenen Repo-Typen oder Revisionen herunterzuladen und Dateien zum Herunterladen mit Glob-Mustern ein- oder auszuschließen:
183183

184184
```bash
185-
>>> huggingface-cli download bigcode/the-stack --repo-type=dataset --revision=v1.2 --include="data/python/*" --exclu
185+
>>> hf download bigcode/the-stack --repo-type=dataset --revision=v1.2 --include="data/python/*" --exclu
186186
de="*.json" --exclude="*.zip"
187187
Fetching 206 files: 100%|████████████████████████████████████████████| 206/206 [02:31<2:31, ?it/s]
188188
/home/wauplin/.cache/huggingface/hub/datasets--bigcode--the-stack/snapshots/9ca8fa6acdbc8ce920a0cb58adcdafc495818ae7
@@ -191,5 +191,5 @@ Fetching 206 files: 100%|█████████████████
191191
Für eine vollständige Liste der Argumente führen Sie bitte den folgenden Befehl aus:
192192

193193
```bash
194-
huggingface-cli download --help
194+
hf download --help
195195
```

docs/source/de/guides/manage-cache.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -238,20 +238,20 @@ Derzeit werden zwischengespeicherte Dateien nie aus Ihrem lokalen Verzeichnis ge
238238
Wenn Sie eine neue Revision eines Zweiges herunterladen, werden vorherige Dateien aufbewahrt,
239239
falls Sie sie wieder benötigen. Daher kann es nützlich sein, Ihr Cache-Verzeichnis zu scannen,
240240
um zu erfahren, welche Repos und Revisionen den meisten Speicherplatz beanspruchen.
241-
`huggingface_hub` bietet einen Helfer dafür, der über `huggingface-cli` oder in einem Python-Skript verwendet werden kann.
241+
`huggingface_hub` bietet einen Helfer dafür, der über `hf` oder in einem Python-Skript verwendet werden kann.
242242

243243
### Cache vom Terminal aus scannen
244244

245-
Die einfachste Möglichkeit, Ihr HF-Cache-System zu scannen, besteht darin, den Befehl `scan-cache`
246-
aus dem `huggingface-cli`-Tool zu verwenden. Dieser Befehl scannt den Cache und gibt einen Bericht
245+
Die einfachste Möglichkeit, Ihr HF-Cache-System zu scannen, besteht darin, den Befehl `cache scan`
246+
aus dem `hf`-Tool zu verwenden. Dieser Befehl scannt den Cache und gibt einen Bericht
247247
mit Informationen wie Repo-ID, Repo-Typ, Speicherverbrauch, Referenzen und vollständigen lokalen Pfad aus.
248248

249249
Im folgenden Ausschnitt wird ein Scan-Bericht in einem Ordner angezeigt, in dem 4 Modelle und 2 Datensätze
250250
gecached sind.
251251

252252

253253
```text
254-
huggingface-cli scan-cache
254+
hf cache scan
255255
REPO ID REPO TYPE SIZE ON DISK NB FILES LAST_ACCESSED LAST_MODIFIED REFS LOCAL PATH
256256
--------------------------- --------- ------------ -------- ------------- ------------- ------------------- -------------------------------------------------------------------------
257257
glue dataset 116.3K 15 4 days ago 4 days ago 2.4.0, main, 1.17.0 /home/wauplin/.cache/huggingface/hub/datasets--glue
@@ -274,7 +274,7 @@ Zum Beispiel hat hier `bert-base-cased` 2 Revisionen von 1,4G und 1,5G,
274274
aber der gesamte Festplattenspeicher beträgt nur 1,9G.
275275

276276
```text
277-
huggingface-cli scan-cache -v
277+
hf cache scan -v
278278
REPO ID REPO TYPE REVISION SIZE ON DISK NB FILES LAST_MODIFIED REFS LOCAL PATH
279279
--------------------------- --------- ---------------------------------------- ------------ -------- ------------- ----------- ----------------------------------------------------------------------------------------------------------------------------
280280
glue dataset 9338f7b671827df886678df2bdd7cc7b4f36dffd 97.7K 14 4 days ago main, 2.4.0 /home/wauplin/.cache/huggingface/hub/datasets--glue/snapshots/9338f7b671827df886678df2bdd7cc7b4f36dffd
@@ -300,7 +300,7 @@ um die Einträge zu filtern. Hier ein Beispiel, um nur Revisionen vom Modell "t5
300300
auf einem Unix-basierten Gerät zu filtern.
301301

302302
```text
303-
➜ eval "huggingface-cli scan-cache -v" | grep "t5-small"
303+
➜ eval "hf cache scan -v" | grep "t5-small"
304304
t5-small model 98ffebbb27340ec1b1abd7c45da12c253ee1882a 726.2M 6 1 week ago refs/pr/1 /home/wauplin/.cache/huggingface/hub/models--t5-small/snapshots/98ffebbb27340ec1b1abd7c45da12c253ee1882a
305305
t5-small model d0a119eedb3718e34c648e594394474cf95e0617 485.8M 6 4 weeks ago /home/wauplin/.cache/huggingface/hub/models--t5-small/snapshots/d0a119eedb3718e34c648e594394474cf95e0617
306306
t5-small model d78aea13fa7ecd06c29e3e46195d6341255065d5 970.7M 9 1 week ago main /home/wauplin/.cache/huggingface/hub/models--t5-small/snapshots/d78aea13fa7ecd06c29e3e46195d6341255065d5
@@ -374,7 +374,7 @@ HFCacheInfo(
374374

375375
Das Durchsuchen Ihres Caches ist interessant, aber was Sie normalerweise als Nächstes tun möchten, ist
376376
einige Teile zu löschen, um etwas Speicherplatz auf Ihrem Laufwerk freizugeben. Dies ist möglich mit dem
377-
`delete-cache` CLI-Befehl. Man kann auch programmatisch den
377+
`cache delete` CLI-Befehl. Man kann auch programmatisch den
378378
[`~HFCacheInfo.delete_revisions`] Helfer vom [`HFCacheInfo`] Objekt verwenden, das beim
379379
Durchsuchen des Caches zurückgegeben wird.
380380

@@ -413,7 +413,7 @@ Fehler ausgelöst. Die Löschung wird für andere Pfade im
413413
### Cache vom Terminal aus leeren
414414

415415
Der einfachste Weg, einige Revisionen aus Ihrem HF-Cache-System zu löschen, ist die Verwendung des
416-
`delete-cache` Befehls vom `huggingface-cli` Tool. Der Befehl hat zwei Modi. Standardmäßig wird dem Benutzer
416+
`cache delete` Befehls vom `hf` Tool. Der Befehl hat zwei Modi. Standardmäßig wird dem Benutzer
417417
eine TUI (Terminal User Interface) angezeigt, um auszuwählen, welche Revisionen gelöscht werden sollen. Diese TUI
418418
befindet sich derzeit in der Beta-Phase, da sie nicht auf allen Plattformen getestet wurde. Wenn die TUI auf Ihrem
419419
Gerät nicht funktioniert, können Sie sie mit dem Flag `--disable-tui` deaktivieren.
@@ -430,7 +430,7 @@ pip install huggingface_hub["cli"]
430430
Führen Sie dann den Befehl aus:
431431

432432
```
433-
huggingface-cli delete-cache
433+
hf cache delete
434434
```
435435

436436
Sie sollten jetzt eine Liste von Revisionen sehen, die Sie auswählen/abwählen können:
@@ -455,7 +455,7 @@ letzte Bestätigungsnachricht angezeigt. Drücken Sie erneut `<Enter>`, und die
455455
abbrechen möchten, geben Sie `n` ein.
456456

457457
```txt
458-
huggingface-cli delete-cache --dir ~/.cache/huggingface/hub
458+
hf cache delete --dir ~/.cache/huggingface/hub
459459
? Select revisions to delete: 2 revision(s) selected.
460460
? 2 revisions selected counting for 3.1G. Confirm deletion ? Yes
461461
Start deletion.
@@ -480,15 +480,15 @@ wie viel Speicherplatz mit der aktualisierten Revisionsliste freigegeben würde.
480480
Sie können die Datei weiter bearbeiten oder mit `"y"` bestätigen.
481481

482482
```sh
483-
huggingface-cli delete-cache --disable-tui
483+
hf cache delete --disable-tui
484484
```
485485

486486
Beispiel für eine Befehlsdatei:
487487

488488
```txt
489489
# INSTRUCTIONS
490490
# ------------
491-
# This is a temporary file created by running `huggingface-cli delete-cache` with the
491+
# This is a temporary file created by running `hf cache delete` with the
492492
# `--disable-tui` option. It contains a set of revisions that can be deleted from your
493493
# local cache directory.
494494
#

docs/source/de/guides/model-cards.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@ print(card)
188188

189189
## Model Cards teilen
190190

191-
Wenn Sie mit dem Hugging Face Hub authentifiziert sind (entweder durch Verwendung von `huggingface-cli login` oder [`login`]), können Sie Karten zum Hub hinzufügen, indem Sie einfach [`ModelCard.push_to_hub`] aufrufen. Schauen wir uns an, wie das funktioniert...
191+
Wenn Sie mit dem Hugging Face Hub authentifiziert sind (entweder durch Verwendung von `hf auth login` oder [`login`]), können Sie Karten zum Hub hinzufügen, indem Sie einfach [`ModelCard.push_to_hub`] aufrufen. Schauen wir uns an, wie das funktioniert...
192192

193193
Zuerst erstellen wir ein neues Repo namens 'hf-hub-modelcards-pr-test' im Namensraum des authentifizierten Benutzers:
194194

docs/source/de/guides/upload.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@ Wenn Sie Dateien auf den Hub hochladen möchten, müssen Sie sich bei Ihrem Hugg
1616
- Melden Sie sich bei Ihrem Hugging Face-Konto mit dem folgenden Befehl an:
1717

1818
```bash
19-
huggingface-cli login
19+
hf auth login
2020
# oder mit einer Umgebungsvariable
21-
huggingface-cli login --token $HUGGINGFACE_TOKEN
21+
hf auth login --token $HUGGINGFACE_TOKEN
2222
```
2323

2424
- Alternativ können Sie sich in einem Notebook oder einem Skript programmatisch mit [`login`] anmelden:
@@ -378,7 +378,7 @@ Für weitere Details zu dieser Empfehlung werfen Sie bitte einen Blick auf diese
378378
Git LFS verarbeitet automatisch Dateien, die größer als 10MB sind. Für sehr große Dateien (>5GB) müssen Sie jedoch einen benutzerdefinierten Transferagenten für Git LFS installieren:
379379

380380
```bash
381-
huggingface-cli lfs-enable-largefiles
381+
hf lfs-enable-largefiles .
382382
```
383383

384384
Sie sollten dies für jedes Repository installieren, das eine sehr große Datei enthält. Einmal installiert, können Sie Dateien hochladen, die größer als 5GB sind.

docs/source/de/quick-start.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,9 +53,9 @@ In vielen Fällen müssen Sie mit einem Hugging Face-Konto angemeldet sein, um m
5353
Sobald Sie Ihr "User Access Token" haben, führen Sie den folgenden Befehl in Ihrem Terminal aus:
5454

5555
```bash
56-
huggingface-cli login
56+
hf auth login
5757
# or using an environment variable
58-
huggingface-cli login --token $HUGGINGFACE_TOKEN
58+
hf auth login --token $HUGGINGFACE_TOKEN
5959
```
6060

6161
Alternativ können Sie sich auch programmatisch in einem Notebook oder einem Skript mit [`login`] anmelden:
@@ -67,7 +67,7 @@ Alternativ können Sie sich auch programmatisch in einem Notebook oder einem Skr
6767

6868
Es ist auch möglich, sich programmatisch anzumelden, ohne aufgefordert zu werden, Ihr Token einzugeben, indem Sie das Token direkt an [`login`] weitergeben, wie z.B. `login(token="hf_xxx")`. Seien Sie vorsichtig, wenn Sie Ihren Quellcode teilen. Es ist eine bewährte Methode, das Token aus einem sicheren Tresor/Vault zu laden, anstatt es explizit in Ihrer Codebasis/Notebook zu speichern.
6969

70-
Sie können nur auf 1 Konto gleichzeitig angemeldet sein. Wenn Sie Ihren Computer mit einem neuen Konto anmelden, werden Sie vom vorherigen abgemeldet. Mit dem Befehl `huggingface-cli whoami` stellen Sie sicher, dass Sie immer wissen, welches Konto Sie gerade verwenden. Wenn Sie mehrere Konten im selben Skript verwalten möchten, können Sie Ihr Token bereitstellen, wenn Sie jede Methode aufrufen. Dies ist auch nützlich, wenn Sie kein Token auf Ihrem Computer speichern möchten.
70+
Sie können nur auf 1 Konto gleichzeitig angemeldet sein. Wenn Sie Ihren Computer mit einem neuen Konto anmelden, werden Sie vom vorherigen abgemeldet. Mit dem Befehl `hf auth whoami` stellen Sie sicher, dass Sie immer wissen, welches Konto Sie gerade verwenden. Wenn Sie mehrere Konten im selben Skript verwalten möchten, können Sie Ihr Token bereitstellen, wenn Sie jede Methode aufrufen. Dies ist auch nützlich, wenn Sie kein Token auf Ihrem Computer speichern möchten.
7171

7272
<Tip warning={true}>
7373

0 commit comments

Comments
 (0)