80 часов разработки, Redis, кастомные эмбеддинги, ручное формирование саммари. Так выглядел наш RAG-бот для клиентской поддержки. А потом мы загрузили те же документы в Gemini API, написали 10 строк кода и получили 80% того же результата. Бесплатно. Рассказываю, как это устроено и где подвох.
Gemini File Search - это встроенный в Gemini API инструмент, который превращает ваши документы в базу знаний для нейросети. Загружаете файлы, Gemini сам разбивает их на фрагменты, создает эмбеддинги, хранит в векторной базе, а при запросе находит нужное и генерирует ответ с цитатами. Без Pinecone, без ChromaDB, без LangChain. По сути - нейросеть по документам из коробки.
Что такое RAG и зачем он нужен бизнесу
RAG (Retrieval Augmented Generation) решает главную проблему ИИ-ботов для бизнеса: модель не знает ваших данных. Вы можете спросить ChatGPT или Gemini про что угодно из открытых источников, но про ваш внутренний регламент, прайс-лист или техническое задание он не ответит. Или ответит неправильно, придумав несуществующие факты.
RAG работает так: перед генерацией ответа система ищет в ваших документах фрагменты, которые относятся к вопросу. Найденные фрагменты добавляются в контекст. Модель отвечает, опираясь на реальные данные из вашей базы знаний, а не на свои фантазии.
Раньше для этого нужно было: разбить документы на куски, сгенерировать эмбеддинги, сохранить в векторную базу данных, написать поиск по сходству, собрать промпт с найденными фрагментами, отправить модели. Шесть шагов, каждый с нюансами. Gemini File Search делает все шесть за вас.
Как это работает: три шага вместо шести
Шаг 1: создаете хранилище (File Search Store). Это контейнер для ваших документов. Данные хранятся постоянно, пока вы сами их не удалите. Это не временные файлы, которые исчезают через 48 часов.
Шаг 2: загружаете документы. PDF, DOCX, TXT, JSON, CSV, XLSX, PPTX, HTML, Markdown, исходный код на Python, JavaScript, Java, C++ и десятки других форматов. До 100 МБ на файл. Gemini сам разбивает документ на куски, генерирует эмбеддинги через модель gemini-embedding-001 и индексирует.
Шаг 3: задаете вопрос через Gemini API. Вызываете обычный generateContent с включенным инструментом File Search и указанием хранилища. Gemini сам решает, нужен ли поиск по документам. Если нужен, генерирует поисковые запросы, находит релевантные фрагменты, подставляет их в контекст и отвечает. В ответе приходят цитаты: какие фрагменты из каких документов использованы.
Вот и всё. Никаких внешних зависимостей, никакой инфраструктуры.
Что нас зацепило
Цена: Хранение документов и генерация эмбеддингов при каждом запросе бесплатны. Платите только за первичную индексацию: $0.15 за 1 млн токенов. Плюс обычная стоимость запросов к Gemini API. Для базы знаний на 500 страниц документации индексация обойдется в несколько центов.
Цитаты из коробки: Ответ содержит метаданные: какой фрагмент из какого документа использован. Для ИИ-бота поддержки это критически важно: клиент видит, что ответ не выдуман, а взят из реального документа.
Фильтрация по метаданным: При загрузке можно добавить документу теги (проект, категория, дата). При запросе можно фильтровать: «ищи только в документах проекта IDDIS». Это решает проблему, когда в базе знаний документы от разных клиентов и нужно, чтобы бот не смешивал контексты.
Скорость: поиск по корпусу с тысячами документов занимает менее 2 секунд. Для чат-бота на сайте это приемлемо.
Практический пример: ИИ-бот по проекту
Загрузили в File Search Store: техническое задание проекта (PDF, 40 страниц), дизайн-систему (Markdown), протокол последнего созвона с клиентом (DOCX), чеклист перед запуском (TXT).
Спрашиваем: «Какие требования к каталогу товаров в мобильной версии?»
Gemini находит нужные фрагменты в ТЗ и дизайн-системе, формирует ответ с указанием конкретных пунктов документа. Разработчик получает точный ответ за 2 секунды вместо 10 минут листания PDF.
Спрашиваем: «Что клиент просил изменить на последнем созвоне?»
Нейросеть по документам находит фрагменты в протоколе встречи и выдает список пунктов с цитатами. Менеджер не перечитывает весь протокол, а сразу видит суть.
Где File Search работает, а где нет
Работает отлично: база знаний для чат-бота поддержки (FAQ, регламенты, инструкции), поиск по технической документации проекта, ответы на вопросы по ТЗ и договорам, анализ загруженных отчетов.
Работает с оговорками: очень длинные документы (300+ страниц) без четкой структуры. Если документ - сплошной текст без заголовков, модель может пропустить нужный фрагмент. Сложные таблицы с формулами тоже извлекаются хуже, чем обычный текст.
Не подходит: если нужен поиск по данным в реальном времени (цены, наличие товара, статус заказа). File Search работает по индексированным документам, а не по live-данным. Для этого нужен кастомный RAG с подключением к базе данных или API.
Кастомный RAG vs Gemini File Search
Мы два года строили свою систему: Redis для хранения сообщений, ручное формирование саммари каждые 300 сообщений, поиск по ключевым словам. Это работает, но требует постоянной поддержки.
Кастомный RAG дает полный контроль: можно подключить любой источник данных (Redis, MySQL, API), работать с любой моделью, настроить логику поиска под свои задачи. Минус: 80+ часов разработки, нужно поддерживать инфраструктуру, самостоятельно управлять чанкингом и эмбеддингами.
Gemini File Search дает 15 минут до работающего прототипа. Не нужна инфраструктура, бесплатное хранение, цитаты из коробки, поддержка десятков форматов файлов. Минус: только Gemini API (нельзя использовать с Claude или GPT), данные хранятся на серверах Google, ограниченный контроль над чанкингом, не совместим с Live API и другими инструментами Gemini (Google Search grounding, URL context) в одном запросе.
Для нового проекта, где нужна нейросеть по документам или ИИ-бот для бизнеса, я бы начал с File Search. Если потребуется больше контроля - можно перейти на кастомное решение. Но для 80% задач File Search достаточно.
Ограничения, о которых стоит знать
Приватность. Документы хранятся на серверах Google. Для внутренних регламентов и ТЗ это допустимо, для персональных данных клиентов или финансовых документов - решайте сами.
Лимиты. До 100 МБ на файл, рекомендованный размер хранилища - до 20 ГБ. Для большинства компаний более чем достаточно.
Совместимость. File Search работает только с моделями Gemini. Нельзя подключить к Claude или GPT. Не работает с Gemini Live API.
Кому подходит
Если вы хотите сделать чат-бот для сайта, который отвечает по вашим документам, и вам не нужен полный контроль над инфраструктурой - начните с Gemini File Search. Это буквально 15 минут до работающего прототипа.
Если у вас уже есть кастомный RAG и он работает, смысла переходить нет. Но для нового проекта или быстрого прототипа File Search экономит недели разработки.
Мы планируем использовать его для базы знаний по новым проектам: загружать ТЗ, дизайн, протоколы встреч и давать команде возможность спрашивать ИИ-бота вместо того, чтобы искать информацию вручную. Индексация через Gemini API стоит копейки, хранение бесплатное, а ответы с цитатами решают главную проблему RAG-ботов - доверие к ответу.