

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Fine-tune un modello linguistico di grandi dimensioni (LLM) che utilizza l'adattamento del dominio
<a name="jumpstart-foundation-models-fine-tuning-domain-adaptation"></a>

L’ottimizzazione dell'adattamento del dominio consente di sfruttare modelli di fondazione preformati e adattarli ad attività specifiche utilizzando dati limitati specifici del dominio. Se un intervento di progettazione di prompt non consente una personalizzazione sufficiente, è possibile utilizzare l'ottimizzazione dell'adattamento del dominio per far funzionare il modello con un linguaggio specifico del dominio, ad esempio gergo di settore, termini tecnici o altri dati specializzati. Questo processo di fine-tuning modifica i pesi del modello. 

Per eseguire il fine-tuning del modello su un set di dati specifico del dominio:

1. Preparare i dati di addestramento. Per istruzioni, consulta [Preparazione e caricamento dei dati di addestramento per il fine-tuning basato sul dominio](#jumpstart-foundation-models-fine-tuning-domain-adaptation-prepare-data).

1. Creare il job di addestramento per il fine-tuning. Per istruzioni, consulta [Creazione di un job di addestramento per il fine-tuning basato su istruzioni](#jumpstart-foundation-models-fine-tuning-domain-adaptation-train).

Puoi trovare esempi end-to-end in [Notebook di esempio](#jumpstart-foundation-models-fine-tuning-domain-adaptation-examples).

L’ottimizzazione dell'adattamento del dominio è disponibile con i seguenti modelli di fondazione:

**Nota**  
Alcuni modelli JumpStart base, come Llama 2 7B, richiedono l'accettazione di un contratto di licenza con l'utente finale prima della messa a punto e dell'esecuzione dell'inferenza. Per ulteriori informazioni, consulta [End-user contratti di licenza](jumpstart-foundation-models-choose.md#jumpstart-foundation-models-choose-eula).
+ Bloom 3B
+ Bloom 7B1
+ BloomZ 3B FP16
+ BloomZ 7B1 FP16
+ GPT-2 XL
+ GPT-J 6B
+ GPT-Neo 1,3 B
+ GPT-Neo 125 M
+ GPT-NEO 2,7 MB
+ Llama 2 13B
+ Llama 2 13B Chat
+ Llama 2 13B Neuron
+ Llama 2 70B
+ Llama 2 70B Chat
+ Llama 2 7B
+ Llama 2 7B Chat
+ Llama 2 7B Neuron

## Preparazione e caricamento dei dati di addestramento per il fine-tuning basato sul dominio
<a name="jumpstart-foundation-models-fine-tuning-domain-adaptation-prepare-data"></a>

I dati di addestramento per il fine-tuning basato sul dominio possono essere forniti in formato di file CSV, JSON o TXT. Tutti i dati di addestramento devono trovarsi in un’unica cartella.

I dati di addestramento sono ricavati dalla colonna **Testo** per i file di dati di addestramento CSV o JSON. Se nessuna colonna è etichettata come **Testo**, i dati di addestramento vengono estratti dalla prima colonna per i file di dati di addestramento CSV o JSON.

Di seguito è riportato un esempio di corpo di un file TXT da utilizzare per il fine-tuning:

```
This report includes estimates, projections, statements relating to our
business plans, objectives, and expected operating results that are “forward-
looking statements” within the meaning of the Private Securities Litigation
Reform Act of 1995, Section 27A of the Securities Act of 1933, and Section 21E
of ....
```

### Suddivisione dei dati per l’addestramento e i test
<a name="jumpstart-foundation-models-fine-tuning-domain-adaptation-split-data"></a>

Facoltativamente, puoi fornire un’altra cartella contenente i dati di convalida. Questa cartella deve includere anche un file CSV, JSON o TXT. Se non viene fornito alcun set di dati di convalida, una determinata quantità di dati di addestramento viene riservata per la convalida. È possibile modificare la percentuale di dati di addestramento utilizzati per la convalida quando si scelgono gli iperparametri per il fine-tuning del modello. 

### Caricamento dei dati di fine-tuning su Amazon S3
<a name="jumpstart-foundation-models-fine-tuning-domain-adaptation-upload-data"></a>

Carica i dati preparati su Amazon Simple Storage Service (Amazon S3) per utilizzarli durante la messa JumpStart a punto di un modello base. Per caricare i dati, è possibile utilizzare i seguenti comandi:

```
from sagemaker.s3 import S3Uploader
import sagemaker
import random

output_bucket = sagemaker.Session().default_bucket()
local_data_file = {{"train.txt"}}
train_data_location = f{{"s3://{output_bucket}/training_folder"}}
S3Uploader.upload(local_data_file, train_data_location)
S3Uploader.upload("template.json", train_data_location)
print(f"Training data: {train_data_location}")
```

## Creazione di un job di addestramento per il fine-tuning basato su istruzioni
<a name="jumpstart-foundation-models-fine-tuning-domain-adaptation-train"></a>

Dopo aver caricato i dati su Amazon S3, puoi perfezionare e distribuire il tuo modello di base. JumpStart Per eseguire il fine-tuning dei modelli in Studio, consulta [Fine-tune un modello in Studio](jumpstart-foundation-models-use-studio-updated-fine-tune.md). Per ottimizzare il modello utilizzando l'SDK, consulta. SageMaker Python [Fine-tune modelli di base disponibili al pubblico con la `JumpStartEstimator`classe](jumpstart-foundation-models-use-python-sdk-estimator-class.md)

## Notebook di esempio
<a name="jumpstart-foundation-models-fine-tuning-domain-adaptation-examples"></a>

Per ulteriori informazioni sul fine-tuning basato sul dominio, consulta i seguenti notebook di esempio:
+ [SageMaker JumpStart Foundation Models: modello GPT-J 6B di generazione di Fine-tuning testo su set di dati specifico del dominio](https://sagemaker-examples.readthedocs.io/en/latest/introduction_to_amazon_algorithms/jumpstart-foundation-models/domain-adaption-finetuning-gpt-j-6b.html)
+ [Fine-tune Modelli LLama 2 su JumpStart](https://sagemaker-examples.readthedocs.io/en/latest/introduction_to_amazon_algorithms/jumpstart-foundation-models/llama-2-finetuning.html)