Редактор схем JSON для искусственного интеллекта

09.04.25

Разработка - Инструментарий разработчика

Если вы раздумываете, какую бы среду разработки освоить в дополнение к старому доброму Конфигуратору, тогда для вас самое время посмотреть на этот редактор.

Скачать файл

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

Наименование Бесплатно
Редактор схем JSON для искусственного интеллекта
.epf 10,20Kb
28
28 Скачать бесплатно

Редактор JSON схем для искусственного интеллекта входит в состав Библиотеки искусственного интеллекта для 1С. Также вы можете скачать его в виде отдельной обработки. Редактор JSON схем это то, что необходимо разработчику, занимающемуся применением технологий искусственного интеллекта в бизнесе. Вы, возможно, слышали про промт-инжиниринг. Лично мне этот термин не нравится. Дело в том, что в промте, как таковом, нет никакого инжиниринга. Хотя уровень владения русским (или еще каким) языком у нас у всех немного разный, но для работы с искусственным интеллектом эти различия не имеют значения. У каждого из нас хватит скиллов сказать, что ему надо. Здесь не требуется инжиниринг. Сила искусственного интеллекта как раз в том, что вы можете выражаться неграмотно и даже туманно. ИИ вас поймет, причем, лучше, чем человек.

Другой вопрос в том, что одним промтом вы мало чего добьетесь. Чтобы получить что-то по настоящему работающее, вам надо будет соединить бла-бла-бла (то есть промт) с четкой структурой, в которой могут быть иерархия, массивы (не что иное, как циклы). И это уже будет действительно инжиниринг.

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

На сайте OpenAI иллюстрация простейшего вызова функции выглядит так

 

 

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

В редакторе это будет выглядеть более лаконично

 

 

Однако, этот пример слишком прост. Сделаем в редакторе что-нибудь более содержательное. Допустим, мы хотим организовать ввод графиков работы сотрудников со слов пользователя. В заголовке укажем имя функции (его надо заполнять латиницей) и описание. Описание важный элемент управления процессом. Но, как я уже говорил выше, все работает только в связке со структурой, которую надо задать. Первым параметром у нас будет имя мастера (сотрудника). С ним все просто. Вторым параметром будет список времени работы по дням недели. Каждый элемент этого списка будет включать в себя название дня недели, время начала работы, время окончания работы. Вот, как это будет выглядеть в редакторе

 

  

 

Здесь все более или менее наглядно. В то время как относительно JSON схемы такого не скажешь.

{
"type": "function",
"name": "setWorkSchedule",
"description": "Установить график работы мастера по дням недели",
"strict": true,
"parameters": {
"type": "object",
"properties": {
"masterName": {
"type": "string",
"description": "имя мастера"
},
"schedule": {
"type": "array",
"description": "график работы по дням недели",
"items": {
"type": "object",
"properties": {
"day": {
"enum": [
"понедельник",
"вторник",
"среда",
"четверг",
"пятница",
"суббота",
"воскресенье"
],
"type": "string",
"description": "день недели"
},
"shiftStart": {
"type": "string",
"description": "время начала работы в формате ЧЧ:ММ"
},
"shiftEnd": {
"type": "string",
"description": "время окончания работы в формате ЧЧ:ММ"
}
},
"required": [
"day",
"shiftStart",
"shiftEnd"
],
"additionalProperties": false
}
}
},
"required": [
"masterName",
"schedule"
],
"additionalProperties": false
}
}

Но именно такого вида схему требуется передавать в  API. Поэтому скопируем ее из вкладки JSON в справочник инструментов

 

 

И посмотрим, как это работает

 

 

Результатом вызова будет структура, в которой, помимо прочего, будет указано имя функции и JSON, с аргументами функции. Обработка БИИ_Пример показывает нам этот результат в таком простом виде.

Еще пример

 

  

 

Обратите внимание, нам не потребовалось отдельно объяснять, что с "двух до восьми" это не с двух часов ночи. Искусственный интеллект понимает, что раз уж речь идет о графике работы сотрудника, то "с двух до восьми" это скорее все-таки с 14:00 до 20:00. Такое понимание и является ключевой особенностью новой технологии.

Пример с графиками, кстати, вполне практичный. Пользователю потребуется всего 2 секунды (чуть не дотягивает до 1 с))) для того, чтобы произнести "Онегин работает по будням с двух до восьми" и график готов. Такой скорости и легкости вы не получите никакими другими способами. А значит, ожидайте, что в скором времени все пользователи начнут требовать чего-то такого.

Вместе с библиотекой этот редактор образует самую настоящую среду разработки, которую имеет смысл осваивать уже сейчас. 

Проверено на следующих конфигурациях и релизах:

  • Управление торговлей, редакция 11, релизы 11.5.21.116

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

15500 руб.

02.09.2020    183631    1023    403    

966

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

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

8400 руб.

20.08.2024    23991    158    84    

155

Пакетная печать Печатные формы Инструментарий разработчика Программист Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

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

22200 руб.

06.10.2023    20213    51    19    

86

Инструменты администратора БД Инструментарий разработчика Роли и права Программист Платформа 1С v8.3 1C:Бухгалтерия Россия Платные (руб)

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

15000 руб.

