

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Hubs privados com curadoria para controle de acesso ao modelo básico em JumpStart
<a name="jumpstart-curated-hubs"></a>

Organize modelos JumpStart básicos pré-treinados para sua organização com hubs privados. Use os modelos de base proprietários e disponíveis ao público mais recentes e, ao mesmo tempo, aplique barreiras de proteção de governança, garantindo, assim, que sua organização acesse apenas modelos aprovados.

Use hubs de modelos privados para compartilhar modelos e cadernos, centralizar artefatos de modelos, melhorar a capacidade de descoberta de modelos e simplificar o uso de modelos em sua organização. Os administradores podem criar hubs privados que incluem subconjuntos de modelos personalizados para diferentes equipes, casos de uso ou requisitos de segurança. Os administradores podem criar um hub de modelo JumpStart privado usando o SDK do SageMaker Python. Em seguida, os usuários podem navegar, treinar e implantar o conjunto selecionado de modelos usando o Amazon SageMaker Studio ou o SDK do SageMaker Python.

Para obter mais informações sobre a criação de um hub de modelo privado, consulte [Guia de administração para hubs de modelos privados na Amazon SageMaker JumpStart](jumpstart-curated-hubs-admin-guide.md).

Para obter mais informações sobre o compartilhamento de hubs de modelos privados entre contas, consulte [Compartilhamento entre contas para hubs de modelos privados com AWS Resource Access Manager](jumpstart-curated-hubs-ram.md).

Para obter mais informações sobre o acesso a um hub de modelo privado, consulte [Guia do usuário](jumpstart-curated-hubs-user-guide.md).

# Guia de administração para hubs de modelos privados na Amazon SageMaker JumpStart
<a name="jumpstart-curated-hubs-admin-guide"></a>

Há ações que podem ser realizadas por administradores relacionadas aos hubs de modelos selecionados que os usuários da sua organização podem acessar. Isso inclui criar, adicionar, excluir e gerenciar o acesso a hubs privados. Esta página também inclui informações sobre as regiões da AWS compatíveis com os hubs privados selecionados, além dos pré-requisitos necessários para usar os hubs de modelos privados selecionados. 

## AWS Regiões suportadas
<a name="jumpstart-curated-hubs-admin-guide-regions"></a>

Atualmente, os hubs privados selecionados estão geralmente disponíveis nas seguintes regiões AWS comerciais:
+ us-east-1
+ us-east-2
+ us-west-2
+ eu-west-1
+ eu-central-1
+ ap-northeast-1
+ ap-northeast-2
+ ap-south-1
+ ap-southeast-1
+ ap-southeast-2
+ il-central-1 (somente SDK)

A quantidade máxima padrão permitida de hubs em uma única região é 50.

## Pré-requisitos
<a name="jumpstart-curated-hubs-admin-guide-prerequisites"></a>

Para usar um hub privado selecionado no Studio, são necessários os seguintes pré-requisitos:
+ Uma AWS conta com acesso de administrador
+ Uma função AWS Identity and Access Management (IAM) com acesso ao Amazon SageMaker Studio
+ Um domínio Amazon SageMaker AI com JumpStart habilitado
+ Se seus usuários tentarem usar modelos proprietários, eles devem ter assinaturas desses modelos no Marketplace. AWS 
+ AWS contas que estão implantando modelos proprietários devem ter assinaturas desses modelos no Marketplace. AWS 

Para obter mais informações sobre como começar a usar o Studio, consulte [SageMaker Estúdio Amazon](studio-updated.md).

# Criar um hub de modelo privado
<a name="jumpstart-curated-hubs-admin-guide-create"></a>

Use as etapas a seguir para criar um hub privado para gerenciar o controle de acesso de modelos JumpStart básicos pré-treinados para sua organização. Você deve instalar o SDK do SageMaker Python e configurar as permissões necessárias do IAM antes de criar um hub de modelos.

**Criar um hub privado**

1. Instale o SDK do SageMaker Python e importe os pacotes necessários do Python.

   ```
   # Install the SageMaker Python SDK
   !pip3 install sagemaker --force-reinstall --quiet
   
   # Import the necessary Python packages
   import boto3
   from sagemaker import Session
   from sagemaker.jumpstart.hub.hub import Hub
   ```

1. Inicialize uma sessão de SageMaker IA.

   ```
   sm_client = boto3.client('sagemaker')
   session = Session(sagemaker_client=sm_client)
   session.get_caller_identity_arn()
   ```

