Panduan RAG AI Edge

AI Edge RAG SDK menyediakan komponen dasar untuk membuat pipeline Retrieval Augmented Generation (RAG) dengan LLM Inference API. Pipeline RAG memberi LLM akses ke data yang disediakan pengguna, yang dapat mencakup informasi yang diperbarui, sensitif, atau khusus domain. Dengan kemampuan pengambilan informasi tambahan dari RAG, LLM dapat menghasilkan respons yang lebih akurat dan sesuai konteks untuk kasus penggunaan tertentu.

AI Edge RAG SDK tersedia untuk Android dan dapat dijalankan sepenuhnya di perangkat. Mulai menggunakan SDK dengan mengikuti panduan Android, yang memandu Anda melakukan penerapan dasar aplikasi contoh menggunakan RAG.

Pipeline RAG

Menyiapkan pipeline RAG dengan AI Edge RAG SDK berisi langkah-langkah utama berikut:

  1. Mengimpor data: Berikan data tekstual yang akan digunakan LLM saat membuat output.
  2. Membagi dan mengindeks data: Membagi data menjadi potongan kecil untuk pengindeksan dalam database.
  3. Membuat embedding: Gunakan embedder untuk memvektorkan potongan yang akan disimpan di database vektor.
  4. Mengambil informasi: Menentukan cara mengidentifikasi dan mengambil informasi yang relevan untuk menjawab perintah pengguna. Untuk perintah tertentu, komponen pengambilan menelusuri database vektor untuk mengidentifikasi informasi yang relevan.
  5. Membuat teks dengan LLM: Gunakan model bahasa besar untuk membuat teks output berdasarkan informasi yang diambil dari database vektor.

Modul Utama

AI Edge RAG SDK menyediakan modul dan API utama berikut untuk pipeline RAG:

  • Model Bahasa: Model LLM dengan API perintah terbuka, baik lokal (di perangkat) maupun berbasis server. API ini didasarkan pada antarmuka LanguageModel.
  • Model Embedding Teks: Mengonversi teks terstruktur dan tidak terstruktur menjadi vektor embedding untuk penelusuran semantik. API ini didasarkan pada antarmuka Embedder.
  • Penyimpanan Vektor: Penyimpanan vektor menyimpan embedding dan metadata yang berasal dari potongan data. Bagian ini dapat dikueri untuk mendapatkan bagian serupa atau kecocokan persis. API ini didasarkan pada antarmuka VectorStore.
  • Memori Semantik: Berfungsi sebagai pengambil semantik untuk mengambil potongan relevan top-k berdasarkan kueri. API ini didasarkan pada antarmuka SemanticMemory.
  • Pengelompokan Teks: Membagi data pengguna menjadi bagian-bagian yang lebih kecil untuk memfasilitasi pengindeksan. API ini didasarkan pada antarmuka TextChunker.

SDK menyediakan rangkaian, yang menggabungkan beberapa komponen RAG dalam satu pipeline. Anda dapat menggunakan rangkaian untuk mengatur pengambilan dan model kueri. API didasarkan pada antarmuka Chain. Untuk memulai, coba Rantai Pengambilan dan Inferensi atau Rantai Pengambilan.