Чеширский кот: Практика автодокументирования разработок на 1С с использованием нейросети на рабочем примере

27.04.26

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

Никто не любит писать документацию. Ещё говорят, что документация устаревает в момент своего написания. Но что если доверить документирование нейросети? Возможно ли получить качественный результат? Возможно. О чём и пойдёт речь в моей статье.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Чеширский кот: База знаний из Зазеркалья (ред. 0.5.0)
.dt 3,15Mb
0 3 000 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Пример: Автодокументирование справочника "Страницы базы знаний"

Код формы элемента


#Область Обработчики_событий_формы

&НаСервере
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
	
	ТекущийОбъект.Содержимое = ТекстРедактора;
	ТекущийОбъект.ТекстВебСтраницы = ТекстHTML;
		
КонецПроцедуры

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	
	ТекстРедактора = Объект.Содержимое;
	ТекстHTML = Объект.ТекстВебСтраницы;
	ДокументHTML = MarkdownСервер.ПодготовитьПолеПромежуточногоHTML();
	
КонецПроцедуры

&НаКлиенте
Процедура ПередЗаписью(Отказ, ПараметрыЗаписи)
	
	ТекстHTML = MarkdownКлиент.СформироватьHTML(ЭтаФорма, Объект.Наименование, ТекстРедактора);
	
КонецПроцедуры

&НаКлиенте
Процедура ПослеЗаписи(ПараметрыЗаписи)
	
	Оповестить("ЗаписанаСтраницаБазыЗнаний");
	
КонецПроцедуры

#КонецОбласти

#Область Обработчики_событий_элементов_формы

&НаКлиенте
Асинх Процедура ВыгрузитьHTML(Команда)
	
	Если Модифицированность Тогда
		Записать();
	КонецЕсли;
	
	Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Сохранение);
	Диалог.Фильтр = "Веб-страница (*.html)|*.html";
	Диалог.Заголовок = "Выгрузка html-представления страницы базы знаний";
	Диалог.ПолноеИмяФайла = Объект.Наименование + ".html";
	
	ВыбранныеФайлы = Ждать Диалог.ВыбратьАсинх();
	
	Если ВыбранныеФайлы = Неопределено Тогда
		Возврат;
	КонецЕсли;
	
	ПутьКФайлу = ВыбранныеФайлы[0];
	
	ТекстовыйДокумент = Новый ТекстовыйДокумент;
	ТекстовыйДокумент.УстановитьТекст(ТекстHTML);
	ТекстовыйДокумент.ЗаписатьАсинх(ПутьКФайлу);
	
КонецПроцедуры

&НаКлиенте
Процедура ПросмотрСтраницыПриНажатии(Элемент, ДанныеСобытия, СтандартнаяОбработка)
	
	СтандартнаяОбработка = Не ПросмотрСтраницыБазыЗнаний.ПерейтиПоСсылке(ДанныеСобытия.href);
		
КонецПроцедуры

&НаКлиенте
Асинх Процедура ВыгрузитьPDFБезКартинок(Команда)
	
	Если Модифицированность Тогда
		Записать();
	КонецЕсли;
	
	Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Сохранение);
	Диалог.Фильтр = "PDF-документ (*.pdf)|*.pdf";
	Диалог.Заголовок = "Выгрузка pdf-представления страницы базы знаний";
	Диалог.ПолноеИмяФайла = Объект.Наименование + ".pdf";
		
	ВыбранныеФайлы = Ждать Диалог.ВыбратьАсинх();
	
	Если ВыбранныеФайлы = Неопределено Тогда
		Возврат;
	КонецЕсли;
	
	ПутьКФайлу = ВыбранныеФайлы[0];
	
	СохранитьPDF(ПутьКФайлу);
	
КонецПроцедуры

#КонецОбласти

#Область Служебные_операции

&НаКлиенте
Процедура СохранитьPDF(ПутьКФайлу)
	
	Текст = ТекстРедактора;
	Текст = СтрЗаменить(ТекстРедактора, Символы.ПС, "<br>");
	
	ТекстHTMLВыгрузки = MarkdownКлиент.СформироватьHTML(ЭтаФорма, Объект.Наименование, ТекстРедактора, Истина);

	ФорматированныйДокумент = Новый ФорматированныйДокумент;
	ФорматированныйДокумент.УстановитьHTML(ТекстHTMLВыгрузки, Новый Структура);
	ФорматированныйДокумент.ЗаписатьАсинх(ПутьКФайлу, ТипФайлаФорматированногоДокумента.PDF);
	
КонецПроцедуры

#КонецОбласти

 

Промпт

Опиши ключевые функциональные возможности кода одноуровневым маркированным списком с заголовком "Функциональные возможности" (заголовок 2).

Далее расскажи про реализацию каждой функциональной возможности в коде (заголовок 2).

