Перетворення
Вузол, який складає один об’єкт зі значень виконання та фіксованих значень — для вузлів після нього і для відповіді.
3 хв читання
Перетворення складає об’єкт. Кожне його поле береться за шляхом із виконання або задається фіксованим значенням, а вузли після нього читають об’єкт як вихід вузла.
- Вузол
- Перетворення
- Тип
transform- Категорія
- Рішення
- Порти
- Типовий
defaultпідключення обовʼязкове
- Типовий
- Завершує шлях
- Ні
Що робить вузол
Вузол проходить свої поля по порядку. Поле зі шляхом бере значення за цим шляхом; поле з фіксованим значенням бере це значення. Об’єкт, який складають поля, — вихід вузла, і виконання виходить через Типовий.
{
"fields": [
{ "to": "tier", "from": "context.plan", "default": "free" },
{ "to": "channel", "value": "web" }
]
}Шлях, який нічого не знайшов, дає полю його значення за замовчуванням або null, якщо в поля його немає. Шлях, який знайшов null, дає null: значення є.
Коли використовувати
Відповісти тому, хто викликає, своїм об’єктом: Повернути відповідь із джерелом Вихід вузла відповідає всім виходом цього вузла.
Зібрати значення під короткими іменами для Умова або Нотатка у трасуванні після нього.
Вузол не складає промпт моделі: AI-модель бере повідомлення з input.messages запиту.
Налаштування
| Налаштування | Для чого воно |
|---|---|
fields | Поля об’єкта, який складає вузол, від 1 до 32, по порядку. Кожне має ім’я (to) і або шлях (from) з необов’язковим значенням за замовчуванням (default), або фіксоване значення (value). |
У конструкторі Додати поле додає поле. У поля є Назва, Джерело — Зі шляху або Фіксоване значення — і, для шляху, значення за замовчуванням, яке береться, коли шлях нічого не знаходить.
Ім’я — від 1 до 64 латинських літер, цифр і підкреслень і не починається з цифри. Два поля не можуть мати однакове ім’я.
Вузол має від 1 до 32 полів.
Поле має шлях або фіксоване значення, але не обидва одразу.
У конструкторі фіксоване значення зберігає свій тип, якщо читається як число,
true,false,nullабо JSON; усе інше — текст.
Порти
Вузол має один порт, Типовий, і він обов’язковий. Флоу, в якому він нікуди не веде, не публікується.
Вихід
{ "tier": "pro", "channel": "web" }Наступний вузол читає поле як nodes.<key>.output.<name> — тут nodes.build.output.tier, якщо ключ вузла — build.
Помилки
Помилок вузол не кидає. Шляхи, які нічого не знайшли, називає одна подія warning у трасуванні.
{ "type": "warning", "node_key": "build", "payload": { "reason": "unknown_path", "paths": ["context.plan"] } }Налаштування перевіряються під час перевірки флоу та під час його публікації: шлях починається з input, context або nodes, а шлях у nodes називає вузол, який виконується раніше за цей.
В API запис issues називає таку перевірку в params.detail; його code — invalid_node_config.
| Перевірка | Повідомлення в конструкторі |
|---|---|
transform_needs_field | Вузлу «{node}» потрібне хоча б одне поле для збирання. |
transform_too_many_fields | «{node}» збирає більше ніж {max} полів. |
transform_field_not_object | У «{node}» є поле, яке не є обʼєктом. |
transform_field_without_name | У «{node}» є поле без придатної назви: спочатку латинська літера або підкреслення, далі літери, цифри й підкреслення, не довше 64 символів. |
transform_field_both_sources | У поля «{field}» вузла «{node}» вказано і шлях, і фіксоване значення. |
transform_field_without_source | Полю «{field}» вузла «{node}» потрібен або шлях, або фіксоване значення. |
transform_field_bad_path | Поле «{field}» вузла «{node}» читає «{path}» — це не шлях у вхідні дані, контекст або вузли. |
transform_field_repeated | «{node}» збирає поле «{field}» більше одного разу. |
transform_field_unknown_node | Поле «{field}» вузла «{node}» читає «{path}», але вузла «{ref}» у флоу немає. |
transform_field_later_node | Поле «{field}» вузла «{node}» читає «{path}», але «{ref}» не виконується раніше за нього. |
Приклад
- Запит — Типовий → Перетворення
- Перетворення — Типовий → Повернути відповідь
Флоу не викликає модель. Перетворення складає об’єкт вище, а Повернути відповідь відповідає ним. Виконання закінчується статусом completed, і його output — цей об’єкт.
Див. також
Контекст виконання та шляхи — що може читати шлях.
Як побудовано флоу — усі вузли конструктора.
Надіслати запит —
output, який отримує той, хто викликає.
Зібрано з openapi b070e1f, sdk contract 5cc7055, php ae4a53b, node 84bc62d