Создайте локальную RAG‑систему на базе LlamaIndex и Ollama, чтобы автоматизировать поиск по PDF‑документам и строить обоснованные ответы с помощью локально развернутой модели Mistral. Курс помогает не просто повторить шаблон, а понять, как проектировать надежный, воспроизводимый и расширяемый RAG‑конвейер для реальных задач: от обработки резюме до продакшн‑подходов.
Что вы будете делать в курсе
Вы шаг за шагом создадите локальный стек: загрузка PDF, извлечение текста, формирование структурированного JSON, разбиение на чанки, векторизация, индексирование в Elasticsearch и интерактивный поиск через Streamlit. Затем вы подключите генерацию ответов через Ollama и адаптируете систему под разные сценарии поиска.
От семантического поиска к полноценному RAG
Как работает RAG и в чём его преимущества
Вы разберетесь с концепцией Retrieval-Augmented Generation и увидите, как правильное извлечение релевантных фрагментов повышает точность и достоверность ответов LLM.
Интеграция с LlamaIndex
Логика RAG будет построена на LlamaIndex: подключение источников данных, управление чанкованием, настройка retriever’ов и моделей, а также оптимизация перекрытий и размеров чанков.
Создание конвейера обработки PDF
FastAPI как центр обработки данных
Вы реализуете API для загрузки файлов, извлечения текста, генерации JSON и отправки данных в поисковый индекс.
Автоматизация с PyMuPDF и моделями Ollama
Научитесь извлекать текст из PDF, формировать аккуратные JSON-структуры с помощью локальной Mistral, обрабатывать ошибки и создавать устойчивые промпты.
Работа с Elasticsearch
Векторные индексы и метаданные
Создадите индекс с векторными представлениями и вспомогательными полями. Освоите разницу между keyword‑поиском и векторным поиском.
Анализ результатов через Kibana
Вы сможете проверять корректность индексированных данных, исследовать точность поиска, проверять отдельные документы и визуализировать результаты.
Построение интерфейса в Streamlit
Чат с LLM и режимы отладки
Создадите чат, который будет обращается к вашему RAG‑конвейеру, покажет найденные фрагменты и позволит применять фильтры и метаданные (например, навыки или местоположение).
Оптимизация качества ответов
Тонкая настройка поиска и генерации
- регулировка размеров и перекрытий чанков;
- топ‑K выборка и гибридные фильтры;
- эксперименты с эмбеддингами и промпт‑инженерией;
- структурированные ответы в JSON для повышения стабильности.
Docker‑инфраструктура
Единый стек для локального запуска
Вы соберёте всю систему — FastAPI, Elasticsearch, Kibana, Streamlit и Ollama — в единое Docker Compose окружение, обеспечив предсказуемое развертывание и удобство разработки.
Бонус: архитектура для продакшена
Масштабирование и интеграция
- хранение файлов в data lake и обработка через очереди;
- горизонтальная масштабируемость воркеров;
- единый API для разных LLM-провайдеров: Bedrock, OpenAI, Ollama;
- переход от Streamlit к полноценному UI на React/Next.js и хранение истории диалогов.