1. Configure os detalhes do hub privado, como o nome do hub interno, o nome de exibição da interface do usuário e a descrição do hub da interface do usuário.
**nota**  
Se você não especificar um nome de bucket do Amazon S3 ao criar seu hub, o serviço de SageMaker hub criará um novo bucket em seu nome. O novo bucket possui a seguinte estrutura de nomenclatura: `sagemaker-hubs-REGION-ACCOUNT_ID`.

   ```
   HUB_NAME="Example-Hub"
   HUB_DISPLAY_NAME="Example Hub UI Name"
   HUB_DESCRIPTION="A description of the example private curated hub."
   REGION="us-west-2"
   ```

1. Verifique se seu perfil do IAM de **administrador** possui as permissões necessárias do Amazon S3 para criar um hub privado. Se seu perfil não tiver as permissões necessárias, navegue até a página **Perfis** no console do IAM. Escolha o perfil de **administrador** e, em seguida, escolha **Adicionar permissões** no painel **Políticas de permissões** para criar uma política em linha com as seguintes permissões usando o editor JSON:

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Action": [
                   "s3:ListBucket",
                   "s3:GetObject",
                   "s3:GetObjectTagging"
               ],
               "Resource": [
                   "arn:aws:s3:::jumpstart-cache-prod-REGION",
                   "arn:aws:s3:::jumpstart-cache-prod-REGION/*"
               ],
               "Effect": "Allow"
           }
       ]
   }
   ```

------

1. Crie um hub de modelo privado utilizando suas configurações da **Etapa 3** com o uso do código `hub.create()`. 

   ```
   hub = Hub(hub_name=HUB_NAME, sagemaker_session=session)
   
   try:
   # Create the private hub
     hub.create(
         description=HUB_DESCRIPTION,
         display_name=HUB_DISPLAY_NAME
     )
     print(f"Successfully created Hub with name {HUB_NAME} in {REGION}")
   # Check that no other hubs with this internal name exist
   except Exception as e:
     if "ResourceInUse" in str(e):
       print(f"A hub with the name {HUB_NAME} already exists in your account.")
     else:
       raise e
   ```

1. Verifique a configuração do seu novo hub privado com o seguinte comando `describe`:

   ```
   hub.describe()
   ```

# Adicionar modelos a um hub privado
<a name="jumpstart-curated-hubs-admin-guide-add-models"></a>

Depois de criar um hub privado, você pode adicionar os modelos permitidos. Para ver a lista completa dos JumpStart modelos disponíveis, consulte a [tabela de algoritmos integrados com modelos pré-treinados na referência](https://sagemaker.readthedocs.io/en/stable/doc_utils/pretrainedmodels.html) do SDK para SageMaker Python.

1. Você pode filtrar os modelos disponíveis de forma programática usando o método `hub.list_sagemaker_public_hub_models()`. Você pode filtrar de outra maneira por categorias, como estrutura (`"framework == pytorch"`), tarefas, por exemplo, classificação de imagens (`"task == ic"`) e muito mais. Para obter mais informações sobre os filtros, consulte [https://github.com/aws/sagemaker-python-sdk/blob/master/src/sagemaker/jumpstart/notebook_utils.py](https://github.com/aws/sagemaker-python-sdk/blob/master/src/sagemaker/jumpstart/notebook_utils.py). O parâmetro de filtros no método `hub.list_sagemaker_public_hub_models()` é opcional. 

   ```
   filter_value = "framework == meta"
   response = hub.list_sagemaker_public_hub_models(filter=filter_value)
   models = response["hub_content_summaries"]
   while response["next_token"]:
       response = hub.list_sagemaker_public_hub_models(filter=filter_value, next_token=response["next_token"])
       models.extend(response["hub_content_summaries"])
   
   print(models)
   ```

1. Em seguida, você pode adicionar os modelos filtrados ao definir o ARN do modelo no método `hub.create_model_reference()`.

   ```
   for model in models:
       print(f"Adding {model.get('hub_content_name')} to Hub")
       hub.create_model_reference(model_arn=model.get("hub_content_arn"), model_name=model.get("hub_content_name"))
   ```

# Atualizar recursos em um hub privado
<a name="jumpstart-curated-hubs-update"></a>

É possível atualizar recursos em seu hub privado para fazer alterações em seus metadados. Os recursos que você pode atualizar incluem referências de modelos a SageMaker JumpStart modelos da Amazon, modelos personalizados, cadernos, conjuntos de dados e. JsonDoc

Ao atualizar o modelo, o notebook, os conjuntos de dados ou JsonDoc os recursos, você pode atualizar a descrição do conteúdo, o nome de exibição, as palavras-chave e o status do suporte. Ao atualizar referências de modelo para JumpStart modelos, você só pode atualizar o campo especificando a versão mínima do modelo que você gostaria de usar.
+ “Atualize os recursos do modelo ou do notebook” para incluir DataSet/JsonDoc. No comando CLI, DataSets/JsonDocs deve ser adicionado ao hub-content-type argumento.

Siga a seção específica do recurso que você deseja atualizar.

## Atualizar os recursos do modelo ou do caderno
<a name="jumpstart-curated-hubs-update-model-notebook"></a>

Para atualizar um modelo ou um recurso de notebook, use a [UpdateHubContent](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateHubContent.html)API.

Os campos de metadados válidos que você pode atualizar com essa API são os seguintes:
+ `HubContentDescription`: a descrição do recurso.
+ `HubContentDisplayName`: o nome de exibição do recurso.
+ `HubContentMarkdown`: a descrição do recurso, na formatação Markdown.
+ `HubContentSearchKeywords`: as palavras-chave pesquisáveis do recurso.
+ `SupportStatus`: o status atual do recurso.

Em sua solicitação, inclua uma alteração em um ou mais dos campos anteriores. Se você tentar atualizar qualquer outro campo, como o tipo de conteúdo do hub, receberá um erro.

------
#### [ AWS SDK para Python (Boto3) ]

O exemplo a seguir mostra como você pode usar o AWS SDK para Python (Boto3) para enviar uma [ UpdateHubContent](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateHubContent.html)solicitação.

**nota**  
A `HubContentVersion` que você especifica na solicitação significa que os metadados da versão específica estão atualizados. Para encontrar todas as versões disponíveis do conteúdo do seu hub, você pode usar a [ ListHubContentVersions](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListHubContentVersions.html)API.

```
import boto3
sagemaker_client = boto3.Session(region_name=<AWS-region>).client("sagemaker")