10.11.2023    13603    56    33    

76

Инструментарий разработчика Программист Платформа 1С v8.3 Платные (руб)

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

9360 руб.

17.05.2024    30411    103    48    

147

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

Расширение для конфигурации “Конвертация данных 3”. Добавляет подсветку синтаксиса, детальную контекстную подсказку, глобальный поиск по коду.

20000 руб.

07.10.2021    19076    7    32    

43

Инструментарий разработчика Платформа 1С v8.3 1C:Бухгалтерия 1С:ERP Управление предприятием 2 Платные (руб)

Разработка Конструктор автоматизированных рабочих мест "Конструктор АРМ" реализована в виде расширения и является универсальным инструментом для создания АРМ любой сложности в пользовательском режиме.

3600 руб.

27.12.2024    2297    4    0    

8
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. JohnyDeath 302 09.04.25 11:15 Сейчас в теме
Супер!
Сам немного задолбался описывать схемы и тоже поставил себе в планы сделать визуальный конструктор схемы json.
Еще как пожелание: чтобы можно было построить схему, скормив ему уже готовый json-пример.
Я перегонял обычно через онлайн утилиты типа этой: https://transform.tools/json-to-json-schema
4. mkalimulin 1514 09.04.25 11:42 Сейчас в теме
(1) Отличная идея! Попробую сделать
JohnyDeath; +1 Ответить
2. JohnyDeath 302 09.04.25 11:31 Сейчас в теме
И еще отбьютифалить бы итоговую json-схему
Прикрепленные файлы:
6. mkalimulin 1514 09.04.25 11:45 Сейчас в теме
(2) Тут что называется "руки не добрались"
10. JohnyDeath 302 09.04.25 11:58 Сейчас в теме
(6) там достаточно в добавить в "ЗаписьJSON.УстановитьСтроку" параметр:

ПараметрыЗаписиJSON = Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Авто, Символы.Таб);
11. mkalimulin 1514 09.04.25 11:59 Сейчас в теме
(10) Спасибо за подсказку!
12. Viktor_Ermakov 374 09.04.25 15:45 Сейчас в теме
(2) Так это уже сделано в бесплатных инструментах разработчика вроде как
Прикрепленные файлы:
13. JohnyDeath 302 09.04.25 15:46 Сейчас в теме
(12) а зачем открывать еще какой-то инструмент, если здесь можно сразу вывести человекочитаемое форматирование. Там буквально один параметр в функцию добавить. Выше писал
14. Viktor_Ermakov 374 10.04.25 08:45 Сейчас в теме
(13)
чем открывать еще какой-то инструмент, если здесь можно сразу вывести человекочитаемое форматирование. Там буквально один параметр в функцию добавить. Выше пис

Да, согласен. Я просто думал что хотите предложить сделать красиво, как у Вас на картинке.
3. JohnyDeath 302 09.04.25 11:40 Сейчас в теме
И добавить возможность делать json-схемы для Tool & Function Calling
5. mkalimulin 1514 09.04.25 11:44 Сейчас в теме
(3) openrouter как таковой в планах на ближайшие версии. Возможно и редактор тогда подкручу
7. JohnyDeath 302 09.04.25 11:46 Сейчас в теме
(5) ну там не в openrouter же затык. Это спецификация от OpenAI. Просто ссылку на неё тут не дал, потому что без ВПНа не открывается.
Вот тоже самое на ВсеЖПТ: https://vsegpt.ru/Docs/API#h84-50
8. mkalimulin 1514 09.04.25 11:50 Сейчас в теме
(7) А, это для Completion API (старая ветка)... ну можно сделать наверное
JohnyDeath; +1 Ответить
9. mkalimulin 1514 09.04.25 11:52 Сейчас в теме
(7) Видимо, придется много закладок делать. У Anthropic, например, тоже свои идеи
15. grumagargler 730 10.04.25 15:46 Сейчас в теме
Тоже вначале руки потянулись делать редактор, но потом отказались. Пошли по пути yml-формата с конвертацией в json. Таким образом, создание, хранение и представление делаются в одном формате, и самое главное - полное соответствие json-schema.org, на базе которого эти модели натренированы. Могу ошибаться, но мне показалось, что в редакторе будет не просто сделать что-то типо такого:

  ReportDate:
    description: The date on which the report is generated in ISO 8601 format
    type: string
    format: date-time
    default: 0001-01-01T01:00:00Z
  Customer:
    description: Filter specification for selecting customers
    type: object
    required:
      - value
      - comparisonType
    properties:
      comparisonType:
        description: Type of comparison to use for the customer value
        type: string
        enum:
          - Equal
          - NotEqual
          - InList
          - NotInList
    oneOf:
      - properties:
          comparisonType:
            enum: [Equal, NotEqual]
          value:
            description: Primary key of the customer for which the report is generated
            type: string
            format: uuid
      - properties:
          comparisonType:
            enum: [InList, NotInList]
          value:
            description: List of customer primary keys for which the report is generated
            type: array
            items:
              type: string
              format: uuid
Показать
JohnyDeath; +1 Ответить
16. mkalimulin 1514 10.04.25 17:56 Сейчас в теме
(15) Спасибо! Oneof я упустил
Оставьте свое сообщение