Вайб кодинг в 1С. Лучшие нейросети для генерации 1С кода

10.05.25

Интеграция - Нейросети

В статье кратко на реальных примерах проанализированы возможности генерации кода 1С сетями от Yandex, Sber, Microsoft, Anthropic, DeepSeek, OpenAI, Google.

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

Я решал свою исключительно практическую задачу из разряда "лучший код - код, который не написан" с уточнением: не написан своими руками. 

Своей цели я, к слову, достиг и выводы сделал, ими и делюсь, поскольку всё равно написать надо.

Много деталей приводить не буду - что отвечают нейросети, можете проверить сами. Приведу только свои запросы и краткие выводы по ним. Полные выводы можете найти в конце статьи, так что кому нужен итоговый результат - листайте сразу в конец.

Что касается 1С:Напарники. Да, я его потестил. Нет, результаты написать не могу, потому что NDA.

Ну и в данном случае не могу даже пожаловаться на политику 1С (хотя в общем и целом постоянные NDA для новых фич в бета сильно раздражают), потому как Напарник проектировался под автодополнение по большей части, а мы будем говорить про кодогенерацию.

Полный код ответа LLM, как и скоринг, приводить не буду - ибо нет цели написать научный труд. Более того, когда выводы по модели становятся очевидными, я прекращал давать ей новые задачи. 

Далее - почему задачи все такие алгоритмические и без контекста? Контекст - отдельная задача, главное, чтобы сеть умела ориентироваться в алгоритмических задачах и "знать" определенные особенности 1С.

Итак приступим.

 

Модели, участвовавшие в "гонке":

Для начала я, конечно, взял статистику по другим языкам, с  замечательного: https://openrouter.ai/rankings/programming 

Выглядит она примерно следующим образом:

 

 

Для раздела "Programming" очевидно, что для 1С надо использовать что-то, что хорошо пишет код на других языках. 

Но его я расширил, как минимум, нельзя не учитывать "Российские" модели, самые популярные из которых от Яндекса и от Сбер-а. Есть гипотеза, что код 1С на русском языке они должны писать лучше.

Также добавил Copilot - очень известный и давно существующий помощник. Есть гипотеза, что он должен быть неплох.

Хоть что-то OpenSource-ное тоже надо бы включить. Самый приличный вариант тут вроде как DeepSeek - добавил её.

Итоговый список получился следующим:

1) MS Copilot. Версий у него особо нет - тот, который "торчит из каждой дыры"

2) YandexGPT5 - с Yandex cloud

3) Sber GigaChat  - тоже та версия, которая поставляется через чат интерфейс

4) Claude Sonnet 3.7

5) DeepSeek V3 0324 - что бы это ни значило

6) ChatGPT 4o

7) Gemini 2.5 Pro Preview

 

Ход исследования:

Да, я знаю, как надо правильно писать промпты и что результат можно улучшить. Максимально шакальный промпт был выбран осознанно, чтобы все модели были примерно в равных условиях, потому что правила пояснений могут быть разными для разных моделей и иметь разный эффект. Поэтому промпт "только человеческий текст".  Результаты итоговые с номерами задач будут в конце статьи.

 

Задача 1:

Напиши код на языке 1С, который заполняет массив случайными целыми числами и потом сортирует его методом пузырька

На этой простой задаче, к сожалению, сети уже споткнулись. Страдает вывод массива и практически никто не осилил 1С-ный ГенераторСлучайныхЧисел... 

Итого у всех по 2 ошибки, чуть лучше себя показал Claude. Но внезапно с задачей полностью справился Gemini.

 

Задача 2:

Создай таблицу значений с полями "Номенклатура, Количество, Сумма, Дата", заполни тестовыми данными и напиши код, который демонстрирует списание товара из этой таблицы по методу FIFO. При списании указывается только количество и номенклатура. Это должен быть код на языке 1С.

Классическая задача 1С-ника на экзамене :). Тут полностью лажанулся Copilot. Почти у всех сетей есть проблемы с расчетом суммы. 

Отметить можно Claude и Gemini. В целом у этих сетей, конечно, более "взрослый" код. Это заметно уже на этом этапе. С задачей они справились. gemini чуть хитрее - добавив колонку в начале. Я бы сказал, сети склонны к оверинжинирингу (в 1С мы пишем код чуть проще, чем в классических языках разработки), но вполне достойно.

 

Задача 3:

Есть таблица - Основная таблица регистра накопления. В ней есть колонки Номенклатура, Дата, Количество, а также Цена. Пусть регистр накопления называется ОстаткиТовара. Напиши запрос на языке 1С, который получает цену товара на заданную дату. Дата задаётся в параметре запроса

Тут меня внезапно удивил Сбер - сетка справилась с задачей! При том, что в этой задаче налажал Claude. Она, правда, немного хитрая. Gemini тоже справился с данной задачей, у остальных различного рода проблемы

 