sagemaker_client.update_hub_contents(
    HubName=<hub-name>,
    HubContentName=<resource-content-name>,
    HubContentType=<"Model"|"Notebook">,
    HubContentVersion='1.0.0', # specify the correct version that you want to update
    HubContentDescription=<updated-description-string>
)
```

------
#### [ AWS CLI ]

O exemplo a seguir mostra como você pode usar o AWS CLI para enviar uma [ update-hub-content](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sagemaker/update-hub-content.html)solicitação.

```
aws sagemaker update-hub-content \
--hub-name <hub-name> \
--hub-content-name <resource-content-name> \
--hub-content-type <"Model"|"Notebook"> \
--hub-content-version "1.0.0" \
--hub-content-description <updated-description-string>
```

------

## Atualizar referências do modelo
<a name="jumpstart-curated-hubs-update-model-reference"></a>

Para atualizar uma referência de modelo para um JumpStart modelo, use a [ UpdateHubContentReference](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateHubContentReference.html)API.

Você pode atualizar somente o campo `MinVersion` para referências de modelo.

------
#### [ AWS SDK para Python (Boto3) ]

O exemplo a seguir mostra como você pode usar o AWS SDK para Python (Boto3) para enviar uma [ UpdateHubContentReference](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateHubContentReference.html)solicitação.

```
import boto3
sagemaker_client = boto3.Session(region_name=<AWS-region>).client("sagemaker")

update_response = sagemaker_client.update_hub_content_reference(
    HubName=<hub-name>,
    HubContentName=<model-reference-content-name>,
    HubContentType='ModelReference',
    MinVersion='1.0.0'
)
```

------
#### [ AWS CLI ]

O exemplo a seguir mostra como você pode usar o AWS CLI para enviar uma [ update-hub-content-reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sagemaker/update-hub-content-reference.html)solicitação.

```
aws sagemaker update-hub-content-reference \
 --hub-name <hub-name> \
 --hub-content-name <model-reference-content-name> \
 --hub-content-type "ModelReference" \
 --min-version "1.0.0"
