HuggingFace Hub レポジトリ : Getting Started (翻訳/解説)
翻訳 : (株)クラスキャット セールスインフォメーション
作成日時 : 01/01/2023
* 本ページは、HuggingFace Hub Repositories の以下のドキュメントを翻訳した上で適宜、補足説明したものです:
* サンプルコードの動作確認はしておりますが、必要な場合には適宜、追加改変しています。
* ご自由にリンクを張って頂いてかまいませんが、sales-info@classcat.com までご一報いただけると嬉しいです。
- 人工知能研究開発支援
- 人工知能研修サービス(経営者層向けオンサイト研修)
- テクニカルコンサルティングサービス
- 実証実験(プロトタイプ構築)
- アプリケーションへの実装
- 人工知能研修サービス
- PoC(概念実証)を失敗させないための支援
- お住まいの地域に関係なく Web ブラウザからご参加頂けます。事前登録 が必要ですのでご注意ください。
◆ お問合せ : 本件に関するお問い合わせ先は下記までお願いいたします。
- 株式会社クラスキャット セールス・マーケティング本部 セールス・インフォメーション
- sales-info@classcat.com ; Web: www.classcat.com ; ClassCatJP
HuggingFace Hub レポジトリ
Models, Spaces と datasets は Hugging Face Hub に Git レポジトリ としてホストされます、これはバージョン・コントロールとコラボレーションは Hub の中核的な要素であることを意味します。簡単に言えば、レポジトリ (repo) は貴方のワークをバックアップし、それをコミュニティと共有して、チームで作業できるようにコードとアセットをするためにストアできる場所です。
これらのページでは、Git を始めて Hub 上のレポジトリと相互作用する基本を調べます。その使い方が分かったら、効果的なレポジトリの使用方法をまとめたベストプラクティスと次のステップを探求できます。
HuggingFace Hub レポジトリ : Getting Started
この初心者向けガイドは Hub で貴方のレポジトリを作成して管理するために必要な基本的なスキルを得るのに役立ちます。各セクションは前のものの上に構築されていますので、どこから始めるか自由に選択してください!
要件
このドキュメントは web インターフェイスそしてターミナルを通してレポジトリを操作する方法を示します。UI で作業する場合には要件はありません。ターミナルで作業したい場合には、これらのインストール手順に従ってください。
CLI コマンドとして利用可能な git をまだ持っていない場合には、貴方のプラットフォームのために git をインストールする必要があります。Git LFS をインストールする 必要もあります、これは画像やモデル重みのような大きいファイルを扱うために使用されます。
貴方のコードを Hub にプッシュできるためには、何らかの方法で認証する必要があります。これを行なう最も簡単な方法は huggingface_hub CLI をインストールして login コマンドを実行することです :
python -m pip install huggingface_hub
huggingface-cli login
The content in the Getting Started section of this document is also available as a video!
レポジトリの作成
Hub の web インターフェイスを使用して、レポジトリを作成し、ファイルを (大きなものでも!) 追加し、モデルを検索し、差分を可視化する等々を簡単に行なうことができます。Hub には 3 種類のレポジトリがありこのガイドではデモ目的で モデルレポジトリ を作成していきます。For information on creating and managing models, datasets, and Spaces, refer to their respective documentation.
- 新しいレポジトリを作成するには、huggingface.co/new にアクセスしてください :
- レポジトリの所有者を指定します : これは貴方か、貴方が所属している組織のいずれかです。
- モデル名を入力します。これはまたレポジトリの名前になります。
- モデルを公開するか非公開にするかを指定します。
- ライセンスを指定します。今は License フィールドは空白のままで構いません。ライセンスについて学習するには、Licenses ドキュメントを参照してください。
モデルレポジトリ作成後、このようなページを見るはずです :
Hub はモデルカードを作成するように促すことに注意してください、これについて Model Cards ドキュメント で学習できます。貴方のモデル repo にモデルカードを含めることはベストプラクティスですが、今はテスト repo を作成しているだけですのでこれをスキップできます。
ファイルのレポジトリへの追加 (Web UI)
Web UI を通してファイルを貴方のレポジトリに追加するには、Files タブを選択することから始めて、希望するディレクトリにナビゲートしてから、Add file をクリックします。新しいファイルを作成するか、貴方のコンピュータからファイルを直接アップロードするかのオプションが与えられます。
新規ファイルの作成
create a new file を選択すると以下のようなエディター画面が表示されます、そこではファイルの名前を選択し、内容を追加して、変更を要約したメッセージとともにファイルを保存できます。新規ファイルを repo の main ブランチに直接コミットする代わりに、Pull Request を作成するために “Open as a pull request” を選択することができます。
ファイルのアップロード
Upload file を選択する場合、repo への変更を要約したメッセージとともに、アップロードするローカルファイルを選択することができます。
新規ファイルの作成と同様に、repo の main ブランチに変更の追加を直接コミットする代わりに、Pull Request を作成するために “Open as a pull request” を選択することができます。
ファイルのレポジトリへの追加 (ターミナル)
レポジトリのクローニング
レポジトリを貴方のローカルマシンにダウンロードすることをクローニング (複製, cloning) と呼びます。repo をロードしてそれにナビゲートするために以下のコマンドが使用できます :
git clone https://huggingface.co/<your-username>/<your-model-name>
cd <your-model-id>
セットアップ
Now’s the time, 望む任意のファイルをレポジトリに追加できます!🔥
10MB より大きいファイルを持っていますか?それらのファイルは git-lfs で追跡される必要があります、これは以下で初期化できます :
git lfs install
Updated git hooks. Git LFS initialized.
貴方のファイルが 5GB より大きい場合には以下を実行する必要もあることに注意してください :
huggingface-cli lfs-enable-largefiles .
レポジトリを作成するために Hugging Face を使用するとき、Hugging Face は .gitattributes ファイル內で一般的な機械学習の大規模ファイルに対する一般的なファイル拡張子のリストを自動的に提供します、git-lfs は貴方の大きいファイルへの変更を効率的に追跡するためにそれを使用しています。けれども、貴方のファイルタイプがまだ扱われていない場合には新しい拡張子を追加する必要があるかもしれません。git lfs track “*.your_extension” でそれを行なうことができます。
ファイルのプッシュ
新しいファイルと、既存のファイルへの任意の変更をコミットと呼ばれる変更の束 (bundle) としてセーブするために Git を利用することができます、これはプロジェクトの「リビジョン」として考えることができます。コミットを作成するには、変更をセーブする予定であることを Git に知らせるためにファイルを追加して、それからそれらの変更をコミットする必要があります。Hugging Face Hub で新規のコミットを同期させるためには、コミットを Hub にプッシュします。
# Create any files you like! Then...
git add .
git commit -m "First model version" # You can choose any descriptive message
git push
And you’re done! すべての最近追加されたファイルで Hugging Face 上の貴方のレポジトリを確認することができます。例えば、下のスクリーンショットではユーザは幾つかのファイルを追加しました。この例の幾つかのファイルは 1.04 GB のサイズを持ちますので、repo はそれを追跡するために Git LFS を使用していることに注意してください。
レポジトリの履歴を見る
add-commit-push のサイクルを通り抜けるたびに、repo は貴方がファイルに行ったすべての変更を追跡します。UI はモデルファイルとコミットを検索して、各コミットにより導入された差分 (diff) を見ることを可能にします。履歴を見るために、History: X commits リンクをクリックできます。
You can click on an individual commit to see what changes that commit introduced:
以上