Hub documentation
Kapılı modeller
Kapılı modeller
Modellerin nasıl kullanılacağı üzerinde daha fazla kontrol sağlamak için Hub, model yazarlarının modelleri için erişim isteklerini etkinleştirmesine olanak tanır. Etkinleştirildiğinde, kullanıcılar model dosyalarına erişmek için bir erişim isteği göndermelidir; bu istek, yazarlar toplama işlemini devre dışı bırakmadığı sürece Hugging Face bilgilerini (kullanıcı adı ve e-posta adresi) model yazarlarıyla paylaşır. Model yazarları ayrıca özel alanlar da ekleyebilir. Erişim istekleri etkinleştirilmiş bir modele kısıtlı model denir. Erişim istekleri her zaman tüm organizasyonlara değil, bireysel kullanıcılara verilir. Kısıtlı modellerin yaygın bir kullanım senaryosu, geniş çaplı yayınlanmadan önce erken aşama araştırma modellerine erişim sağlamaktır.
Model yazarı olarak kapalı modelleri yönetme
Erişim isteklerini etkinleştirmek için model ayarları sayfasına gidin. Varsayılan olarak model kapalıdır. Sağ üst köşedeki Erişim isteğini etkinleştir seçeneğine tıklayın.

Varsayılan olarak, modele erişim, model talep edildiğinde kullanıcıya otomatik olarak sağlanır. Buna otomatik onay denir. Bu modda, herhangi bir kullanıcı, kişisel bilgilerini sizinle paylaştığında modelinize erişebilir.

Modelinize erişebilecek kullanıcıları manuel olarak onaylamak istiyorsanız, bunu manual approval olarak ayarlamalısınız. Bu durumda daha fazla seçenek göreceksiniz:
- Erişim ekle, bir kullanıcıyı aramanıza ve talep etmemiş olsa bile ona erişim izni vermenize olanak tanır.
- Bildirim sıklığı, yeni kullanıcılar erişim talep ettiğinde ne zaman bildirim alacağınızı yapılandırmanızı sağlar. Günde bir kez veya gerçek zamanlı olarak ayarlanabilir. Varsayılan olarak, bir e-posta birincil e-posta adresinize gönderilir. Bir kuruluş altında barındırılan modeller için, e-postalar varsayılan olarak kuruluşun ilk 5 yöneticisine gönderilir. Her iki durumda da (kullanıcı veya kuruluş) Bildirim e-postası alanında farklı bir e-posta adresi belirleyebilirsiniz.

Erişim isteklerini gözden geçirin
Erişim istekleri etkinleştirildiğinde, onay modu manuel veya otomatik olsun ya da olmasın, modelinize kimlerin erişebileceğini tam olarak kontrol edersiniz. İstekleri arayüzden veya API üzerinden inceleyebilir ve yönetebilirsiniz.
Arayüzden
Gated modelinize kimlerin erişim yetkisi olduğunu, ayarlar sayfasındaki Erişim isteklerini incele düğmesine tıklayarak görüntüleyebilirsiniz. Bu işlem, kullanıcıların 3 listeden oluşan bir pencereyi açar:
- pending: modelinize erişim için onay bekleyen kullanıcıların listesi. Bu liste, manual approval seçeneğini seçmediğiniz sürece boş kalır. Talebi Accept veya Reject edebilirsiniz. Talep reddedilirse, kullanıcı modelinize erişemez ve tekrar erişim talep edemez.
- accepted: modelinize erişimi olan kullanıcıların tam listesi. Onay modu manuel veya otomatik olsun, herhangi bir kullanıcı için istediğiniz zaman erişimi Reject edebilirsiniz. Ayrıca onayı Cancel edebilir ve bu, kullanıcının pending listesine taşınmasını sağlar.
- rejected: Manuel olarak reddettiğiniz kullanıcıların listesi. Bu kullanıcılar modellerinize erişemez. Model deposuna giderlerse Your request to access this repo has been rejected by the repo’s authors mesajını görürler.

