TOON: компактный формат данных для LLM, когда JSON становится слишком «дорогим»

06.02.26

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

TOON (Token Oriented Object Notation) — практичный текстовый формат, который сохраняет структуру «объект/массив/поля», но уплотняет представление, уменьшая долю служебного синтаксиса и повторов. Он особенно полезен, когда нужно передать модели много однотипных строк: каталоги, логи, выборки, транзакции, табличные справочники.

Большие языковые модели (LLM) работают с текстом через токены и имеют ограничение по размеру контекста. Поэтому в прикладных задачах часто упираешься не в «умность» модели, а в банальную вместимость: сколько фактов ты успел передать в запросе, прежде чем закончился лимит. На этом фоне привычный JSON внезапно оказывается не лучшей упаковкой: он удобен для машин, но слишком многословен для промпта.

TOON (Token Oriented Object Notation) — практичный текстовый формат, который сохраняет структуру «объект/массив/поля», но уплотняет представление, уменьшая долю служебного синтаксиса и повторов. Он особенно полезен, когда нужно передать модели много однотипных строк: каталоги, логи, выборки, транзакции, табличные справочники.


1) Почему JSON в промпте часто проигрывает

Главная причина — повтор ключей. В JSON массив объектов выглядит так, что в каждой строке снова и снова повторяются одинаковые имена полей. Это отлично для универсального парсинга, но в промпте повторяющиеся ключи не добавляют новой смысловой информации, занимая место, которое могло бы уйти на дополнительные строки данных.

Вторая причина — высокая «пунктуационная плотность». Кавычки, фигурные и квадратные скобки, двоеточия, запятые — всё это неизбежно. В сумме получается, что вы передаёте модели много структуры, но сравнительно мало фактов.

Третья причина — сложность смешивать «правила» и «данные». В реальном промпте вам почти всегда нужно: (а) описать задачу, формат ответа и ограничения, (б) дать данные. В JSON это часто превращается в большой мешок из вложенных объектов, который неудобно читать и отлаживать глазами.


2) Идея TOON: схема отдельно, значения отдельно

TOON делает ставку на простой принцип: если у вас массив однотипных объектов, то имена полей можно объявить один раз, а дальше передавать значения строками, как таблицу. При этом формат остаётся структурированным: можно описывать вложенные объекты, массивы, метаданные и параметры задачи.

Ниже — базовые конструкции, которых обычно достаточно для большинства сценариев:

  • Скаляр: ключ: значение

  • Объект: ключ: и далее блок с отступом

  • Простой массив: ключ[N]: v1,v2,v3

  • Табличный массив: ключ[N]{поле1,поле2,...}: и далее N строк значений

 

Минипример «табличного массива»:

employees[3]{name,age,city}: 
Иванов,30,Москва 
Петров,25,Казань 
Сидоров,35,Сочи

Именно табличный режим даёт основной выигрыш: ключи вынесены в заголовок и не повторяются в каждой строке.

 

Тот же массив в JSON:

[ 
{"name":"Иванов","age":30,"city":"Москва"}, 
{"name":"Петров","age":25,"city":"Казань"}, 
{"name":"Сидоров","age":35,"city":"Сочи"} 
]

 

Смысл тот же, но «лишнее» (повтор ключей, кавычки вокруг ключей) исчезает.

 

«Инструкция + данные» в одном формате

Практически всегда полезно держать рядом правила и входные строки. TOON делает это естественно:

request:
  task: "Сравни варианты и дай рекомендацию"
  output:
    format: "markdown"
    sections[4]: "Кратко","Плюсы","Минусы","Риски"
    style: "деловой, без воды"
  constraints:
    budget_rub: 150000
    region: "RU"
  items[4]{id,title,price,category}:
    A1,"Сервер",450000,hardware
    B2,"Лицензия 1С",85000,software
    C3,"Поддержка",120000,services
    D4,"Калибр",19900,tooling

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

 

Логи и события

Логи — идеальный кандидат: одинаковая схема, много строк.


audit[6]{ts,level,actor,action,entity}: 
2026-02-06T09:01:12,INFO,web,login,user:124 
2026-02-06T09:03:40,WARN,web,rate_limit,ip:10.0.0.5 
2026-02-06T09:05:10,INFO,svc,update,order:771 
2026-02-06T09:06:11,ERROR,svc,timeout,endpoint:/pay 
2026-02-06T09:07:02,INFO,web,logout,user:124 
2026-02-06T09:07:30,INFO,svc,retry,endpoint:/pay

 

 

