Умная консоль кода: ИИ-помощник с GigaChat
Разработка - Инструментарий разработчика
Файлы
ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний
Оформите подписку на компанию для решения рабочих задач
Оформить подписку и скачать решение со скидкойВы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
Внешняя обработка для 1С:Предприятия 8.3, которая превращает рабочее место разработчика в связку «искусственный интеллект + выполнение кода». Задача формулируется обычными словами — модель GigaChat возвращает готовый код на языке 1С, а обработка позволяет тут же выполнить его на клиенте или на сервере и увидеть результат. Копировать между окнами ничего не нужно: ответ модели переносится в редактор одной кнопкой. Диалог с моделью многоходовой и сохраняет контекст, поэтому решение можно уточнять и дорабатывать по шагам.
Доработка конфигурации не требуется: обработка распространяется одним внешним файлом и не использует объекты метаданных конфигурации.
Возможности
Работа с ИИ (GigaChat)
- Запросы к модели GigaChat прямо из 1С: выбор модели, температура, ограничение длины ответа.
- Многоходовой диалог: флажок «Учитывать историю диалога» передаёт модели предыдущие вопросы и ответы, поэтому можно уточнять задачу, просить переписать или дополнить код. История живёт в контексте формы до закрытия обработки; кнопка «Очистить историю» начинает разговор заново.
- Счётчик расхода: поле «Потрачено токенов» показывает, сколько токенов израсходовано на последний запрос (значение берётся из блока
usageответа сервиса). - Кнопка «Вставить в редактор» — перенос ответа модели в поле выполняемого кода без копирования через буфер обмена.
- Кэширование токена доступа: токен переиспользуется, пока не истёк срок действия; при ответе HTTP 401 он запрашивается заново и запрос автоматически повторяется один раз.
- Понятные сообщения об ошибках сервиса (HTTP 401 — ключ или токен, HTTP 429 — превышена частота запросов).
- Ключ авторизации вводится в поле формы, отображается точками (парольный режим) и нигде не хранится.
Выполнение кода
- Выполнение кода на клиенте или на сервере (флажок «Выполнить на сервере»).
- Режим «Вычислить как выражение»: код считается выражением, его значение выводится в журнал.
- Перехват ошибок выполнения: текст ошибки попадает в журнал, а не в системное окно.
- Накопительный журнал результата без ограничения длины; кнопки «Очистить результат» и «Сохранить результат» (выгрузка в текстовый файл).
- Встроенная страница «Справка» с описанием возможностей и типовых ошибок.
- Настройки (модель, температура, лимит токенов, флажки, последний код и запрос) сохраняются между запусками.
Интерфейс
|
Элемент |
Назначение |
|
Состояние |
Строка состояния: например, «Ожидание ответа GigaChat...». |
|
Модель GigaChat |
Выбор модели из списка. |
|
Ключ авторизации |
Ключ авторизации GigaChat; вводится вручную, отображается точками (парольный режим), не сохраняется. |
|
Текст запроса |
Текст задания, который отправляется модели. |
|
Параметры запроса |
Температура, максимум токенов, флажок «Учитывать историю диалога». |
|
Кнопки «Запросить ИИ», «Очистить историю» |
Отправка запроса к модели и сброс истории диалога. |
|
Ответ GigaChat |
Ответ модели. |
|
Потрачено токенов |
Количество токенов, израсходованных на последний запрос к модели (только для просмотра). |
|
Кнопка «Вставить в редактор» |
Переносит ответ модели в поле выполняемого кода. |
|
Выполнение кода |
Флажок «Выполнить на сервере», флажок «Вычислить как выражение», кнопка «Выполнить код». |
|
Выполняемый код |
Код, который выполняется. |
|
Журнал |
Значения выражений, отметки о выполнении, тексты ошибок, ответы модели. |
|
Сервис |
Кнопки «Сохранить результат», «Очистить результат», «Справка». |
Горячие клавиши
- Ctrl+Enter — выполнить код.
- Alt+Enter — запрос к GigaChat.
Примеры использования
Сценарий «ИИ пишет код». В поле «Текст запроса» пишется задание обычными словами, например: «Напиши запрос на языке 1С, который выведет 10 последних документов реализации». Нажимается «Запросить ИИ» — ответ модели появляется в поле «Ответ GigaChat». Кнопкой «Вставить в редактор» код переносится в поле выполняемого кода. Если нужно, уточняем следующим запросом: «Добавь в запрос отбор по организации» — история диалога сохраняет контекст, и модель дорабатывает уже написанный код.
Сценарий «проверить сразу». Код, полученный от модели, выполняется на сервере без выхода из обработки: результат и ошибки видны в журнале, ничего не нужно сохранять в конфигурации. Поле «Потрачено токенов» показывает расход на последний запрос.
Вычисление выражения (установлен флажок «Вычислить как выражение»):
ТекущаяДата()
Выполнение кода на сервере (установлен флажок «Выполнить на сервере»):
Запрос = Новый Запрос("ВЫБРАТЬ ПЕРВЫЕ 5 Ссылка ИЗ Справочник.Номенклатура");
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
Сообщить(Выборка.Ссылка);
КонецЦикла;
Как получить ключ авторизации GigaChat
- Войти в личный кабинет GigaChat Studio (developers.sber.ru) и создать проект GigaChat API.
- Открыть проект, в левой панели выбрать раздел «Настройки API» и нажать «Получить ключ».
- В окне «Сохраните ваш Authorization Key» скопировать значение Authorization Key — это и есть ключ авторизации, который вводится в поле на форме обработки. Там же сохранить Client ID и Client Secret.
Важно: ключ авторизации и Client Secret показываются только один раз и в личном кабинете не хранятся — сохраните их в надёжном месте. Получить ключ могут только пользователи с ролями «Владелец» и «Администратор» проекта; для остальных ролей кнопка «Получить ключ» неактивна. При утере или компрометации ключ перегенерируется кнопкой «Получить новый ключ»: при этом указывается срок, в течение которого продолжает действовать предыдущий ключ (не более 250 минут).
Ключ авторизации — это строка Base64 от пары «Client ID : Client Secret»; можно взять готовое значение из личного кабинета либо закодировать пару самостоятельно.
Остальное обработка делает сама: по ключу она получает токен доступа (POST /api/v2/oauth, Basic-схема) и держит его в кэше, пока не истёк срок действия — токен действует 30 минут. Обработка запрашивает область доступа GIGACHAT_API_PERS (API для физических лиц); значение задано в модуле объекта и при необходимости меняется там.
Актуальная инструкция по получению ключа — в документации GigaChat: developers.sber.ru/docs/ru/gigachat/quickstart/ind-using-api.
Требования к среде
- Платформа 1С:Предприятие 8.3.27 и выше.
- Конфигурация — любая: обработка не использует объекты метаданных конфигурации.
- Ключ авторизации GigaChat — вводится в поле на форме, нигде не хранится.
- Установленный на сервере корневой сертификат НУЦ Минцифры — без него защищённое соединение с GigaChat не установится.
- Доступ сервера к ngw.devices.sberbank.ru (порт 9443) и api.giga.chat.
- Право «Сохранение данных пользователя» — для сохранения настроек между сеансами (без него обработка работает со значениями по умолчанию).
Установка и первый запуск
- Открыть внешний файл обработки (.epf) в 1С:Предприятии: «Файл» — «Открыть».
- Заполнить поле «Ключ авторизации» ключом GigaChat.
- При необходимости выбрать модель и задать параметры запроса.
Ограничения
- Обработка не работает в веб-клиенте: оператор «Выполнить» в веб-клиенте недоступен. Используйте тонкий или толстый клиент.
- Код на сервере выполняется без безопасного режима — с полными правами текущего пользователя.
Проверено на следующих конфигурациях и релизах:
- Бухгалтерия предприятия, редакция 3.0, релизы 3.0.207.28
Вступайте в нашу телеграмм-группу Инфостарт