Задача 3.1: 

Есть таблица - таблица значений. В ней есть колонки Номенклатура, Дата, Количество, а также Цена. П. Напиши запрос на языке 1С, который получает цену товара на заданную дату. Дата задаётся в параметре запроса. Это должен быть именно запрос, а не код для перебора таблицы

Небольшая вариативность предыдущей задачи, чтобы проверить, насколько сети догадаются, как по таблице значений сделать запрос, превратив её во временную таблицу. Вывод - не догадались :). Но есть положительные моменты - некоторые как минимум попробовали. ChatGPT понял хотя бы, что нужна временная таблица, gemini сделал прекрасно всё остальное, но всё-таки не разобрался с ВТ.

 

Задача 3.2: 

Есть таблица в базе 1С. В ней есть колонки Номенклатура, Дата, Цена. Это непереодический регистр сведений "цены товара" (использовать СрезПоследних() не получится). Напиши запрос на языке 1С, который получает актуальную (последнюю по дате) цену всех товаров на заданную дату. Дата задаётся в параметре запроса.

Финальная и самая популярная модификация. Ожидаемо справились Cloude и Gemini. К лидерам присоединились сетка от Сбер-а и ChatGPT. У остальных не получилось "осознать" задачу с небольшой хитростью

 

Задача 4: 

Есть справочник номенклатура с неограниченным числом уровней иерархии. Нужно запросом вывести все его группы и уровень иерархии каждой. Запрос на языке 1С.

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

 

На этом этапе я перестал тестировать дальше явных аутсайдеров. "Гонку" покидают Yandex и Copilot

 

Задача 5: 

 Используя API с сайта ЦБ РФ https://www.cbr.ru/development/sxml/, напиши код на языке 1С Предприятия для загрузки курса доллара за последний год на каждый день в таблицу значений

Тут чуть попроще, но проверяем работу со сторонними ресурсами и как оно справится с API. Очень приличный и качественный результат получил от Gemini - был приятно удивлён. Вряд ли сам написал бы лучше. Claude перестарались ещё больше. Человеку я бы тут уже начал задавать вопросы касательно обилия свободного времени и чрезмерной увлеченности книжками по чистой архитектуре, но ИИ как бы время не тратит, поэтому почему бы и нет... На уровне среднестатистического стажера программиста справился DeepSeek. Был близок к истине Сбер. ChatGPT в этой задаче подкачал 

 

Задача 6: 

Есть файл Excel с колонками: Артикул, Наименование, Описание, Единица измерения. Есть справочник Номенклатура в 1С с аналогичными реквизитами. Напиши код на языке 1С для загрузки данного Excel файла в справочник.

Классика каждого 1С-ника. Для нейросетей тоже проблем не вызвала. Все, кроме Сбер-а, справились с задачей. Claude и Gemini, естественно, чуть лучше.

 

Задача 7:

У меня есть две одновременно открытые управляемые формы в 1С. На одной из форм есть заполненная табличная часть "товары", мне нужно передать наполнение этой табличной части во вторую форму, чтобы отобразить его на ней. Напиши код для одной формы и для второй.

Тоже в принципе классика для 1С. И, если честно, тут модели немного расстроили. Было ожидание, что они справятся с данной задачей достаточно легко. На поверку оказалось, что справился только Gemini и то не совсем оптимальным и правильным образом. Немного близок к тому, что надо, был Claude. Остальные по традиции далеки.

 

Задача 8:

У меня в конфигурации есть справочник Номенклатура - напиши код на языке 1С для его выгрузки в идентичную конфигурацию.

Тут, конечно, надо вспомнить про возможность сериализации любого объекта в 1С. Лёгкая задача для разработчика, тяжелая для сети. Тем не менее, Gemini с ней справилась. ChatGPT и Claude написали неплохой код, но не то, что требуется. Сбер и DeepSeek с задачей не справились полностью

 

Задача 9:

В конфигурации 1С Справочник Номенклатура, у него на форме элемента есть элемент с типом "Декорация" с видом "Картинка", называется "Картинка" а также реквизит "Картинка" с типом "ХранилищеЗначения". Напиши код, который отображает картинку из реквизита при открытии формы и при нажатии на картинку на форме даёт возможность выбора файла с картинкой и перезаписывает её для элемента

Тоже классика для джунов. Но из сетей, к сожалению, без проблем с задачей справилась только Gemini. Claude тоже в принципе, но с ошибкой. Остальные сети сгенерировали код, который надо основательно править.

На этом этапе, я думаю, всем очевидно, что "Гонку" могут не продолжать DeepSeek, ChatGPT, GigaChat. Собственно, останутся только Claude и Gemini.

 

Задача 10:

На форме документа 1С основной реквизит "Объект". У документа есть реквизит "Комментарий". Напиши код, работающий при нажатии на кнопку "Записать комментарий", который в комментарий документа добавляет слово "Тест" - к текущему комментарию и записывает документ в базу данных, не закрывая формы.

