

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Refinamiento de los modelos fundacionales disponibles públicamente con la clase `JumpStartEstimator`
<a name="jumpstart-foundation-models-use-python-sdk-estimator-class"></a>

**nota**  
Para obtener instrucciones sobre cómo refinar modelos fundacionales en un centro privado, consulte [Refinamiento de modelos de centros seleccionados](jumpstart-curated-hubs-fine-tune.md).

Con el SDK, puede ajustar con precisión un algoritmo integrado o un modelo previamente entrenado en tan solo unas pocas líneas de código. SageMaker Python

1. En primer lugar, busque el identificador del modelo que prefiera en la [Tabla de algoritmos integrados con modelos previamente entrenados](https://sagemaker.readthedocs.io/en/stable/doc_utils/pretrainedmodels.html). 

1. Con el ID del modelo, defina su trabajo de entrenamiento como un estimador. JumpStart

   ```
   from sagemaker.jumpstart.estimator import JumpStartEstimator
   
   model_id = {{"huggingface-textgeneration1-gpt-j-6b"}}
   estimator = JumpStartEstimator(model_id=model_id)
   ```

1. Ejecute `estimator.fit()` en el modelo, apuntando a los datos de entrenamiento que desea usar para su refinamiento.

   ```
   estimator.fit(
       {"train": {{training_dataset_s3_path}}, "validation": {{validation_dataset_s3_path}}}
   )
   ```

1. A continuación, utilice el método `deploy` para implementar automáticamente el modelo para inferencia. En este ejemplo, utilizamos el modelo GPT-J 6B de Hugging Face.

   ```
   predictor = estimator.deploy()
   ```

1. A continuación, puede ejecutar inferencia con el modelo implementado utilizando el método `predict`.

   ```
   question = {{"What is Southern California often abbreviated as?"}}
   response = predictor.predict(question)
   print(response)
   ```

**nota**  
En este ejemplo se utiliza el modelo fundacional GPT-J 6B, que es adecuado para una amplia gama de casos de uso de generación de texto, como respuesta a preguntas, reconocimiento de entidades con nombre, síntesis, etc. Para obtener más información acerca de casos de uso de modelos, consulte [Modelos fundacionales disponibles](jumpstart-foundation-models-latest.md).

Si lo desea, puede especificar las versiones del modelo o tipos de instancia al crear su `JumpStartEstimator`. Para obtener más información sobre la `JumpStartEstimator ` clase y sus parámetros, consulte. [JumpStartEstimator](https://sagemaker.readthedocs.io/en/stable/api/inference/model.html#sagemaker.jumpstart.estimator.JumpStartEstimator)

## Comprobación de tipos de instancia predeterminados
<a name="jumpstart-foundation-models-use-python-sdk-estimator-class-instance-types"></a>

Si lo desea, puede incluir versiones de modelos o tipos de instancias específicos al refinar un modelo previamente entrenado con la clase `JumpStartEstimator`. Todos los JumpStart modelos tienen un tipo de instancia predeterminado. Recupere el tipo de instancia de entrenamiento predeterminado mediante el siguiente código:

```
from sagemaker import instance_types

instance_type = instance_types.retrieve_default(
    model_id=model_id,
    model_version=model_version,
    scope={{"training"}})
print(instance_type)
```

Con el `instance_types.retrieve()` método, puedes ver todos los tipos de instancias compatibles con un JumpStart modelo determinado.

## Comprobación de hiperparámetros predeterminados
<a name="jumpstart-foundation-models-use-python-sdk-estimator-class-hyperparameters"></a>

Para comprobar los hiperparámetros predeterminados utilizados para el entrenamiento, puede utilizar el método `retrieve_default()` de la clase `hyperparameters`.

```
from sagemaker import hyperparameters

my_hyperparameters = hyperparameters.retrieve_default(model_id=model_id, model_version=model_version)
print(my_hyperparameters)

# Optionally override default hyperparameters for fine-tuning
my_hyperparameters["epoch"] = "3"
my_hyperparameters["per_device_train_batch_size"] = "4"

# Optionally validate hyperparameters for the model
hyperparameters.validate(model_id=model_id, model_version=model_version, hyperparameters=my_hyperparameters)
```

Para obtener más información sobre hiperparámetros disponibles, consulte [Hiperparámetros de refinamiento compatibles comunes](jumpstart-foundation-models-fine-tuning.md#jumpstart-foundation-models-fine-tuning-hyperparameters).

## Comprobación de definiciones de métricas predeterminadas
<a name="jumpstart-foundation-models-use-python-sdk-estimator-class-metric-definitions"></a>

También puede comprobar las definiciones de métricas predeterminadas:

```
print(metric_definitions.retrieve_default(model_id=model_id, model_version=model_version))
```