```

------

# Compartilhamento entre contas para hubs de modelos privados com AWS Resource Access Manager
<a name="jumpstart-curated-hubs-ram"></a>

Depois de criar um hub de modelo privado, você pode compartilhar o hub com as contas necessárias usando AWS Resource Access Manager (AWS RAM). Para obter mais informações sobre a criação de um hub privado, consulte [Criar um hub de modelo privado](jumpstart-curated-hubs-admin-guide-create.md). A página a seguir fornece informações mais detalhadas sobre as permissões gerenciadas relacionadas aos hubs privados no AWS RAM. Para obter informações sobre como criar um compartilhamento de recursos em AWS RAM, consulte[Configurar o compartilhamento de hub entre contas](jumpstart-curated-hubs-ram-setup.md).

## Permissões gerenciadas para hubs privados selecionados
<a name="jumpstart-curated-hubs-ram-permissions"></a>

As permissões de acesso disponíveis são leitura, leitura e uso e permissões de acesso total. O nome da permissão, a descrição e a lista de permissões específicas APIs disponíveis para cada permissão estão listados a seguir:
+ Permissão de leitura (`AWS RAMPermissionSageMaker AIHubRead`): o privilégio de leitura permite que as contas do consumidor de recursos leiam tópicos nos hubs compartilhados e visualizem detalhes e metadados. 
  + `DescribeHub`: recupera detalhes sobre um hub e sua configuração
  + `DescribeHubContent`: recupera detalhes sobre um modelo disponível em um hub específico
  + `ListHubContent`: apresenta todos os modelos disponíveis em um hub
  + `ListHubContentVersions`: apresenta a versão de todos os modelos disponíveis em um hub
+ Permissão de leitura e uso (`AWS RAMPermissionSageMaker AIHubReadAndUse`): o privilégio de leitura e uso permite que as contas do consumidor de recursos leiam tópicos nos hubs compartilhados e implementem os modelos de inferência disponíveis. 
  + `DescribeHub`: recupera detalhes sobre um hub e sua configuração
  + `DescribeHubContent`: recupera detalhes sobre um modelo disponível em um hub específico
  + `ListHubContent`: apresenta todos os modelos disponíveis em um hub
  + `ListHubContentVersions`: apresenta a versão de todos os modelos disponíveis em um hub
  + `DeployHubModel`: permite acesso para implantar modelos de hub de peso aberto disponíveis para inferência.
+ Permissão de acesso total (`AWS RAMPermissionSageMaker AIHubFullAccessPolicy`): o privilégio de acesso total permite que as contas do consumidor de recursos leiam tópicos nos hubs compartilhados, adicionem e excluam tópicos do hub e implementem os modelos de inferência disponíveis. 
  + `DescribeHub`: recupera detalhes sobre um hub e sua configuração
  + `DescribeHubContent`: recupera detalhes sobre um modelo disponível em um hub específico
  + `ListHubContent`: apresenta todos os modelos disponíveis em um hub
  + `ListHubContentVersions`: apresenta a versão de todos os modelos disponíveis em um hub
  + `ImportHubContent`: importa o tópico do hub 
  + `DeleteHubContent`: exclui o tópico do hub
  + `CreateHubContentReference`: cria uma referência de conteúdo de hub que compartilha um modelo do hub de **modelos públicos** de SageMaker IA com um hub privado 
  + `DeleteHubContentReference`: exclua uma referência de conteúdo do hub que compartilha um modelo do hub de **modelos públicos** de SageMaker IA com um hub privado 
  + `DeployHubModel`: permite acesso para implantar modelos de hub de peso aberto disponíveis para inferência.

As permissões `DeployHubModel` não são necessárias para modelos proprietários.

# Configurar o compartilhamento de hub entre contas
<a name="jumpstart-curated-hubs-ram-setup"></a>

SageMaker usa [AWS Resource Access Manager (AWS RAM)](https://docs.aws.amazon.com/ram/latest/userguide/what-is.html) para ajudá-lo a compartilhar com segurança seus hubs privados entre contas. Configure o compartilhamento de hub entre contas usando as instruções a seguir, juntamente com as instruções sobre como [compartilhar seus AWS recursos](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html#getting-started-sharing-create) no *Guia do AWS RAM usuário*.

**Criar o compartilhamento de um recurso**

1. Selecione **Criar compartilhamento de recursos** por meio do [console do AWS RAM](https://console.aws.amazon.com/ram/home).

1. Ao especificar detalhes do compartilhamento de recursos, escolha o tipo de recurso **SageMaker Hubs** e selecione mais um hub privado que você deseja compartilhar. Quando você compartilha um hub com qualquer outra conta, todos os seus tópicos também são compartilhados implicitamente. 

1. Associar permissões a um compartilhamento de recursos. Para obter mais informações sobre permissões gerenciadas, consulte [Permissões gerenciadas para hubs privados selecionados](jumpstart-curated-hubs-ram.md#jumpstart-curated-hubs-ram-permissions).

1. Use IDs a AWS conta para especificar as contas às quais você deseja conceder acesso aos seus recursos compartilhados.

1. Revise sua configuração de compartilhamento de recursos e selecione **Criar compartilhamento de recursos**. Pode levar alguns minutos para que os compartilhamentos de recursos e as associações principais sejam concluídos.

Para obter mais informações, consulte [Compartilhando seus AWS recursos](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html) no *Guia AWS Resource Access Manager do usuário*.

Depois que o compartilhamento de recursos e as associações de entidades principais são definidas, as contas da AWS especificadas receberão um convite para participar desse compartilhamento. As AWS contas devem aceitar o convite para obter acesso a todos os recursos compartilhados.

Para obter mais informações sobre como aceitar um convite de compartilhamento de recursos por meio de AWS RAM, consulte [Como usar AWS recursos compartilhados](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-shared.html) no *Guia AWS Resource Access Manager do usuário*.

# Excluir modelos de um hub privado
<a name="jumpstart-curated-hubs-admin-guide-delete-models"></a>

Você pode excluir modelos de um hub privado utilizado pela sua organização ao definir o ARN do modelo no método `hub.delete_model_reference()`. Isso exclui o acesso ao modelo a partir do hub privado.

```
hub.delete_model_reference(model-name)
```

# Restrinja o acesso JumpStart a modelos fechados
<a name="jumpstart-curated-hubs-gated-model-access"></a>

 SageMaker JumpStart A Amazon fornece acesso a modelos de fundação disponíveis ao público e proprietários. Há determinados modelos fechados em buckets privados do Amazon S3 que exigem que você tenha aceitado o respectivo contrato de licença de usuário final (EULA) para acessá-los. Para obter mais informações, consulte [Aceitação do EULA com o SDK SageMaker Python](jumpstart-foundation-models-choose.md#jumpstart-foundation-models-choose-eula-python-sdk).

O comportamento padrão atual é permitir que um usuário acesse o modelo e crie [tarefas de treinamento de ajuste fino](jumpstart-foundation-models-use-python-sdk-estimator-class.md) se ele aceitar o respectivo EULA. No entanto, se você for administrador e quiser restringir o acesso para ajuste fino desses modelos fechados, poderá definir uma política que negue permissões para usar a ação `CreateTrainingJob` sempre que a solicitação for para um modelo fechado.

Veja a seguir um exemplo de política AWS Identity and Access Management (IAM) que um administrador pode adicionar à função do IAM de um usuário:

```
{
    "Effect": "Deny",
    "Action": "sagemaker:CreateTrainingJob",
    "Resource": "*",
    "Condition": {
        "Bool": {
            "sagemaker:DirectGatedModelAccess": "true"
        }
    }
}
```

Se você quiser conceder aos usuários acesso a modelos específicos sem oferecer acesso irrestrito aos modelos fechados, configure um hub selecionado e adicione os modelos específicos ao hub. Para obter mais informações, consulte [Hubs privados com curadoria para controle de acesso ao modelo básico em JumpStart](jumpstart-curated-hubs.md).

# Remover o acesso ao hub de **modelos SageMaker públicos**
<a name="jumpstart-curated-hubs-admin-guide-remove-public-hub"></a>

Além de adicionar um hub privado com curadoria ao JumpStart Studio, você também pode remover o acesso ao hub de **modelos SageMaker públicos** para seus usuários. O hub de **modelos SageMaker públicos** tem acesso a todos os modelos de JumpStart fundação disponíveis. 

Se você remover o acesso ao hub de **modelos SageMaker públicos** e um usuário tiver acesso a apenas um hub privado, o usuário será levado diretamente para esse hub privado ao escolher **JumpStart**no painel de navegação esquerdo do Studio. Se um usuário tiver acesso a vários hubs privados, ele será direcionado para a página do menu **Hubs** ao escolher **JumpStart**no painel de navegação esquerdo do Studio.

Remova o acesso ao hub de **modelos SageMaker públicos** para seus usuários com a seguinte política embutida: 

**nota**  
Você pode definir quaisquer buckets adicionais do Amazon S3 deseja que seu hub acesse na política abaixo. Lembre-se de substituir *`REGION`* pela região do seu hub.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": "s3:*",
            "Effect": "Deny",
            "NotResource": [
                "arn:aws:s3:::jumpstart-cache-prod-us-east-1/*.ipynb",
                "arn:aws:s3:::jumpstart-cache-prod-us-east-1/*eula*",
                "arn:aws:s3:::amzn-s3-demo-bucket/*"
            ]
        },
        {
            "Action": "sagemaker:*",
            "Effect": "Deny",
            "Resource": [
                "arn:aws:sagemaker:us-east-1:aws:hub/SageMakerPublicHub",
                "arn:aws:sagemaker:us-east-1:aws:hub-content/SageMakerPublicHub/*/*"
            ]
        }
    ]
}
```

