О чём урок
Этот рецепт демонстрирует, как вы можете создать локальную гибридную систему Retrieval-Augmented Generation (RAG) с воздушным зазором, без облака, используя стандартный встроенный SQLite, официальный SDK google-genai, gemini-embedding-001 и Gemini.
Объединяя разреженный лексический поиск (через SQLite FTS5 BM25) и плотный семантический поиск (через косинусное сходство gemini-embedding-001) с использованием Reciprocal Rank Fusion (RRF, $k=60$), вы достигаете высокой точности извлечения без внешней инфраструктуры векторных баз данных.
Установите официальный SDK google-genai и настройте свой ключ API из userdata Colab.
Создайте встроенное хранилище SQLite, которое управляет плотными векторными встраиваниями наряду с виртуальной таблицей SQLite FTS5 с выровненными идентификаторами документов.
Заполните ваше хранилище SQLite образцами корпоративных документов и вычислите плотные векторные встраивания с помощью gemini-embedding-001.
Запросите хранилище, используя как поиск по ключевым словам на естественном языке, так и семантические векторные встраивания, объединяя результаты с помощью RRF ($k=60$).
Предоставьте извлеченный контекст Gemini с помощью структурированных системных инструкций, чтобы обеспечить фактические ответы, обоснованные маркерами цитирования в скобках.
Чтобы изучить дополнительные возможности Gemini и Google GenAI SDK:
- Изучите Документацию Google GenAI SDK Python для получения дополнительных параметров API и мультимодальных входных данных.
- Ознакомьтесь с Обзором Gemini API, чтобы узнать о возможностях модели и окнах контекста.
- Посетите Репозиторий Google Gemini Cookbook для получения дополнительных рецептов по структурированным выходным данным, вызову функций и архитектурам RAG.
План урока
- Обзор
- Предварительные условия и настройка
- Инициализация гибридного хранилища RAG SQLite
- Прием документов с встраиваниями
- Выполнение гибридного поиска с объединением обратных рангов
- Синтез обоснованных ответов с Gemini
- Что дальше
Урок входит в полный доступ. Полный текст и видео открываются после оплаты. Первые уроки каждого курса бесплатны.