diff --git a/docs/hub/_toctree.yml b/docs/hub/_toctree.yml index dcee8ed13..f47284e8c 100644 --- a/docs/hub/_toctree.yml +++ b/docs/hub/_toctree.yml @@ -350,6 +350,8 @@ title: Analytics - local: enterprise-hub-network-security title: Network Security + - local: enterprise-hub-gating-group-collections + title: Gating Group Collections - local: billing title: Billing - local: security diff --git a/docs/hub/collections.md b/docs/hub/collections.md index 8683f92c4..d27667b02 100644 --- a/docs/hub/collections.md +++ b/docs/hub/collections.md @@ -11,6 +11,7 @@ Collections have many use cases: - Showcase and share a complete project with its paper(s), dataset(s), model(s) and Space(s). - Bookmark things you find on the Hub in categories. - Have a dedicated page of curated things to share with others. +- Gate a group of models/datasets (Enterprise Hub) This is just a list of possible uses, but remember that collections are just a way of grouping things, so use them in the way that best fits your use case. @@ -54,6 +55,12 @@ Use the **history feature** to keep track of who has edited the collection. Set your collection to **private** if you don't want it to be accessible via its URL (it will not be displayed on your profile/organization page). For organizations, private collections are only available to members of the organization. +### Gating Group Collections (Enterprise Hub) + +You can use a collection to [gate](https://huggingface.co/docs/hub/en/models-gated) all the models/datasets belonging to it, allowing you to grant (or reject) access to all of them at once. + +This feature is reserved for [Enterprise Hub](https://huggingface.co/docs/hub/en/enterprise-hub) subscribers: more information about Gating Group Collections can be found in [our dedicated doc](https://huggingface.co/docs/hub/en/enterprise-hub-gating-group-collections). + ### Ordering your collections and their items You can use the drag and drop handles in the collections list (on the left side of your collections page) to change the order of your collections (1). The first two collections will be directly visible on your profile/organization pages. diff --git a/docs/hub/datasets-gated.md b/docs/hub/datasets-gated.md index c2e877c83..f4762b22e 100644 --- a/docs/hub/datasets-gated.md +++ b/docs/hub/datasets-gated.md @@ -125,6 +125,12 @@ extra_gated_button_content: "Acknowledge license" --- ``` +## Manage gated datasets as an organization (Enterprise Hub) + +[Enterprise Hub](https://huggingface.co/docs/hub/en/enterprise-hub) subscribers can create a Gating Group Collection to grant (or reject) access to all the models and datasets in a collection at once. + +More information about Gating Group Collections can be found in [our dedicated doc](https://huggingface.co/docs/hub/en/enterprise-hub-gating-group-collections). + ## Access gated datasets as a user diff --git a/docs/hub/enterprise-hub-gating-group-collections.md b/docs/hub/enterprise-hub-gating-group-collections.md new file mode 100644 index 000000000..7c2749eb6 --- /dev/null +++ b/docs/hub/enterprise-hub-gating-group-collections.md @@ -0,0 +1,166 @@ +# Gating Group Collections + + +This feature is part of the Enterprise Hub. + + +Gating Group Collections allow organizations to grant (or reject) access to all the models and datasets in a collection at once, rather than per repo. Users will only have to go through **a single access request**. + +To enable Gating Group in a collection: + +- the collection owner must be an organization +- the organization must be subscribed to the Enterprise Hub +- all models and datasets in the collection must be owned by the same organization as the collection +- each model or dataset in the collection may only belong to one Gating Group Collection, but they may be present on non-gating collections. + + +Gating only applies to models and datasets; any other resource part of the collection (such as a Space or a Paper) won't be affected. + + +## Manage gating group as an organization admin + +To enable access requests, go to the collection page and click on **Gating group** in the bottom-right corner. + +
+ Hugging Face collection page with gating group collection feature disabled + +
+ +By default, gating group is disabled: click on **Configure Access Requests** to open the settings + +
+ Hugging Face gating group collection settings with gating disabled + +
+ +By default, access to the repos in the collection is automatically granted to users when they request it. This is referred to as **automatic approval**. In this mode, any user can access your repos once they’ve agreed to share their contact information with you. + +
+ Hugging Face gating group collection settings with automatic mode selected + +
+ +If you want to manually approve which users can access repos in your collection, you must set it to **Manual Review**. When this is the case, you will notice a new option: + +**Notifications frequency**, which lets you configure when to get notified about new users requesting access. It can be set to once a day or real-time. By default, emails are sent to the first 5 admins of the organization. You can also set a different email address in the **Notifications email** field. + +
+ Hugging Face gating group collection settings with manual review mode selected + +
+ +### Review access requests + +Once access requests are enabled, you have full control of who can access repos in your gating group collection, whether the approval mode is manual or automatic. You can review and manage requests either from the UI or via the API. + +**Approving a request for a repo in a gating group collection will automatically approve access to all repos (models and datasets) in that collection.** + +#### From the UI + +You can review who has access to all the repos in your Gating Group Collection from the settings page of any of the repos in the collection, by clicking on the **Review access requests** button: + +
+ Hugging Face repo access settings when repo is in a gating group collection + +
+ +This will open a modal with 3 lists of users: + +- **pending**: the list of users waiting for approval to access your repository. This list is empty unless you’ve selected **Manual Review**. You can either **Accept** or **Reject** each request. If the request is rejected, the user cannot access your repository and cannot request access again. +- **accepted**: the complete list of users with access to your repository. You can choose to **Reject** access at any time for any user, whether the approval mode is manual or automatic. You can also **Cancel** the approval, which will move the user to the **pending** list. +- **rejected**: the list of users you’ve manually rejected. Those users cannot access your repositories. If they go to your repository, they will see a message _Your request to access this repo has been rejected by the repo’s authors_. + +
+ Manage access requests modal for a repo in a gating group collection + + +
+ +#### Via the API + +You can programmatically manage access requests in a Gated Group Collection through the API of any of its models or datasets. + +Visit our [gated models](https://huggingface.co/docs/hub/models-gated#via-the-api) or [gated datasets](https://huggingface.co/docs/hub/datasets-gated#via-the-api) documentation to know more about it. + +#### Download access report + +You can download access reports for the Gated Group Collection through the settings page of any of its models or datasets. + +Visit our [gated models](https://huggingface.co/docs/hub/models-gated#download-access-report) or [gated datasets](https://huggingface.co/docs/hub/datasets-gated#download-access-report) documentation to know more about it. + +#### Customize requested information + +Organizations can customize the gating parameters as well as the user information that is collected per gated repo. Please, visit our [gated models](https://huggingface.co/docs/hub/models-gated#customize-requested-information) or [gated datasets](https://huggingface.co/docs/hub/datasets-gated#customize-requested-information) documentation for more details. + + +There is currently no way to customize the gate parameters and requested information in a centralized way. If you want to collect the same data no matter which collection's repository a user requests access throughout, you need to add the same gate parameters in the metadata of all the models and datasets of the collection, and keep it synced. + + +## Access gated repos in a Gating Group Collection as a user + +A Gated Group Collection shows a specific icon before its name: + +
+ Hugging Face collection page with gating group collection feature enabled + +
+ +To get access to the models and datasets in a Gated Group Collection, a single access request on the page of any of those repositories is needed. Once your request is approved, you will be able to access all the other repositories in the collection, including future ones. + +Visit our [gated models](https://huggingface.co/docs/hub/models-gated#access-gated-models-as-a-user) or [gated datasets](https://huggingface.co/docs/hub/datasets-gated#access-gated-datasets-as-a-user) documentation to learn more about requesting access to a repository. diff --git a/docs/hub/enterprise-hub.md b/docs/hub/enterprise-hub.md index 7b4ae640a..b0e8dd100 100644 --- a/docs/hub/enterprise-hub.md +++ b/docs/hub/enterprise-hub.md @@ -23,5 +23,6 @@ In this section we will document the following Enterprise Hub features: - [Tokens Management](./enterprise-hub-tokens-management) - [Analytics](./enterprise-hub-analytics) - [Network Security](./enterprise-hub-network-security) +- [Gating Group Collections](./enterprise-hub-gating-group-collections) Finally, Enterprise Hub includes 1TB of [private repository storage](./storage-limits) per seat in the subscription, i.e. if your organization has 40 members, then you have 40TB included storage for your private models and datasets. diff --git a/docs/hub/models-gated.md b/docs/hub/models-gated.md index 4d2089a0c..928d2f9df 100644 --- a/docs/hub/models-gated.md +++ b/docs/hub/models-gated.md @@ -139,6 +139,12 @@ Possible use cases of programmatic management include: - Here's an [example repo](https://huggingface.co/Trelis/openchat_3.5-function-calling-v3) from TrelisResearch that uses this use case. - [@RonanMcGovern](https://huggingface.co/RonanMcGovern) has posted a [video about the flow](https://www.youtube.com/watch?v=2OT2SI5auQU) and tips on how to implement it. +## Manage gated models as an organization (Enterprise Hub) + +[Enterprise Hub](https://huggingface.co/docs/hub/en/enterprise-hub) subscribers can create a Gating Group Collection to grant (or reject) access to all the models and datasets in a collection at once. + +More information about Gating Group Collections can be found in [our dedicated doc](https://huggingface.co/docs/hub/en/enterprise-hub-gating-group-collections). + ## Access gated models as a user