Каждый второй разговор про AI в 1С начинается с двух полюсов: «это магия, скоро заменит всех программистов» или «это игрушка, к проду не подпустим». Оба полюса мимо. AI-разработка 1С — это не магия и не игрушка, это рабочий инструмент, у которого есть конкретный механизм и конкретные границы. В этой статье разбираем механизм, границы и роль разработчика — без хайпа, без маркетинга. Просто что это и как оно устроено.
Развернуть полный ответ AI на этот промпт (без редактуры)
Найдено 2 явных случая запросов в циклах
Антипаттерны в коде 1С — примеры, которые ИИ находит сразу
Случай 1 — запрос остатков по характеристикам внутри цикла по табличной части
Случай 2 — .ПолучитьОбъект() внутри цикла по выборке
Ссылка.ПолучитьОбъект() визуально не похож на запрос, но платформа лезет в таблицу справочника и тянет ВСЕ реквизиты — это полноценный запрос к БД на каждой итерации.
Почему это плохо для производительности
1. Количество round-trip'ов растёт линейно с числом итераций.
N строк = N+1 сетевых вызовов к серверу 1С. На клиент-серверной базе каждый вызов — это сериализация параметров, передача по сети, разбор на сервере, ожидание ответа. На наборе в 1000 строк вы получите 1000 раздельных задержек вместо одной.
2. Накладные расходы платформы платятся на каждый запрос.
Парсинг текста запроса, проверка прав доступа RLS, построение плана, открытие/закрытие курсора СУБД — всё это повторяется N раз. По факту полезная работа занимает 5% времени, остальное — оверхед.
3. Виртуальные таблицы регистров считаются заново каждый раз.ОстаткиНоменклатуры.Остатки(...) — это не таблица, а вычисление: платформа берёт срез итогов и накатывает движения с момента последнего рассчитанного итога. Если делать это в цикле для одной номенклатуры за раз, расчёт повторяется N раз. Один запрос с условием Номенклатура В (&МассивНоменклатуры) выполняет тот же расчёт ОДИН раз для всего набора — обычно в 10–50 раз быстрее.
4. Блокировки удерживаются дольше и берутся чаще.
В транзакции каждый отдельный запрос берёт свои S-блокировки на читаемые таблицы. Сотни мелких запросов = сотни захватов/освобождений блокировок вместо одного покрывающего. Шанс на дедлок и таймаут блокировки растёт.
5. .ПолучитьОбъект() тянет ВСЁ — включая табличные части и хранилища значений.
Даже если в цикле нужны 2 реквизита, платформа загружает весь объект целиком. На справочниках с большими ТЧ (например, номенклатура с характеристиками) это убивает производительность само по себе, а в цикле — катастрофически.
6. Память тоже страдает.
Каждый Новый Запрос + результат — это аллокация на сервере. Сборщик мусора 1С работает порциями, и в долгих циклах память не освобождается до выхода из метода. Можно упереться в лимит памяти рабочего процесса.
Правильный подход
Собрать ключи ДО цикла → выполнить ОДИН запрос → работать с таблицей в памяти.
Эффект: вместо N запросов — 1 запрос. На реальных данных это превращает 30 секунд в 0.5 секунды.
Универсальное правило
Внутри цикла не должно быть ни Новый Запрос, ни .ПолучитьОбъект(), ни НайтиПоНаименованию/Коду/Реквизиту, ни Менеджеры.Х.Выбрать() с фильтром по элементу цикла. Всё это — скрытые или явные обращения к БД. Данные собирай одним запросом ДО цикла, в цикле работай только с памятью.
ИИ-агент — это не ChatGPT в браузере
Первое и главное недоразумение: когда говорят «AI в разработке», часто представляют чат-окно ChatGPT, в которое нужно вручную копировать код туда-сюда. Это не AI-разработка. Это копипаст с подсказками — полезно, но недалеко уехало.
AI-разработка строится на AI-агенте — программе, которая запускается в терминале и работает в вашем проекте напрямую: читает файлы, правит файлы, запускает команды, проверяет результат. Разработчик ставит задачу одной фразой — агент сам разбирается с десятками файлов конфигурации.
Самые известные AI-агенты на сегодняшний день — Codex CLI от OpenAI и Claude Code от Anthropic. У нас в команде B2C работают оба, на разных задачах. Подробное сравнение — в статье «Codex CLI и Claude Code — два инструмента, которыми мы пишем 1С каждый день».
Принципиальная разница с чатом в браузере: разработчик видит каждое действие агента и подтверждает критичные операции. Это не «нажал кнопку и ушёл», это совместная работа в режиме «я ставлю задачу — агент делает — я проверяю и иду дальше».
Откуда ИИ знает вашу 1С — три источника контекста
Главный вопрос, который задают руководители: «А откуда он вообще знает нашу конфигурацию? У нас же там специфика, отраслевая, реквизит ВнешнийКодПоставщика, регистр ЦеныКонкурентов…»
Ответ простой: AI знает ровно то, что ему дают через три канала контекста.
- Источник 1 — исходники конфигурации. Это файлы вашей 1С, выгруженные в текстовый формат через 1С:EDT. Подробнее в статье «1С:EDT и почему без него AI бесполезен». AI читает их напрямую, видит структуру справочников, реквизиты, модули, формы.
- Источник 2 — документация платформы 1С. Стандарты разработки, методы платформы, библиотека стандартных подсистем (БСП). Это даётся через MCP-серверы — отдельный механизм передачи контекста (см. статью «Что такое MCP-сервер»).
- Источник 3 — библиотека готовых решений. В нашем стеке это собственный MCP-сервер с базой из более 300 обработок (с Infostart, типовых из УТ/УНФ/БП и общих модулей БСП — база растёт еженедельно), 21 паттерном кода в 5 категориях, 180+ диагностиками BSL Language Server. AI не пишет с нуля — он находит готовое и адаптирует.
Главное следствие: AI не «знает 1С от рождения». Он читает то, что ему дают. С грамотно подключёнными каналами контекста — пишет код под ВАШУ конфигурацию, с учётом ВАШИХ реквизитов и регистров. Без — пишет «по среднему», и качество резко падает.
1c-metadata из Claude Code: AI получает структурированные данные о диагностике BSL Language Server — CreateQueryInCycle, severity CRITICAL, тег PERFORMANCE.Развернуть полный ответ AI про эту диагностику (без редактуры)
Диагностика CreateQueryInCycle
| Название (RU) | Выполнение запроса в цикле |
| Тип | ERROR |
| Severity | CRITICAL |
| Тег | PERFORMANCE |
| Время на исправление | ~20 минут |
| Включена по умолчанию | Да |
Что это простыми словами
Статический анализатор кода (BSL Language Server) находит места, где внутри цикла (Для … Цикл, Пока … Цикл) создаётся и выполняется новый запрос к базе данных. Это считается критической ошибкой — не предупреждением, не стилистическим замечанием, а именно ошибкой уровня ERROR, которая блокирует код-ревью в любой нормальной команде 1С.
Пример из самой диагностики
Плохо — для каждого документа отдельный запрос:
Хорошо — один запрос, фильтр через В (&Список):
Один запрос вместо N. Часто СУБД к тому же сама сделает суммирование (СУММА(...)) — это вообще одна цифра вместо N строк.
Почему критично (уровень ERROR, а не Warning)
1. Деградация нелинейная — но линейная по итерациям.
Запрос в цикле работает приемлемо на 10 строках в тестовой базе и убивает прод на 50 000. Ошибка часто проходит ревью и тестирование, потому что разница не заметна на маленьких данных. А в проде — таймаут, регламентное задание не успевает, пользователь жмёт F-кнопку и уходит на обед.
2. Это самая частая причина «1С тормозит».
По статистике аудитов производительности от Центра компетенции 1С это причина №1 жалоб «всё медленно». В 70–80% случаев расследования «почему обработка идёт 40 минут» — это именно запрос в цикле.
3. Эффект множится с количеством пользователей.
Один пользователь с медленной операцией — это медленный пользователь. Десять параллельных — это блокировки на регистрах, дедлоки, очередь к рабочему процессу и зависание всей базы. На клиент-сервере SQL Server / PostgreSQL начинает сходить с ума от тысяч мелких быстрых запросов.
4. Исправляется быстро (20 минут), значит откладывать нельзя.
Сам BSL LS отмечает «время на исправление 20 минут». Это короткий рефакторинг: вынести запрос наружу, переписать условие на В (&Массив), проиндексировать результат — и всё. Никаких архитектурных переделок, никакого риска. Поэтому именно эту ошибку нет смысла копить как техдолг — её чинят сразу.
5. Стандарт 1С запрещает.
ИТС и стандарты разработки прикладных решений прямо запрещают: «Не следует выполнять запросы в цикле». Это не вкусовщина команды, а официальная позиция вендора. Поэтому BSL LS и поставил уровень ERROR — несоответствие стандарту вендора.
Что обычно прячется под этой ошибкой
Помимо явного Новый Запрос в цикле, диагностика часто триггерится (или должна триггериться по-хорошему) на:
Справочники.Х.НайтиПоКоду / НайтиПоНаименованию / НайтиПоРеквизитув циклеСсылка.ПолучитьОбъект()в цикле (тянет весь объект с реквизитами и ТЧ)- Обращение к реквизиту через точку в цикле:
Строка.Контрагент.ИНН— это скрытый запрос на каждой итерации Документы.Х.СоздатьДокумент()с последующей записью в цикле без транзакции
Последнее особенно коварно: код выглядит чистым, никакого Новый Запрос нет, а под капотом — N запросов на каждое обращение «через точку».
Короткий итог. CreateQueryInCycle = CRITICAL ERROR, потому что это главный убийца производительности 1С, чинится быстро, и игнорировать его — значит сознательно закладывать в код тормоза, которые проявятся в проде под нагрузкой.
Что ИИ делает за вас (и где у него потолок)
Честный список того, где AI-агент 1С реально помогает, а где у него границы возможностей.
| Тип задач | AI справляется | Комментарий |
|---|---|---|
| Внешние и встроенные обработки по описанию | Отлично | Загрузки из Excel, выгрузки в JSON, утилиты для администраторов |
| СКД-отчёты по описанию | Отлично | Группировки, отборы, параметры — собирает за минуты |
| Формы с табличными частями | Хорошо | Стандартные кнопки, обработчики событий, печать |
| Рутинные доработки типовых | Хорошо | Реквизиты, команды, события документа — без проблем |
| Расширения конфигурации | Хорошо | Опирается на 7 паттернов категории «extensions» в MCP |
| Миграции данных | Хорошо | XML-выгрузки, перенос справочников между конфигурациями |
| Разбор и рефакторинг чужого кода | Хорошо | Особенно — поиск антипаттернов (запрос в цикле и др.) |
| Интеграции с REST API | С подсказками | Нужно дать документацию API — дальше делает сам |
| Сложные отчёты с бизнес-логикой | С подсказками | Архитектуру решает человек, реализацию делает AI |
| Архитектурные решения | Нет | «Как нам перестроить учётный контур» — это задача человека |
| Общение с заказчиком | Нет | Сбор требований, согласование — за человеком |
| «Как у нас исторически принято» | Нет | Корпоративные особенности — знает только команда |
Главный вывод этой таблицы: AI снимает с разработчика рутину и ускоряет её в разы. Но AI не принимает решений за разработчика, не общается с заказчиком, не понимает корпоративный контекст. Это инструмент, а не сотрудник.
Главный — разработчик, ИИ — инструмент. Это не маркетинг
Распространённое опасение: «нас заменят». В реальности картина другая. AI ускоряет рутину в 3–10 раз, но не убирает мышление. Без разработчика AI разворачивается в «быстро сделать неправильно». С разработчиком — в «быстро сделать правильно».
Что меняется в работе команды после внедрения:
- Senior — выходит из перегруза. Перестаёт затыкать рутину и переходит к архитектуре и сложным кейсам. Это давняя боль 1С-команд: senior'а нет на сложное, потому что он завалён мелочью.
- Мидлы — берут задачи, которые раньше были под senior. Сами не дотягивали — теперь дотягивают с AI-агентом и code review.
- Джуны — выходят из роли «бесконечного исполнителя типовых правок» и начинают расти. Часть рутины делает AI, часть — джун с AI, и время остаётся на обучение.
Бенефициар внедрения — команды, где 80% времени уходит на рутину: типовые правки, отчёты, миграции, доработки под клиентов. У нас в B2C 5 месяцев работы в новом стеке привели именно к этому эффекту, подробности — в статье «Как мы за 5 месяцев перевели свою 1С-разработку на AI».
«Это безопасно?» — короткий ответ
Второе по частоте возражение: «А не уйдёт ли наш код в облако американской компании?» Здесь развилка из двух понятных вариантов, выбор делается до пилота.
Вариант 1 — облачные модели (OpenAI, Anthropic). Код отправляется на сервера провайдера, но НЕ используется для обучения модели — это явно прописано в политиках API обоих провайдеров. Защита уровня SOC2, ISO27001. Подходит большинству бизнеса.
Вариант 2 — локальные модели (Qwen-Coder, DeepSeek-Coder). Модель работает на вашем сервере, код не покидает контур. Подходит банкам, госструктурам, чувствительным данным. Полная изоляция, никакого внешнего трафика. Подробнее — в статье «Локальные AI-модели для 1С».
На пилоте B2C это решается до старта. На диагностическом созвоне выясняем требования по безопасности и выбираем подходящий вариант. Сам процесс пилота (1С:EDT, Git, MCP-серверы, обучение) — одинаков для облака и локалки. Меняется только AI-провайдер.
Что нужно команде, чтобы начать
Базовый стек AI-разработки 1С — это четыре компонента. Без любого из них работа резко проигрывает.
- Крайняя версия платформы 1С:Предприятие. На крайних версиях платформы и 1С:EDT всё работает лучше всего. На старых бывают проблемы совместимости — потребуется разовое обновление платформы.
- 1С:EDT — Enterprise Development Tools. Бесплатно в составе подписки ИТС. Без EDT AI не видит исходники конфигурации в текстовом виде — он работает «вслепую».
- Git — система контроля версий. На ней держится workflow AI-разработки: ветки под задачи, code review через Pull Request, безопасный откат. Подробнее — в статье «Git для 1С-разработчика».
- Подписка на AI-агента. Codex CLI или Claude Code. Для команд в России — через VPN или через нашу инфраструктуру. На пилоте мы это решаем под ключ.
Развернуть всё это в команде из 3–7 человек реально за одну рабочую неделю. Это и есть наш пилот «Обучение 1С через ИИ»: за 5 рабочих дней команда переходит с Конфигуратора на новый стек и решает 3 ваших реальных задачи в новом формате.
Почему многие думают «это сложно» — и почему это миф
Сложность AI-разработки переоценивают. Причина — путают «инструмент» и «магию». Когда инструмент описывают как магию, кажется, что для управления магией нужны какие-то невероятные навыки. Это не так.
Реальная кривая обучения:
- Дни 1–2. Установка стека: EDT, Git, AI-агент, MCP-серверы. Разбор как это работает в связке. Под опытным руководством — закрывается за два дня.
- Дни 3–5. Первые задачи в новом формате. Разработчик привыкает к ритму «описал задачу — AI рассказал что собирается делать — разработчик одобрил — AI показал что именно изменит в коде — разработчик одобрил — AI применил». Это страховка: AI не уйдёт «не туда» молча, всё видно на каждом шаге. Подробнее — в статье «Как правильно ставить задачу ИИ-агенту для 1С».
- Недели 2–4. Уверенная работа. Скорость рутины растёт в 3–5 раз. Появляется свой набор шаблонов промптов под типовые задачи команды.
- Дальше — это просто рабочий инструмент. Как Конфигуратор был раньше, только производительнее.
Языковой барьер минимальный: AI-агенты понимают русский технический текст и работают с русскими именами в 1С (реквизиты, регистры, процедуры). Английский нужен только для чтения официальной документации провайдеров — но без этого можно обойтись.
Подробно про типовые возражения и страхи руководителя — в отдельной статье «7 страхов руководителя про AI-разработку 1С».
С чего реально начать — 3 шага без пилота
Если хочется попробовать самим, перед тем как приходить к нам — реальный план самостоятельного старта.
- Установить 1С:EDTСкачать с ИТС, поставить на машину разработчика. Импортировать одну из ваших конфигураций (любую несложную). Время: 1–2 часа с официальной инструкцией.
- Подключить VPNClaude Code и Codex CLI работают через серверы OpenAI и Anthropic — из России к ним без VPN не достучаться. Подойдёт любой стабильный канал: свой на VPS или коммерческий. Время: 30 минут.
- Поставить Claude Code или Codex CLI и попробовать одну задачуНапример: «найди в этой конфигурации все случаи запроса в цикле и предложи план рефакторинга». Этого достаточно, чтобы почувствовать разницу с обычным чатом. Время: 1–2 часа.
Этого хватит, чтобы понять, как ощущается AI-разработка. Дальше — либо две-три недели самостоятельных проб и ошибок, либо наш пилот за неделю, где вы получаете готовую инфраструктуру и обученную команду.
Хотите так же в своей команде?
Мы внедряем AI-разработку в 1С-команды за одну рабочую неделю. После пилота ваши разработчики сами решают 3 ваших задачи — это прописано в договоре. Инфраструктура (1С:EDT, Git, MCP-серверы, VPN) остаётся у вас.
Записаться на диагностический созвонЧасто задаваемые вопросы
-
AI-разработка 1С заменит программистов?
Нет. AI заменяет рутину, а не разработчика. Решения о том, что и как делать, проверка результата, общение с заказчиком — всё это остаётся за человеком. Без разработчика AI разворачивается в «быстро сделать неправильно».
То, что меняется: внутри команды роли сдвигаются. Senior освобождается из рутины и переходит к архитектуре. Мидлы берут задачи, которые раньше тянул только senior. Джуны получают возможность роста, а не вечного исполнительства типовых правок.
-
Это работает на русском?
Да. И запросы можно писать по-русски, и в коде сохраняются русские имена реквизитов и процедур по стандартам 1С. Современные AI-агенты (Claude 4.6+, GPT-5) обучены на русских данных в том числе и свободно работают с технической терминологией 1С: «реквизит», «регистр накопления», «обработчик команды формы».
-
Сколько времени нужно, чтобы освоить?
Базовая работа — 2–3 дня. Уверенная — 1–2 недели. Дальше это просто рабочий инструмент, как ваш текущий Конфигуратор. На нашем пилоте мы укладываем всё в 5 рабочих дней с реальными задачами клиента в новом формате.
-
Это для маленьких команд или для крупных?
Эффективнее всего на командах 3–10 разработчиков. Для одиночек выгода тоже есть, но меньше — нет эффекта снятия нагрузки с senior. Для команд 10+ нужны дополнительные политики работы и стандартизация (готовые шаблоны промптов, корпоративные MCP-серверы), но эффект самый сильный.
Отдельный сценарий — аналитик или методолог 1С, который сам не программирует: с AI-агентом он может реализовать своё решение без программиста (или хотя бы собрать рабочий прототип, чтобы программисту осталось только довести до прода). Это сильно расширяет аудиторию AI-разработки за рамки узкой команды кодеров.
-
Подходит ли для типовых конфигураций (УТ, ERP, БП)?
Да. AI работает с любыми конфигурациями на крайних версиях платформы (на старых бывают проблемы совместимости с 1С:EDT). Типовые конфигурации удобнее даже потому, что MCP-серверы могут подгрузить документацию БСП и стандарты конкретной конфигурации — у AI становится больше «опорных точек».
-
Что если у нас нестандартная отраслевая конфигурация?
Работает. AI читает исходники конфигурации через MCP-сервер метаданных — ему не важно, типовая она или отраслевая. У нас стек обкатан в том числе на ДАЛИОН ТРЕНД, нескольких отраслевых решениях для розницы и расширениях УНФ.
-
AI пишет качественный код?
Это зависит от того, как поставлена задача и кто проверяет результат. В правильно настроенном стеке — связка с BSL Language Server (180 правил статического анализа) ловит классические ошибки 1С (запрос в цикле, обращение к удалённым объектам, нарушения стандартов БСП) до того, как разработчик откроет конфигурацию.
С такой связкой качество получается выше, чем у среднего ручного кода джуниора. Code review через Pull Request, как в любой нормальной команде, остаётся.
-
Не страшно отдавать код в облако американской компании?
Если страшно — используются локальные модели (Qwen-Coder, DeepSeek-Coder), и код не покидает контур. Это решение принимается до пилота, под политики безопасности клиента. Для большинства бизнеса работают облачные модели — провайдеры явно гарантируют, что код не используется для обучения при работе по API.
-
Окупается ли пилот?
Цена нашего пилота — меньше месячной зарплаты одного 1С-программиста в Москве. Поэтому ответ короткий: да, окупается сразу. Уже в первый месяц после пилота команда работает быстрее на тех же людях — и эта разница сразу больше, чем стоил пилот.
Долгосрочный эффект — экономия 30–50% времени на рутине, что для команды из 3–7 человек эквивалентно 1–3 дополнительным ставкам разработчика в год. Это уже не про окупаемость, а про то, насколько сильнее становится команда без расширения штата.
-
С чего начать, если ещё не пробовали?
Прочитайте остальные статьи этой серии — там объясняем стек по шагам: что такое MCP, Codex CLI vs Claude Code, как ставить задачу AI, почему без EDT и Git ничего не работает. Если хочется быстро — приходите на бесплатный диагностический созвон, разберём вашу конкретную ситуацию и составим план пилота под вашу команду.
В этой серии 10 статей о AI-разработке 1С
- AI-разработка 1С простыми словами: что это, как работает
- Codex и Claude Code — два AI-инструмента, кейс VibeCRM
- Что такое MCP-сервер и зачем он 1С-разработчику
- Как мы за 5 месяцев перевели свою 1С-разработку на AI
- Как правильно ставить задачу AI-агенту для 1С
- 7 страхов руководителя про AI-разработку 1С
- 1С:EDT и почему без него AI бесполезен
- Git для 1С-разработчика — основа AI-разработки
- Локальные AI-модели для 1С (без отправки кода в облако)
- 10 готовых промптов для 1С-разработчика
- Документация 1С:EDT — its.1c.ru/db/edtdoc/
- Документация Anthropic Claude Code — docs.claude.com
- Документация OpenAI Codex CLI — developers.openai.com
- Спецификация Model Context Protocol — modelcontextprotocol.io
- BSL Language Server — github.com/1c-syntax/bsl-language-server
В этой серии
- AI-разработка 1С простыми словами — вы здесь
- Codex и Claude Code: кейс VibeCRM — читать
- Что такое MCP-сервер и зачем он 1С — читать
- Как мы за 5 месяцев внедрили ИИ в 1С-разработку — читать
- Как ставить задачу ИИ-агенту для 1С — читать
- 7 страхов руководителя про ИИ в 1С — скоро
- 1С:EDT — почему без него ИИ бесполезен — скоро
- Git для 1С-разработчика — скоро
- Локальные ИИ-модели для 1С — скоро
- 10 готовых промптов для 1С-разработчика — скоро
- Тесты в ИИ-разработке: как работают у нас — скоро
MAX