Тоже задачка для джунов и нейросети с ней справились плохо. Gemini написало рабочий код, но он не сделает то, что надо :).

Claude уже чуть лучше, но c ошибкой, которую совершают все джуны, для чего эта задачка и нужна

 

Задача 11:

На форме документа 1С есть табличная часть "Товары". В документе обычно более 1000 строк. В табличной части есть реквизит "Сумма". Напиши код, который работает при нажатии на кнопку "общая сумма", который должен посчитать сумму по всем строкам и вывести её пользователю

А тут как раз проблема в том, что джуны частенько считают сумму на клиенте. Очевидная история - сходить на сервер. Обе сети успешно справились с задачей, но в своём стиле - оверинжиниринг присутствует. У Claude в данном случае получился чуть более лаконичный код

 

Итого:

Каждую модель по каждой задаче я оценил от 0 до 10. Где 0 - данный ответ вообще бесполезен и никак не поможет в решении реальной задачи, 10 - я сам так не напишу, при этом весь код по делу.

Итоговый скоринг в таблице:

 

 

В общем, исходя из этой таблицы, самые приличные модели для написания кода 1С - Gemini и Claude.

 

Выводы:

 

1) Генерация кода для 1С возможна - и работает весьма неплохо. Это жуткая экономия времени в перспективе, даже без учета контекста. Но не для всех задач сейчас, конечно.

2) Лучшая модель для генерации Gemini, но с учетом субъективности и погрешностей Gemini и Claude сопоставимы. Можно выбрать любую с которой удобнее работать. Стоит добавить, что в целом относительно других моделей эти две отличаются прямо в разы, даже в задачах, которые решили все модели, код Gemini и Claude более "красивый", с необходимыми проверками, качественно оформлен, в общем, очевидно, что лучше использовать только их

3) Относительно языков программирования общего назначения 1С-ный код генерируется существенно хуже, главная причина - не алгоритмика, а отсутствие знаний и необходимого контекста

 

Что дальше:

Ну лично я сейчас планирую написать небольшой MCP сервер, для репозиториев 1С EDT, которому скормить контекст именно конкретного репозитория. Ну и выгрузку справки, пожалуй, тоже. Это всё сегментировать, залить в векторную БД и подключить как MCP к Curosor. Кажется, качество ответов должно вырасти в разы, и область применения существенно расширится. Кому интересно попробовать такую фичу, ставьте лайк, пишите коммент :)

См. также

Нейросети Мастера заполнения Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Платные (руб)

Расширение для заполнения описания номенклатуры с помощью модели ИИ GigaChat от Сбера. Расширение формирует продающее описание товара по его наименованию с помощью модели искусственного интеллекта. Будет полезно для владельцев интернет магазинов, каталогов товаров и продающих через маркетплейсы. Адаптировано для основных конфигураций: УТ, ЕРП, КА, УНФ.

5000 руб.

08.11.2023    3858    15    0    

25

Нейросети Программист 1С:Библиотека стандартных подсистем Бесплатно (free)

Рассмотрим Claude Sonnet 4, GPT o3 и 4.1, Qwen3, Llama 4 Maverick, Grok. Cursor и плагин для EDT.

28.05.2025    3739    comol    27    

28

Нейросети Платформа 1С v8.3 1С:Управление торговлей 11 Платные (руб)

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

600000 руб.

23.05.2025    1390    0    0    

1

Нейросети Программист Бесплатно (free)

Выясняем, на что способны открытые большие языковые модели (LLM) в задачах 1С-разработки и проектирования. Тест шести сравнительно свежих (на май 2025) моделей, трезвый взгляд на их практическую применимость. Чем могут быть полезны? Стоит ли вкладываться в оборудование, чтобы запускать локально?

16.05.2025    3906    wonderboy    30    

37

Нейросети Программист Платформа 1С v8.3 Бесплатно (free)

На связи Сергей Скирдин, технический директор ИТ-интегратора «Белый код». На майских праздниках, как водится, собрались на шашлыки, за шашлыками много обсуждали искусственный интеллект. В результате получился интересный эксперимент.

16.05.2025    923    sergey.skirdin    3    

6

WEB-интеграция Нейросети Программист Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 Абонемент ($m)

Представляем универсальную обработку для 1С, которая предоставляет два мощных инструмента для работы с платежной системой ЮКасса: интерактивный Дашборд для анализа финансовых потоков и инновационный модуль взаимодействия с API ЮKassa через запросы на естественном языке с использованием Искусственного Интеллекта. Решение обеспечивает как готовый функционал для пользователей, так и широкие возможности для кастомизации программистами 1С благодаря передаче сырых JSON-данных непосредственно в 1С.

10 стартмани

10.05.2025    418    0    Prepod2003    0    

4

Нейросети Программист Платформа 1С v8.3 Россия Бесплатно (free)