------

# Excluir um hub privado
<a name="jumpstart-curated-hubs-admin-guide-delete"></a>

Você pode excluir um hub privado da sua conta de administrador. Antes de excluir um hub privado, você deve primeiro remover qualquer tópico desse hub. Exclua os tópicos do hub e os hubs com os seguintes comandos: 

```
# List the model references in the private hub
response = hub.list_models()
models = response["hub_content_summaries"]
while response["next_token"]:
    response = hub.list_models(next_token=response["next_token"])
    models.extend(response["hub_content_summaries"])

# Delete all model references in the hub
for model in models:
    hub.delete_model_reference(model_name=model.get('HubContentName'))

# Delete the private hub
hub.delete()
```

# Solução de problemas
<a name="jumpstart-curated-hubs-admin-guide-troubleshooting"></a>

As seções a seguir apresentam informações sobre problemas com permissões do IAM que podem surgir ao criar um hub de modelo privado, além de informações sobre como resolver esses problemas.

**`ValidationException` ao chamar a operação `CreateModel`: não foi possível acessar os dados do modelo**

Essa exceção ocorre quando você não possui as permissões adequadas do Amazon S3 configuradas para seu perfil de **administrador**. Para obter mais informações sobre as permissões do Amazon S3 necessárias para criar um hub privado, consulte a **Etapa 3** em [Criar um hub de modelo privado](jumpstart-curated-hubs-admin-guide-create.md).

