0 / 0
Torna alla versione inglese della documentazione
Automatizzare uno schema RAG con AutoAI
Ultimo aggiornamento: 06 feb 2025
Automatizzare uno schema RAG con AutoAI

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

AutoAI per gli esperimenti RAG utilizza sia le ore di unità di capacità (CUH) per l'addestramento dell'esperimento, sia le unità di risorse (RU) per misurare i token consumati per l'incorporazione 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 IF 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

Le unità di risorse totali consumate ( tokens/100 ) = 3267 RU per questo esperimento.


Fornire risposte precise con la generazione aumentata dal recupero

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:

  1. Un utente invia una domanda all'applicazione.
  2. La ricerca recupera innanzitutto il contesto rilevante da un insieme di documenti di base.
  3. 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

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.

Automatizzazione di uno schema RAG con l'SDK AutoAI

AutoAI Processo di ottimizzazione RAG

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.

Automatizzazione del processo di ottimizzazione dei modelli RAG

Utilizzare il percorso rapido per automatizzare la ricerca di un modello RAG

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

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.

Esempio Descrizione
Automatizzazione del modello RAG con il database Chroma 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
Automatizzazione del modello RAG con il database Milvus - 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

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.

Per ulteriori informazioni, vedere Salvataggio di un modello RAG.

Funzioni supportate

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.
Modello di integrazione Modelli di incorporamento supportati disponibili con watsonx.ai
Archivio vettoriale Milvus e ChromaDB
Aumento dei blocchi Abilitato (aggiunge pezzi circostanti dal documento)
Tipo di ricerca Standard (in un unico indice)
Modelli generativi Vedere i modelli di Fondazione per attività
Campionamento Benchmark-driven (prima selezionare le domande, poi i documenti, riempire con quelli casuali fino al limite)
Algoritmo di ricerca Per l'ottimizzazione degli iperparametri viene utilizzato il Tree Parzen Estimator (TPE) della libreria hyperopt
Metriche Correttezza della risposta, Fedeltà, Correttezza del contesto. Per ulteriori informazioni, vedere
Vedere Metriche di rag lessicale dell'unito
Metrica di ottimizzazione 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

Passi successivi

Argomento principale: Codifica di soluzioni di IA generativa