Все пишут, какой умный о3 от openAI, как он прекрасно разбирается в логике и какой у него замечательный механизм рассуждения. Проверим это на примитивных задачах 1С. Мы знаем, что буржуйский зверь не учили на нормальных данных по 1С и, следовательно, он толком ничего не умеет, но при этом он неплохо ищет в интернете, так вот заценим, сможет ли он скомпилировать что-то рабочее из того, что он там в интернетах найдет.

05.05.2025    3194    IncomeGroup    6    

3
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. gybson 10.05.25 20:31 Сейчас в теме
Довольно странно говорить о коде без кода.
user1835472; drozd_79; tormozit; user1706724; user1859773; Tantor; titanium2008; kuntashov; +8 Ответить
2. starik-2005 3177 10.05.25 20:52 Сейчас в теме
Офигенно (с сарказмом).
Типа нет одной сетки, которая бы давала правильные ответы, а моск включать не буду принципиально.
Вот что выдал дипсик мне:
Процедура СортировкаМассиваПузырьком()

    // Создаем генератор случайных чисел
    ГСЧ = Новый ГенераторСлучайныхЧисл();
    
    // Создаем и заполняем массив случайными числами
    массив = Новый Массив;
    размерМассива = 10; // Можно изменить на нужный размер
    
    Для i = 1 По размерМассива Цикл
        массив.Добавить(ГСЧ.СлучайноеЧисло(1, 100)); // Числа от 1 до 100
    КонецЦикла;
    
    Сообщить("Исходный массив:");
    ВывестиМассив(массив);
    
    // Сортировка методом пузырька
    Для i = 0 По массив.Количество() - 2 Цикл
        Для j = 0 По массив.Количество() - i - 2 Цикл
            Если массив[j] > массив[j + 1] Тогда
                временное = массив[j];
                массив[j] = массив[j + 1];
                массив[j + 1] = временное;
            КонецЕсли;
        КонецЦикла;
    КонецЦикла;
    
    Сообщить("Отсортированный массив:");
    ВывестиМассив(массив);

КонецПроцедуры

Процедура ВывестиМассив(массив)
    строкаМассива = "";
    Для каждого элемент Из массив Цикл
        строкаМассива = строкаМассива + Строка(элемент) + " ";
    КонецЦикла;
    Сообщить(строкаМассива);
КонецПроцедуры

// Вызываем процедуру
СортировкаМассиваПузырьком();
Показать
user1706724; m_aster; Shmell; NeLenin; +4 Ответить
19. aximo 2338 13.05.25 18:45 Сейчас в теме
(2) методы сортировки в школе изучали раньше на паскале) в году так 93 ))))) с того момента ничего не поменялось вроде)))
20. starik-2005 3177 13.05.25 22:15 Сейчас в теме
(19) Я сам придумал простой метод сортировки сразу, как он мне понадобился. Заключался в том, что в массиве искался максимальный элемент и менялся с последним. Потом без последнего, ну и далее. Вообще примитивно. Не знаю, что тут "учить в школе". Сортировка пузырьком - да, уже интереснее - переставляем, пока есть перестановки. Первый метод ганатировано О(Н^2 / 2), второй от Н в случае упорядоченного массива и до Н^2 в самом плохом случае. Это уже рассказывали. Быстрая сортировка - это уже в универе где-то вычитал и применял неоднократно. Остальное - от лукавого )))
45. dmpas 418 16.05.25 12:12 Сейчас в теме
(20)
Остальное - от лукавого )))

Но-но-но! Пирамидка - наше всё!
57. starik-2005 3177 22.05.25 08:35 Сейчас в теме
(45)
Пирамидка
Те же N log2N, только еще и памяти дополнительно жрет N+PN, в отличие от квиксорта, при том потоконебезопасна. Зачем?
3. kuntashov 463 10.05.25 23:56 Сейчас в теме
Олег, очень интересно, ждал подобной статьи, но очень не хватает примеров кода, который нейронки тебе нагенерили, в сниппеттах прямо в статье, или, хотя бы на гитхабе.