**`Access Denied` ou `Forbidden` ao chamar `create()`**

Você tem acesso negado ao criar um hub privado se não tiver as permissões apropriadas para acessar o bucket do Amazon S3 associado ao hub de **modelos SageMaker públicos**. Para obter mais informações sobre as permissões do Amazon S3 necessárias para criar um hub privado, consulte a **Etapa 3** em [Criar um hub de modelo privado](jumpstart-curated-hubs-admin-guide-create.md).

# Guia do usuário
<a name="jumpstart-curated-hubs-user-guide"></a>

Os tópicos a seguir abordam o acesso e o uso de modelos em seus hubs de modelos SageMaker JumpStart com curadoria da Amazon. Saiba como acessar seus modelos de hub selecionados por meio da interface do Amazon SageMaker Studio ou programaticamente com o SDK do Python SageMaker . Além disso, saiba como ajustar modelos de hubs selecionados para adaptá-los às suas necessidades comerciais e casos de uso específicos.

**Topics**
+ [Acesse hubs de modelos selecionados na Amazon SageMaker JumpStart](jumpstart-curated-hubs-access-hubs.md)
+ [Ajustar modelos de hub selecionado](jumpstart-curated-hubs-fine-tune.md)

# Acesse hubs de modelos selecionados na Amazon SageMaker JumpStart
<a name="jumpstart-curated-hubs-access-hubs"></a>

Você pode acessar um hub de modelo privado por meio do Studio ou do SDK do SageMaker Python.

## Acesse seu hub de modelos privados no Studio
<a name="jumpstart-curated-hubs-user-guide-studio"></a>

**Importante**  
Em 30 de novembro de 2023, a experiência anterior do Amazon SageMaker Studio agora se chama Amazon SageMaker Studio Classic. A seção a seguir é específica ao uso da experiência atualizada do Studio. Para obter informações sobre como usar a aplicação do Studio Classic, consulte [Amazon SageMaker Studio Clássico](studio.md).

No Amazon SageMaker Studio, abra a página JumpStart inicial por meio da página **inicial** ou do menu **inicial** no painel do lado esquerdo. Isso abre a página **SageMaker JumpStart**inicial, na qual você pode explorar os hubs de modelos e pesquisar modelos.
+ Na página **inicial**, escolha **JumpStart**no painel **Soluções pré-construídas e automatizadas**. 
+ No menu **Início**, no painel esquerdo, navegue até o **JumpStart**nó.

Para obter mais informações sobre como começar a usar o Amazon SageMaker Studio, consulte[SageMaker Estúdio Amazon](studio-updated.md).

Na página **SageMaker JumpStart**inicial do Studio, você pode explorar quaisquer hubs de modelos privados que incluam modelos listados como permitidos para sua organização. Se você tiver acesso apenas a um hub de modelos, a página de **SageMaker JumpStart**destino o levará diretamente para esse hub. Se você tiver acesso a vários hubs, você será direcionado para a página **Hubs**. 

Para obter mais informações sobre como ajustar, implantar e avaliar modelos aos quais você tem acesso no Studio, consulte [Usar modelos de base no Studio](jumpstart-foundation-models-use-studio-updated.md).

## Acesse seu hub de modelo privado usando o SDK do SageMaker Python
<a name="jumpstart-curated-hubs-user-guide-sdk"></a>

Você pode acessar seu hub de modelo privado usando o SDK do SageMaker Python. Seu acesso de leitura, uso e edição do hub selecionado é fornecido pelo seu administrador.

**nota**  
Se um hub for compartilhado entre contas, o `HUB_NAME` deverá ser o ARN do hub. Se um hub não for compartilhado entre contas, o `HUB_NAME` poderá ser o nome do hub.