API üzerinden
Erişim isteklerinin onayını API'yi kullanarak otomatikleştirebilirsiniz. Kapalı depoya write erişimine sahip bir token iletmeniz gerekir. Bir token oluşturmak için kullanıcı ayarlarınıza gidin.
| Yöntem | URI | Açıklama | Başlıklar | Yük |
|---|---|---|---|---|
GET | /api/models/{repo_id}/user-access-request/{status} | Verilen status ile istekleri listeleyin: pending, accepted, rejected veya reset. Her isteğin bir requestId ve kullanıcı adı toplandıysa bir user alanı vardır. | {"authorization": "Bearer $token"} | |
POST | /api/models/{repo_id}/user-access-request/handle | Belirli bir erişim isteğinin durumunu status olarak değiştirin. | {"authorization": "Bearer $token"} | {"status": "accepted"/"rejected"/"pending"/"reset", "user": "username" (or "requestId": "request id"), "rejectionReason": "Optional rejection reason that will be visible to the user (max 200 characters).", "resetReason": "Optional reset reason that will be included in the email sent to the user (max 200 characters)."} |
POST | /api/models/{repo_id}/user-access-request/grant | Belirli bir kullanıcının reponuza erişmesine izin verin. | {"authorization": "Bearer $token"} | {"user": "username"} |
Yukarıdaki HTTP uç noktaları için temel URL https://huggingface.co'dur.
Bir isteği reset olarak ayarlamak, önceki kararı iptal eder ve kullanıcıya baştan başlamasını ister: kullanıcı model erişimini kaybeder, isteğinin sıfırlandığına dair (isteğe bağlı resetReason dahil) bir e-posta alır ve model sayfasını bir sonraki ziyaretinde kapama koşullarını kabul etmesi ve yeni bir istek göndermesi istenir. Bu, mevcut isteği olduğu gibi koruyup yalnızca inceleme kuyruğuna geri koyan pending durumundan ve kullanıcının tekrar erişim isteğinde bulunmasını engelleyen rejected durumundan farklıdır.
YENİ! Bu uç noktalar artık Python istemcimiz huggingface_hub içinde resmi olarak destekleniyor. Modelinize yapılan erişim isteklerini list_pending_access_requests, list_accepted_access_requests ve list_rejected_access_requests ile listeleyebilirsiniz. Ayrıca erişim isteklerini accept_access_request, cancel_access_request ve reject_access_request ile kabul edebilir, iptal edebilir ve reddedebilirsiniz. Son olarak, bir kullanıcıya grant_access ile erişim verebilirsiniz.
Erişim raporunu indir
Bir gated model için tüm erişim isteklerinin raporunu download user access report düğmesiyle indirebilirsiniz. Kullanıcı listesini içeren bir json dosyasını indirmek için düğmeye tıklayın. Her kayıt için şunlara sahipsiniz:
- requestId: isteğin kimliği.
- user: kullanıcı kimliği. Örnek: julien-c.
- fullname: Hub'daki kullanıcının adı. Örnek: Julien Chaumond.
- status: isteğin durumu.
"pending","accepted","rejected"veya"reset"olabilir. - email: kullanıcının e-posta adresi.
- time: kullanıcının isteği ilk olarak yaptığı zaman.
- reviewedAt: isteğin kabul edildiği veya reddedildiği tarih ve saat. Bekleyen istekler için ayarlanmaz.
user,fullnameverequestIdile tanımlanabilir.
Hugging Face'in sizinle paylaştığı profil verilerini seçin
Varsayılan olarak Hugging Face, isteği yapan kullanıcının kullanıcı adını ve birincil e-posta adresini sizinle paylaşır. Kişisel tanımlayıcı bilgilerin (PII) işlenmesinden ve bunları nasıl işlediğinizi ilgili yasalara uygun olarak açıklamaktan (örneğin kendi Gizlilik Politikasına bir bağlantı ekleyerek) siz sorumlusunuz. Bunu, model ayarları sayfasındaki erişim kısıtlama seçeneklerinde değiştirebilirsiniz:
- Kullanıcı adını topla: işaret kaldırıldığında, isteği yapan kişinin Hugging Face kullanıcı adı, tam adı ve avatarı size iletilmez. İstekler, bir istek kimliğiyle listelenir ve diğer herhangi bir istek gibi kabul edilebilir veya reddedilebilir.
- E-posta topla: istek sahibinin Hugging Face profil e-postasını toplar. Kullanıcı adı topla gerektirir.
Özel form alanlarınızın yanıtlarını hâlâ alırsınız, bu nedenle orada ihtiyacınız olan tüm iletişim bilgilerini isteyebilirsiniz. Bu ayarlar yalnızca yeni isteklere uygulanır: mevcut istekler, oluşturulduklarında geçerli olan ayarları korur.
Gating Group Collection içindeki modeller için bu seçenekler koleksiyon üzerinde yapılandırılır.
İstenen bilgileri özelleştirin
Varsayılan olarak, kapalı modelinize gelen kullanıcılar, Agree and send request to access repo düğmesine tıklayarak Hugging Face bilgilerini (e-posta ve kullanıcı adı, toplanmalarını devre dışı bırakmadıysanız) paylaşmaları istenir.

