Utilizzate l' AutoAI per automatizzare e accelerare la ricerca di un modello ottimizzato, di qualità produttiva, di generazione aumentata del recupero (RAG) basato sui vostri dati e sul vostro caso d'uso.
Formato dei dati
File di raccolta documenti di tipo PDF, HTML, DOCX, MD o testo normale
Dati del test con domande e risposte in formato JSON
Limiti del file di dati
Fino a 20 file o cartelle per la raccolta di documenti. Per le raccolte di documenti più grandi, AutoAI esegue l'esperimento con un campione di 1 GB.
1 file JSON per i dati di prova. Un esperimento utilizzerà fino a 25 coppie di domande e risposte per valutare i modelli.
Dimensione dell'ambiente
Grande: 8 CPU e 32 GB di RAM
Stima dei costi per un modello RAG
Copy link to section
AutoAI per gli esperimenti RAG utilizza le ore di unità di capacità (CUH) per l'addestramento dell'esperimento e durante l'esperimento vengono consumati i token per l'inserimento dei documenti e l'inferenza dei modelli di base.
CUH è una misura standard di 20 CUH all'ora per l'ambiente supportato. Il CUH consumato per un esperimento dipende dalla complessità dell'esperimento e dal tempo necessario per addestrare i modelli.
Il consumo di gettoni dipende da una serie di fattori, tra cui:
dimensione della raccolta di documenti per l'incorporazione
numero di domande di valutazione e risposte da incorporare
configurazione di chunking, calcolata con questa formula: ((Chunk overlap + Chunk size) * Chunk count) *Evaluation records
il numero di modelli creati dall'esperimento
Questo esempio mostra come vengono calcolate le risorse per un singolo modello RAG.
Ingresso dell'esperimento:
100 pagine di documenti
25 registri delle domande/risposte di valutazione
Attività
Token consumati
Incorporazione di documenti
3.000.000
Incorporare i registri di valutazione
25.000
Recupero del contesto per i prompt
192,000
Recupero del contesto per i record di valutazione
25.000
Generazione di risposte
25.000
Numero totale di token consumati
3,267,000
Fornire risposte precise con la generazione aumentata dal recupero
Copy link to section
La Retrieval-augmented generation (RAG) combina la potenza generativa di un modello linguistico di grandi dimensioni con l'accuratezza di una raccolta di documenti di base. L'interazione con un'applicazione RAG segue questo schema:
Un utente invia una domanda all'applicazione.
La ricerca recupera innanzitutto il contesto rilevante da un insieme di documenti di base.
Il modello linguistico di accompagnamento genera una risposta che include le informazioni pertinenti.
Ad esempio, i notebook di esempio forniti per questa funzione utilizzano la documentazione del prodotto per la libreria client Python watsonx.ai come documenti di base per un'applicazione Q&A sulla codifica delle soluzioni watsonx.ai. Gli utenti del modello ottengono il beneficio di informazioni specifiche e pertinenti dalla documentazione, mentre il modello generativo dell'intelligenza artificiale aggiunge il contesto e presenta le risposte in linguaggio naturale.
Per una descrizione completa ed esempi di come la generazione aumentata dal reperimento può migliorare le applicazioni di domande e risposte, vedere Generazione aumentata dal reperimento (RAG).
Automatizzazione della ricerca della migliore configurazione RAG
Copy link to section
RAG è dotato di molti parametri di configurazione, tra cui il modello linguistico di grandi dimensioni da scegliere, il modo in cui suddividere i documenti di grounding e il numero di documenti da recuperare. Le scelte di configurazione che funzionano bene per un altro caso d'uso potrebbero non essere le migliori per i vostri dati. Per creare il miglior modello RAG possibile per il vostro set di dati, potreste esplorare tutte le possibili combinazioni di opzioni di configurazione RAG per trovare, valutare e distribuire la soluzione migliore. Questa parte del processo può richiedere un notevole investimento di tempo e risorse. Così come è possibile utilizzare AutoAI per addestrare e ottimizzare rapidamente i modelli di apprendimento automatico, è possibile utilizzare le funzionalità di AutoAI per automatizzare la ricerca della soluzione RAG ottimale in base ai dati e al caso d'uso. Accelerare la sperimentazione può ridurre drasticamente i tempi di produzione.
Le caratteristiche principali dell'approccio AutoAI includono:
Esplorazione e valutazione completa di un insieme vincolato di opzioni di configurazione .
Rivalutare e modificare rapidamente la configurazione quando qualcosa cambia. Ad esempio, è possibile rieseguire facilmente il processo di formazione quando è disponibile un nuovo modello o quando i risultati della valutazione segnalano un cambiamento nella qualità delle risposte.
L'uso di AutoAI automatizza il flusso end-to-end dalla sperimentazione alla distribuzione. Il diagramma seguente illustra l'approccio di AutoAI per trovare un modello RAG ottimizzato per i dati e il caso d'uso in 3 livelli:
Al livello base ci sono pipeline RAG parametrizzate che vengono utilizzate per popolare un archivio vettoriale (indice) e per recuperare i dati dall'archivio vettoriale da utilizzare quando il modello linguistico di grandi dimensioni genera le risposte.
Successivamente, le metriche di valutazione RAG e gli strumenti di benchmarking valutano la qualità delle risposte.
Infine, un algoritmo di ottimizzazione degli iperparametri cerca la migliore configurazione RAG possibile per i dati.
AutoAI Processo di ottimizzazione RAG
Copy link to section
L'esecuzione degli esperimenti utilizzando AutoAI RAG evita di testare tutte le opzioni di configurazione di RAG (ad esempio, evita una ricerca su griglia) utilizzando un algoritmo di ottimizzazione iperparametrica. Il diagramma seguente mostra un sottoinsieme dello spazio di ricerca della configurazione RAG con 16 modelli RAG tra cui scegliere. Se l'esperimento le valuta tutte, vengono classificate da 1 a 16, con le tre configurazioni più alte classificate come più performanti. L'algoritmo di ottimizzazione determina quale sottoinsieme di modelli RAG valutare e interrompe l'elaborazione degli altri, che sono mostrati in grigio. Questo processo evita l'esplorazione di uno spazio di ricerca esponenziale, pur selezionando i modelli RAG più performanti nella pratica.
Utilizzare il percorso rapido per automatizzare la ricerca di un modello RAG
Copy link to section
AutoAI offre una soluzione senza codice per automatizzare la ricerca di un modello RAG. Per utilizzare il percorso rapido, partire da un progetto e utilizzare l'interfaccia AutoAI per caricare i documenti di messa a terra e di test. Accettare la configurazione predefinita o aggiornare le impostazioni dell'esperimento. Eseguire l'esperimento per creare i modelli RAG più adatti al proprio caso d'uso.
Utilizzare l'AutoAI SDK per codificare un modello RAG
Copy link to section
Utilizzate i notebook di esempio per imparare a usare la libreria watsonx.ai Python client (versione 1.1.11 o successiva) per codificare una soluzione RAG automatizzata per il vostro caso d'uso.
Questo notebook mostra l'approccio rapido alla creazione di un modello RAG. - Utilizza i file di documentazione dell'SDK watsonx.ai Python come documenti di base per un modello RAG. - Memorizza il contenuto vettoriale nel database predefinito di Chroma in memoria
- Utilizza i file di documentazione dell'SDK Python watsonx.ai come documenti di base per un modello RAG. - Memorizza il contenuto vettoriale in un database Milvus esterno
Scalare un esperimento RAG
Copy link to section
AutoAI automatizza la ricerca di un modello RAG ottimizzato in base ai documenti di messa a terra. Se la base di conoscenze della documentazione supera i limiti di dati consentiti per un esperimento, è possibile utilizzare AutoAI per trovare il modello RAG, quindi utilizzare il blocco note di indicizzazione generato automaticamente quando si salva un modello per indicizzare altri documenti. Il modello RAG si applicherà all'insieme dei documenti indicizzati.
Esaminate questi dettagli per le caratteristiche fornite con il processo RAG di AutoAI.
Funzione
Descrizione
Interfaccia supportata
API, UI
Formati di file per la raccolta di documenti di base
PDF, HTML, DOCX, MD, testo normale
Connessioni dati per la raccolta dei documenti
IBM Cloud Object Storage (bucket) cartella nel bucket file (fino a 20)
formati dati di test
JSON con schema fisso (campi: - domanda, risposta_corretta, ID_documento_risposta_corretta)
Connessioni dati per i dati di test
IBM Cloud Object Storage(singolo file JSON) ' singolo file JSON nel progetto o nello spazio (asset di dati) ' singolo file JSON nel volume di archiviazione NFS
Suddivisione in blocchi
Preset multipli di 64-1024 caratteri ' Documenti di messa a terra suddivisi in pezzi con dimensioni e sovrapposizioni ottimizzate.
La metrica utilizzata come obiettivo dell'ottimizzazione. La correttezza e la fedeltà delle risposte sono supportate.
Vincoli utente personalizzabili
Modello di incorporazione Modello generativo Limite di configurazione (numero massimo di modelli in uscita da 4 a 20)
Distribuzione
Milvus : AutoAI notebook per l'indicizzazione e l'inferenza utilizzando Milvus un database vettoriale esterno asset di servizio AI distribuibile Chroma: singolo AutoAI notebook per l'indicizzazione e l'inferenza utilizzando il database vettoriale in-memory Chroma