Hub documentation
Konteyner Görselleri
Konteyner Görselleri
Container Images, Hugging Face Hub'da Docker ve diğer OCI görüntüleri için bir depo türüdür. Hugging Face konteyner kayıt defteri olan cr.hf.co, görüntüleri Xet depolama altyapısında saklar. Bunları, önerilen istemci olan hf image ile gönderin ve çekin; Docker, Podman, crane, skopeo, ORAS ve Helm gibi standart istemciler de çalışır.
Container Images özel beta aşamasındadır: bize ulaşın ve bunları organizasyonunuz için etkinleştirin.
Depo Oluşturma
huggingface.co/new-container adresine gidin ve kuruluşu, bir ad ile görünürlüğü seçin. Veya API'yi kullanın:
curl -X POST https://huggingface.co/api/containers/my-org/my-app \
-H "Authorization: Bearer $HF_TOKEN" \
-H "Content-Type: application/json" \
-d '{"private": true}'İtkin göndermeden önce depoyu oluşturun: var olmayan bir depoya yapılan itme NAME_UNKNOWN hatasıyla başarısız olur. Sayfası, https://huggingface.co/containers/my-org/my-app, etiketlerini listeler. Kimin çekebileceği ve itebileceği, depoyun görünürlüğüne ve her üyenin organizasyondaki rolüne bağlıdır.
hf image ile İtme ve Çekme
hf image, hf CLI'nin bir uzantısı olarak, her katmanın önceki sürümden bu yana değişen kısımlarını aktarır ve bu sayede diğer OCI istemcilerine kıyasla daha hızlı bir deneyim sunar.
hf extensions install hf-image
hf auth login # or set HF_TOKEN
hf image build -t cr.hf.co/my-org/my-app:v2 . # optional: docker build works too
hf image push cr.hf.co/my-org/my-app:v2
hf image pull cr.hf.co/my-org/my-app:v2Hugging Face Kullanıcı Erişim Anahtarınızı (read ile çekmek, write ile itmek için) kullanır ve containerd image store ile Docker gerektirir. hf image ile itilen görüntüler herhangi bir istemci tarafından çekilebilir.
hf image katmanları sıkıştırılmamış olarak sakladığı için, ittiği görüntülerin docker push ile elde edilenlerden farklı özetleri (digest) olur. İmzalar veya öze göre sabitlenmiş dağıtımlar için docker push özetlerini korumak istiyorsanız hf image push --preserve-digests kullanın. Bu işlem daha yavaştır: değiştirilen katmanlar, docker push ile olduğu gibi tam olarak itilir ve çekilir.
Docker ve Diğer OCI İstemcilerini Kullanma
Xet backend'in tüm avantajlarından yararlanmak için hf image kullanmanızı önerirsek de (önceki bölümü bkz.), kayıt defteriyle herhangi bir OCI istemcisi üzerinden de etkileşime girebilirsiniz.
Hugging Face kullanıcı adınız ve şifre olarak bir User Access Token ile oturum açın: çekmek için read, itmek için write. Halka açık görüntüler oturum açmadan çekilebilir.
echo $HF_TOKEN | docker login cr.hf.co -u <username> --password-stdin
docker tag my-app cr.hf.co/my-org/my-app:v1
docker push cr.hf.co/my-org/my-app:v1
docker pull cr.hf.co/my-org/my-app:v1Diğer OCI istemcileri de aynı şekilde çalışır. Helm, URL'ye grafik adını ekler: helm push mychart-0.1.0.tgz oci://cr.hf.co/my-org komutu, my-org/mychart konumuna gönderim yapar ve bu konumun önceden var olması gerekir.
Görselleri Silme
Hub'da, bir etiketi, görselin veya etiketin sayfasındaki menüsündeki Bu etiketi sil seçeneğini kullanarak kaldırın. hf image ile bir görselin etiketlerini kaldırın, ardından onu digest ile silin:
hf image untag cr.hf.co/my-org/my-app:v1 # prints the image's digest
hf image delete cr.hf.co/my-org/my-app@sha256:<digest>Eğer görüntüye başka bir etiket gibi bir şey hâlâ atıfta bulunuyorsa, silme işlemi reddedilir ve önce nelerin kaldırılması gerektiği listelenir. Çoklu mimari bir görüntünün silinmesi, platform görüntülerinin de silinmesine neden olur.
Çöp Toplama
Kayıt defteri, artık doğrudan veya çok mimarili bir görüntü yoluyla herhangi bir etiketin işaret etmediği görüntüleri, örneğin yeni bir gönderimden sonraki önceki latest etiketini, siler. Ayrıca, kalan görüntülerin hiçbiri tarafından kullanılmayan katmanları da siler. Bir görüntüyü özetiyle (digest) çekmeye devam edebilmek için üzerinde bir etiket bulundurun.
Sınırlar
- Görsel adları küçük harfle
cr.hf.co/<namespace>/<name>biçimindedir. - 100 GB'a kadar katmanlar, 4 MiB'a kadar manifestler.
- Etiket listeleri yeni bir etiketi göstermek için birkaç saniye sürebilir.