Сберовский гигачат пробовал в виде расширения год назад (https://t.me/kuntashov_devnotes/620) и тогда, к удивлению, поддержки 1С там не было - как так могли сделать, и зачем/почему - хз. Даже нишевый на тот момент зарубежный SuperMaven умел приемлемо алгоритмы на встроенном языке 1С писать и даже знал, что такое ТаблицаЗначений.

Гемини по моему опыту действительно неплохо императивный код на 1С пишет, а вот с запросами сомнительно, по крайней мере на задачах вида "вот запрос, вот есть еще такие таблицы, сделай, чтобы запрос еще выводил то-то и то-то".

И тоже заметил, что Гемини склонен к оверинжинирингу (и еще комментариев в коде слишком много оставляет, чуть ли не к каждой строке, поэтому обычно в промпте явно прошу не писать комментарии в коде).

Но вот по результатам ДипСика у тебя удивлен - у меня опыт немного другой, я как раз часто его в паре с Гемини использую и ДипСик обычно не хуже справляется, причем код пишет как раз лаконичнее с тем же результатом.
SirAlex; artbear; wonderboy; NeLenin; +4 Ответить
6. NeLenin 14 11.05.25 10:30 Сейчас в теме
(3) ДипСик в Лазарусе показал мне Очень хорошие результаты. В 1С еще не пробовал. Однако на "Максимально шакальный промпт" ДипСик практически всегда мне отвечал, мягко сказать, без энтузиазма.
d4rkmesa; +1 Ответить
33. comol 5241 16.05.25 11:13 Сейчас в теме
(6)
Максимально шакальный промпт
ну а тюнить промпты надо под каждую сеть по-своему... как тут сравнение писать...
50. NeLenin 14 19.05.25 05:42 Сейчас в теме
(33) Здесь мне трудно что-то сказать однозначно. Дипсику ставил задачи, просто весьма подробно их расписав. Каких-то его особенностей не знаю
32. comol 5241 16.05.25 11:13 Сейчас в теме
(3)
но очень не хватает примеров кода
Статья получилась бы на пару километров. Смысл все эти партянки копипастить. А github вы заворачиваете :)
42. kuntashov 463 16.05.25 11:33 Сейчас в теме
(32) Почему портянки-то? Продемонстрировал бы характерные фрагменты: вот явный бред, а вот наоборот код, который я сам бы не написал. Плюс есть спойлеры, куда можно большие куски кода убрать.

А по поводу ссылки на гитхаб: на хабре их тоже заворачивают что-ли?

Но и мы на самом деле давно ничего не заворачиваем, у тебя устаревшая информация, поддерживаем: https://infostart.ru/1c/articles/2016164/
39. roman72 401 16.05.25 11:28 Сейчас в теме
(3) "оверинжиниринг гемини" не решается ли понижением параметра "температура" (тот который заставляет ЛЛМ минимизировать отсебятину и "творчество")?
43. comol 5241 16.05.25 11:33 Сейчас в теме
(39)
не решается ли понижением параметра "температура"
частично решается... но не у всех интерфейс позволяет его редактировать... поэтому с дефолтным значением... :)
47. roman72 401 16.05.25 15:16 Сейчас в теме
4. Prepod2003 269 11.05.25 06:05 Сейчас в теме
По своему опыту, могу сказать, что знания большинства нейросетей в области 1С оставляют желать лучшего. Их уровень владения этим языком значительно уступает, например, знаниям JavaScript, код на котором они при нормальных промтах генерируют превосходно и без ошибок.
Тем не менее, я использую нейросети для генерации кода 1С, поскольку это все равно существенно ускоряет рабочий процесс. Как минимум, искусственный интеллект способен создать "рыбу" или базовый скелет программы. В некоторых случаях он даже пишет вполне неплохой код.
Несмотря на текущие ограничения, я уверен, что за этим подходом будущее.
comol; d4rkmesa; unknown181538; zqzq; wonderboy; o.nikolaev; NeLenin; +7 Ответить
51. m_aster 123 19.05.25 10:05 Сейчас в теме
(4) Удивительного здесь ничего нет, на "яве", можно сказать, пишет весь мир, в том числе и мы, язык 1С это, практически, только наше окружение. Поэтому приятно, что дипсик, например(хорошо бы его тоже было упомянуть в статье), вполне красиво и без затруднений выдает вполне рабочий код, который можно использовать как "рыбу". Конечно, все нужно проверять, прежде, чем использовать.
52. m_aster 123 19.05.25 11:48 Сейчас в теме
(51) DeepSeek есть, бегло посмотрел, бросилась картинка источника, все есть, Олег, спасибо за материал, вопрос об упоминании снят)
5. Prepod2003 269 11.05.25 06:35 Сейчас в теме
MCP сервер для Curosor - ждем. ))
Somebody1; comol; AlexanderEkb; seperblunt; skif-m; Shmell; user612295_death4321; comptr; rozer; +9 Ответить
7. NeLenin 14 11.05.25 10:37 Сейчас в теме
На мой вкус лучше было дать ИИ пару-тройку качественных промтов вместо десятка абы каких. А так интересная работа. От всей души Автора благодарю!
34. comol 5241 16.05.25 11:15 Сейчас в теме
(7)
пару-тройку качественных промтов
Тут вопрос качества - для каждой сети промпты должны быть свои...
8. e9504100606 94 11.05.25 15:29 Сейчас в теме
Спасибо за труды.
Не увидел в гонке grok. И не хватает кода.
Интересно, что на 10й задачке накодили обе нейросетки.

Я сам использую дипсик для скриптов на питоне и задаю вопросы вместо гугла.
grok для анализа документации, экспресс код-ревью кода 1С, формирования документации на основе xml/bsl (выгруженные в файлы расширение или внешняя обработка).
gimini пробовал - не удовлетворительные результаты выдавал в контексте 1С.

