Простой запуск RAG…

Мой рабочий пример. С простым запуском. Стек: FAISS + GigaChat + Amvera

RAG — это не магия и не «агент с 15 библиотеками».

Это три вещи:

— векторный поиск — LLM — строгий промпт

Ниже — мой реальный рабочий пример Telegram-бота на FAISS + GigaChat API, который отвечает строго по юридическим документам.

Без overengineering. Без лишних абстракций. Простой и понятный пайплайн.

Как работает схема

Логика максимально прозрачная:

1. Пользователь задаёт вопрос 2. Мы ищем релевантные документы через FAISS 3. Формируем жёсткий промпт 4. Передаём контекст в GigaChat 5. Возвращаем ответ

Всё.

Никаких агентов. Никакой «магии». Только retrieval + генерация.

Почему я выбрал GigaChat

Выбор модели — это всегда инженерное решение, а не «что моднее».

Я выбрал GigaChat по нескольким причинам:

— не нужен VPN — простое подключение через API — отлично работает с русским языком из коробки — понятная и прозрачная тарификация — 50 000 токенов бесплатно на старте

Для проектов на русском языке это огромный плюс. Не нужно городить прокси, VPN, пляски с доступами.

Просто подключил — и работает.

Для MVP и production в РФ — это удобное и стабильное решение.

Векторная база (FAISS)

Сердце RAG — это embeddings.

Я использую модель:

sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2

Почему:

— поддержка русского — лёгкая модель — не требует GPU — работает стабильно

Документы:

— очищаются — режутся на чанки — преобразуются в embeddings — сохраняются в FAISS

При запросе пользователя выполняется similarity search (top-5).

Если база знаний плохая — RAG не спасёт. Качество начинается с источников.

Самое важное — промпт

LLM должна быть ограничена.

Я жёстко задаю правила:

— отвечай только на основе документов — если информации нет — так и скажи — указывай источники — не придумывай

Без строгого промпта RAG превращается в фантазирующий чат.

RAG = 50% retrieval + 50% prompt engineering.

Telegram через aiogram

Бот построен на aiogram.

Важно:

— проверять, что база загружена — проверять, что LLM подключена — логировать ошибки — не падать при сбоях — показывать typing

Надёжность — это мелкие детали.

Почему я использую Amvera Cloud

Инфраструктура должна быть простой.

Я выбрал Amvera по нескольким причинам:

— простой деплой Python-приложения — быстрый запуск без сложного DevOps — сразу дают доменное имя, если нужно — встроенный VPN — скачивание библиотек не вызывает проблем

Это снижает порог входа.

Вы не тратите время на борьбу с окружением. Вы запускаете сервис.

Для RAG-бота этого более чем достаточно.

Почему это production-подход

Потому что:

— retrieval отделён от генерации — база знаний контролируется — модель не «гуляет по интернету» — архитектура прозрачна — система масштабируема

Это не игрушка. Это управляемый AI-сервис.

Итог

RAG — это не про сложность.

Это про дисциплину:

— чистые документы — правильная нарезка — хорошие embeddings — строгий промпт — понятная инфраструктура

Мой пример — это простой, рабочий RAG-бот.

Без магии. Без лишних слоёв. Только инженерия.

👉 https://t.me/manager_dot_exe Про архитектуру, AI и системное мышление в IT.

Простой запуск RAG… | Сетка — социальная сеть от hh.ru