Журнал инженера-программиста
Жаль, что ChatGPT и Copilot до сих пор не научились разбираться в коде 1С
На днях написал про неумение больших языковых моделей понимать 1С, а сегодня в ленте новостей увидел ссылку на свежее исследование в этой области. Для сравнения были взяты 4 плагина для среды разработки и 5 онлайн сервисов. По результату исследования нигде не работает кодогенерация, лишь у некоторых получается вести документацию.
А мог ли быть иной результат???
В каких языках программирования (ЯП) хороши большие языковые модели?
Например, в Python и JavaScript!
Есть ли в открытом доступе документация по этим ЯП для обучения нейронок?
Есть! Очень подробная с примерами. Причем по каждой версии раздельно!
Есть ли в открытом доступе образцы кода для обучения ИИ?
Есть! На GitHub есть сотни тысяч открытых проектов, а на Stack Overflow есть сниппеты кода с подробным описанием их работы и какую задачу они выполняют.
Но даже такие тепличные условия не защищают от сбоев - сгенерированный код часто не работает с первой попытки и нужно выполнить несколько итераций, сообщая LLM какие ошибки происходят на этапах компиляции и исполнения.
Что же мы имеем в 1С?
1️⃣ Открытой документации для программистов просто не существует. Для доступа к описанию языка нужно покупать доступ на ИТС или проходить регистрацию на портале разработчиков (но для последних часть технических разделов по языку 1С остается закрытым).
2️⃣ Язык 1С очень стар и в нем накопилось множество не логичных реализаций, а так же внезапно разного поведения в похожих ситуациях. Усложняет ситуацию странный подход к "обратной совместимости" и различное поведение даже минорных версий.
3️⃣ Язык 1С - это изначально два набора языков с англоязычным и с кириллическим синтаксисом. При чем в разных версиях англоязычные синонимы встроенных функций могут меняться!
4️⃣ Фирма 1С никогда не продвигала язык своей одноименной платформы отдельно от платформы и официально язык вообще не имеет названия! Это очевидно затрудняет сбор данных при обучении языковых моделей общего назначения.
5️⃣ Подавляющая часть кода на языке 1С защищена от открытых публикаций и распространения лицензиями и договорами.
6️⃣ На GitHub очень мало репозиториев 1С-кода и в качестве расширения для программных модулей используется BSL. Так же в тексте файлов нет никаких указаний, что это код на языке 1С.
7️⃣ На Stack Overflow на сегодня всего 654 вопроса, из которых большая часть касается Битрикс (CMS тоже принадлежит 1С) и лишь у некоторых вопросов есть единичные ответы. С точки зрения обучения - материала нет!
Сила больших языковых моделей типа ChatGPT в том, что они анализируют миллионы похожих образцов и на их базе учатся делать "по аналогии". Для языка 1С просто нет объема для обучения и потому "магия" не работает. Можна попробовать "обучение" скормить в виде промпта, но этот титанический труд должен кто-то сделать и количество токенов для полезного запроса будет пропорционально уменьшаться с ростом качества "обучения".
Безусловно ИИ в будущем могут начать работать с 1С при условии, что появится открытая документация и станут доступными многочисленные образцы кода (читай "никогда").
#1C #LLM #MachineLearning
А мог ли быть иной результат???
В каких языках программирования (ЯП) хороши большие языковые модели?
Например, в Python и JavaScript!
Есть ли в открытом доступе документация по этим ЯП для обучения нейронок?
Есть! Очень подробная с примерами. Причем по каждой версии раздельно!
Есть ли в открытом доступе образцы кода для обучения ИИ?
Есть! На GitHub есть сотни тысяч открытых проектов, а на Stack Overflow есть сниппеты кода с подробным описанием их работы и какую задачу они выполняют.
Но даже такие тепличные условия не защищают от сбоев - сгенерированный код часто не работает с первой попытки и нужно выполнить несколько итераций, сообщая LLM какие ошибки происходят на этапах компиляции и исполнения.
Что же мы имеем в 1С?
Сила больших языковых моделей типа ChatGPT в том, что они анализируют миллионы похожих образцов и на их базе учатся делать "по аналогии". Для языка 1С просто нет объема для обучения и потому "магия" не работает. Можна попробовать "обучение" скормить в виде промпта, но этот титанический труд должен кто-то сделать и количество токенов для полезного запроса будет пропорционально уменьшаться с ростом качества "обучения".
Безусловно ИИ в будущем могут начать работать с 1С при условии, что появится открытая документация и станут доступными многочисленные образцы кода (читай "никогда").
#1C #LLM #MachineLearning
Please open Telegram to view this post
VIEW IN TELEGRAM
Хабр
LLM и 1С: изучаем сервисы для автоматизации написания кода 1С
Золотая мечта в IT – это сделать так, чтобы для написания программ не требовались особые навыки и знания. Для этого разрабатываются различные подходы и low-code платформы, и вот вполне закономерно был...
👍3