Сейчас пробую разобраться с предиктивным анализом (это про машинное обучение и CatBoost от яндекса) с помощью дипсика и грока.
user717534; +1 Ответить
35. comol 5241 16.05.25 11:15 Сейчас в теме
(8)
Не увидел в гонке grok
grok добавлю - в работе. И сбер кодинг будет и o3
9. e9504100606 94 11.05.25 15:42 Сейчас в теме
Векторная БД и MCP сервер - интересно. Чтобы документацию формировать по логике кода и выполнять код-ревью?

Статический код sonarQube может, а вот функционал проверить - модели может не хватить контекста (например, новый функционал разрабатывается).

Идея крутая, дорогостоящая и долгое в реализации. И главное - как этим управлять и как внедрять в продуктив?
36. comol 5241 16.05.25 11:16 Сейчас в теме
(9)
Идея крутая, дорогостоящая и долгое в реализации. И главное - как этим управлять и как внедрять в продуктив
Идея не дорогая и частично уже реализованная. В прод внедрять через плагин в EDT, ну или непосредственно в Cursor
10. o.nikolaev 217 11.05.25 16:43 Сейчас в теме
Статья интересная. Правда Gemini для России пока недоступен :) Уверен, что использование языковых моделей очень перпективная штука. Надо осваивать, развивать, пробовать использовать. Работу "отнимут" не ИИ-шки, а те кто научится эффективнее использовать их в работе.
44. roman72 401 16.05.25 11:49 Сейчас в теме
(10) Гемини доступен в локальных инструментах ЛЛМ.
11. o.nikolaev 217 11.05.25 16:53 Сейчас в теме
У меня, после нескольких подсказок, DeepSeek сгенерил такое:
    // Создаем генератор случайных чисел (если доступен)
    ГСЧ = Новый ГенераторСлучайныхЧисел;
    
    // Создаем массив
    массив = Новый Массив;
    
    // Заполняем 10 случайными числами от 1 до 100
    Для i = 1 По 10 Цикл
        массив.Добавить(ГСЧ.СлучайноеЧисло(1, 100));  // Если ГСЧ доступен
        // Если ГСЧ нет, можно использовать: массив.Добавить(1 + Случайное() % 100);
    КонецЦикла;
    
    // Выводим исходный массив (вручную собираем строку)
    строкаИсходный = "Исходный массив: ";
    Для каждого число Из массив Цикл
        строкаИсходный = строкаИсходный + число + ", ";
    КонецЦикла;
    // Убираем последнюю запятую и пробел
    строкаИсходный = Лев(строкаИсходный, СтрДлина(строкаИсходный) - 2);
    Сообщить(строкаИсходный);
    
    // Сортировка пузырьком
    Для i = 0 По массив.Количество() - 2 Цикл
        Для j = 0 По массив.Количество() - i - 2 Цикл
            Если массив[j] > массив[j + 1] Тогда
                // Обмен элементов
                временное = массив[j];
                массив[j] = массив[j + 1];
                массив[j + 1] = временное;
            КонецЕсли;
        КонецЦикла;
    КонецЦикла;
    
    // Выводим отсортированный массив
    строкаОтсортированный = "Отсортированный массив: ";
    Для каждого число Из массив Цикл
        строкаОтсортированный = строкаОтсортированный + число + ", ";
    КонецЦикла;
    строкаОтсортированный = Лев(строкаОтсортированный, СтрДлина(строкаОтсортированный) - 2);
    Сообщить(строкаОтсортированный);
Показать
37. comol 5241 16.05.25 11:17 Сейчас в теме
(11)
после нескольких подсказок
ключевое слово :)))
12. van_za 299 11.05.25 21:41 Сейчас в теме
Актуально, актуально, отличная статья!!!
13. webester 26 12.05.25 06:02 Сейчас в теме
Кому интересно попробовать такую фичу, ставьте лайк, пишите коммент :)

Ставлю лайк, пишу коммент :)
comol; tres_passer; +2 Ответить
14. user612295_death4321 12.05.25 07:59 Сейчас в теме
Мне крайне сильно импонирует фраза "лучший код - код, который не написан".

Из моей практики, пока как мне кажется, для тех задач которые я скармливаю нейронкам лучше всего справляется claude sonnet 3.7. Он прямо красавчик, он не сильно шарит за сложные структуры данных платформы, а просто херачит тебе код на понятных для него структурах типа Массива \ Соответствие - но код то работает.