1. Instale o SDK do SageMaker Python e importe os pacotes necessários do Python.

   ```
   # Install the SageMaker Python SDK
       !pip3 install sagemaker --force-reinstall --quiet
       
       # Import the necessary Python packages
       import boto3
       from sagemaker import Session
       from sagemaker.jumpstart.hub.hub import Hub
       from sagemaker.jumpstart.model import JumpStartModel
       from sagemaker.jumpstart.estimator import JumpStartEstimator
   ```

1. Inicialize uma sessão de SageMaker IA e conecte-se ao seu hub privado usando o nome do hub e a região.

   ```
   # If a hub is shared across accounts, then the HUB_NAME must be the hub ARN
       HUB_NAME="Example-Hub-ARN" 
       REGION="us-west-2" 
       
       # Initialize a SageMaker session
       sm_client = boto3.client('sagemaker') 
       sm_runtime_client = boto3.client('sagemaker-runtime') 
       session = Session(sagemaker_client=sm_client, 
                           sagemaker_runtime_client=sm_runtime_client)
       
       # Initialize the private hub
       hub = Hub(hub_name=HUB_NAME, sagemaker_session=session)
   ```

1. Após conectar-se a um hub privado, você pode listar todos os modelos disponíveis nesse hub usando os seguintes comandos:

   ```
   response = hub.list_models()
       models = response["hub_content_summaries"]
       while response["next_token"]:
           response = hub.list_models(next_token=response["next_token"])
           models.extend(response["hub_content_summaries"])
           
       print(models)
   ```

1. Você pode obter mais informações sobre um modelo específico usando o nome do modelo com o seguinte comando:

   ```
   response = hub.describe_model(model_name="example-model")
       print(response)
   ```

Para obter mais informações sobre como ajustar e implantar modelos aos quais você tem acesso usando o SDK do SageMaker Python, consulte. [Use modelos básicos com o SageMaker Python SDK](jumpstart-foundation-models-use-python-sdk.md)

# Ajustar modelos de hub selecionado
<a name="jumpstart-curated-hubs-fine-tune"></a>

No hub privado e selecionado de modelos, você pode executar tarefas de treinamento de ajuste fino usando suas referências de modelo. As referências do modelo apontam para um JumpStart modelo disponível publicamente no hub público de SageMaker IA, mas você pode ajustar o modelo em seus próprios dados para seu caso de uso específico. Após o trabalho de ajuste fino, você tem acesso aos pesos do modelo que podem ser usados ou implantados em um endpoint.

Você pode ajustar modelos de hub selecionados em apenas algumas linhas de código usando o SDK do Python SageMaker. Para obter mais informações gerais sobre o ajuste fino de JumpStart modelos disponíveis publicamente, consulte. [Modelos de base e hiperparâmetros para ajuste](jumpstart-foundation-models-fine-tuning.md)

## Pré-requisitos
<a name="jumpstart-curated-hubs-fine-tune-prereqs"></a>

Para ajustar uma referência de JumpStart modelo em seu hub organizado, faça o seguinte:

1. Certifique-se de que a função do IAM do seu usuário tenha a `TrainHubModel` permissão de SageMaker IA anexada. Para ter mais informações, consulte [Adicionar e remover permissões de identidade do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html) no *AWS Guia do usuário do IAM*.

   Você deve anexar uma política como a do seguinte exemplo ao perfil do IAM do usuário.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "VisualEditor0",
               "Effect": "Allow",
               "Action": "sagemaker:TrainHubModel",
               "Resource": "arn:aws:sagemaker:*:111122223333:hub/*"
           }
       ]
   }
   ```

------
**nota**  
Se seu hub selecionado for compartilhado entre contas e o respectivo conteúdo pertencer a outra conta, `HubContent` (o recurso de referência do modelo) deverá ter uma política do IAM baseada em recursos que também conceda a permissão `TrainHubModel` à conta solicitante, conforme mostrado no exemplo a seguir.  

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "AllowCrossAccountSageMakerAccess",
               "Effect": "Allow",
               "Principal": {
                   "AWS": "arn:aws:iam::111122223333:root"
               },
               "Action": [
                   "sagemaker:TrainHubModel"
               ],
               "Resource": [
                   "arn:aws:sagemaker:*:111122223333:hub/*"
               ]
           }
       ]
   }
   ```

