Guida RAG AI Edge

L'SDK AI Edge RAG fornisce i componenti fondamentali per costruire una pipeline di Retrieval Augmented Generation (RAG) con l'API LLM Inference. Una pipeline RAG fornisce agli LLM l'accesso ai dati forniti dagli utenti, che possono includere informazioni aggiornate, sensibili o specifiche del dominio. Grazie alle funzionalità di recupero delle informazioni aggiuntive di RAG, gli LLM possono generare risposte più accurate e sensibili al contesto per casi d'uso specifici.

L'SDK AI Edge RAG è disponibile per Android e può essere eseguito completamente sul dispositivo. Inizia a utilizzare l'SDK seguendo la guida per Android, che ti illustra un'implementazione di base di un'applicazione di esempio utilizzando RAG.

Pipeline RAG

La configurazione di una pipeline RAG con l'SDK AI Edge RAG prevede i seguenti passaggi chiave:

  1. Importa dati: fornisci i dati di testo che l'LLM utilizzerà per generare l'output.
  2. Dividi e indicizza i dati: dividi i dati in piccoli blocchi per l'indicizzazione in un database.
  3. Genera embedding: utilizza un embedder per vettorizzare i chunk da archiviare in un database vettoriale.
  4. Recupera informazioni: definisci come vengono identificate e recuperate le informazioni pertinenti per rispondere ai prompt degli utenti. Per un determinato prompt, il componente di recupero esegue una ricerca nel database vettoriale per identificare le informazioni pertinenti.
  5. Generare testo con LLM: utilizza un modello linguistico di grandi dimensioni per generare testo di output in base alle informazioni recuperate dal database vettoriale.

Moduli chiave

L'SDK AI Edge RAG fornisce i seguenti moduli e API chiave per la pipeline RAG:

  • Modelli linguistici: i modelli LLM con API open-prompt, locali (sul dispositivo) o basati su server. L'API si basa sull'interfaccia LanguageModel.
  • Modelli di text embedding: converti il testo strutturato e non strutturato in vettori di embedding per la ricerca semantica. L'API si basa sull'interfaccia Embedder.
  • Vector Store: il vector store contiene gli embedding e i metadati derivati dai blocchi di dati. Può essere interrogato per ottenere blocchi simili o corrispondenze esatte. L'API si basa sull'interfaccia VectorStore.
  • Memoria semantica: funge da recuperatore semantico per recuperare i primi k chunk pertinenti data una query. L'API si basa sull'interfaccia SemanticMemory.
  • Chunking del testo: divide i dati utente in parti più piccole per facilitare l'indicizzazione. L'API si basa sull'interfaccia TextChunker.

L'SDK fornisce catene, che combinano diversi componenti RAG in un'unica pipeline. Puoi utilizzare le catene per orchestrare i modelli di recupero e query. L'API si basa sull'interfaccia Chain. Per iniziare, prova la catena di recupero e inferenza o la catena di recupero.