О чём вообще речь?
Технический директор Microsoft Кевин Скотт (Kevin Scott) сделал прогноз о будущем профессии программистов в подкасте 20VC британского венчурного инвестора Гарри Стеббингса (Harry Stebbings). Он заявил, что уже к 2030 г. 95% кода будет сгенерировано искусственным интеллектом (ИИ).
"Лучший код - который не написан".
"Вы всё ещё пишете код руками, тогда мы идём к вам".
Громкие заголовки, говорящие что через пару лет 90+% кода будет писать ИИ - не шутка.
Собственно уже на текущем уровне развития современных нейросетей код получается весьма неплохим (ну, по крайней мере меня устраивает).
Не могу призывать всех и каждого писать код только при помощи ИИ. Там есть свои нюансы, особенно при работе с огромной кодовой базой в которой куча Legacy. Не поверите, но ему ещё и учиться надо :). Но тем не менее, время эта штука при любом раскладе экономит порядочно. Поэтому кодить совсем без ИИ кажется роскошью в современном мире.
Почему вайб кодинг в 1С вызывает затруднения?
Тут всё просто: 1С всё-таки LowCode фреймворк, а им с сетями приходится непросто.
Генерация прекрасно работает для текстовой информации, но вот для такого "странного" понятия как "метаданные" естественно будут нюансы.
У меня пока вопросы генерации форм и метаданных полноценно не решены. И не уверен что имеет смысл их решать. При работе с кодом даже на языке разработки общего назначения прежде чем вы начинаете кодогенерацию лучшей практикой является описать (с помощью нейросети тоже, конечно) что вы в итоге собираетесь сделать.
Так вот как раз создание метаданных и форм отчасти решает этот вопрос. Итоговое приложение всё равно надо будет "придумать" и от этого вы никак не отвертитесь. Более того, метаданные это очень непростая история, как вам уже известно. Ошибка при решении этой задачи может "дорого стоить" системе. Нужно продумывать запросы, индексы, использование метаданных заранее. Необходимо учитывать возможную работу системы под нагрузкой, транзакционные блокировки и много ещё неочевидных вещей. Все их расписать для генерации нейросетью пожалуй дольше чем пара кликов мышки для создания.
Поэтому, если честно особой цели генерации метаданных и форм не ставил и в рамках данной публикации она решаться не будет. Насколько нужна ещё будем анализировать, в том числе читать комменты.
Данная публикация, кроме всего прочего, направлена главным образом на решение вопросов генерации кода.
Какие вопросы решает публикация?
В публикации 3 Docker контейнера в которых 3 MCP сервера, но в одном из них 2 tool-а.
Функции следующие:
1) RAG поиск по метаданным
Почему важно: Нейросеть не знает ничего о вашей конфигурации. Можно пытаться "объяснить" собирая контекст руками, но это длительное и муторное занятие.
Можно закинуть все метаданные в контекст и надеяться на лучшее. Контекста может хватить (хотя вряд ли), но ещё идёт расход токенов (для многих сетей). Не говоря уже о том что закидывать контекст надо для каждого разработчика.
Что делает: MCP сервер индексирует отчет по метаданным и предоставляет нейросети информацию о них по запросу
Особенности: Векторная БД и модель ИИ используется. После старта контейнер выкачивает из сети модель ML и запускает индексацию. В зависимости от производительности машины и количества метаданных до полного старта может занять время. Также использование модели требует достаточно приличного объёма памяти (до нескольких гигабайт)
2) RAG поиск по коду
Почему важно: О вашем коде нейросеть соответственно тоже ничего не знает. Тут проще - если использовать специализированную IDE она код проиндексирует. Но во-первых делает она это иногда несколько странно, во-вторых, не у всех есть специализированная IDE и иногда хочется просто "спросить" без её использования
Что делает: MCP сервер индексирует код и предоставляет его части по запросу.
Особенности: Векторная БД и модель ИИ используется. После старта контейнер выкачивает из сети модель ML и запускает индексацию. В зависимости от производительности машины и количества метаданных до полного старта может занять время. Также использование модели требует достаточно приличного объёма памяти (до нескольких гигабайт)
3) Синтаксический контроль модулей
Почему важно: Нейросеть регулярно "выдумывает" не существующие методы, синтаксические конструкции, и ещё что то в этом роде. Для 1С, к сожалению, чаще чем для других языков программирования. Поэтому проверить сгенерированный код как с точки зрения синтаксиса так и с точки зрения лучших практик задача крайне важная. Для проверки используется BSL Language Server //infostart.ru/1c/articles/1789716/ широко известный в среде 1С как используемые для Sonar так и для VS Code.
Что делает: MCP сервер использует BSL Language Server для проверки кода. Получает код от сети и возвращает результат проверки
Особенности: Проверки могут занимать время. Не слишком много, но так или иначе увеличивают время работы ИИ
4) RAG Извлечение справки 1С и поиск по ней
Почему важно: Нейросеть "не знает" полного синтаксиса 1С. Более того, "знает" только синтаксис какой то из версий платформы, скорее всего устаревшей. Синтаксис меняется. Открытой документации нигде нет. А нейросети она очень сильно нужна. Когда она "выдумывает" функцию, то поиск по выдуманной в большинстве случаев приведёт к существующей. Кроме того, это существенно быстрее, чем исправление ошибок после синтаксического контроля. Опять же позволяет нейросети лишний раз не сёрфить по интернету в поисках часто весьма скудной документации 1С, что существенно дольше локального поиска.
Что делает: MCP сервер извлекает актуальную справку из нужной версии платформы, индексирует её и предоставляет доступ для поиска
Особенности: Векторная БД и модель ИИ используется. После старта контейнер извлекает справку из 1С, выкачивает из сети модель ML и запускает индексацию. В зависимости от производительности машины и количества метаданных до полного старта может занять время. Также использование модели требует достаточно приличного объёма памяти (до нескольких гигабайт)
Что нужно чтобы запуститься?
Любой компьютер или сервер на котором можно развернуть Docker контейнер. Скорее всего для вас это будет Docker Desktop. Ну и нужен ещё WSL2 если вдруг не активирован.
Около 20 ГБ на жестком диске (5-7 ГБ на контейнер). К сожалению RAG модели много весят, как и библиотеки для работы с ними. Но без них и векторной БД поиск, к сожалению, даёт не совсем те результаты, которые бы удовлетворяли задачам вайб кодинга.
Наибольший эффект вы почувствуете если в качестве IDE для вайб кодинга будете использовать Cursor, а в качестве IDE для отладки и работы с метаданными - EDT. В этом случае вы можете параллельно работать с одной кодовой базой и это не вызывает проблем. При этом при работе в конфигураторе тоже не проблема использовать генерацию кода. Выгрузить конфигурацию в файлы и загрузить конфигурацию из файлов вообщем то быстрая операция. Как и копирование кода, но копирование всё таки достаточно далеко от идеала...
Также MCP серверы улучшат работу с 1С любой нейросети или клиента, но только который поддерживает протокол MCP. В настоящий момент времени его поддерживают уже практически все крупные вендоры (даже OpenAI сдалась). Но на всякий случай убедитесь в поддержке как самой моделью так и клиентским приложением которым вы пользуетесь. Модели работают через http интерфейс (но конечно же по умолчанию localhost). Но приятная новость заключается в том что контейнеры можно развернуть на всю организацию (если работаете с одной системой это особенно удобно), можно вцелом организовать и публичный доступ для определенных сетей.
Если очень хочется использовать локальные сети - обратите внимание на LMStudio - абсолютно прекрасный продукт. Запускает LLM локально, многие даже на CPU. По уровню поддержки оборудования и удобства с классической ollama не сравнить. Cursor, к сожалению захочет чтобы модель была доступна извне, но проблем это вцелом не вызывает, как минимум ngrok позволяет решить. Сам кейс описан тут https://medium.com/@hyperfox_/run-cursor-ai-for-free-with-open-source-llm-55396c1411b1 но надо понимать что для приличного качества локальных моделей пока несколько хуже чем лучших облачных, а для хорошего качества хорошее оборудование потребуется и потребуется его немало. Для меня лично поделиться своим кодом с гуглом
Итого, что рекомендую для старта в вайб кодинге?
1) Cursor IDE 20$ в месяц и море удовольствия
2) MCP серверы по ссылкам ниже
3) Если что то серьёзное хочется разработать - сначала план
4) Если хочется потом модифицировать код - семантическая разметка
5) Сети для 1С: gemini, grok, claude. Локальные - лучшая Llama4
Видео:
Лицензирование и поддержка
Цена весьма условная и небольшая. Самый полезный файл из прикрепленных вообще бесплатен. Далее за ним следует поиск по справке, далее проверка синтаксиса и вконце поиск по метаданным.
Защита на контейнеры есть, но весьма условная. Развиваться это всё будет, потому что очевидно что руками писать то что можно сгененировать - занятие глупое, а без MCP сети всё таки не особо эффективны, даже если есть Cursor. Если число скачиваний сильно превысит число оплат то защита станет более серьёзной, но мне кажется не те суммы чтобы сильно заморачиваться. Отзывы несомненно приветствуются как и предложения и пожелания. Список на улучшение уже есть, но пока озвучивать не буду.
Если для вас "docker" вдруг является новым словом и вообще "вы не верите во все эти нейросети" - пожалуйста не надо покупать и качать файлы ниже. Это больше либо для тех кто уже использует вайбкодинг или собирается и готов чуть разбираться в технических деталях. Настройка там не сложная, но желание быть должно. Консультации по разворачиванию контейнеров, выгрузки отчетов по метаданным, установке Cursor-а, особенностях генерации нейросетей никак не входят в стоимость продукта (в видео, частично рассказал). Для таких случаев есть отдельная кнопка "техподдержка". И да, она недешевая, просто потому что требует уже живого времени, которое мне дорого, а включая комиссию ещё дороже.
Планы:
По направлению вайб кодинга развитие несомненно будет. OneAPA (ИИ Агенты для 1С) //infostart.ru/marketplace/2394773/ процентов на 95 разработан ИИ (1С-ная часть конечно тоже). Поскольку его развитие продолжается, как и OneRPA (роботы для 1С) //infostart.ru/marketplace/1357060/ а программного кода руками там уже пишется крайне немного - всё что встречаем в процессе использования приводит к улучшению текущих решений. Текущий стек пока остаётся. Главные две проблемы:
- Решить вопрос с генерацией форм и метаданных
- Решить проблему использования двух IDE
Скорее всего полностью закрыть Cursor-ом не получится, поэтому сейчас в работе ещё Плагин для вайб кодинга для EDT с поддержкой MCP ключевых для 1С сетей, локальных сетей и задания общего контекста.
Есть некоторое внутреннее отторжение от использования Java поэтому работа идёт чуть медленнее чем хотелось бы.
Из того что скорее всего скоро появится: поддержка GPU, более продвинутые сети embedding, более быстрая работа SyntaxCheck, автоматическое обновление метаданных и кода (сейчас нужен рестарт контейнера)
Почему платно?
Потратил я не это весьма приличное количество времени. А если я что то делаю и раздаю забесплатно - впадаю в депрессию. Если действительно использовать эти сервисы, то они экономят достаточно прилично времени. А если эта публикация сподвигла попробовать вайб кодинг, то потраченная ниже сумма вообще ничтожна в сравнении с количеством времени (и соответственно денег) сэкономленных если не вами, то вашим работодателем. Но поскольку тул всё таки для разработчиков и хотелось бы чтобы эта история продвигалась, а "продать" бизнесу увеличение эффективности разработки (пусть и в разы) дело не самое простое, то цена небольшая.
Техническая поддержка и обновления
Бесплатный период техподдержки составляет 1 месяц со дня покупки, в зависимости от позиции товара.
Также после приобретения вы получаете 6 месяцев бесплатных обновлений, в зависимости от купленной позиции товара.
По окончании бесплатного периода вы можете приобрести услугу технической поддержки с доступом к обновлениям на платной основе.
Проверить наличие обновлений можно в личном кабинете. Если обновления недоступны - загрузить новую версию можно после покупки обновлений/технической поддержки.
Задать вопрос по программе можно по кнопке "Техподдержка" на странице описания.
При создании тикета необходимо предоставить:
- Номер заказа
- Описание вопроса. Если это ошибки - напишите порядок ваших действий с программой, которые к ней привели (приложите видео/скриншоты/отчеты об ошибке)
- Точную конфигурацию 1С, и версию платформы, на которой используете купленное решение (наименование и версию 1С можно взять из раздела "О программе"), версию купленной программы.
К созданной заявке подключается специалист. Дальнейшее обсуждение проблемы будет проходить в тикете техподдержки. Стандартный срок реакции - 24 часа в рабочие дни с момента обращения.