

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

# Ciclo di vita dei dati nell'IA generativa
<a name="lifecycle"></a>

L'implementazione dell'IA generativa in un'azienda implica un ciclo di vita dei dati parallelo al ciclo di vita tradizionale. AI/ML Tuttavia, ci sono considerazioni uniche in ogni fase. Le fasi chiave includono la preparazione dei dati, l'integrazione nei flussi di lavoro del modello (come il recupero o la messa a punto), la raccolta di feedback e gli aggiornamenti continui. Questa sezione esplora queste fasi interconnesse del ciclo di vita dei dati e descrive in dettaglio i processi, le sfide e le migliori pratiche essenziali che le organizzazioni devono prendere in considerazione quando sviluppano e implementano soluzioni di intelligenza artificiale generativa.

**Topics**
+ [Preparazione e pulizia dei dati per la formazione preliminare](#lifecycle-preparation)
+ [Generazione potenziata da recupero dati](#lifecycle-rag)
+ [Perfezionamento e formazione specializzata](#lifecycle-fine-tuning)
+ [Set di dati di valutazione](#lifecycle-evaluation)
+ [Dati generati dagli utenti e loop di feedback](#lifecycle-feedback-loops)

## Preparazione e pulizia dei dati per la formazione preliminare
<a name="lifecycle-preparation"></a>

*Garbage in, garbage out* è il concetto secondo cui input di scarsa qualità producono output altrettanto di bassa qualità. Proprio come in qualsiasi progetto di intelligenza artificiale, la qualità dei dati è un fattore. make-or-break L'intelligenza artificiale generativa spesso inizia con enormi set di dati, ma il volume da solo non è sufficiente. Una pulizia, un filtraggio e una preelaborazione accurati sono fondamentali.

In questa fase, i team addetti ai dati aggregano i dati grezzi, ad esempio raccolte di testo o immagini di grandi dimensioni. Quindi, rimuovono rumore, errori e pregiudizi. Ad esempio, la preparazione del testo per un LLM potrebbe comportare l'eliminazione dei duplicati, l'eliminazione delle informazioni personali sensibili e il filtraggio dei contenuti tossici o irrilevanti. L'obiettivo è creare un set di dati di alta qualità che rappresenti realmente la conoscenza o lo stile che il modello dovrebbe acquisire. I dati potrebbero anche essere normalizzati o formattati in una struttura adatta all'ingestione del modello. Ad esempio, è possibile tokenizzare il testo, rimuovere i tag HTML o normalizzare la risoluzione dell'immagine.

Nell'intelligenza artificiale generativa, questa preparazione può essere particolarmente impegnativa a causa della scalabilità. Modelli come Anthropic Claude sono addestrati su centinaia di miliardi di [token](https://en.wikipedia.org/wiki/Lexical_analysis#Token) (Wikipedia) che provengono da un'ampia gamma di fonti di dati disponibili al pubblico e con licenza. Anche piccole percentuali di dati errati possono avere effetti enormi sui risultati, inclusi contenuti offensivi o errori di fatto. Ad esempio, diversi fornitori di LLM hanno riferito di aver escluso i contenuti di una community di Reddit dal loro set di dati di formazione perché i post consistevano principalmente in lunghe sequenze della lettera *M per imitare il rumore di un forno a microonde*. Questi post stavano rivoluzionando la formazione e le prestazioni dei modelli.

In questa fase, alcune aziende adottano l'aumento dei dati per aumentare la copertura di determinati scenari. L'*aumento dei dati* è il processo di sintesi di dati di formazione aggiuntivi. Per ulteriori informazioni, consulta [Sintetizzazione dei dati](differences.md#differences-synthesizing) in questa guida.

Quando si addestra il modello sui dati preparati e preelaborati, è possibile utilizzare tecniche di mitigazione per affrontare in particolare i pregiudizi. *Le tecniche includono l'integrazione di principi etici all'interno dell'architettura del modello, nota come intelligenza artificiale costituzionale.* Un'altra tecnica è l'*adversarial debiasing*, che sfida il modello durante la formazione a imporre risultati più equi tra i diversi gruppi. Infine, dopo l'allenamento, è possibile apportare modifiche *successive* all'elaborazione per perfezionare il modello mediante una messa a punto precisa. Questo può aiutare a correggere eventuali pregiudizi rimanenti e a migliorare l'equità generale.

## Generazione potenziata da recupero dati
<a name="lifecycle-rag"></a>

I modelli di machine learning statici effettuano previsioni esclusivamente sulla base di un set di allenamento fisso. Tuttavia, molte soluzioni di intelligenza artificiale generativa aziendali utilizzano Retrieval Augmented Generation (RAG) per mantenere aggiornate e pertinenti le conoscenze di un modello. RAG prevede il collegamento di un LLM a un archivio di conoscenze esterno che potrebbe contenere documenti aziendali, database o altre fonti di dati.

In pratica, RAG richiede l'implementazione di una pipeline di dati aggiuntiva. Ciò introduce un certo grado di complessità e prevede i seguenti passaggi sequenziali:

1. **Inserimento e filtraggio**: raccogli dati pertinenti e di alta qualità da diverse fonti. Implementa meccanismi di filtraggio per escludere informazioni ridondanti o irrilevanti e assicurati che il set di dati sia pertinente al dominio dell'applicazione. Tieni presente che gli aggiornamenti e la manutenzione regolari dell'archivio di dati sono essenziali per preservare l'accuratezza e la pertinenza delle informazioni.

1. **Analisi ed estrazione**: dopo l'inserimento dei dati, i dati devono essere analizzati per estrarre contenuti significativi. Utilizza parser in grado di gestire vari formati di dati, come HTML, JSON o testo semplice. I parser convertono i dati grezzi in moduli strutturati. Questo processo facilita la manipolazione e l'analisi dei dati nelle fasi successive.

1. **Strategie di suddivisione in blocchi***: suddivisione dei dati in parti o blocchi gestibili.* Questo passaggio è fondamentale per un recupero e un'elaborazione efficienti. Le strategie di suddivisione in blocchi includono ma non sono limitate a quanto segue:
   + Suddivisione **standard basata su token**: suddivide il testo in segmenti di dimensione fissa in base a un numero specifico di token. Questa è la strategia di suddivisione in blocchi più semplice, ma aiuta a mantenere lunghezze dei blocchi uniformi.
   + **Suddivisione gerarchica**: organizza i contenuti in una gerarchia (ad esempio capitoli, sezioni o paragrafi) per preservare le relazioni contestuali. Questa strategia migliora la comprensione della struttura dei dati da parte del modello.
   + Suddivisione **semantica: segmenta il** testo in base alla coerenza semantica. Assicurati che ogni blocco rappresenti un'idea o un argomento completo. Questa strategia può migliorare la pertinenza delle informazioni recuperate.

1. **Selezione del modello di incorporamento**: i database vettoriali memorizzano gli *incorporamenti*, che sono rappresentazioni numeriche di una porzione di testo che ne preservano il significato e il contesto. Un incorporamento è un formato che un modello ML può comprendere e confrontare per eseguire una ricerca semantica. La scelta del modello di incorporamento appropriato è fondamentale per catturare l'essenza semantica dei blocchi di dati. Seleziona modelli in linea con le esigenze specifiche del tuo dominio e in grado di generare incorporamenti che riflettano accuratamente il significato del contenuto. La scelta del modello di incorporamento migliore per il proprio caso d'uso può migliorare la pertinenza e l'accuratezza contestuale.

1. **Algoritmi di indicizzazione e ricerca**: indicizza gli incorporamenti in un database vettoriale ottimizzato per le ricerche di similarità. Utilizza algoritmi di ricerca che gestiscono in modo efficiente dati ad alta dimensione e supportano il recupero rapido delle informazioni pertinenti. Tecniche come la ricerca approssimativa dei vicini più vicini (ANN) possono migliorare significativamente la velocità di recupero senza compromettere la precisione.

Le pipeline RAG sono intrinsecamente complesse. Richiedono più fasi, diversi livelli di integrazione e un alto grado di esperienza per una progettazione efficace. Se implementati correttamente, possono migliorare in modo significativo le prestazioni e la precisione di una soluzione di intelligenza artificiale generativa. Tuttavia, la manutenzione di questi sistemi richiede molte risorse e richiede monitoraggio, ottimizzazione e scalabilità continui. Questa complessità ha portato alla nascita di un approccio dedicato all'operatività e alla gestione *RAGOps*efficiente delle pipeline RAG, per promuovere l'affidabilità e l'efficacia a lungo termine.

Per ulteriori informazioni su RAG on, consultate le seguenti risorse: AWS
+ [Opzioni e architetture di Retrieval Augmented Generation su (Prescriptive Guidance) AWS](https://docs.aws.amazon.com/prescriptive-guidance/latest/retrieval-augmented-generation-options/introduction.html)AWS 
+ [Scelta di un database AWS vettoriale](https://docs.aws.amazon.com/prescriptive-guidance/latest/choosing-an-aws-vector-database-for-rag-use-cases/introduction.html) per i casi d'uso di RAG (Prescriptive Guidance)AWS 
+ [Implementa uno use case RAG AWS utilizzando Terraform e Amazon Bedrock](https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/deploy-rag-use-case-on-aws.html) (Prescriptive Guidance)AWS 

## Perfezionamento e formazione specializzata
<a name="lifecycle-fine-tuning"></a>

**La messa a punto può assumere due forme distinte: la messa a punto del dominio e la messa a punto delle attività.** Ciascuna ha uno scopo diverso nell'adattare un modello pre-addestrato. La messa a punto di un dominio senza supervisione implica un'ulteriore formazione del modello su un corpo di testo specifico del dominio per aiutarlo a comprendere meglio la lingua, la terminologia e il contesto specifici di un particolare settore o settore. Ad esempio, potresti perfezionare un LLM specifico per i media sulla base di una raccolta di articoli e gergo interni per riflettere il tono di voce e il vocabolario specializzato dell'azienda.

Al contrario, la messa a punto supervisionata delle attività si concentra sull'insegnamento al modello di eseguire una funzione o un formato di output specifici. Ad esempio, potresti insegnarlo a rispondere alle domande dei clienti, riepilogare documenti legali o estrarre dati strutturati. Ciò richiede in genere la preparazione di un set di dati etichettato che contenga esempi di input e output desiderati per l'attività target.

Entrambi gli approcci richiedono un'attenta raccolta e cura dei dati di ottimizzazione. Per la messa a punto delle attività, i set di dati sono etichettati in modo esplicito. Per la messa a punto del dominio, puoi utilizzare testo senza etichetta per migliorare la comprensione generale del linguaggio nel contesto pertinente. Indipendentemente dall'approccio, la qualità dei dati è fondamentale. Set di dati puliti, rappresentativi e di dimensioni adeguate sono essenziali per mantenere e migliorare le prestazioni del modello. In genere, i set di dati di ottimizzazione fine sono molto più piccoli di quelli utilizzati per la formazione preliminare iniziale, ma devono essere selezionati con cura per garantire un adattamento efficace del modello.

Un'alternativa alla messa a punto è la *distillazione dei modelli, una tecnica che prevede l'addestramento di un modello* più piccolo e specializzato per replicare le prestazioni di un modello più ampio e generale. *Invece di perfezionare un LLM esistente, la distillazione di modelli trasferisce le conoscenze addestrando un modello leggero (*lo studente*) sui risultati generati dal modello originale e più complesso (l'insegnante).* Questo approccio è particolarmente utile quando l'efficienza computazionale è una priorità, perché i modelli distillati richiedono meno risorse pur mantenendo prestazioni specifiche per le attività.

Anziché richiedere dati di formazione completi e specifici del dominio, la distillazione dei modelli si basa su set di dati sintetici o generati dagli insegnanti. Il modello complesso produce esempi di alta qualità da cui il modello leggero può imparare. Ciò riduce l'onere della gestione dei dati proprietari, ma richiede comunque un'attenta selezione di esempi di formazione diversi e imparziali per mantenere le capacità di generalizzazione. Inoltre, la distillazione può aiutare a mitigare i rischi associati alla privacy dei dati perché è possibile addestrare il modello leggero su dati protetti senza esporre direttamente i record sensibili.

Detto questo, è improbabile che la maggior parte delle organizzazioni effettui operazioni di perfezionamento o distillazione perché spesso non sono necessarie per i rispettivi casi d'uso e introducono un ulteriore livello di complessità operativa e tecnica. Molte esigenze aziendali possono essere soddisfatte in modo efficace utilizzando modelli di base preformati, a volte con una leggera personalizzazione mediante una progettazione tempestiva o strumenti come RAG. La messa a punto richiede investimenti considerevoli in termini di capacità tecnica, gestione dei dati e governance dei modelli. Ciò lo rende più adatto per applicazioni aziendali altamente specializzate o su larga scala in cui tale sforzo è giustificato.

## Set di dati di valutazione
<a name="lifecycle-evaluation"></a>

Lo sviluppo di una solida strategia di dati è essenziale quando si costruiscono *set di dati di valutazione* per soluzioni di intelligenza artificiale generativa. Questi set di dati di valutazione fungono da parametri di riferimento per la valutazione delle prestazioni dei modelli. Dovrebbero essere ancorati a dati *fondati affidabili, ossia dati* noti per essere accurati, verificati e rappresentativi dei risultati del mondo reale. Ad esempio, i dati fondati sulla verità potrebbero essere dati reali che non vengono inseriti in un set di dati di formazione o di perfezionamento. I dati fondati sulla verità possono provenire da diverse fonti e ognuna presenta le proprie sfide.

La generazione di dati sintetici offre un modo scalabile per creare set di dati controllati per testare le funzionalità di modelli specifici senza esporre informazioni sensibili. Tuttavia, la sua efficacia dipende dalla precisione con cui replica le distribuzioni di base autentiche.

In alternativa, i set di dati curati manualmente, spesso chiamati set di dati *dorati, contengono coppie domanda-risposta* rigorosamente verificate o esempi etichettati. Questi set di dati possono fungere da dati veritieri di alta qualità per una valutazione affidabile dei modelli. Tuttavia, la compilazione di questi set di dati richiede molto tempo e risorse. L'integrazione delle interazioni effettive con i clienti come dati di valutazione può migliorare ulteriormente la pertinenza e la copertura dei dati fondati, sebbene ciò richieda rigorose misure di protezione della privacy e conformità normativa (ad esempio con GDPR e CCPA).

Una strategia globale in materia di dati dovrebbe bilanciare questi approcci. Per valutare efficacemente i modelli di intelligenza artificiale generativa, prendi in considerazione fattori come la qualità dei dati, la rappresentatività, le considerazioni etiche e l'allineamento con gli obiettivi aziendali. Per ulteriori informazioni, consulta [Amazon Bedrock Evaluations](https://aws.amazon.com/bedrock/evaluations/).

## Dati generati dagli utenti e loop di feedback
<a name="lifecycle-feedback-loops"></a>

Una volta implementato, un sistema di intelligenza artificiale generativa, inizia a produrre output e a interagire con gli utenti. Queste interazioni diventano esse stesse una preziosa fonte di dati. I dati generati dagli utenti includono le domande e i prompt degli utenti, le risposte del modello e qualsiasi feedback esplicito fornito dagli utenti (come le valutazioni). Le aziende dovrebbero considerare questi dati come parte del ciclo di vita generativo dei dati basati sull'intelligenza artificiale e inserirli nei processi di monitoraggio e miglioramento. È importante sottolineare che i dati generati dagli utenti possono essere incorporati nel set di dati di base. Questo aiuta a ottimizzare ulteriormente le istruzioni e a migliorare le prestazioni complessive dell'applicazione nel tempo. Un altro motivo fondamentale è gestire la deriva e le prestazioni del modello nel tempo. Dopo l'uso nel mondo reale, il modello potrebbe iniziare a divergere dal suo dominio di addestramento. Ne sono un esempio il nuovo gergo che compare nelle query o gli utenti che pongono domande su argomenti emergenti che non sono presenti nei dati di formazione. Il monitoraggio di questi dati in tempo reale può rivelare una *deriva dei dati*, in cui la distribuzione degli input cambia, il che può potenzialmente compromettere la precisione del modello.

Per ovviare a questo problema, le organizzazioni stabiliscono cicli di feedback acquisendo le interazioni degli utenti e riqualificando o perfezionando periodicamente il modello sulla base di un campione recente di esse. A volte, puoi semplicemente utilizzare il feedback per modificare le istruzioni e recuperare i dati. Ad esempio, se un assistente interno di un chatbot emette continuamente allucinazioni su un prodotto appena lanciato, il team potrebbe raccogliere quelle coppie di domande e risposte non riuscite e includere le informazioni corrette come dati di formazione o recupero aggiuntivi.

In alcuni casi, il *reinforcement learning from human feedback (RLHF) viene utilizzato per allineare ulteriormente un LLM durante* la fase post-allenamento o di messa a punto. Aiuta il modello a produrre risposte che riflettono meglio le preferenze e i valori umani. Le tecniche di Reinforcement Learning (RL) addestrano il software a prendere decisioni che massimizzano le ricompense, rendendo i risultati più accurati. RLHF incorpora il feedback umano nella funzione di ricompensa, in modo che il modello ML possa eseguire attività più in linea con gli obiettivi, i desideri e le esigenze umane. Per ulteriori informazioni sull'uso di RLHF in Amazon SageMaker AI, consulta Improving [your LLMs with RLHF on Amazon SageMaker sul blog](https://aws.amazon.com/blogs/machine-learning/improving-your-llms-with-rlhf-on-amazon-sagemaker/) AI. AWS 

Anche senza un RLHF formale, un approccio più semplice consiste nella revisione manuale di una frazione degli output del modello su base continuativa, simile al controllo della qualità. La chiave è che il monitoraggio continuo, l'osservabilità e l'apprendimento siano integrati nel processo. Per ulteriori informazioni su come raccogliere e archiviare il feedback umano dalle applicazioni di intelligenza artificiale generativa su AWS, consulta la [Guida per il feedback e l'analisi AWS degli utenti dei Chatbot](https://aws.amazon.com/solutions/guidance/chatbot-user-feedback-and-analytics-on-aws/) nella Libreria AWS delle soluzioni.

Per prevenire o affrontare la deriva, le aziende devono pianificare aggiornamenti continui dei modelli, che possono assumere diverse forme. Un approccio consiste nel programmare una messa a punto regolare o una formazione preliminare continua. Ad esempio, è possibile aggiornare il modello mensilmente con i dati interni più recenti, i casi di supporto o gli articoli di notizie. Durante la formazione continua, un modello linguistico pre-addestrato viene ulteriormente addestrato sulla base di dati aggiuntivi per migliorarne le prestazioni, in particolare in domini o attività specifici. Questo processo prevede l'esposizione del modello a nuovi dati di testo senza etichetta, consentendogli di affinare la sua comprensione e adattarsi alle nuove informazioni senza ricominciare da zero. Per facilitare questo processo potenzialmente complesso, Amazon Bedrock ti consente di eseguire operazioni di perfezionamento e formazione preliminare continua in un ambiente completamente sicuro e gestito. Per ulteriori informazioni, consulta [Personalizzare i modelli in Amazon Bedrock con i tuoi dati utilizzando la messa a punto e la formazione preliminare continua sul](https://aws.amazon.com/blogs/aws/customize-models-in-amazon-bedrock-with-your-own-data-using-fine-tuning-and-continued-pre-training/) News Blog. AWS 

Nello scenario in cui utilizzi off-the-shelf modelli con RAG, puoi fare affidamento su servizi di intelligenza artificiale cloud, come Amazon Bedrock. Questi servizi offrono aggiornamenti regolari dei modelli non appena vengono rilasciati e li aggiungono al catalogo disponibile. Ciò consente di aggiornare le soluzioni per utilizzare le versioni più recenti di questi modelli di base.