Чёрный пояс 1С. ИИ-помощник по остаткам без утечки коммерческих данных: RAG, прокси и Read-Only копия
«Покажи отгрузку дизельного топлива по Уральскому региону за июль» — топ-менеджмент хочет получать такие ответы из чата, а не из отчёта СКД. Задача выглядит как обычная интеграция с LLM, пока не всплывает условие: реальные коммерческие данные в облачную нейросеть передавать категорически нельзя. Здесь и начинается архитектура, а не просто вызов API.
Легенда практического занятия
Руководство требует внедрить ИИ-помощника, генерирующего и исполняющего SQL-запросы к рабочей базе по текстовому запросу на естественном языке. Передача коммерческих данных в облачные LLM запрещена. Нужна архитектура защищённой интеграции 1С с когнитивным контуром на базе Model Context Protocol (MCP) и паттерна RAG.
Задание
- Спроектируйте RAG-архитектуру интеграции с YandexGPT API: как загружаются документы базы знаний, создаётся векторный индекс, инициализируются сессии.
- Предложите архитектуру шлюза (прокси на Python/Go с OAuth2/Basic Auth) между Claude Desktop и веб-сервером 1С.
- Опишите двойную валидацию безопасности: пропуск только SELECT-запросов на прокси и Read-Only исполнение на копии базы.
- Объясните роль MCP в устранении галлюцинаций ИИ о структуре метаданных.
1. Где проходит граница безопасности
Первое, что нужно зафиксировать архитектурно: контекст для ответа ИИ должен извлекаться строго из проиндексированных файлов базы знаний, а не из живого диалога с моделью, которая может достраивать факты. В RAG-схеме на YandexGPT API 1С через API управляет логическими сущностями в облаке: каталог (folderId), загружаемые документы (File), векторный поисковый индекс (Search Index), сконфигурированный профиль (Assistant), ветки общения (Threads), сообщения пользователя (Message) и асинхронные задачи исполнения (Run). Эта связка сама по себе снижает риск галлюцинаций — но не решает вопрос коммерческой тайны: в облако всё ещё уходит текст запроса пользователя.
2. Прокси-шлюз — граница, которую нельзя обходить
Реальные данные не должны покидать периметр компании. Архитектурное решение — закрытый прокси-сервер (по образцу проектов вроде 1c_mcp), который:
- реализует безопасный транспорт
stdioдля клиента ИИ (Claude Desktop, Cursor) внутри периметра — модель никогда не обращается к 1С напрямую по сети; - выполняет OAuth2 или Basic Auth авторизацию HTTP-сервисов 1С — у прокси есть учётные данные, у модели их нет;
- отрезает любые деструктивные конструкции запроса —
INSERT,UPDATE,DROP,Выполнить,Вычислить— пропуская в 1С исключительноSELECT/ВЫБРАТЬ.
default.vrd и полагаться только на фильтрацию запроса на стороне модели («промптом попросили не удалять данные»). Промпт — не граница безопасности. Граница — прокси, который физически не пропустит ничего, кроме SELECT, независимо от того, что сгенерировала модель.3. Двойная валидация: прокси плюс Read-Only копия
Первый рубеж — синтаксический разбор на стороне прокси, пропускающий только чтение. Второй рубеж — на стороне самой 1С: принятый запрос выполняется строго через объект Запрос с принудительной установкой свойства:
Запрос.ИспользованиеКопийБазыДанных = ИспользованиеКопийБазыДанных.ИспользоватьТолькоКопии;
Это гарантирует, что тяжёлый аналитический запрос ИИ-агента физически не сможет заблокировать транзакционную СУБД — он обрабатывается Дата акселератором или аналитической копией Postgres/Oracle, а не основной базой, где идёт проведение документов.
4. Зачем здесь MCP, если прокси уже есть
Model Context Protocol решает отдельную проблему — не безопасность, а галлюцинации о структуре. Модель может знать SQL в целом и ничего не знать о конкретной конфигурации: какие поля есть у регистра, как называется измерение «Регион» на самом деле. Серверы вроде mcp-1c дают агенту инструменты для автоматического исследования дерева метаданных (например, get_object_structure), поиска по коду модулей с поддержкой двуязычных BSL-синонимов (трансляция StrFind ↔ СтрНайти) и семантического RAG-поиска по структуре метаданных. MCP-слой и прокси-слой безопасности — независимые контуры: один отвечает за то, чтобы ИИ не выдумывал структуру данных, второй — за то, чтобы даже корректный запрос не мог навредить.
Что проверить у себя на проекте
- Есть ли у вас реальный физический рубеж (прокси + флаг копии базы), или защита держится на инструкции в системном промпте.
- Проверяли ли вы, что происходит, если модель сгенерирует синтаксически валидный, но семантически деструктивный SELECT (например, с тяжёлым JOIN на миллионы строк) — Дата акселератор или аналитическая копия должны выдержать это без влияния на прод.
- Разделены ли у вас слой борьбы с галлюцинациями (MCP, метаданные) и слой безопасности данных (прокси, Read-Only) — смешение этих задач в одном компоненте обычно и порождает архитектурные дыры.
Создать токен →