Дальше достаточно одной строки инструкции: «Найди причины ошибок, сгруппируй по action, предложи меры».

 

Неоднородные структуры (когда «таблица» уже не честная)

Если элементы массива реально разные, не надо насильно загонять их в таблицу. TOON допускает «список объектов» с отступами:

offers[3]:
  -
    id: A1
    price: 450000
    delivery_days: 14
  -
    id: B2
    price: 85000
    discount: 0.1
  -
    id: C3
    price: 120000
    notes: "Можно помесячно"

 

 

Практическое правило: однородность — табличный массив, неоднородность — список объектов.


4) Практика: типы, кавычки, разделители и «профиль формата»

Чтобы TOON работал устойчиво, важно один раз договориться о «профиле» — наборе правил, по которым формат пишется и читается.

 

Типы (рекомендуемая договорённость)

Обычно удобно поддержать простые литералы:

  • true / false — булево

  • null — пустое значение

  • числа — с точкой в дробной части: 123, -10, 45.67

  • даты/время — ISO вид: 2026-02-06, 2026-02-06T14:30:00

Главное — не оставлять это «на авось». Если один источник пишет 12,5, а другой ждёт 12.5, ошибки будут системными.

 

Разделитель

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

 

Кавычки и экранирование

Это самая частая точка поломки. Минимальное правило:

  • Если значение содержит разделитель, кавычку или перевод строки — оно должно быть в кавычках.

  • Внутренние кавычки экранируются (например, удвоением "").

Пример:


 products[2]{sku,title,comment}:
  A1,"Кабель, 2 м","Подходит для ""старых"" устройств"
  B2,"Блок питания","Без комментариев"

 

Если эти правила не зафиксировать, данные станут неоднозначными: парсер не поймёт, где колонка, а где часть текста.

 

Схема и порядок полей

В табличном массиве порядок полей — часть контракта. Менять поля «на лету» нельзя: либо начинайте новый блок с новой схемой, либо переходите на неоднородный список объектов.


5) Где TOON выигрывает сильнее всего (и где может не подойти)

Лучшие сценарии

  • Большие справочники и выборки: много строк, одна схема.

  • Логи, события, трейсинг: структурированные записи.

  • Классификация/ранжирование: матрицы признаков, сравнительные таблицы.

  • Смешанные промпты: «правила + таблица данных + дополнительные таблицы».

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

 

Когда стоит подумать дважды

  • Много многострочных текстов в ячейках (письма, описания с абзацами).

  • Сильно вложенные, неоднородные структуры, где почти каждый элемент имеет уникальный набор полей.

  • Требование строгой совместимости с чужими системами и готовыми библиотеками (там JSON всё ещё вне конкуренции).

TOON — инструмент упаковки для промпта, а не религия. Его удобно использовать как промежуточный формат: «данные → TOON → LLM», а дальше при необходимости возвращаться в JSON для API, валидаторов и контрактов.

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

LLM TOON

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

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

См. также

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

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

15250 руб.

25.08.2025    54701    111    29    

123

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

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

6100 руб.

03.04.2024    15390    8    0    

12

Логистика, склад и ТМЦ Нейросети Программист Пользователь 1С 8.3 1С:Управление нашей фирмой 3.0 1С:УНФ Управленческий учет Абонемент ($m)

Внешняя система аналитики закупок для 1С на базе FastAPI + PostgreSQL + Docker с поддержкой локального AI через Ollama. Возможности: — рекомендации по закупке; — ABC / XYZ анализ; — поиск неликвидов; — поиск излишков; — анализ сезонности; — риск дефицита; — AI-пояснения рекомендаций. Решение работает через HTTP API и может использоваться как внешний аналитический сервис для 1С. Поддерживается локальный AI без облачных сервисов и без передачи данных наружу.

10 стартмани

14.05.2026    302    0    aldar    1    

6

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

Современные LLM-агенты страдают от одной архитектурной болезни: они обязаны ответить всегда. Даже когда контекст пуст, даже когда данных нет, даже когда любой ответ будет галлюцинацией. Это порождает шум, эрозию памяти и ложную уверенность. В нашей архитектуре агент не имеет права генерировать ответ, если недостаточно света. Перед любой попыткой срабатывает L8 — pre-execution constitutional gate. Он измеряет покрытие контекста (context_coverage), прогнозирует уровень шума (noise_estimate) и выносит вердикт: разрешить, ограничить, верифицировать или заблокировать.

