Все ноды/AI/LLM

JSON: схема ответа

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

JSON: схема ответаT
Расширение агента

Тип в графе: json_parser

Tool

Как попробовать

Минимальный рабочий сценарий

Вход
ИИ-агент▶▦
JSON: схема ответаT
LLM▦
Вся история диалога▶S
Выход▶
  • Исполнение + данные
  • Расширение
  • LLM
  • Память
  • Исполнение + данные + стрим
Нажмите «Скопировать ноды», откройте редактор и нажмите Ctrl+V на холсте.

Запускается сразу

Как применять

Расширение для ИИ-агента: агент по-прежнему пользуется инструментами и памятью, но его финальный ответ приходит объектом по вашей схеме, а не свободным текстом. Берите ноду, когда результат агента идёт дальше по графу как данные — в условие, в базу, в HTTP-запрос. Если инструменты не нужны и хватает одного обращения к модели, надёжнее LLM с JSON-ответом: там формат требует сам провайдер, а здесь — текст в промпте.

Как это работает

Схема дописывается в системный промпт агента вместе с требованием ответить одним JSON-объектом и ничего не писать вокруг него. Когда агент закончил ход, его ответ разбирается, и на выходе ноды-агента оказывается объект: {{ nodes.<id агента>.output.<поле> }}.

Схема задаётся двумя способами — переключатель «Режим схемы»: конструктор полей или сырая JSON Schema. По умолчанию в схеме одно строковое поле result, чтобы только что добавленная нода сразу работала; замените его своей формой.

Собственного значения нода не отдаёт: у неё единственный выход, и он подключается в порт «Расширения агента» агента. На холсте она стоит рядом с агентом, а не в цепочке выполнения.

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

Частые ошибки

  • Схему считают гарантией формата. Это просьба в промпте, а не режим провайдера. Разбор выполняется по возможности: если объект извлечь не удалось, агент возвращает исходную строку, и ошибки не будет. Когда формат критичен, проверяйте результат следующим шагом или берите ноду «LLM с JSON-ответом».
  • Вместо объекта вернулась строка. Типичная причина — вложенные объекты в ответе, не оформленном блоком кода: такой текст разобрать не удаётся. Помогает попросить в системном промпте агента оформлять ответ блоком кода json.
  • Пустая схема. Нода с пустой схемой не делает ничего: промпт не меняется, ответ не разбирается, и на выходе агента остаётся обычный текст.
  • Поля без описаний. Модель читает схему как инструкцию, поэтому точное description у поля часто даёт больше, чем целый абзац в системном промпте.

Входы

—

Выходы

ПортПроводДанныеПримечания
Расширение агентаoutputРасширениеlink_extension—

Настройки

ПолеТипПо умолчаниюОписание
Режим схемыschema_modestringbuilder

Как задаётся схема вывода: конструктор полей или сырая JSON Schema.

Варианты: builder — Конструктор полей, json — Сырая JSON Schema

Схема выводаstructured_outputobject{"type":"object","properties":{"result":{"type":"string","description":"The m…

JSON Schema, которая инжектируется в системный промпт агента и используется для разбора его ответа. Пустая схема превращает ноду в no-op.