0 / 0
Torna alla versione inglese della documentazione
Creazione di un indice vettoriale
Ultimo aggiornamento: 15 nov 2024
Creazione di un indice vettoriale

È possibile utilizzare i seguenti tipi di archivi vettoriali per indicizzare i documenti di messa a terra:

  • In memoria
  • Elasticsearch
  • watsonx.data Milvus

Quando si sceglie un archivio vettoriale in memoria, l'indice viene creato automaticamente; non è necessario configurare l'archivio vettoriale.

Per i fattori da considerare quando si sceglie un archivio vettoriale, vedere Aggiunta di documenti vettoriali per le richieste di foundation model fondazione.

Se si sceglie di usare un archivio vettoriale di terze parti, è necessario impostare una connessione all'archivio dati prima di creare l'indice vettoriale. Per ulteriori informazioni, consultare la procedura appropriata per l'archivio vettoriale che si desidera utilizzare:

Procedura

Per creare un indice vettoriale per i vostri documenti di messa a terra, completate i seguenti passaggi. L'ordine dei passaggi può variare leggermente a seconda del negozio di vettori che si sceglie di utilizzare.

  1. Nella panoramica del progetto, fare clic sulla scheda Assets, quindi scegliere New asset > Ground gen AI with vectorized documents.

    In alternativa, si può partire dal Prompt Lab in modalità chat facendo clic sull'icona Messa a terra con documenti Messa a terra con icona dei documenti all'inizio della pagina e poi su Selezionare o creare un indice vettoriale.

  2. Scegliere il negozio di vettori che si desidera utilizzare.

  3. Assegnare un nome all'asset dell'indice vettoriale.

  4. Aggiungere i documenti di messa a terra in uno dei seguenti modi:

    • Aggiungere i file da una risorsa di dati associata al progetto
    • Sfoglia per caricare i file dal proprio file system

    Le seguenti opzioni sono disponibili solo presso negozi di vettori di terze parti:

    • Aggiungere contenuti esistenti da un archivio vettoriale collegato

      Selezionate l'origine dati collegata, scegliete un database, se applicabile, e fate clic su Avanti. Scegliere l'indice o la raccolta che si desidera utilizzare.

    • Aggiungere nuovi contenuti a un indice vettoriale collegato

      Per aggiungere nuovi contenuti a un archivio vettoriale collegato, selezionare l'origine dati collegata, scegliere un database, se applicabile, e fare clic su Avanti. Fare clic su Nuovo indice o Nuova raccolta, specificare un nome e quindi aggiungere i documenti caricando i file o collegandosi a una risorsa dati.

    I tipi di file supportati variano a seconda del negozio di vettori. Per ulteriori informazioni, vedere Tipi di file di documenti di messa a terra supportati.

  5. Opzionale: se applicabile, scegliere il modello di incorporazione o le impostazioni di vettorizzazione da utilizzare per vettorializzare i documenti.

    Per ulteriori informazioni, vedere Impostazione del modello di incorporazione e della vettorizzazione.

  6. Solo per gli archivi di dati connessi: Mappare i campi dell'indice o della raccolta esistente in nuovi campi che saranno definiti nell'asset indice vettoriale in watsonx.ai.

    Queste mappature dei campi sono importanti perché watsonx.ai ha bisogno di un modo coerente per estrarre i dati e catturare i dettagli dei documenti, come il nome del file originale e il numero di pagina, dai vari archivi vettoriali supportati.

    Tabella 1. Campi dello schema del negozio vettoriale
    Nuovo nome del campo indice vettoriale Campo dal magazzino vettoriale collegato
    Interrogazione vettoriale Richiesto solo per gli indici Elasticsearch. Campo in cui viene specificato il testo della query usato per cercare nell'indice Elasticsearch, come ml o vector.
    Nome del documento Campo che identifica il file di origine. È possibile scegliere un campo che catturi il nome del file, come metadata.source, o il titolo del documento, come metadata.title.
    Testo Campo che contiene la maggior parte del contenuto della pagina, come body o text.
    Numero pagina Campo che identifica il numero di pagina, ad esempio metadata.page_number.
    URL documento Campo che contiene l'URL del documento, ad esempio metadata.document_url.
  7. Fare clic su Crea.

