Traduzione non aggiornata
Generazione di dati sintetici non strutturati (beta)
creato: "2025-03-11 14:09:23 -0400" title: "Generazione di dati sintetici non strutturati" fname: " synthetic\sdg-unstructured-overview.liquid.md "
Con l'API per la generazione di dati sintetici di watsonx.ai, è possibile creare insiemi di dati testuali non strutturati di grandi dimensioni e di alta qualità che riproducono i dati in tempo reale della vostra organizzazione. Utilizzate i set di dati sintetici generati per mettere a punto e valutare i modelli di fondazione per il vostro caso d'uso specifico.
Panoramica
È possibile utilizzare modelli linguistici di grandi dimensioni (LLM) addestrati con grandi insiemi di dati per generare risultati personalizzati per la propria organizzazione. Tuttavia, è necessario sintonizzare i modelli con una grande quantità di dati di addestramento utili e accurati. Un set di dati piccolo o di bassa qualità non è sufficiente per addestrare con successo i modelli a generare risultati rilevanti per il vostro caso d'uso specifico.
Utilizzate l'API per la generazione di dati sintetici per creare grandi set di dati testuali non strutturati utilizzando pipeline di creazione dati e validatori di dati ottimizzati per la generazione di dati per la messa a punto e la valutazione dei modelli di fondazione.
Una pipeline di data builder genera dati sintetici in diversi formati che imitano i dati di partenza e i documenti di riferimento forniti come input alla pipeline. In base al vostro caso d'uso, potete scegliere tra le seguenti pipeline di creazione dati:
- Chiamata dello strumento
- La pipeline di costruzione dei dati crea set di dati di addestramento che possono essere utilizzati per addestrare i modelli di intelligenza artificiale a interagire con strumenti esterni, interfacce di programmazione delle applicazioni (API) o sistemi per migliorare le loro capacità.
- Da testo a SQL
- La pipeline di creazione di dati da testo a SQL genera triplette di dati SQL sintetici che contengono un'affermazione in linguaggio naturale che descrive un'operazione di database, un'istruzione SQL equivalente per eseguire l'operazione di database e lo schema del database.
- Conoscenze
- La pipeline di dati sulla conoscenza genera coppie di domande e risposte ( QnA ) basate su esempi presenti in documenti specifici di un dominio aziendale.
Per ulteriori informazioni sui formati dei dati seed e sulla scelta della pipeline di creazione dei dati, vedere Pipeline di creazione dei dati e formati dei dati seed.
API REST
È possibile utilizzare l'API per la generazione di dati sintetici (SDG) per amministrare la generazione di dati sintetici non strutturati. I dati sintetici sono generati con modelli di fondazione forniti in watsonx.ai. Il formato dei dati generati si basa sui dati di partenza forniti e sulla pipeline di creazione dei dati utilizzata. Dopo che il modello di fondazione ha generato il set di dati, questi vengono convalidati in base ai requisiti di qualità della pipeline del costruttore di dati e archiviati nella risorsa del progetto.
Per i dettagli sui metodi API, consultare la documentazione di riferimento dell'API watsonx.ai.
Per ulteriori informazioni sulle best practice da seguire quando si mettono a punto e si valutano i modelli di fondazione utilizzando i dati generati con l'API, vedere Best practice.
Il diagramma seguente mostra il flusso di lavoro dell'API REST per generare dati sintetici non strutturati fornendo dati di partenza di esempio in un formato adatto al vostro caso d'uso.
Prima di iniziare
Per generare dati sintetici non strutturati in modo programmatico, è necessario completare la seguente configurazione:
Creare un progetto e avere il ruolo di Admin o Editor nel progetto. Il progetto deve avere un'istanza del servizio watsonx.ai Runtime associata.
Creare una chiave API per l'utente IBM Cloud e un token IBM Cloud Identity and Access Management (IAM). Per maggiori dettagli, vedere Credenziali per l'accesso programmatico.
Creare una credenziale dell'attività.
La credenziale di un'attività è una chiave API utilizzata per autenticare i lavori di lunga durata avviati dai passi che si compiono durante la procedura di generazione dei dati sintetici. Non è necessario passare la credenziale dell'attività nella richiesta API. Per ulteriori informazioni, vedere Creazione delle credenziali dell'attività.
Opzionale : Scegliere un modello di fondazione da utilizzare per generare set di dati sintetici.
I seguenti modelli sono certificati per l'uso con il servizio Synthetic Data Generator :
granite-3-8b-instruct
mistral-large
L'API utilizza il modello
granite-3-8b-instruct
per impostazione predefinita. Per i dettagli sul modello, comprese le informazioni sulla fatturazione e gli ID del modello API, vedere Modelli di fondazione supportati.
Procedura
Seguite questi passaggi di alto livello per generare dati sintetici di testo non strutturato utilizzando l'API REST:
Scegliere una pipeline di creazione dei dati e caricare i file di dati di partenza nell'asset del progetto.
Il formato dei dati di input del campione dipende dalla pipeline di creazione dati selezionata. Per tutti i costruttori di dati, è necessario fornire i dati di partenza come input per la richiesta di generazione dei dati. Per alcune condotte, è necessario fornire anche documenti di riferimento. Per maggiori dettagli, vedere Pipeline di creazione dati e formati di dati seed.
Usare il metodo REST API Crea un lavoro di generazione di dati sintetici non strutturati per creare la configurazione del lavoro per il tipo di risorsa generatore di dati sintetici. Nella richiesta è necessario specificare le seguenti impostazioni:
- La pipeline del costruttore di dati
- Riferimento ai dati delle sementi in ingresso
- Il numero di coppie QnA da generare
È possibile specificare facoltativamente l'ID del modello API di un modello di fondazione per sovrascrivere l'impostazione predefinita del modello.
Eseguire il lavoro di generazione di dati sintetici non strutturati in uno dei seguenti modi:
- Dalla pagina Lavori del progetto nell'interfaccia utente. Per ulteriori informazioni, vedere Creazione e gestione dei lavori.
- Utilizzo dell'API REST delle esecuzioni dei lavori. Per maggiori dettagli, vedere Dati e API Common Core.
Il completamento di un lavoro può richiedere alcuni minuti o ore, a seconda del volume dell'output generato, della pipeline di creazione dei dati e del modello. È possibile monitorare lo stato del lavoro di generazione di dati sintetici non strutturati facendo clic sull'esecuzione del lavoro per accedere al registro dalla pagina dei dettagli dell'esecuzione del lavoro.
Attenzione:L'utente è tenuto a pagare i gettoni generati dal modello di fondazione. Per i dettagli, vedere Modelli di fondazione supportati. Scaricare i file JSONL di output generati che contengono i dati sintetici non strutturati dell'asset di dati del progetto. I dati generati sono formattati in base alla pipeline del costruttore di dati specificata nella richiesta API per creare il lavoro di generazione di dati sintetici non strutturati.
Esempio di richiesta
Ad esempio, il comando seguente invia una richiesta di generazione di dati sintetici non strutturati:
curl -X POST \
'https://api.{region}.dai.cloud.ibm.com/v1/synthetic_data/generation/unstructured?version=2025-04-17' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \'
--header 'Authorization: Bearer eyJraWQiOi...' \'
--data @payload.json'
Di seguito è riportato un esempio di file payload.json
che contiene un corpo di richiesta che sovrascrive il modello di fondazione predefinito:
{
"project_id": "<Your project ID>",
"name": "<Name of the job that you want to create>",
"description": "<Description of your project>",
"pipeline": "<Data builder pipeline>",
"model_id": "mistralai/mistral-large",
"parameters": {
"num_outputs_to_generate": < A value between 1 to 1000 >,
},
"seed_data_reference": {
"type": "container",
"location": {
"path": "<Input seed data file name in project asset>"
}
},
"results_reference": {
"type": "container",
"location": {
"path": "<Generated data output file name in project asset>"
}
}
}
Dettagli output
Durante il periodo di beta, è possibile generare un massimo di 1000 coppie QnA di dati sintetici con ogni richiesta di API REST. Per generare un set di dati più ampio, contattare il team di assistenza aprendo un caso nel portale di assistenza IBM Cloud. Per ulteriori informazioni, vedere Creazione di casi di supporto nella documentazione di IBM Cloud.
Best practice
Durante l'utilizzo dell'API per la generazione di dati sintetici, attenersi alle seguenti linee guida:
Per selezionare il modello di fondazione più adatto al vostro caso d'uso, sperimentate la generazione di un piccolo numero di coppie QnA con più modelli di fondazione certificati. Modificare la seguente impostazione nella richiesta API per regolare la quantità di set di dati generati:
"parameters": { "num_outputs_to_generate": 10 }
Dopo aver verificato la qualità dell'output generato, scegliere un modello di base certificato e procedere con la generazione di set di dati più grandi.
Assicurarsi di esaminare i dati sintetici non strutturati prodotti con l'API prima di utilizzare i dati per addestrare i modelli.
Per utilizzare i dati sintetici per addestrare i modelli in Tuning Studio, il dataset deve contenere gli attributi
input
eoutput
.In base alla pipeline di data builder utilizzata per generare i dati sintetici, completare i passaggi seguenti per rendere il set di dati compatibile con Tuning Studio :
- Strumento che chiama la pipeline: Non sono necessarie modifiche, è pronto per l'uso.
- Pipeline da testo a SQL: Rinominare l'attributo
utterance
ininput
. Rinominate l'attributoquery
inoutput
. - Condotta della conoscenza: Rinominare l'attributo
question
ininput
. Rinominate l'attributoanswer
inoutput
.
Ulteriori informazioni
- Creazione di un progetto
- Aggiunta di servizi associati a un progetto
- IBM watsonx.ai Documentazione di riferimento dell'API
- Modelli di fondazione supportati
- Tuning Studio
Argomento principale: Preparazione dei dati