L'SDK AI Edge RAG fornisce i componenti fondamentali per creare una pipeline di Retrieval-Augmented Generation (RAG) con l'API di inferenza LLM. Una pipeline RAG fornisce agli LLM l'accesso ai dati forniti dagli utenti, che possono includere informazioni aggiornate, sensibili o specifiche del dominio. Con le funzionalità di recupero delle informazioni aggiuntive della RAG, gli LLM possono generare risposte più accurate e sensibili al contesto per casi d'uso specifici.
L'SDK RAG AI Edge è disponibile per Android e può essere eseguito completamente sul dispositivo. Per iniziare a utilizzare l'SDK, consulta la guida per Android, che illustra la procedura di implementazione di base di un'applicazione di esempio che utilizza RAG.
Pipeline RAG
La configurazione di una pipeline RAG con l'SDK RAG AI Edge prevede i seguenti passaggi chiave:
- Importa dati: fornisci i dati di testo che l'LLM utilizzerà per generare l'output.
- Suddividi e indicizza i dati: suddividi i dati in piccoli blocchi per l'indicizzazione in un database.
- Genera embedding: utilizza un embedder per vettorizzare i chunk da archiviare in un database vettoriale.
- Recupero delle informazioni: definisci in che modo vengono identificate e recuperate le informazioni pertinenti per rispondere alle richieste degli utenti. Per un determinato prompt, il componente di recupero esamina il database vettoriale per identificare le informazioni pertinenti.
- Genera testo con LLM: utilizza un modello linguistico di grandi dimensioni per generare testo di output in base alle informazioni recuperate dal database di vettori.
Moduli principali
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 incorporamento del testo: converti il testo strutturato e non strutturato in vettori di incorporamento per la ricerca semantica. L'API si basa sull'interfaccia Embedder.
- Vector Store: il vector store contiene gli embedding e i metadati derivati dai chunk di dati. È possibile eseguire query per ottenere chunk simili o corrispondenze esatte. L'API si basa sull'interfaccia VectorStore.
- Memoria semantica: funge da retriever semantico per recuperare i chunk pertinenti di k elementi principali in base a una query. L'API si basa sull'interfaccia SemanticMemory.
- Suddivisione del testo: suddivide i dati utente in pezzi più piccoli 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 deduzione o la catena di recupero.