Інтеграція LlamaIndex для RAG-пайплайнів в мобільному додатку
RAG (Retrieval-Augmented Generation) вирішує фундаментальний дефект LLM: модель не знає ваших даних. LlamaIndex — це спеціалізований RAG фреймворк на відміну від широкого охоплення LangChain. Парсинг документів, чанкинг, індексування, retrieval — LlamaIndex обробляє глибше.
Архітектура RAG для мобільного додатку
Мобільний клієнт працює з backend через REST API. LlamaIndex живе на сервері, обробляючи весь цикл: індексування документів → retrieval по запиту → генерація відповіді з контекстом.
Індексування документів
LlamaIndex парсить PDF, Word, Notion, Google Docs, HTML через SimpleDirectoryReader або спеціалізовані ридери. Чанкинг — фрагментація документу для індексування.
Конфігуруйте: модель embedding (OpenAI Embeddings), LLM (gpt-4o-mini), node parser (SentenceSplitter з розміром/перекриттям чанка), векторне сховище (PGVector або Pinecone).
Розмір чанка критичний. 512 токенів пасує документацію з різноманітними розділами. Довгий нараативний текст — 1024–2048 з більшим перекриттям (100–200 токенів).
Продвинутий retrieval: проблеми та рішення
Наївний RAG — топ-K по cosine similarity — часто повертає нерелевантні чанки на складних питаннях. LlamaIndex пропонує стратегії:
Гібридний пошук (BM25 + вектор): ключові слова для точного пошуку, embeddings для семантики. Допомагає з специфічними термінами (артикули, імена, дати).
Re-ranking: первинний retrieval повертає топ-20, cross-encoder переранжирує, залишає топ-4. Cohere Rerank — керована опція, cross-encoder/ms-marco-MiniLM-L-6-v2 — open-source.
HyDE (Hypothetical Document Embeddings): генеруйте гіпотетичну відповідь перед retrieval, шукайте по її embedding замість embedding питання. Працює коли питання та документи сформульовані по-різному.
Мультидокументний retrieval та routing
Якщо база знань розділена по типам (політики, інструкції, FAQ) — router спрямовує запит до правого під-індексу. Зменшує шум у retrieved контексті.
Оновлення індексу
Документи змінюються. Стратегії оновлення: повна переіндексація (дешево для малих корпусів, щодня), інкрементальне додавання нових документів, видалення старих за метаданими. LlamaIndex підтримує refresh_ref_docs() для інкрементального оновлення без повної перебудови.
Процес
Аудит документальної бази → вибір стратегії чанкинга → індексування → налаштування retrieval pipeline → A/B тест наївного vs гібридного пошуку → API для мобільного клієнта.
Орієнтири за часом
Базовий RAG з pgvector — 3–5 днів. Гібридний пошук з реранкером — 1–2 тижні. Мультидокументний router з інкрементальним оновленням — 2–3 тижні.