1. Tenha um hub privado com curadoria com uma referência de modelo a um JumpStart modelo que você deseja ajustar. Para ter mais informações sobre como criar um hub privado, consulte [Criar um hub de modelo privado](jumpstart-curated-hubs-admin-guide-create.md). Para saber como adicionar JumpStart modelos disponíveis publicamente ao seu hub privado, consulte[Adicionar modelos a um hub privado](jumpstart-curated-hubs-admin-guide-add-models.md).
**nota**  
O JumpStart modelo escolhido deve ser ajustável. Para verificar se um modelo é ajustável, consulte [Built-in Algorithms with pre-trained Model Table](https://sagemaker.readthedocs.io/en/stable/doc_utils/pretrainedmodels.html).

1. Tenha um conjunto de dados de treinamento que você deseja usar para ajustar o modelo. O conjunto de dados deve estar no formato de treinamento apropriado para o modelo que você deseja ajustar.

## Ajustar uma referência de modelo do hub selecionado
<a name="jumpstart-curated-hubs-fine-tune-pysdk"></a>

O procedimento a seguir mostra como ajustar uma referência de modelo em seu hub privado com curadoria usando o SDK do Python SageMaker .

1. Verifique se você tem a versão mais recente (pelo menos`2.242.0`) do SDK do SageMaker Python instalada. Para obter mais informações, consulte [Usar a versão 2.x do SDK do SageMaker Python](https://sagemaker.readthedocs.io/en/stable/v2.html).

   ```
   !pip install --upgrade sagemaker
   ```

1. Importe os módulos AWS SDK para Python (Boto3) e os que você precisará do SDK do SageMaker Python.

   ```
   import boto3
   from sagemaker.jumpstart.estimator import JumpStartEstimator
   from sagemaker.session import Session
   ```

1. Inicialize uma sessão do Boto3, um cliente de SageMaker IA e uma sessão do SDK do Python SageMaker .

   ```
   sagemaker_client = boto3.Session(region_name=<AWS-region>).client("sagemaker")
   sm_session = Session(sagemaker_client=sagemaker_client)
   ```

1. Crie um `JumpStartEstimator` e forneça o ID do JumpStart modelo, o nome do seu hub que contém a referência do modelo e sua sessão do SDK do SageMaker Python. Para obter uma lista de modelos IDs, consulte a [tabela de algoritmos integrados com modelos pré-treinados](https://sagemaker.readthedocs.io/en/stable/doc_utils/pretrainedmodels.html).

   Opcionalmente, é possível especificar os campos `instance_type` e `instance_count` ao criar o estimador. Do contrário, a tarefa de treinamento usará o tipo e contagem de instância padrão e do modelo que você está usando.

   Opcionalmente, você também pode especificar o `output_path` para o local do Amazon S3 onde deseja armazenar os pesos do modelo ajustado. Se você não especificar o`output_path`, então usa um bucket SageMaker AI Amazon S3 padrão para a região em sua conta, nomeado com o seguinte formato:. `sagemaker-<region>-<account-id>`

   ```
   estimator = JumpStartEstimator(
       model_id="meta-textgeneration-llama-3-2-1b",
       hub_name=<your-hub-name>,
       sagemaker_session=sm_session, # If you don't specify an existing session, a default one is created for you
       # Optional: specify your desired instance type and count for the training job
       # instance_type = "ml.g5.2xlarge"
       # instance_count = 1
       # Optional: specify a custom S3 location to store the fine-tuned model artifacts
       # output_path: "s3://<output-path-for-model-artifacts>"
   )
   ```

1. Crie um dicionário com a chave `training` em que você especifica o local do seu conjunto de dados de ajuste fino. Este exemplo aponta para um URI do Amazon S3. Se você tiver outras considerações, como usar o modo local ou vários canais de dados de treinamento, consulte [ JumpStartEstimator.fit ()](https://sagemaker.readthedocs.io/en/stable/api/training/estimators.html#sagemaker.jumpstart.estimator.JumpStartEstimator.fit) na documentação do SDK do SageMaker Python para obter mais informações.

   ```
   training_input = {
       "training": "s3://<your-fine-tuning-dataset>"
   }
   ```

1. Chame o método `fit()` do estimador e passe seus dados de treinamento e sua aceitação do EULA (se aplicável).
**nota**  
O exemplo a seguir define `accept_eula=False.` Você deve alterar manualmente o valor para `True` para aceitar o EULA.

   ```
   estimator.fit(inputs=training_input, accept_eula=False)
   ```

Seu trabalho de ajuste fino deve começar agora.

Você pode verificar seu trabalho de ajuste fino visualizando seus trabalhos de treinamento, no console de SageMaker IA ou usando a [ListTrainingJobs](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListTrainingJobs.html)API.

Você pode acessar seus artefatos de modelo ajustados no Amazon S3 `output_path` que foram especificados no `JumpStartEstimator` objeto (o bucket AI Amazon SageMaker S3 padrão para a região ou um caminho personalizado do Amazon S3 que você especificou, se aplicável).