Preparazione dei set di dati - Amazon Bedrock

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à.

Preparazione dei set di dati

Prima di iniziare un lavoro di personalizzazione del modello, è necessario preparare almeno un set di dati di addestramento. Il supporto di un set di dati di convalida e il formato del set di dati di formazione e convalida dipendono dai seguenti fattori.

  • Il tipo di lavoro di personalizzazione (messa a punto o formazione preliminare continua).

  • Le modalità di input e output dei dati.

Supporto del modello per la messa a punto e il formato dei dati di pre-addestramento continuo

La tabella seguente mostra in dettaglio la messa a punto e il formato di dati di pre-allenamento continuo supportato per ogni rispettivo modello:

Nome modello Ottimizzazione: ext-to-text Ottimizzazione: T & I ext-to-image mage-to-embeddings Pre-allenamento continuo: ext-to-text Ottimizzazione: messaggistica a turno singolo Ottimizzazione: messaggistica a turni multipli
Amazon Titan Text G1 - Express No No No
Amazon Titan Text G1 - Lite No No No
Amazon Titan Text Premier No No No No
Amazon Titan Image Generator G1 V1 No No No
Amazon Titan Multimodal Embeddings G1 G1 No No No
Anthropic Claude 3 Haiku No No No
Cohere Command No No No No
Cohere Command Light No No No No
MetaLlama 213 GB No No No No
MetaLlama 270 B No No No No

Per visualizzare le quote predefinite che si applicano ai set di dati di addestramento e convalida utilizzati per personalizzare diversi modelli, vedere. Quote di personalizzazione dei modelli

Prepara i set di dati di formazione e convalida per il tuo modello personalizzato

Seleziona la scheda pertinente al tuo caso d'uso

Fine-tuning: Text-to-text

Per mettere a punto un text-to-text modello, prepara un set di dati di addestramento e di convalida opzionale creando un JSONL file con più righe. JSON Ogni JSON riga è un esempio contenente sia un campo che un campo. prompt completion Usa 6 caratteri per token come approssimazione del numero di token. Il formato è il seguente:

{"prompt": "<prompt1>", "completion": "<expected generated text>"} {"prompt": "<prompt2>", "completion": "<expected generated text>"} {"prompt": "<prompt3>", "completion": "<expected generated text>"}

Di seguito è riportato un elemento di esempio per un'attività di domanda-risposta:

{"prompt": "what is AWS", "completion": "it's Amazon Web Services"}
Fine-tuning: Text-to-image & Image-to-embeddings

Per ottimizzare un image-to-embedding modello text-to-image OR, preparate un set di dati di addestramento creando un JSONL file con più righe. JSON I set di dati di convalida non sono supportati. Ogni JSON riga è un esempio contenente un image-ref Amazon S3 URI per un'immagine e un messaggio caption che potrebbe essere un prompt per l'immagine.

Le immagini devono essere in JPEG o PNG formato.

{"image-ref": "s3://bucket/path/to/image001.png", "caption": "<prompt text>"} {"image-ref": "s3://bucket/path/to/image002.png", "caption": "<prompt text>"} {"image-ref": "s3://bucket/path/to/image003.png", "caption": "<prompt text>"}

Di seguito è riportato un esempio:

{"image-ref": "s3://my-bucket/my-pets/cat.png", "caption": "an orange cat with white spots"}

Per consentire ad Amazon Bedrock di accedere ai file di immagine, aggiungi una IAM policy simile Autorizzazioni per accedere ai file di formazione e convalida e per scrivere file di output in S3 a quella del ruolo del servizio di personalizzazione del modello Amazon Bedrock che hai impostato o che è stato impostato automaticamente per te nella console. I percorsi Amazon S3 che fornisci nel set di dati di addestramento devono trovarsi nelle cartelle specificate nella policy.

Continued Pre-training: Text-to-text

Per eseguire una formazione preliminare continua su un text-to-text modello, prepara un set di dati di addestramento e convalida opzionale creando un file con più righe. JSONL JSON Poiché la formazione continua prevede dati non etichettati, ogni JSON riga è un esempio contenente solo un campo. input Usa 6 caratteri per token come approssimazione del numero di token. Il formato è il seguente:

{"input": "<input text>"} {"input": "<input text>"} {"input": "<input text>"}

Di seguito è riportato un esempio di elemento che potrebbe essere presente nei dati di addestramento.

{"input": "AWS stands for Amazon Web Services"}
Fine-tuning: Single-turn messaging

Per mettere a punto un text-to-text modello utilizzando il formato di messaggistica a turno singolo, prepara un set di dati di formazione e convalida opzionale creando un file con più righe. JSON JSON Entrambi i file di dati devono essere nel formato. JSONL Ogni riga specifica un campione di dati completo in formato json; e ogni campione di dati deve essere formattato su 1 riga (rimuovere tutti i '\n' all'interno di ogni campione). Una riga con più campioni di dati o la suddivisione di un campione di dati su più righe non funzioneranno.

Campi

  • system(opzionale): Una stringa contenente un messaggio di sistema che imposta il contesto per la conversazione.

  • messages: Una serie di oggetti di messaggio, ciascuno contenente:

    • role: user O assistant

    • content: il contenuto testuale del messaggio

Regole

  • L'messagesarray deve contenere 2 messaggi

  • Il primo messaggio deve contenere un role nome dell'utente

  • L'ultimo messaggio deve contenere un messaggio role dell'assistente

{"system": "<system message>","messages":[{"role": "user", "content": "<user query>"},{"role": "assistant", "content": "<expected generated text>"}]}

Esempio

{"system": "You are an helpful assistant.","messages":[{"role": "user", "content": "what is AWS"},{"role": "assistant", "content": "it's Amazon Web Services."}]}
Fine-tuning: Multi-turn messaging

Per mettere a punto un text-to-text modello utilizzando il formato di messaggistica multigiro, preparate un set di dati di formazione e convalida opzionale creando un JSONL file con più righe. JSON Entrambi i file di dati devono essere nel formato. JSONL Ogni riga specifica un campione di dati completo in formato json; e ogni campione di dati deve essere formattato su 1 riga (rimuovere tutti i '\n' all'interno di ogni campione). Una riga con più campioni di dati o la suddivisione di un campione di dati su più righe non funzioneranno.

Campi

  • system(opzionale): Una stringa contenente un messaggio di sistema che imposta il contesto per la conversazione.

  • messages: Una serie di oggetti di messaggio, ciascuno contenente:

    • role: user O assistant

    • content: il contenuto testuale del messaggio

Regole

  • L'messagesarray deve contenere 2 messaggi

  • Il primo messaggio deve contenere un role nome dell'utente

  • L'ultimo messaggio deve contenere un messaggio role dell'assistente

  • I messaggi devono alternarsi tra user e assistant ruoli.

{"system": "<system message>","messages":[{"role": "user", "content": "<user query 1>"},{"role": "assistant", "content": "<expected generated text 1>"}, {"role": "user", "content": "<user query 2>"},{"role": "assistant", "content": "<expected generated text 2>"}]}

Esempio

{"system": "system message","messages":[{"role": "user", "content": "Hello there."},{"role": "assistant", "content": "Hi, how can I help you?"},{"role": "user", "content": "what are LLMs?"},{"role": "assistant", "content": "LLM means large language model."},]}