14.05.2026    296    ksnik    19    

6

Нейросети 1С 8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Зарплата и Управление Персоналом 3.x Абонемент ($m)

Данная публикация представляет расширения для конфигураций 1С: УТ 11, ЗУП 3.1, ЕРП 2.5. Расширения позволяют выгружать любые данные из всех типовых отчетов (в них добавляется кнопка DeepSeek (см. скрин)), а также через встроенный конструктор запроса; хранить промты для нейросети с параметрами из 1С; отправлять запросы в DeepSeek, получать и обрабатывать ответ. Реализована автоматическая обработка результата: поиск таблицы в ответе нейросети и вывод её в табличный документ. Предусмотрена возможность перехватить ответ и написать свою обработку — полученную таблицу значений можно использовать для загрузки в табличную часть, создания документов или заполнения регистров. В публикации — описание возможностей, настройки, примеры промтов и шаблон обработки-перехватчика.

4 стартмани

13.05.2026    290    0    German4739    1    

5

Нейросети Программист 1С 8.3 Абонемент ($m)

В релизе ИИ Агент 0.8.5 агент стал ближе к полноценному рабочему инструменту аналитика: появился более устойчивый графовый цикл выполнения, улучшена работа с файлами и вложениями, а режим «Запрос 1С» теперь поддерживает follow-up уточнения. В статье показываем сценарий: пользователь просит вывести контрагентов, затем добавляет поля ИНН и код, а потом фильтрует только покупателей — агент перестраивает запрос и показывает результат в табличном документе.

1 стартмани

12.05.2026    2902    Aleksandr    3    

5

Нейросети Распознавание документов и образов Программист Бесплатно (free)

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

08.05.2026    1079    user1415700    18    

24

Нейросети Мессенджеры и боты Программист Абонемент ($m)

Задача - дать пользователю AI-ассистента, привязанного к его данным в базе 1С. Не абстрактный чат-бот, а помощник, который знает структуру вашей конфигурации, понимает названия справочников и документов на русском языке и может вернуть конкретные данные - список контрагентов, сумму реализаций, количество сотрудников.

1 стартмани

07.05.2026    635    0    gybson    5    

7
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. dsdred 4230 06.02.26 15:43 Сейчас в теме
вот этой ссылочки не хватает: https://github.com/toon-format/toon
Somebody1; shapa_pro; +2 Ответить
2. shapa_pro 78 06.02.26 15:48 Сейчас в теме
3. Somebody1 68 06.02.26 15:51 Сейчас в теме
Мешает чтению статьи обилие заголовков и воды. Она была написана с явным использованием ИИ.
4. shapa_pro 78 06.02.26 15:53 Сейчас в теме
(3) Заголовки отделяют части текста друг от друга, что вы считаете водой, наоборот минимум текста максимум примеров.
5. RocKeR_13 1472 06.02.26 16:20 Сейчас в теме
Ммм, переизобрели CSV?)
6. dsdred 4230 06.02.26 16:23 Сейчас в теме
(5) Нет. Внимательнее посмотрите на формат.

CSV - это плоская таблица.
TOON - это сложная структура.

Пример JSON:
{
  "status": "success",
  "data": [
    {
      "id": 1,
      "name": "Product A",
      "price": 29.99
    },
    {
      "id": 2,
      "name": "Product B",
      "price": 49.99
    },
    {
      "id": 3,
      "name": "Product C",
      "price": 19.99
    }
  ],
  "metadata": {
    "total": 3,
    "page": 1,
    "limit": 10
  }
}
Показать


CSV такой не скушает

А TOON вот так сделает:
status: success
data[3]{id,name,price}:
  1,Product A,29.99
  2,Product B,49.99
  3,Product C,19.99
metadata:
  total: 3
  page: 1
  limit: 10
Показать
7. RocKeR_13 1472 06.02.26 16:25 Сейчас в теме
(6) Да, увидел уже) Акцент на массивы был, а самому интересному один абзац уделили
8. dsdred 4230 06.02.26 16:27 Сейчас в теме
9. RocKeR_13 1472 06.02.26 16:30 Сейчас в теме
(8) Да пока практического интереса нет: времени хватает только на текущие задачи) А там не до ИИ...
Для отправки сообщения требуется регистрация/авторизация