Отлично решаются задачи, где не важен бизнес контекст:
1. Написание каких нибудь инфраструктурных методов, которые отсутствуют в БСП. Например переложить какой нибудь JSON на таблицу значений, когда в твоем JSON разные типы данных, а не просто в лоб построить структуру ТЗ по первой строке JSON.
2. На мой взгляд довольно отлично справляется с рефакторингом. Сводит дублирование кода в одни и те же процедуры, строковые идентификаторы отлично оборачивает в функции.
3. Написание каких то сложных алгоритмов, контекст которых ты способен передать в промте и этого достаточно. Причем я здесь под сложностью описываю, не то что они очень сложные, а скорее что на них надо потратить много мыслетоплива и энергии (затраты на отладку алгоритма).

В общем по моему субъективному мнению, на Май 2025 нейронки вполне себе стали ассистентом который приносит пользу.

Я недавно писал небольшую подсистему "Идеи", которая практически полностью была написана какими то автоматизированными инструментами:
1. ChatGPT сформировал текстовые абзацы, в которых призыв как важно лайкать\дизлайкать идею.
2. Нейронки разного назначения поубивали фон в картинках чтоб было красиво.
3. Инструкции накиданы через демо-сервиса Blesk (скриншоты) + ChatGPT (описание).
4. Claude Sonnet отлично порефакторил код.
5. 1С:Напарник подокументировал методы.
6. https://infostart.ru/1c/tools/2297756/ - а эта штука оформила модули.

Ускорила ли мне нейронка выполнение этой задачей? Может быть да, а может и нет, но я могу однозначно сказать, что она мне с экономила уйму мыслетоплива.
Somebody1; wonderboy; bulpi; skif-m; +4 Ответить
15. user612295_death4321 12.05.25 11:37 Сейчас в теме
(14) еще вспомнил одну задачу, которую мне тоже нейронками понравилось решать. Заполнение ПолеHTMLДокумента. Все вот эти JavaScript, CSS, HTML.
25. RustIG 1884 14.05.25 10:42 Сейчас в теме
(14) у вас статья получилась бы куда лучше про ИИ, чем у маэстро...
28. user612295_death4321 14.05.25 11:56 Сейчас в теме
(25) Не умею я красиво подавать материал, да и в теме все таки не глубоко разбираюсь, чтоб какие то выводы на широкую аудиторию вещать :)
16. Alef 12.05.25 13:52 Сейчас в теме
Попробуйте проверить Qwen 2.5 от Alibaba
17. wonderboy 558 12.05.25 19:58 Сейчас в теме
(16) Уже Qwen 3 ведь есть. Как раз готовлю сравнение открытых LLM.
24. RustIG 1884 14.05.25 10:40 Сейчас в теме
(16) попробуйте его проверить через 2 года....
38. comol 5241 16.05.25 11:18 Сейчас в теме
(16)
проверить Qwen 2.5 от Alibaba
Я его предварительно чекнул и даже 3-й чекнул... грустнее дипсика результаты получились - в обзор не стал включать
18. lada2011 13.05.25 13:56 Сейчас в теме
Получается, желаешь писать правильный код - заплати ИИ.
user717534; RustIG; +2 Ответить
23. RustIG 1884 14.05.25 10:39 Сейчас в теме
(18) как будто да, а так - 20 лет пользовались гуглом и яндекс-поиском - копировали готовый код - и платили только за инет и кофе....
SirAlex; user717534; +2 Ответить
40. comol 5241 16.05.25 11:30 Сейчас в теме
(18)
Получается, желаешь писать правильный код - заплати ИИ.
ну или юзай открытые :)
46. m_aster 123 16.05.25 13:00 Сейчас в теме
Дипсик бесплатный, вполне неплохо с языком 1С справляется, платно подключение по API.
21. cdrw3 526 14.05.25 08:37 Сейчас в теме
А тут как раз проблема в том, что джуны частенько считают сумму на клиенте. Очевидная история - сходить на сервер.

Извините за глупый вопрос, в чём очевидность? Чем поход на сервер лучше подсчёта суммы на клиенте (хоть через функцию Итог() коллекции данных формы, хоть через цикл)?
22. RustIG 1884 14.05.25 10:38 Сейчас в теме
(21) Александр, хороший вопрос.... Для веб-ориентированного программирования - когда на мобильнике окно открыто, а мобильник настолько старый и немощный, что даже не сложит 10 -20 строк на своем процессоре.
В общем случае, все расчеты стараются перевести на сервер, который далеко запредельно "за полярным кругом", чтобы не перегревался...
26. cdrw3 526 14.05.25 10:50 Сейчас в теме
(22) Точно, табличная часть же порциями подгружается, затупил. Спасибо!
29. RustIG 1884 14.05.25 12:18 Сейчас в теме
(26) в клиент-серверной архитектуре УФ - все подается порциями, не только табл. часть.
поля на форме - тоже подаются порциями.
27. yasar92 8 14.05.25 11:19 Сейчас в теме
задача 3.

gemini:
ВЫБРАТЬ
ОстаткиТовараСрезПоследних.Цена КАК ЦенаТовара
ИЗ
РегистрНакопления.ОстаткиТовара.СрезПоследних(&ДатаСреза, Номенклатура = &Номенклатура) КАК ОстаткиТовараСрезПоследних

