Каким ботом ChatGPT пользоваться для вопросов по 1С и как избежать ошибок в сгенерированном коде?

Программист 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

Современные разработчики всё чаще обращаются к искусственному интеллекту как к альтернативе традиционным профессиональным форумам. Это обусловлено желанием получить быстрый ответ без доли троллинга и нравоучений, характерных для сообществ со строгой иерархией. Однако использование ChatGPT, YaGPT и других языковых моделей в контексте разработки на платформе 1С:Предприятие сопряжено с серьезными рисками. Разберем подробно, почему нейросети "галлюцинируют", какие боты популярны среди программистов и как правильно использовать ИИ в своей работе.

Проблема "галлюцинаций" и выдуманных методов

Основная сложность при работе с ИИ в сфере 1С заключается в том, что нейросеть стремится дать синтаксически правильный и "складный" ответ, даже если она не обладает точными знаниями о конкретном методе платформы. Проанализируем ситуацию на примере задачи по сортировке массива. Рассмотрим типичный ложный ответ, который может выдать популярный бот @chatgpt_gpt4bot:


// Пример НЕВЕРНОГО кода, сгенерированного ИИ
Массив = Новый Массив;
Массив.Добавить(3);
Массив.Добавить(1);
СортированныйМассив = СортироватьПоЗначениям(Массив); // Такого метода не существует в 1С!

В данном случае бот аппроксимирует знания из других языков программирования (например, Python или JavaScript) на синтаксис 1С. Выясним причину такого поведения: нейросеть работает по принципу предсказания следующего слова на основе контекста. Поскольку 1С — это кириллический язык с относительно небольшим объемом открытого кода в мировых репозиториях по сравнению с Java или C++, ИИ часто "додумывает" недостающие функции, делая их похожими на стандартные методы платформы.

Сравнение ответов разных нейросетей

Посмотрим на примеры того, как разные модели справляются с одной и той же задачей. Рассмотрим запрос на сортировку массива для ChatGPT и YaGPT (Алиса).

Вариант от ChatGPT: Часто предлагает написать процедуру сортировки вручную ("пузырьком") или использовать несуществующий метод СортироватьПоВозрастанию. Хотя ручная реализация алгоритма будет работать, она крайне неэффективна для платформы 1С.

Вариант от YaGPT: Может предложить использовать метод Упорядочить для обычного массива, что также является ошибкой, так как этот метод применим к другим типам объектов (например, к таблице значений или списку значений).

Вывод: На текущий момент нельзя слепо копировать код из чат-бота в конфигуратор. Любой предложенный метод, такой как СортироватьПоЗначениям или СортироватьПоУбыванию, необходимо проверять в официальном Синтаксис-помощнике.

Технический хак: Динамический вызов функций в 1С

В процессе обсуждения ограничений языка 1С, которые ИИ часто пытается обойти несуществующими методами, разработчики напомнили о полезном приеме. Рассмотрим ситуацию, когда нам нужно передать функцию в качестве параметра (что напрямую в 1С невозможно). Разберем по шагам, как это реализовать через механизм ВЫЧИСЛИТЬ:

  1. Передаем в качестве параметра строку с именем функции.
  2. Используем конструкцию ВЫЧИСЛИТЬ(ИмяФункции + "()") для выполнения кода.

Проанализируем пример кода:


// Динамический вызов функции по имени
ИмяФункции = "МояСпециальнаяОбработка";
Результат = Вычислить(ИмяФункции + "()"); 

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

Как повысить качество ответов ИИ для 1С

Чтобы минимизировать "вранье" бота, проанализируем современные подходы к промпт-инжинирингу:

Использование ИИ для поиска информации

Рассмотрим еще один полезный кейс использования ChatGPT — помощь в подборе ключевых слов для поиска на профессиональных ресурсах (например, Инфостарт). Часто разработчик не может найти решение, потому что использует неверную терминологию.

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

Перспективы развития ИИ в 1С

Фирма "1С" уже внедряет технологии машинного обучения через сервис 1С:Предприятие Интеллект. Это включает в себя:

В отличие от универсальных чат-ботов, эти инструменты обучаются на специфических бизнес-данных и работают внутри защищенного контура, что снимает вопросы безопасности и утечки корпоративного кода на внешние сервера OpenAI.

Итоговая рекомендация: Рассматривайте ChatGPT не как "заменитель программиста", а как высокопроизводительного, но иногда склонного к фантазиям стажера. Используйте его для генерации шаблонов алгоритмов, поиска идей и переименования переменных, но всегда пропускайте результат через фильтр собственного опыта и Синтаксис-помощника.

← На главную