Ottimizzare l'elaborazione dei dati con Zilliz Cloud Pipelines: un'analisi approfondita della suddivisione in blocchi dei documenti
Ottimizzare l’elaborazione dei dati usando Zilliz Cloud Pipelines implica esaminare il chunking dei documenti. È un componente della trasformazione di dati non strutturati in una raccolta vettoriale ricercabile. Le pipeline di ingestione, eliminazione e ricerca di Zilliz Cloud Pipelines facilitano ulteriormente questo processo. Ciascuna ha uno scopo diverso nel flusso di lavoro di elaborazione dei dati.
Zilliz Cloud Pipelines svolge un ruolo nella semplificazione del processo di chunking dei documenti e nel miglioramento della ricercabilità. La piattaforma abilita casi d’uso con ricerca semantica nei documenti di testo e fornisce un elemento fondamentale per le applicazioni di Retrieval-Augmented Generation (RAG).
Zilliz Cloud Pipelines include varie funzioni come SEARCH_DOC_CHUNK, che convertono il testo della query in embedding vettoriale. Recupererà quindi i top-K chunk di documento pertinenti, rendendo più facile trovare le informazioni correlate in base al significato della query.
Zilliz Cloud Pipelines: Trasformare l’elaborazione dei dati
Gli ingegneri di Zilliz hanno progettato Zilliz Cloud Pipelines per trasformare dati non strutturati provenienti da varie fonti in una raccolta vettoriale ricercabile per sviluppatori Gen AI impegnati. Questa pipeline prenderà dati non strutturati, li suddividerà, li convertirà in embedding, li indicizzerà e li archivierà in Zilliz Cloud con i metadati designati. Questa architettura utilizza vari componenti e capacità tecnologici chiave che migliorano le prestazioni.
Fondamento tecnologico
Database vettoriale Milvus
Milvus Vector Database è progettato per gestire in modo efficiente dati vettoriali ad alta dimensionalità. Supporta inoltre diversi casi d’uso, incluso Zilliz Cloud, un servizio cloud che aiuta gli sviluppatori a concentrarsi sulle applicazioni principali anziché sulla gestione delle operazioni del database.
Connettori
I connettori sono uno strumento integrato che collega senza sforzo varie fonti di dati, consentendo l’ingestione e l’indicizzazione dei dati in tempo reale per garantire che il contenuto più aggiornato sia immediatamente accessibile per tutte le richieste di ricerca. Scalabili e adattivi, i connettori possono gestire senza problemi carichi di traffico variabili per una scalabilità fluida senza alcun problema DevOps. Sincronizzano automaticamente le aggiunte e le eliminazioni di documenti alla raccolta, mantenendola sincronizzata. Inoltre, la registrazione dettagliata fornisce osservabilità nel flusso di dati, garantendo trasparenza e la capacità di rilevare eventuali anomalie che potrebbero emergere.
Splitter di documenti
Gli splitter sono comunemente usati nelle attività di elaborazione dei documenti e analisi del testo per dividere un documento o un testo in chunk o segmenti più piccoli in base a caratteri o pattern specificati. Questi chunk possono quindi essere elaborati o analizzati separatamente. Ad esempio, per applicazioni Gen AI, gli splitter possono essere usati per suddividere un testo lungo in singole frasi o paragrafi prima di convertirlo in embedding vettoriali. Questi embedding servono a trovare chunk semanticamente simili.
Modelli di machine learning
I modelli di machine learning vengono utilizzati per creare embedding vettoriali. Questi embedding catturano relazioni semantiche e informazioni contestuali, consentendo agli algoritmi di comprendere ed elaborare il linguaggio in modo più efficace. Modelli di machine learning open source, commerciali e privati possono essere installati on-premise o nel tuo ambiente cloud oppure accessibili tramite API per generare embedding vettoriali.
Reranker
Nei sistemi di recupero delle informazioni, un reranker perfeziona i risultati di ricerca iniziali per migliorarne la pertinenza rispetto alla query. A differenza della sola ricerca vector approximate nearest neighbor (ANN) per il recupero, l'aggiunta di un reranker può aumentare la qualità della ricerca valutando meglio la relazione semantica tra i documenti e la query. Per le applicazioni di retrieval-augmented generation (RAG), i reranker possono migliorare l'accuratezza delle risposte generate fornendo un insieme più piccolo ma di qualità superiore di documenti di contesto. Tuttavia, i reranker sono computazionalmente costosi, comportando costi maggiori e tempi di latenza delle query più lunghi rispetto al solo recupero ANN. La decisione di integrare un reranker dovrebbe bilanciare la necessità di una maggiore pertinenza con i vincoli di prestazioni e costi.
Funzionalità
Creazione della pipeline di ingestione
Gli utenti hanno la possibilità di creare pipeline tramite la console intuitiva di Zilliz Cloud oppure tramite API RESTful più personalizzabili. Questo duplice approccio garantisce che gli utenti possano adattare la propria esperienza di creazione delle pipeline in base alle proprie esigenze e preferenze specifiche, sia che diano priorità alla semplicità sia che richiedano opzioni di personalizzazione avanzate. Durante la creazione della pipeline, gli utenti possono scegliere di suddividere prima i propri documenti e poi scegliere uno dei sei modelli (zilliz/bge-base-en-v1.5, voyageai/voyage-2, voyageai/voyage-code-2, openai/text-embedding-3-small, and openai/text-embedding-3-large. For the Chinese language, only zilliz/bge-base-zh-v1.5) per creare embedding vettoriali. Possono anche salvare qualsiasi metadato pertinente che sarà utile durante il recupero.
Connessione alla sorgente dati
I connettori, in quanto strumenti integrali di Zilliz Cloud, sono progettati per semplificare il processo di collegamento di diverse sorgenti dati con un database vettoriale. Grazie alle istruzioni intuitive fornite nell'interfaccia utente (UI), gli utenti possono integrare senza sforzo varie sorgenti dati nelle proprie pipeline. Ciò non solo migliora la versatilità e l'ampiezza delle loro capacità di elaborazione dei dati, ma sottolinea anche la natura intuitiva di Zilliz Cloud.
Ad esempio, un connettore funge da meccanismo per l'ingestione di dati in Zilliz Cloud da una serie di sorgenti, tra cui Object Storage, Kafka (presto disponibile) e altro ancora. Prendendo come esempio il connettore di object storage, esso consente agli utenti di monitorare una directory all'interno di un bucket di object storage e sincronizzare file come PDF e HTML con Zilliz Cloud Pipelines. Successivamente, questi file possono essere convertiti in rappresentazioni vettoriali e archiviati nel database vettoriale per la ricerca. Con pipeline di ingestione ed eliminazione dedicate, i file e le corrispondenti rappresentazioni vettoriali all'interno di Zilliz Cloud rimangono sincronizzati. La raccolta del database vettoriale riflette automaticamente qualsiasi aggiunta o rimozione di file nell'object storage, garantendo coerenza e accuratezza dei dati.
Esecuzione della pipeline di ricerca
Una volta create, le pipeline possono essere eseguite per elaborare dati non strutturati, facilitando varie funzionalità all'interno dell'ecosistema Zilliz Cloud. Ad esempio, dopo aver creato una pipeline di Ingestion, gli utenti possono avviarne l'esecuzione per trasformare dati non strutturati in embedding vettoriali ricercabili. Questi embedding possono quindi essere archiviati in un database vettoriale Zilliz Cloud, migliorando l'accessibilità e l'efficienza del recupero dei dati.
Allo stesso modo, dopo aver creato una pipeline di Search, gli utenti possono eseguirla, consentendo al sistema di effettuare una ricerca semantica. Questa funzionalità permette agli utenti di esplorare e recuperare informazioni pertinenti dal database vettoriale, sfruttando la potenza dell'analisi semantica per perfezionare i risultati di ricerca.
Inoltre, dopo aver creato una pipeline di eliminazione, gli utenti possono avviarne l'esecuzione rimuovendo da una raccolta all'interno del database vettoriale tutti i chunk associati a un documento specificato. Questa capacità garantisce l'integrità e la pulizia del database facilitando la rimozione di chunk di dati non necessari o obsoleti.
Stima del costo della pipeline
Il costo associato all'esecuzione delle pipeline è quantificato in termini di token, che fungono da unità di misura fondamentale. Analogamente a come i Large Language Models (LLM) utilizzano i token come elementi costitutivi di base, le pipeline effettuano l'elaborazione dei documenti e l'esecuzione delle query di ricerca analizzando e incorporando il testo come una sequenza di token. Gli utenti possono sfruttare il nostro strumento Estimate Pipeline Usage per ottenere informazioni sulle implicazioni di costo dell'esecuzione di una pipeline. Questo strumento facilita il conteggio dei token all'interno di un file o di una stringa di testo, consentendo agli utenti di valutare l'utilizzo previsto delle risorse e i costi associati all'esecuzione di una pipeline. Questo strumento consente agli utenti di prendere decisioni informate in merito all'allocazione delle risorse e al budgeting, garantendo efficienza ottimale e convenienza nelle operazioni delle loro pipeline.
Riordinamento dei risultati di ricerca
Il recupero iniziale con la sola ricerca vettoriale Approximate Nearest Neighbor (ANN) è molto efficiente e spesso produce risultati soddisfacenti. In molte situazioni, la fase secondaria di riordinamento può essere considerata facoltativa. Per applicazioni con standard di qualità elevati, l'impiego di un reranker può migliorare l'accuratezza, sebbene con maggiori esigenze computazionali e tempi di ricerca più lunghi. In genere, l'integrazione di un modello reranker può aggiungere da 100 ms a qualche secondo di latenza alla query di ricerca, a seconda di fattori come la selezione topK e la dimensione del modello reranker. Quando il recupero iniziale restituisce documenti errati o irrilevanti, l'utilizzo di un reranker li filtra efficacemente, migliorando così la qualità della risposta finale generata.
Se un reranker è ritenuto necessario per il tuo caso d'uso, puoi sceglierlo dall'interfaccia utente.
Vantaggi
Creazione flessibile di pipeline: Gli utenti possono creare pipeline tramite la console intuitiva di Zilliz Cloud o le API RESTful più personalizzabili. Questo duplice approccio consente agli utenti di adattare l'esperienza di creazione delle pipeline alle loro esigenze e preferenze specifiche, sia che diano priorità alla semplicità sia che richiedano opzioni di personalizzazione avanzate.
Integrazione fluida delle fonti dati: I connettori in Zilliz Cloud semplificano il collegamento di diverse fonti dati con un database vettoriale. Con istruzioni intuitive nell'interfaccia utente (UI), gli utenti possono integrare senza sforzo varie fonti dati nelle loro pipeline, migliorando la versatilità e l'ampiezza delle loro capacità di elaborazione dei dati.
Stima e ottimizzazione dei costi: Zilliz Cloud fornisce uno strumento Estimate Pipeline Usage che aiuta gli utenti a valutare l'utilizzo previsto delle risorse e i costi associati alla pipeline. Gli utenti possono prendere decisioni informate in merito all'allocazione delle risorse e al budgeting contando i token all'interno di un file o di una stringa di testo, garantendo efficienza ottimale e convenienza nelle operazioni delle loro pipeline.
Pipeline di Zilliz Cloud
Pipeline di ingestione
Lo scopo principale delle pipeline di ingestione è che sono progettate per elaborare dati non strutturati come frammenti di testo e documenti in embedding vettoriali ricercabili. Contengono una funzione INDEX_DOC, che suddivide il documento di testo di input in vari chunk e genera un embedding vettoriale per ciascun chunk. Il campo di input (doc_url) è mappato a quattro campi di output (doc_name, chunk_id, chunk_text ed embedding) come campi scalari e vettoriali della collection generata automaticamente.
Pipeline di ricerca
Il processo delle pipeline di ricerca è piuttosto semplice. Supporta la ricerca semantica convertendo una stringa di query in un embedding vettoriale e recuperando i vettori top-K con i loro metadati e il testo corrispondente. A questo scopo, viene utilizzata una funzione denominata SEARCH_DOC_CHUNK.
Pipeline di eliminazione
Le pipeline di eliminazione vengono utilizzate per rimuovere da una collection tutti i chunk in un documento specificato. Ciò rende più semplice eliminare tutti i dati di un documento. Esiste una funzione denominata PURGE_DOC_INDEX che elimina tutti i chunk del documento che hanno un doc_name specificato.
I meccanismi del chunking dei documenti
L'obiettivo del chunking è, come suggerisce il nome, suddividere le informazioni in più parti più piccole per archiviarle in modo più efficiente e significativo. Ciò consente al recupero di acquisire parti di informazioni più correlate alla domanda e alla generazione di essere più precisa ma meno costosa, poiché nel prompt LLM verrà inclusa solo una parte di un documento anziché l'intero documento. Infine, il chunking dei documenti rende la ricercabilità efficiente perché le informazioni vengono recuperate in base alla comprensione semantica anziché a corrispondenze esatte.
Con Zilliz Cloud Pipelines, puoi suddividere i documenti in frasi, paragrafi, righe o un elenco di stringhe personalizzate. Inoltre, puoi definire la dimensione del chunk. Per impostazione predefinita, ciascuno contiene al massimo 500 token. La tabella seguente elenca la relazione di mappatura tra i modelli applicabili e i corrispondenti intervalli di dimensione del chunk.
| Modello | Intervallo di dimensione del chunk |
|---|---|
| zilliz/bge-base-en-v1.5 | 20-500 token |
| zilliz/bge-base-zh-v1.5 | 20-500 token |
| voyageai/voyage-2 | 20-3,000 token |
| voyageai/voyage-code-2 | 20-12,000 token |
| voyageai/voyage-large-2 | 20-12,000 token |
| openai/text-embedding-3-small | 250-8,191 token |
| openai/text-embedding-3-large | 250-8,191 token |
Applicazioni pratiche e vantaggi del chunking dei documenti
Il chunking dei documenti ha un'ampia gamma di applicazioni pratiche in vari domini. Suddividendo i dati testuali in parti gestibili, viene offerto un approccio più snello alla gestione di grandi volumi di dati non strutturati. Di seguito sono riportate alcune delle applicazioni reali del chunking dei documenti.
Applicazioni reali
Gestione dei contenuti
Nella gestione dei contenuti, il processo di chunking dei documenti rende più facile indicizzare e recuperare documenti di grandi dimensioni suddividendoli in piccole parti. Questo approccio rende la ricerca efficiente e consente agli utenti di trovare rapidamente le informazioni desiderate.
Ricerca
Il chunking dei documenti è utile nell'ambito della ricerca per indicizzare articoli accademici, report e articoli di ricerca. Grazie a ciò, i ricercatori possono cercare i loro segmenti specifici di interesse.
Legale
Il chunking dei documenti è utile anche nell'ambito legale. Il chunking facilita la ricerca di clausole specifiche, contratti, termini e decisioni giudiziarie. Ciò migliora l'accuratezza e l'efficienza della ricerca legale.
Medico
Anche i professionisti medici possono utilizzare il chunking dei documenti per elaborare e indicizzare le cartelle cliniche dei pazienti, le linee guida cliniche e gli articoli di ricerca. Questo li aiuta ad accedere senza ritardi a informazioni mediche critiche.
Vantaggi
Il chunking offre tre vantaggi chiave nel contesto dei modelli di Retrieval Augmented Generation (RAG):
- Precisione migliorata: Suddividendo il testo in chunk più piccoli e più gestibili, il chunking consente al processo di recupero di acquisire informazioni specificamente rilevanti per la query. Ciò migliora la precisione dei risultati di ricerca e garantisce che le informazioni recuperate siano strettamente allineate ai requisiti dell'utente.
- Costi computazionali ridotti: Il chunking minimizza i costi computazionali includendo solo le porzioni rilevanti del documento nel prompt del modello linguistico. Evitando informazioni non necessarie, il chunking aiuta a ottimizzare il sovraccarico di elaborazione, risultando in processi di recupero e generazione del testo più efficienti.
- Coerenza e rilevanza migliorate: Strategie di chunking come Document Specific Chunking rispettano l'organizzazione originale del documento, creando chunk allineati con sezioni logiche come paragrafi o sottosezioni. Questo approccio mantiene la coerenza e la rilevanza del testo, in particolare per i documenti strutturati, portando a risultati di ricerca più significativi e contestualmente appropriati.
Implementazione del chunking dei documenti con Zilliz Cloud Pipelines: una guida passo dopo passo
Implementare il chunking dei documenti con Zilliz Cloud Pipelines comporta una serie di passaggi. La guida completa include configurazione iniziale, configurazioni, best practice e strategie di ottimizzazione. I punti chiave riguardano la registrazione a Zilliz Cloud, la creazione di pipeline, l’indicizzazione dei documenti e la personalizzazione delle strategie di chunking.
Configurazione iniziale e configurazione
Registrati o accedi
Il primo passaggio consiste nel registrarsi o accedere all’account Zilliz Cloud. Questo ti aiuterà ad accedere al servizio Zilliz Cloud Pipelines.
Crea pipeline
Gli utenti devono seguire le istruzioni fornite da Zilliz per creare le pipeline di ingestion, ricerca ed eliminazione. Assicurati di annotare l’ID della pipeline di ricerca e l’API-Key per le operazioni successive.
Metodo Web UI
- Vai al tuo progetto
- Vai al tuo progetto utilizzando Zilliz Cloud Web UI.
- Nel pannello di navigazione, seleziona l’opzione “Pipelines”.
- Vai alla scheda “Overview” e poi seleziona “Pipelines”.
- Fai clic su “+Pipeline” per creare una nuova pipeline.
- Scegli il tipo di pipeline
- Seleziona il pulsante “+Pipeline” per creare una nuova pipeline.
- Assicurati di creare la pipeline di ingestion prima delle pipeline di ricerca ed eliminazione.
- Configura la pipeline di ingestion
- Fai clic sul cluster in cui verrà creata la nuova collection.
- Inserisci il nome della collection appena creata.
- Fornisci un nome seguendo le restrizioni di formato.
- Descrivi la pipeline se vuoi.
- Aggiungi funzioni alla pipeline
- ·Usa la funzione INDEX_DOC poiché divide il documento in chunk più piccoli, vettorializza ciascun chunk e salva gli embedding vettoriali.
- Usa la funzione PRESERVE per aggiungere campi scalari alla collection durante l’ingestion dei dati.
- Personalizzazione della strategia di chunking
- Personalizza lo splitter per determinare come il documento viene suddiviso in chunk. Usa caratteri come “.”, “\n” o qualsiasi altra stringa personalizzata.
- Salva la configurazione della pipeline
- Dopo aver aggiunto e configurato le funzioni, ora è il momento di salvare la tua pipeline.
- Fai clic su “Create Ingestion Pipeline”.
Metodo RESTful API
Crea una pipeline di ingestion tramite API. Usa il comando curl per creare una pipeline di ingestion.
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${YOUR_API_KEY}" \
--url "https://controller.api.{cloud-region}.zillizcloud.com/v1/pipelines" \
-d '{
"projectId": "proj-xxxx",
"name": "my_doc_ingestion_pipeline",
"description": "Pipeline description",
"type": "INGESTION",
"functions": [
{
"name": "index_my_doc",
"action": "INDEX_DOC",
"inputField": "doc_url",
"language": "ENGLISH",
"chunkSize": 500,
"embedding": "zilliz/bge-base-en-v1.5",
"splitBy": ["\n\n", "\n", " "]
},
{
"name": "keep_doc_info",
"action": "PRESERVE",
"inputField": "publish_year",
"outputField": "publish_year",
"fieldType": "Int16"
}
],
"clusterId": "${CLUSTER_ID}",
"newCollectionName": "my_new_collection"
}'
- Gestione delle pipeline
- Visualizza e gestisci le pipeline
- Fai clic su “Pipelines” per vedere le pipeline disponibili insieme ai relativi dettagli e all’utilizzo dei token.
- Usa una richiesta GET tramite API per elencare o visualizzare i dettagli delle pipeline.
- Esegui le pipeline
- Per elaborare e archiviare i dati in formato vettoriale, esegui la pipeline di ingestion.
- Ora esegui la pipeline di ricerca per effettuare le ricerche semantiche.
- Utilizza la pipeline di eliminazione per rimuovere dalla collection i chunk di documenti indesiderati.
- Stima l’utilizzo della pipeline
- Puoi vedere l’utilizzo dei token per l’esecuzione delle pipeline con l’aiuto della Web UI di Zilliz.
- Elimina la pipeline
- Puoi eliminare la pipeline che non è stata utilizzata tramite API (richiesta GET) o usando la web UI.
Indicizza i documenti
Gli utenti possono inserire l’URL del documento nel campo doc_url quando si trovano nel playground della pipeline. Se desiderano ingerire il documento, faranno clic su “RUN” e il processo verrà completato. Questo passaggio converte il documento in una collection vettoriale ricercabile.
Personalizza la strategia di chunking
Con Zilliz Cloud Pipelines puoi personalizzare la strategia di suddivisione in chunk. Gli utenti possono definire la dimensione del chunk usando uno splitter, che viene utilizzato per dividere il documento in chunk. Inoltre, è possibile specificare anche separatori personalizzati per frasi, righe e paragrafi.
Scegli un modello
Scegli un modello per generare embedding vettoriali in base alla dimensione del chunk desiderata e alla dimensione complessiva del tuo documento. Zilliz Cloud Pipelines mostra il supporto con vari modelli, ciascuno con il proprio intervallo di dimensioni dei chunk.
Best Practice
- Sperimenta con diverse dimensioni dei chunk per trovare l’equilibrio ottimale tra qualità del recupero ed efficienza.
- Usa la funzionalità splitter per dividere i documenti in piccoli chunk in base a criteri specifici come paragrafi, separatori personalizzati o frasi.
- Continua a controllare l’utilizzo della pipeline e tieni presenti i limiti di Zilliz Cloud.
Suggerimenti per la risoluzione dei problemi e strategie di ottimizzazione
- Il tuo documento deve essere compatibile con la funzione INDEX_DOC.
- Per file markdown o HTML, la funzione INDEX_DOC divide il documento per intestazioni, poi in sezioni più grandi in base alla dimensione del chunk specificata. Quindi, assicurati di regolare di conseguenza la dimensione del chunk.
- Se il modello scelto non offre i risultati migliori, puoi anche sperimentare con altri modelli.
Conclusione
Zilliz Cloud Pipelines trasforma i dati non strutturati in una raccolta vettoriale ricercabile. Ha un impatto significativo sull’elaborazione dei dati e sulla ricerca semantica. Zilliz Cloud Pipelines può cercare immagini, fotogrammi video e documenti multimodali. In futuro verranno aggiunte pipeline aggiuntive per questi tipi di ricerche.
In sintesi, Zilliz Cloud Pipelines ha cambiato completamente l’elaborazione dei dati e la ricerca semantica semplificando il processo di suddivisione dei documenti in chunk e migliorandone la ricercabilità. Quando si lavora con dati non strutturati, le sue funzionalità, che includono la possibilità di creare pipeline per ingestione, ricerca ed eliminazione, lo rendono uno strumento preziosissimo per sviluppatori e data engineer. La piattaforma promette di rivoluzionare ulteriormente il modo in cui elaboriamo e cerchiamo informazioni, enfatizzando efficienza, scalabilità e facilità d’uso. Ciò incoraggia l’esplorazione e l’integrazione in diversi flussi di lavoro sui dati.
Se vuoi provare Zilliz Cloud Pipelines personalmente, prova questo bootcamp intitolato Build RAG using Zilliz Cloud Pipelines.
Continua a leggere

How Zilliz Ended Up at the Center of NVIDIA’s Unstructured Data Story at GTC 2026
If unstructured data is the context of AI, then the ceiling of AI applications will be set not just by models, but by how mature the infrastructure for unstructured data becomes.

Building RAG Pipelines for Real-Time Data with Cloudera and Milvus
explore how Cloudera can be integrated with Milvus to effectively implement some of the key functionalities of RAG pipelines.

Why Deepseek is Waking up AI Giants Like OpenAI And Why You Should Care
Discover how DeepSeek R1's open-source AI model with superior reasoning capabilities and lower costs is disrupting the AI landscape and challenging tech giants like OpenAI.


