Автономные
интеллектуальные системы

Решение

Локальный RAG: поиск и ответы по корпоративным документам без облака

RAG-система (Retrieval-Augmented Generation), развернутая внутри инфраструктуры заказчика. Сотрудник задает вопрос на естественном языке, ИИ ищет ответ в корпоративной базе знаний и возвращает результат со ссылками на источники. Без облака, без передачи документов наружу, на обычных серверах.

  • Поиск и ответы по внутренней документации
  • Ссылки на исходные документы в каждом ответе
  • Режим «только поиск» без генерации текста
  • Работа без интернета и в закрытом контуре
  • Запуск на CPU, без GPU-инфраструктуры

Что это

Что такое RAG и зачем он бизнесу

RAG - Retrieval-Augmented Generation - это архитектура, в которой языковая модель не пытается «знать все», а извлекает ответ из внешней базы документов. Когда сотрудник задает вопрос, система сначала ищет релевантные фрагменты в корпоративной базе знаний, и только потом формирует ответ на основе найденного. Это принципиально отличается от обычного ChatGPT, который генерирует текст из своих весов и не может сослаться на источник.

Для бизнеса RAG решает три задачи. Первая - снижает галлюцинации: ответ основан на конкретных документах, а не на «обобщенном знании» модели. Вторая - дает проверяемость: к каждому ответу прилагается ссылка на пункт регламента, страницу инструкции, статью базы знаний. Третья - позволяет работать с актуальной информацией: документы обновляются, индекс пересчитывается, модель остается прежней.

Локальный RAG - это RAG, развернутый в инфраструктуре заказчика. Документы не покидают периметр, индекс хранится локально, модель работает на собственных серверах. Это подходит для регулируемых отраслей и компаний с чувствительными данными.

Отличия

Чем локальный RAG отличается от облачного ChatGPT-ассистента

Локальный RAG

  • Документы остаются в контуре заказчика
  • Ответы со ссылками на конкретные пункты документов
  • Модель работает без интернета и облака
  • База знаний обновляется без переобучения модели
  • Полный контроль ИБ-службы заказчика

Облачный ChatGPT-ассистент

  • Документы и вопросы уходят во внешний API
  • Ответы без ссылок на источник, риск галлюцинаций
  • Зависимость от внешнего сервиса и интернета
  • Сложности с обновлением и контролем актуальности
  • Передача данных третьему лицу - ограничения по политике ИБ

Архитектура

Как устроен локальный RAG

Документы собираются из источников: сетевые папки, СЭД, базы знаний, корпоративные порталы. Сначала каждый документ проходит предобработку: извлекается текст, нормализуется разметка, выделяются метаданные (тип, автор, дата, тематика). Затем документ разбивается на семантические фрагменты - параграфы или короткие блоки - и для каждого считается векторное представление (эмбеддинг).

Векторы хранятся в локальной векторной базе данных (например, pgvector, Qdrant или FAISS-индексе на диске). Когда сотрудник задает вопрос, его текст тоже превращается в вектор, и система ищет ближайшие фрагменты по смыслу. Это работает гораздо лучше обычного полнотекстового поиска, особенно для запросов на естественном языке.

Найденные фрагменты подаются на вход языковой модели вместе с инструкцией: «ответь на вопрос, опираясь только на эти фрагменты, и укажи источник». Модель формирует короткий, проверяемый ответ. Для критичных сценариев включается режим «только поиск»: система возвращает релевантные фрагменты без генерации, что полностью исключает галлюцинации.

Выбор

Когда RAG, а когда дообучение модели

RAG подходит, когда база знаний регулярно обновляется, когда нужны ссылки на источники, и когда требуется быстро добавить документы без переобучения модели. Это стандартный выбор для корпоративных баз знаний, нормативной документации, технических инструкций и описаний продуктов.

Дообучение (fine-tuning, LoRA) подходит, когда нужно изменить стиль или формат ответа, научить модель специфической терминологии или нестандартному поведению. Это медленнее и дороже, но позволяет получить очень узкоспециализированную модель.

