RAG: Retrieval Augmented Generation

Интерактивный онлайн-семинар по архитектуре RAG

60 минут
Продолжительность
Практические примеры
Python + Yandex Models
Интерактивность
Песочница + Визуализации
Начать изучение
Прогресс семинара 0%

Структура семинара

1. Введение в RAG

Основная концепция, архитектура, компоненты RAG системы

⏱️ 10 минут

2. Векторизация

Методы эмбеддингов, Sentence Transformers, модели

⏱️ 10 минут

3. Семантический поиск

FAISS, HNSW, Annoy - сравнение алгоритмов

⏱️ 15 минут

4. Метрики качества

Recall@k, Precision@k, оценка RAG систем

⏱️ 5 минут

5. Практика

Базовый RAG-конвейер, примеры кода

⏱️ 15 минут

6. Yandex Foundation Models

Интеграция с YandexGPT, эмбеддинги, API

⏱️ 5 минут

Теоретические основы

Что такое RAG?

RAG (Retrieval-Augmented Generation) — гибридная архитектура, объединяющая механизмы поиска с генеративными языковыми моделями.

Проблема:

LLM склонны к галлюцинациям и не имеют доступа к актуальной информации

Решение:

Внешние источники знаний + генеративная модель = точные и обоснованные ответы

Архитектура RAG

┌─────────────────┐
│ Retriever │
│ (поиск данных) │
└─────────────────┘
┌─────────────────┐
│ Vector Store │
│ (база знаний) │
└─────────────────┘
┌─────────────────┐
│ Generator │
│ (генерация LLM) │
└─────────────────┘

Фазы работы RAG:

1. Индексация (Offline)

документы → чанки → эмбеддинги → векторная БД

2. Поиск и генерация (Online)

запрос → поиск → контекст → LLM → ответ

Методы векторизации и эмбеддинги

Классические

  • • One-hot encoding
  • • Bag of words
  • • TF-IDF

Современные

  • • Word2Vec
  • • BERT
  • • Sentence Transformers

SOTA модели

  • • all-MiniLM-L6-v2
  • • bge-base-en-v1.5
  • • YandexGPT Embeddings

Sentence Transformers

  • 10,000+ предобученных моделей на Hugging Face
  • ✅ Поддержка embedding, reranker, sparse encoder моделей
  • ✅ Простой API для семантического поиска
  • ✅ Оптимизация для различных задач
# Пример использования
from sentence_transformers import SentenceTransformer

model = SentenceTransformer("all-MiniLM-L6-v2")
sentences = ["Пример текста", "Другой текст"]
embeddings = model.encode(sentences)

Оценка качества поиска: Recall@k

Метрики поиска (Retrieval)

Recall@k

Доля релевантных документов среди топ-k результатов

Precision@k

Точность среди топ-k результатов

MRR

Mean Reciprocal Rank - обратный ранг первого релевантного результата

Метрики генерации

Answer Relevancy

Релевантность ответа запросу

Faithfulness

Отсутствие галлюцинаций относительно контекста

Context Relevancy

Релевантность извлеченного контекста

Формула Recall@k

Recall@k = Количество релевантных документов в топ-k / Общее количество релевантных документов
Например: если из 5 релевантных документов найдено 3 в топ-10, то Recall@10 = 3/5 = 0.6

Практические примеры

🐍 Python RAG Песочница

Загрузка Pyodide...

💡 Совет: Измените код ниже и нажмите "Запустить" для экспериментов!

Базовый пример RAG

Результат выполнения

Нажмите "Запустить код" для выполнения примера...

Интерактивная визуализация эмбеддингов

Как это работает:

Синие точки - документы в векторном пространстве
Красные точки - пользовательские запросы
Зеленые линии - связи с наиболее похожими документами
Числа - показатели семантического сходства
💡 Попробуйте:
  • • Добавьте запрос рядом с группой документов
  • • Посмотрите, как алгоритм находит похожие
  • • Обратите внимание на расстояния и сходства

Проверьте свои знания

Квиз по RAG технологиям

Проверьте, насколько хорошо вы усвоили материал семинара. 5 вопросов о ключевых концепциях RAG.

5 вопросов
О ключевых концепциях
Без ограничения
Времени на обдумывание
Мгновенный
Результат с объяснениями

Yandex Foundation Models для RAG

YandexGPT Pro

Контекст: 32,000 токенов
Качество:
Скорость:

Лучший выбор для сложных RAG задач с длинным контекстом

YandexGPT

Контекст: 8,000 токенов
Качество:
Скорость:

Сбалансированное решение для большинства RAG применений

YandexGPT Lite

Контекст: 4,000 токенов
Качество:
Скорость:

Быстрые ответы для простых RAG запросов

Конфигуратор RAG с Yandex Models

Настройки:

Сгенерированный код:

Настройте параметры и нажмите "Сгенерировать код"...

Начало работы с Yandex Foundation Models:

  1. 1. Зарегистрируйтесь в Yandex Cloud
  2. 2. Создайте сервисный аккаунт и получите API ключ
  3. 3. Установите пакет: pip install yandexcloud
  4. 4. Используйте сгенерированный код для интеграции

Поздравляем!

Вы изучили основы RAG технологии и готовы применить знания на практике

Что вы изучили:

  • Архитектуру RAG систем
  • Методы векторизации и эмбеддинги
  • Алгоритмы семантического поиска
  • Метрики оценки качества
  • Практическую реализацию RAG
  • Интеграцию с Yandex Foundation Models
Пройти еще раз

Спасибо за участие в семинаре! Удачи в изучении RAG технологий 🚀