Il testo del file viene vettorializzato e i vettori vengono indicizzati e memorizzati in una nuova risorsa indice vettoriale.

Quando si aggiungono nuovi contenuti a un archivio dati di terze parti collegato, si verifica quanto segue:

  • Viene generato un asset notebook che viene eseguito in un job per vettorializzare i documenti e costruire l'indice o la raccolta nel data store di terze parti.
  • In watsonx.ai viene creata una risorsa indice vettoriale che può passare le query inviate all'indice o alla raccolta nell'archivio dati di terze parti e ottenere i risultati della ricerca.

Dopo aver creato l'asset dell'indice vettoriale, verificare la capacità dei documenti vettoriali di rispondere alle domande e apportare le modifiche necessarie. Vedere Gestione di un indice vettoriale.

Modello di incorporazione e impostazioni di vettorizzazione

Le seguenti impostazioni controllano il modo in cui i documenti vengono suddivisi in segmenti più piccoli, o chunks, prima di essere inviati al modello di incorporamento:

  • Dimensione del testo: numero di caratteri da includere per ogni segmento del documento.

    Definire una dimensione del segmento inferiore al numero massimo di token in ingresso consentito dal modello. Se si suddivide il documento in segmenti più grandi, il testo del documento potrebbe essere omesso perché, una volta raggiunto il limite massimo di dimensione dei token, i caratteri in più nel segmento vengono ignorati dal modello di incorporamento.

    La dimensione del chunk è specificata in caratteri. Il numero di caratteri per token varia a seconda del modello di incorporazione, ma un token equivale a circa 2-3 caratteri.

    Tabella 2. Dimensioni dei pezzi del modello di incorporazione
    Modello di integrazione Numero massimo di token di input Dimensione approssimativa dei pezzi
    all-MiniLM-L6-v2 256 700
    ELSER 512 1400
    slate-30m-english-rtrvr 512 1400
    slate-125m-english-rtrvr 512 1400

     

  • Sovrapposizione dei pezzi di testo: Numero di caratteri da ripetere in ciascuno dei due segmenti consecutivi del documento.

    La ripetizione del testo crea un buffer tra i segmenti del documento che aiuta a catturare le frasi complete ed evita che il testo venga perso del tutto.

  • Suddividi pagine PDF: Se abilitato, divide un file PDF in un segmento per pagina e include l'origine del numero di pagina nella risposta. I numeri di pagina visualizzati sono i numeri di pagina del visualizzatore PDF.

    Nota: Questa opzione è disponibile solo quando si aggiunge un file PDF.

     

Utilizzare l'indice vettoriale con il prompt foundation model

Quando l'indice vettoriale è pronto per l'uso, associarlo a un prompt foundation model in uno dei modi seguenti:

  • Dalla pagina delle risorse dell'indice vettoriale, fare clic sull'icona Visualizza le informazioni sull'indice vettoriale Visualizza l'icona dell'indice vettoriale all'inizio della pagina per aprire il pannello Informazioni su questo bene, quindi fare clic su Aprire in Prompt Lab.
  • Dal Prompt Lab in modalità chat, fare clic sull'icona Messa a terra con documenti Messa a terra con icona dei documenti all'inizio della pagina, quindi su Selezionare o creare un indice vettoriale.

Utilizzate questo modello di prompt nella vostra applicazione

Dopo aver sperimentato modelli di generazione aumentata dal reperimento (RAG) che utilizzano il vostro set di documenti, salvate la logica del prompt in un blocco note per poterla utilizzare nella vostra applicazione di IA generativa.

Quando si salva il prompt come blocco note, selezionare l'opzione Flusso gen AI distribuibile. Il blocco note generato fornisce il codice Python per il modello di prompt e una funzione Python distribuibile che può essere consumata dalle API REST.

Per ulteriori informazioni, vedere Salvataggio del lavoro.

Ulteriori informazioni

Argomento principale: Aggiunta di documenti vettoriali per i prompt foundation model

Ricerca e risposta AI generativa
Queste risposte sono generate da un modello di lingua di grandi dimensioni in watsonx.ai basato sul contenuto della documentazione del prodotto. Ulteriori informazioni