Далее отрази функциональные возможности на диаграмме прецедентов PlantUML. Добавь прецедент использования "Создать / изменить страницу". Диаграмму не оборачивай в марки кода markdown (```), но оберни в блок @startuml / @enduml. Назови раздел "Прецеденты использования" (заголовок 2).

Далее отрази также перечисленные процедуры и функции, а также реквизиты формы и реквизиты справочника "Страницы" на диаграмме классов в PlantUML. Назови классы "ФормаЭлемента" и "Справочник Страницы". Диаграмму не оборачивай в марки кода markdown (```), но оберни в блок @startuml / @enduml. После диаграммы перечисли процедуры и функции кода и их алгоритмы в виде таблицы с колонками: имя обработчика, реализуемые функциональные возможности, алгоритм. Назови раздел "Программный интерфейс (API) и метаданные" (заголовок 2).

Далее отрази последовательность вызова кода при работе с markdown, сформировав диаграмму последовательности PlantUML. Диаграмму, не оборачивай в марки кода markdown (```). Назови раздел "Последовательность вызова кода при работе с markdown". Отрази классы: "Пользователь", "ФормаЭлемента", "MarkdownКлиент" (заголовок 2). 

 

Результат

Функциональные возможности

  • Создание и изменение страниц базы знаний.
  • Преобразование Markdown-разметки в HTML.
  • Сохранение страницы в файл формата HTML.
  • Экспорт содержимого страницы в формат PDF.
  • Навигация по ссылкам внутри HTML-представления.
  • Оповещение системы об изменении данных страницы.

 

Реализация функциональных возможностей

  • Создание и изменение страниц: Реализовано в процедуре `ПриСозданииНаСервере` (загрузка данных в поля формы) и `ПередЗаписьюНаСервере` (сохранение текстов из реквизитов формы в объект справочника).
  • Преобразование Markdown в HTML: Выполняется на клиенте через `MarkdownКлиент.СформироватьHTML`, вызываемый в обработчике `ПередЗаписью`.
  • Сохранение в HTML: Реализовано в процедуре `ВыгрузитьHTML`, которая использует `ДиалогВыбораФайла` и объект `ТекстовыйДокумент` для записи данных на диск.
  • Экспорт в PDF: Реализовано в процедуре `ВыгрузитьPDFБезКартинок` и служебной `СохранитьPDF`, где используется `ФорматированныйДокумент` для интерпретации HTML и записи файла.
  • Навигация по ссылкам: Реализована через `ПросмотрСтраницыПриНажатии`, где стандартная обработка подавляется, а переход осуществляется через `ПросмотрСтраницыБазыЗнаний.ПерейтиПоСсылке`.
  • Оповещение системы: Используется процедура `ПослеЗаписи`, вызывающая `Оповестить("ЗаписанаСтраницаБазыЗнаний")` для обновления связанных данных в интерфейсе.

 

Прецеденты использования

 

 

Программный интерфейс (API) и метаданные

 

Имя обработчика Реализуемые возможности Алгоритм
ПередЗаписьюНаСервере Сохранение данных Перенос текста из полей формы в атрибуты объекта.
ПриСозданииНаСервере Инициализация формы Заполнение полей формы из объекта, подготовка HTML-поля.
ПередЗаписью Генерация HTML Вызов Markdown-конвертера для обновления `ТекстHTML`.
ПослеЗаписи Оповещение Вызов `Оповестить` для системы.
ВыгрузитьHTML Сохранение файла Открытие диалога, запись `ТекстHTML` в файл.
ПросмотрСтраницыПриНажатии Навигация Отмена стандартной обработки, вызов `ПерейтиПоСсылке`.
ВыгрузитьPDFБезКартинок Экспорт в PDF Открытие диалога, вызов `СохранитьPDF`.
СохранитьPDF Формирование PDF Генерация HTML, загрузка в `ФорматированныйДокумент`, запись файла.

 

Последовательность вызова кода при работе с markdown

 

 

Используемая модель нейросети и цена вопроса

В качестве модели нейросети я использую "gemini-3.1-flash-lite-preview". Она недорогая (генерация по промпту выше обошлась всего в 35 копеек). Но качественно понимает промпты, создавая ожидаемые результаты, и в особенности PlantUML диаграммы. Начинал я с GigaChat от Сбер, но он выводит галиматью в качестве UML диаграмм и не так хорошо предоставляет ожидаемый результат по промптам. Потом попробовал "claude-opus-4.7", но в нём цена за промпт составила космические 37 рублей. Меньше стоила "gemini-3.1-pro-preview" (10 рублей за промпт), но всё равно это дорого. Ведь при работе с нейросетью проходит несколько итераций до формирования финального промпта. А в таких условиях даже 10 рублей очень даже кусаются.

В итоге остановился на "gemini-3.1-flash-lite-preview", полностью покрывающую мои потребности.

В качестве посредника при обращении к нейросети я использую портал aitunnel.ru. Ведь нейросети от Google (gemini), как и многие другие, официально не предоставляются в России. Обратиться к ним можно только через посредников-агрегаторов нейросетей.

Из преимуществ работы aitunnel.ru хочу отметить его бюджетность (я стартовал работу, пополнив баланс всего лишь на 500 рублей, из которых у меня ещё остались 330 руб.), предоставление REST API для программной работы с нейросетями и удобство использования. Переключение между различными моделями нейросетей осуществляется можно сказать "на лету", всего лишь изменением имени нейросети в REST API запросе.

 

Инструментарий автоматизации

Для работы с нейросетью я пользуюсь инструментом "Чеширский кот: База знаний из Зазеркалья".

  • Он хранит страницы знаний в формате markdown с поддержкой вставки картинок и PlantUML диаграмм
  • Результат отображается в виде html
  • Поддерживает работу с нейросетью по каждой отдельной странице знаний. Страница знаний представляется контекстом, передаваемым нейросети в виде pdf-файла. Работа же с нейросетью заключается в последовательном задании ей вопросов.

 

 

  • Обращение к нейросети и генерация ответа происходит автоматически при записи вопроса. Ответ нейросети заносится в связанную с вопросом страницу базы знаний

 

 

Вступайте в нашу телеграмм-группу Инфостарт

база знаний markdown памятка справка PlantUML UML чеширский кот нейросеть GigaChat wiki говорящая вики DeepWiki документация зазеркалье ИИ AI вики блокнот заметки ТЗ

См. также

Инструментарий разработчика Нейросети Платные (руб)

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

15250 руб.

25.08.2025    52471    106    29    

117

Нейросети 1С:Предприятие 8 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 Платные (руб)

Умный Excel" - ИИ-супердвигатель, который превращает часы работы в минуты! Технологии будущего уже здесь: загрузил Excel "магия ИИ" готовый результат

8540 руб.

02.07.2025    3951    2    0    

6

Нейросети Пользователь 1С:Предприятие 8 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 Оптовая торговля, дистрибуция, логистика Россия Управленческий учет Платные (руб)

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

6100 руб.

03.04.2024    15152    8    0    

12

Мастера заполнения Нейросети 1С:Предприятие 8 1C:Бухгалтерия 1С:Управление торговлей 11 Платные (руб)

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

5084 руб.

13.03.2023    22579    52    50    

80

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

Мир ИИ меняется все быстрее, появляется куча новых моделей. И если раньше китайцы дистиллировали амеров, то сейчас вектор меняется и амеры начинают дистиллировать китайцев. Клауд 4.7 со своими 1,6Т параметров догоняет дипсик 4 с его 1,6Т, а Kimi 2.6 с 1Т решает задачи программирования лучше большинства программистов. Мы вступили в эпоху триллионных сетей, и это сильно влияет на прям вот вообще все.

вчера в 17:00    306    starik-2005    28    

10

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

Рассказываю, как собрал себе персональный сайт-портфолио за один вечер через ИИ. Без React, без сборки, чистый HTML/CSS/JS, деплой за 15 минут и домен за 200 рублей в год. В статье — рабочие промпты и честное сравнение с «классическим» путём по времени и деньгам.

24.04.2026    1723    Ibrogim    66    

23

Инструментарий разработчика Нейросети Программист 1С 8.3 1С:Управление нашей фирмой 3.0 Абонемент ($m)

Друг спросил: «Можно ли в 1С получать биржевые котировки в реальном времени — прямо вот здесь и сейчас?» Я вспомнил про WebSocketКлиентСоединения, появившийся в платформе 8.3.27, но отложил тему «на потом». А потом наткнулся на Mini AI 1C — десктопный ИИ-помощник — и решил: пора совместить приятное с полезным и протестировать ИИ в реальной задаче.

1 стартмани

20.04.2026    577    andy23    3    

5

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

Статья описывает первый практический опыт использования искусственного интеллекта для разработки на платформе 1С:Предприятие 8.3. Я, изначально скептически настроенный к применению ИИ в программировании, столкнулся с задачей срочного переноса функционала Telegram-бота на электронную почту из-за блокировки Telegram. В условиях ограниченного доступа к инструментам был использован доступный ИИ-сервис для анализа существующего кода, проектирования архитектуры решения и генерации нового модуля отправки писем. В статье подробно показан процесс постановки задач, уточнения требований, генерации кода, исправления ошибок и финального внедрения решения. В результате был создан полноценный модуль на 1С объемом около 2000 строк кода, успешно внедренный и использованный для автоматической рассылки отчетов.

15.04.2026    3641    apatyukov    77    

21
Для отправки сообщения требуется регистрация/авторизация