Daha fazla kullanıcı bilgisi toplamak istiyorsanız ek alanlar yapılandırabilirsiniz. Bu bilgi Ayarlar sekmesinden erişilebilir olacaktır. Bunu yapmak için, anahtar/değer çiftlerinden oluşan bir liste içeren extra_gated_fields özelliğini model kartı meta verilerinize ekleyin. key alanın adıdır, value ise türüdür veya type alanına sahip bir nesnedir. Alan türlerinin listesi şudur:
text: tek satırlık bir metin alanı.checkbox: bir onay kutusu alanı.date_picker: bir tarih seçici alanı.country: ülke açılır listesi. Ülke listesi ISO 3166-1 alpha-2 standardına dayanmaktadır.select: seçenek listesi içeren bir açılır menü. Seçenek listesioptionsalanında tanımlanır. Örnek:options: ["option 1", "option 2", {label: "option3", value: "opt3"}].
Son olarak, kullanıcıya gösterilen mesajı extra_gated_prompt ek alanıyla da kişiselleştirebilirsiniz.
Kullanıcının şirket adını ve ülkesini belirtmesi ile modelin yalnızca ticari olmayan kullanım için olduğu konusunda onay vermesi istenen, özelleştirilmiş bir istek formunun örneği aşağıda verilmiştir.
---
extra_gated_prompt: "You agree to not use the model to conduct experiments that cause harm to human subjects."
extra_gated_fields:
Company: text
Country: country
Specific date: date_picker
I want to use this model for:
type: select
options:
- Research
- Education
- label: Other
value: other
I agree to use this model for non-commercial use ONLY: checkbox
---Bazı durumlarda, kapı başlığı, açıklaması ve düğmesindeki varsayılan metni de değiştirmek isteyebilirsiniz. Bu kullanım senaryoları için extra_gated_heading, extra_gated_description ve extra_gated_button_content değerlerini şu şekilde değiştirebilirsiniz:
---
extra_gated_heading: "Acknowledge license to accept the repository"
extra_gated_description: "Our team may take 2-3 days to process your request"
extra_gated_button_content: "Acknowledge license"
---Programatik olarak erişim isteklerini yönetmenin örnek kullanım senaryoları
Toplulukta doğal olarak ortaya çıkan, gated (erişim kısıtlı) depolara yönelik erişim isteklerini programatik olarak yönetmenin birkaç ilginç kullanım senaryosunu aşağıda bulabilirsiniz. Hatırlatma olarak, model deposunun manuel onay olarak ayarlanması gerekir; aksi takdirde kullanıcılar otomatik olarak erişim alır.
Programatik yönetimin olası kullanım senaryoları şunları içerir:
- Gelişmiş kullanıcı isteği tarama gereksinimleriniz varsa (gelişmiş uyumluluk gereksinimleri vb.) veya kullanıcı isteklerini Hub dışında işlemek istiyorsanız.
- Bunun bir örneği, kullanıcıların Meta web sitesinden erişim talep etmesi gereken Meta'nın Llama 2 ilk sürümüdür.
- Erişim akışınızda kullanıcılardan HF kullanıcı adlarını isteyebilir ve ardından bir betik kullanarak Hub'daki kullanıcı isteklerini, belirlediğiniz koşullara göre programatik olarak kabul edebilirsiniz.
- Bir ödeme akışının tamamlanmasına bağlı olarak bir modele erişimi koşullandırmak istiyorsanız (gerçek ödeme akışının Hub dışında gerçekleştiğini unutmayın).
- TrelisResearch'ten bu kullanım senaryosunu kullanan bir örnek depo işte.
- @RonanMcGovern, akış hakkında bir video paylaştı ve bunu nasıl uygulayacaklarına dair ipuçları verdi.
Organizasyon üyeleri için geçiş erişimi
Bir organizasyon altında barındırılan kapılı modeller için, organizasyonun kendi üyelerinin de erişim isteği göndermesini zorunlu kılabilirsiniz. Model ayarları sayfasında, kapı seçeneklerinin altında {org} üyeleri için de erişimi kapalı tut seçeneğini etkinleştirin.
Bu seçenek etkinleştirildiğinde, organizasyon üyeleri diğer tüm kullanıcılar gibi modele erişim için talep oluşturmalıdır. Aşağıdaki roller talebi atlayarak doğrudan erişimlerini korur:
- Organizasyon yöneticileri
- Depoyu oluşturan kullanıcı
- Resource Group admins, when the model belongs to a Resource Group
Diğer tüm üyeler, erişim isteği akışından geçmelidir. Bu, okuma, katkıda bulunan veya yazma kuruluş rolüne sahip üyeleri ve yönetici rolü olmayan Kaynak Grubu üyelerini içerir.
Bir organizasyon olarak (Team & Enterprise) gated modelleri yönetin
Team & Enterprise aboneleri, bir koleksiyondaki tüm modellere ve veri setlerine erişimi tek seferde tanımlamak (veya reddetmek) için Gating Group Collection oluşturabilir.
Gating Group Collections hakkında daha fazla bilgi, özel belgemizde bulunabilir.
Kullanıcı olarak gated modellere erişim
Bir kullanıcı olarak, kapılı bir model kullanmak istiyorsanız bu modele erişim talep etmeniz gerekir. Bu, bir Hugging Face kullanıcı hesabına giriş yapmış olmanız gerektiği anlamına gelir.
Erişim talebi yalnızca tarayıcınızdan yapılabilir. Hub'daki modele gidin ve bilgilerinizi paylaşmanız istenecektir:

Kabul Et düğmesine tıklayarak, istek formunda girdiğiniz bilgileri (uygulanabilirse) model yazarlarıyla paylaşmayı, ayrıca yazarların bunları toplamayı tercih etmesi durumunda Hugging Face kullanıcı adınızı ve e-posta adresinizi paylaşmayı kabul etmiş olursunuz. Model yazarlarının size erişim izni verip vermeyeceğine karar vermesine yardımcı olmak için, form alanlarını mümkün olduğunca eksiksiz doldurmaya çalışın.
Erişim isteği gönderildikten sonra iki olasılık vardır. Onay mekanizması otomatikse, model dosyalarına anında erişim sağlarsınız. Aksi takdirde, isteklerin yazarlar tarafından manuel olarak onaylanması gerekir ve bu işlem daha fazla zaman alabilir.
Model yazarları, modele erişim üzerinde tam kontrole sahiptir. Özellikle, onay mekanizmasından bağımsız olarak ve talebiniz zaten onaylanmış olsa bile, modelinize erişiminizi önceden haber vermeden herhangi bir zamanda engelleyebilirler.
Dosyaları indir
Korumalı bir modelden dosya indirmek için kimlik doğrulamanız gerekir. Tarayıcıda, hesabınızla oturum açtığınız sürece bu işlem otomatik olarak yapılır. Bir betik kullanıyorsanız, bir kullanıcı belirteci (user token) sağlamalısınız. Hugging Face Python ekosisteminde (transformers, diffusers, datasets vb.) huggingface_hub kütüphanesini kullanarak makinenize giriş yapabilir ve terminalinizde şunu çalıştırabilirsiniz:
hf auth login
Alternatif olarak, bir defterde veya betikte login() kullanarak programatik olarak oturum açabilirsiniz:
>>> from huggingface_hub import login
>>> login()Kütüphanelerdeki (from_pretrained, hf_hub_download, load_dataset vb.) çoğu yükleme yöntemine, betiklerinizden doğrudan token parametresini de sağlayabilirsiniz.
Giriş yapma konusunda daha fazla ayrıntı için giriş kılavuzuna göz atın.
AB Kullanıcıları İçin Erişimi Kısıtlama
Kapılı modeller için, Avrupa Birliği ülkelerindeki kullanıcıları özellikle kısıtlamak amacıyla ek bir erişim kontrol katmanı ekleyebilirsiniz. Modelinizin lisansı veya kullanım koşulları AB'de dağıtımını yasaklıyorsa bu işe yarar.
Bunu etkinleştirmek için model kartınızın meta verilerine extra_gated_eu_disallowed: true özelliğini ekleyin.
Önemli: Bu özellik yalnızca modeliniz zaten kapılıysa etkinleşir. gated: false ise veya özellik ayarlanmamışsa bu kısıtlama uygulanmaz.
---
license: mit
gated: true
extra_gated_eu_disallowed: true
---Sistem, bir kullanıcının konumunu IP adresine dayanarak belirler.
Update on GitHub