В реальных проектах RAG и дообучение часто комбинируются: модель дообучается под стиль ответа и предметную лексику, а актуальные знания подгружаются через RAG. На этапе аудита мы определяем, какая комбинация даст лучший результат при минимальных затратах.

Производительность

Объемы и скорость

Сколько документов

  • Тысячи и десятки тысяч документов - на обычном сервере
  • Сотни тысяч страниц - с шардингом индекса
  • Регулярное обновление по расписанию или событиям
  • Несколько индексов под разные группы доступа

Скорость и инфраструктура

  • Поиск - десятки миллисекунд на запрос
  • Ответ модели - секунды на CPU, доли секунды на GPU
  • Параллельные пользователи - настраивается под нагрузку
  • Хранилище - обычные SSD, без распределенных кластеров

Часто задаваемые вопросы

Частые вопросы про локальный RAG

Что такое RAG простыми словами?

RAG - это связка «поиск + языковая модель». Когда пользователь задает вопрос, система сначала ищет ответ в ваших документах, и только потом просит модель сформулировать его на естественном языке. В результате ответ основан на конкретных документах, а не на «общем знании» модели, и сопровождается ссылкой на источник.

Чем RAG отличается от обычного ChatGPT?

Обычный ChatGPT отвечает из своих весов, не имеет доступа к вашим документам и часто галлюцинирует - выдумывает факты. RAG отвечает строго на основе найденных фрагментов из вашей базы знаний, ссылается на источник, и его поведение можно контролировать (например, отказать в ответе, если ничего релевантного не найдено).

Можно ли запустить RAG на CPU без видеокарты?

Да. Поиск по векторной базе работает на CPU без проблем. Языковая модель - это вопрос компромисса между скоростью ответа и размером модели. Малые модели (3–8B параметров) с квантованием уверенно работают на CPU за 2–10 секунд на ответ. Для большего числа параллельных пользователей или более сложных моделей подключается GPU.

Сколько документов можно загрузить?

Для типового сценария - десятки тысяч документов на одном сервере. При шардинге индекса - сотни тысяч страниц. Технологически ограничений практически нет, ограничения возникают по времени переиндексации и доступной оперативной памяти. На этапе аудита считаем нужный объем под ваш сценарий.

Как RAG обновляется при изменении документов?

Обновление работает по событию или по расписанию. Когда документ добавляется или меняется, система его перечитывает, разбивает на фрагменты и обновляет вектора. Модель при этом не переобучается - это сильное преимущество RAG перед дообучением. Полное обновление индекса занимает минуты-часы в зависимости от объема.

Что такое векторная база данных?

Это специализированное хранилище, которое умеет искать «по смыслу», а не по совпадению слов. Каждый фрагмент документа представлен числовым вектором длиной несколько сотен значений, и поиск возвращает ближайшие векторы к вектору запроса. На практике используется pgvector (расширение PostgreSQL), Qdrant, Milvus или FAISS-индекс на диске.

Можно ли разграничить доступ к документам?

Да, и это критично для корпоративного RAG. Документы помечаются ролями или группами доступа, и при поиске фильтруются по правам текущего пользователя. Сотрудник увидит только те фрагменты, к которым у него есть доступ. Это интегрируется с существующей системой управления правами заказчика.

Что делать, если RAG не нашел ответ?

В правильной архитектуре RAG умеет отказывать: если ни один фрагмент не релевантен запросу, система возвращает «ответ не найден» и предлагает альтернативы (похожие документы, контакт ответственного, переформулировку запроса). Это намного лучше галлюцинации и важно для серьезных корпоративных сценариев.

Заявка

Запустить пилот локального RAG

Расскажите, какая база знаний и какие пользователи - вернемся с предложением.

Что лучше приложить к заявке

  • Какой тип и объем документов в базе знаний.
  • Сколько пользователей и каких ролей.
  • Где сейчас хранятся документы (СЭД, файловые папки, портал).
  • Какая инфраструктура доступна для развертывания.