Skip to Content

Структурированный вывод (Structured Output)

Описание

Компонент Structured Output использует LLM для преобразования любого входного значения в структурированные данные (Data или DataFrame) с помощью инструкций по форматированию на естественном языке и определения схемы вывода. Например, вы можете извлекать конкретные детали из документов, таких как сообщения электронной почты или научные статьи.

Использование в потоке

Чтобы использовать компонент Structured Output для извлечения структурированных данных из неструктурированного текста, выполните следующие шаги:

1. Подготовьте входные данные (Input Message)

  • Предоставьте Input Message (исходный материал для извлечения данных).
  • Обычно это данные из компонентов Chat Input, Read File или других источников неструктурированного ввода.
ℹ️

Вам не нужно извлекать весь текст целиком. Вы можете указать только нужную информацию, даже если она не имеет четких меток; ИИ проигнорирует нерелевантный контент.

2. Настройте инструкции и схему (Format Instructions & Output Schema)

  • Инструкции (Format Instructions): Напишите промпт, который объяснит модели, какие данные извлекать, как их форматировать и как обрабатывать исключения.
  • Схема (Output Schema): Создайте таблицу полей (ключей) и типов данных, чтобы организовать извлеченную информацию в объект Data или DataFrame.
    • Для добавления поля нажмите Add a new row.
    • Name: Имя поля (например, NET_INCOME). К нему можно обращаться через переменные (например, {NET_INCOME}) в последующих компонентах.
    • Type: Тип данных: str (строка), int (целое число), float (число с плавающей точкой), bool (логическое значение) или dict (словарь).
    • As List: Включите этот параметр, если поле должно содержать список значений.

3. Подключите языковую модель (Language Model)

  • Присоедините компонент языковой модели, настроенный на вывод типа LanguageModel.
  • Модель использует входное сообщение и ваши инструкции для извлечения данных, после чего применяется схема для формирования финального структурированного объекта.

4. (Опционально) Дальнейшая обработка

  • Передайте структурированный вывод в следующие компоненты, такие как Parser или Data Operations, для дальнейшего использования.

Параметры компонента

Некоторые параметры по умолчанию скрыты в визуальном редакторе. Вы можете изменить все параметры через меню component1Controls (Управление) в заголовке компонента.

Название (Name)Тип (Type)Описание (Description)
Language Model (llm)LanguageModelВходной параметр. Выход LanguageModel от компонента Language Model, который определяет LLM для анализа, извлечения и подготовки структурированного вывода.
Input Message (input_value)StringВходной параметр. Входящее сообщение, содержащее исходный материал для извлечения данных.
Format Instructions (system_prompt)StringВходной параметр. Инструкции для языковой модели по извлечению и форматированию вывода.
Schema Name (schema_name)StringВходной параметр. Необязательный заголовок для Output Schema (Схемы вывода).
Output Schema (output_schema)TableВходной параметр. Таблица, описывающая схему желаемого структурированного вывода, которая в конечном итоге определяет содержимое данных в формате Data или DataFrame.
Structured Output (structured_output)Data или DataFrameВыходной параметр. Конечный структурированный результат, созданный компонентом. Рядом с выходным портом можно выбрать тип данных: Structured Output Data или Structured Output DataFrame.

Настройка схемы вывода (Output Schema options)

После того как языковая модель извлечет нужные данные на основе входного сообщения и инструкций, они организуются в соответствии с Output Schema. Эта схема представляет собой таблицу, которая определяет поля (ключи) и типы данных для итогового результата в формате Data или DataFrame.

По умолчанию схема состоит из одного строкового поля (string). Чтобы добавить новый ключ в схему, нажмите Add a new row и настройте следующие колонки:

  • Name (Имя): Название выходного поля. Обычно это конкретный ключ, значение которого вы хотите извлечь.
    • Вы можете ссылаться на эти ключи как на переменные в последующих компонентах, например, в шаблоне компонента Parser (например, ключ NET_INCOME превращается в переменную {NET_INCOME}).
  • Description (Описание): Необязательное описание содержимого и назначения поля.
  • Type (Тип): Тип данных извлекаемого значения. Поддерживаются:
    • str (строка — по умолчанию).
    • int (целое число).
    • float (число с плавающей точкой).
    • bool (логическое значение).
    • dict (словарь).
  • As List (Как список): Включите этот параметр, если поле должно содержать список значений, а не одно значение.