регистр накоплений срез последних - и вы ему написали 9 балов?
30. starik-2005 3177 14.05.25 15:49 Сейчас в теме
(27) Ага, при том дипсик написал так:
Запрос = Новый Запрос;
Запрос.Текст = 
"ВЫБРАТЬ
    ОстаткиТовара.Номенклатура КАК Номенклатура,
    ОстаткиТовара.Цена КАК Цена
ИЗ
    РегистрНакопления.ОстаткиТовара КАК ОстаткиТовара
ГДЕ
    ОстаткиТовара.Период <= &Дата
    И ОстаткиТовара.Количество > 0
    И ОстаткиТовара.Период = 
        (ВЫБРАТЬ
            МАКСИМУМ(Подзапрос.Период)
        ИЗ
            РегистрНакопления.ОстаткиТовара КАК Подзапрос
        ГДЕ
            Подзапрос.Период <= &Дата
            И Подзапрос.Номенклатура = ОстаткиТовара.Номенклатура)";
Показать
Имха, очень даже. Период - в индексе, отсекается по основной таблице в первом условии, потом вытаскивается последний из оставшихся. Все в индексе. Количество > 0 - сомнительно, конечно.
41. comol 5241 16.05.25 11:31 Сейчас в теме
(27) 2.5 pro preview? У меня другой результат...
53. m_aster 123 19.05.25 12:41 Сейчас в теме
(27) В том и дело, что, на мой взгляд, DeepSeek справился лучше(примеры кода прямо по вопросу из статьи, без изменений). т.к. первым вариантом предложил код выборки именно из основной таблицы, а вторым срез последних, о котором речи в вопросе нет, причем, ничего не надо дописывать, можно брать и пользовать:

Вот запрос на языке 1С, который получает цену товара на указанную дату из основной таблицы регистра накопления "ОстаткиТовара":

Запрос = Новый Запрос;
Запрос.Текст = 
"ВЫБРАТЬ
|    ОстаткиТовара.Номенклатура,
|    ОстаткиТовара.Цена
|ИЗ
|    РегистрНакопления.ОстаткиТовара КАК ОстаткиТовара
|ГДЕ
|    ОстаткиТовара.Дата = &ДатаЗапроса";

// Устанавливаем параметр даты
Запрос.УстановитьПараметр("ДатаЗапроса", ДатаЗапроса);

// Выполняем запрос
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();

// Обрабатываем результаты
Пока Выборка.Следующий() Цикл
    Сообщить("Товар: " + Выборка.Номенклатура + ", Цена: " + Выборка.Цена);
КонецЦикла;
Показать

----------

Альтернативный вариант с использованием остатков
Если вам нужно получить последнюю цену на заданную дату (а не строго на эту дату), используйте такой запрос:

Запрос = Новый Запрос;
Запрос.Текст = 
"ВЫБРАТЬ
|    ОстаткиТовара.Номенклатура,
|    ОстаткиТовара.Цена
|ИЗ
|    РегистрНакопления.ОстаткиТовара.СрезПоследних(&ДатаЗапроса, ) КАК ОстаткиТовара";

Запрос.УстановитьПараметр("ДатаЗапроса", ДатаЗапроса);
Показать

И еще добавил пример запроса с отбором по номенклатуре(можно тоже привести, добавлен только параметр запроса для номенклатуры)
31. capitan 2485 16.05.25 10:41 Сейчас в теме
Вспоминается...
Прикрепленные файлы:
user1835472; SirAlex; user717534; +3 Ответить
49. starik-2005 3177 16.05.25 17:45 Сейчас в теме
(31)
Вспоминается
Все туда идет. Кто не может толково объяснить что-то разрабу, тот и до гпт не сможет донести, а кто сможет, тому и разраб не нужен будет. Пока вторых мало.
54. m_aster 123 19.05.25 13:53 Сейчас в теме
(49) Ага, как там пишут в вакансиях - стрессоустойчивость и умение общаться с заказчиком на его языке).
48. roman72 401 16.05.25 15:18 Сейчас в теме
Так в чем в итоге различие между подходом RAG и подходом с векторной БД и MCP?
55. user612295_death4321 22.05.25 07:51 Сейчас в теме
(49) Я честно говоря на днях заметил профдеформацию, что я людям теперь стал ставить задачи примерно так же как промт с ИИ, чтоб получить максимально ожидаемый результат от них))))
56. starik-2005 3177 22.05.25 08:31 Сейчас в теме
(55)
чтоб получить максимально ожидаемый результат от них
Жаль, что для этого пришлось ждать эпохи ИИ. Я всегда старался так ставить задачу, чтобы любая кухарка могла понять, о чем идет речь. А уровнь образования последние 30 лет как минимум не растет.
user1835472; m_aster; NeLenin; +3 Ответить
Оставьте свое сообщение