# huggingface_hub v2.0 への移行

`huggingface_hub` v2.0では、HTTP依存を[`httpx2`](https://httpx2.pydantic.dev/)に置き換え、非推奨の1.x APIを削除しました。HTTPクライアントと例外は、別のパッケージから提供されるようになります。

`huggingface_hub` v1.x（v1.30.0以降）とv2.xの両方をサポートするために、`huggingface_hub.utils`からHTTPモジュールをインポートします：

```python
from huggingface_hub.utils import get_session, httpx

try:
    response = get_session().get("https://huggingface.co/api/models/gpt2")
    response.raise_for_status()
except httpx.HTTPError:
    ...
```

[set_client_factory()](/docs/huggingface_hub/v2.4.0/ja/package_reference/utilities#huggingface_hub.set_client_factory) または [set_async_client_factory()](/docs/huggingface_hub/v2.4.0/ja/package_reference/utilities#huggingface_hub.set_async_client_factory) でカスタムクライアントを作成する際にも、同じインポートを使用してください。旧 HTTP パッケージのクライアントと例外は `httpx2` のそれとは別物であり、相互に置き換えて使用することはできません。

`httpx2`はデフォルトでオペレーティングシステムの証明書トラストストアを使用します。`SSL_CERT_FILE`または`SSL_CERT_DIR`で設定されたカスタムCAバンドルも引き続きサポートされています。ログ設定は、従来のロガー名ではなく`httpx2`と`httpcore2`を対象とすべきです。詳細は[アップストリームの移行ガイド](https://httpx2.pydantic.dev/migration/)を参照してください。

`oauth` 追加機能は、`httpx2` のサポートのために `authlib>=1.8.0` が必要になりました。

## 非推奨のAPIを削除

- `upload_large_folder` や `HfApi.upload_large_folder` の代わりに `upload_folder` を使用してください。
- `duplicate_space`、`request_space_storage`、`delete_space_storage` の代わりに、`duplicate_repo`、`set_space_volumes`、`delete_space_volumes` を使用してください。
- `repo_type_and_id_from_hf_id` の代わりに `parse_hf_uri` を、`model_name=...` の代わりに `list_models(search=...)` を使用してください。
- `create_repo` と `duplicate_repo` では、`space_storage` の代わりに `space_volumes` を使用してください。
- `PROTECTED` や `type="protected"` の代わりに、`InferenceEndpointType.AUTHENTICATED` または `type="authenticated"` を使用してください。
- `stop_sequences=...` の代わりに `text_generation(stop=...)` を使用し、ブール値の代わりにトークン文字列または `None` を `InferenceClient` に渡します。
- `huggingface-cli` の代わりに `hf` を使用してください。`hf repo` と `hf repo-files delete` は、それぞれ `hf repos` と `hf repos delete-files` に置き換えられました。
- `hf upload-large-folder` の代わりに `hf upload` を使用してください。リポジトリの作成と複製には `--storage` の代わりに `--volume` を、`hf jobs ps --filter` の代わりに `--status` または `--label` を使用してください。
- `hf skills add` および `hf skills update` の非推奨オプション `--claude` は削除されました。スキルは Claude Code に対して自動的にインストールされます。

詳細については、[`httpx2`プロジェクト](https://github.com/pydantic/httpx2)、[`httpx2`のドキュメント](https://pydantic.dev/docs/httpx2/)、[`httpx`から`httpx2`への移行ガイド](https://httpx2.pydantic.dev/migration/)、および[`huggingface_hub`の移行計画](https://github.com/huggingface/huggingface_hub/issues/4802)を参照してください。

