Добавьте один модуль Make в любой сценарий, сопоставьте сущность из предыдущего шага и получите структурированный, проверенный по схеме объект JSON, объединённый из нескольких моделей, — с многоязычным выводом на 40 языках, полученным за один проход LLM. 9 полноценных модулей с динамическими выпадающими списками и обработкой ошибок с учётом ограничений тарифа, разработанные для модели оплаты Make за операцию.
Entity Enricher уже поставляется с коннектором n8n, который потребляет поток Server-Sent Events. Модули Make не могут нативно потреблять SSE — каждый модуль представляет собой один атомарный HTTP-вызов. Чтобы поддерживать обогащение как единую операцию Make, бэкенд предоставляет отдельный эндпоинт POST /api/single/enrich/sync, который оборачивает потоковый процесс на стороне сервера и возвращает итоговый результат слияния в одном ответе.
Выберите несколько языков в поле Languages, и Entity Enricher заполнит каждое многоязычное свойство на всех выбранных языках за один вызов LLM — а не N последовательных обращений на каждый язык. 40 языков охватывают основные европейские, азиатские, ближневосточные и африканские рынки.
Результат одного вызова Enrich Entity с languages = ["en", "fr", "de", "ja"]:
{
"names": {
"primary": {
"en": "Aspirin",
"fr": "Aspirine",
"de": "Aspirin",
"ja": "アスピリン"
}
},
"indications": {
"en": "Pain, fever, inflammation; antiplatelet therapy.",
"fr": "Douleur, fièvre, inflammation ; antiagrégant plaquettaire.",
"de": "Schmerz, Fieber, Entzündung; Thrombozytenaggregationshemmer.",
"ja": "痛み、発熱、炎症;抗血小板療法。"
}
}Последующие модули Make могут напрямую сопоставлять любой язык: {{enrichEntity.result.names.primary.fr}}. Выпадающий список «Языки» показывает полный список из 40 языков с уведомлением об ограничении тарифа, когда профиль вашей организации ограничивает количество доступных для выбора языков.

Исходный код приложения Make находится в публичном репозитории TOT-Concept (синхронизирован с монорепозиторием Entity Enricher). Пока v1.0 не появится в маркетплейсе Make, загружайте его вручную через Developer Hub:
make-app-entity-enricher/ в виде .zip, либо вставьте каждый файл .json / .imljson в соответствующую вкладку редактора.ent_XXXXXXXXXXXX). Подключение автоматически проверяется через /api/enrichment/options.
Каждое выбираемое поле в модулях Make заполняется RPC-вызовом, который обращается к API Entity Enricher во время настройки. Закреплённые схемы отображаются первыми (отмечены 📌), метки моделей включают цену за миллион токенов, а организации с ограничениями тарифа видят уведомление при достижении квоты.

https://entityenricher.ai. Переопределяйте только для развёртываний на собственном сервере.Центральный модуль предоставляет поля ввода с динамическими выпадающими списками: схема, модели (множественный выбор), языки (множественный выбор), стратегия, необязательные модели классификации и арбитража, веб-поиск, схема ответа, строгий структурированный вывод, тайм-аут и переключатели метаданных. Свяжите сущность из любого предыдущего модуля через поле Entity data.
Когда выбрано 2+ моделей, результат автоматически объединяется на стороне сервера. Панель вывода Make показывает is_fused: true, список source_models и сводку fusion с подсчётом совпавших и конфликтующих полей:

9 модулей в 5 категориях. Модули поиска выдают по одному бандлу на результат для последующих цепочек Iterator/Aggregator; модули действий выдают один бандл.
| Категория | Модуль | Описание |
|---|---|---|
| Enrichment | Enrich Entity | Обогащение за один вызов со слиянием нескольких моделей. Возвращает итоговый объединённый результат (или результат лучшей отдельной модели). Автоматически отменяется при предупреждении классификации. |
| Schemas | List Schemas | Возвращает один bundle Make для каждой сохранённой схемы, готовый для цепочек Iterator/Aggregator. |
| Schemas | Get Schema Details | Полное содержимое схемы, включая области экспертизы, свойства и ключи поиска. |
| Records | List Records | Поиск по прошлым записям обогащения с фильтрами (тип, успешность, свободный текст). |
| Records | Get Record | Получить один результат обогащения с полными метриками по каждому промпту. |
| Fusion | Merge Results | Повторно объедините несколько результатов обогащения, при желании с другим арбитром LLM. |
| Attachments | Upload Attachment | Загрузите файл (переданный как буфер из вышестоящего модуля, например HTTP ▸ Get a File) и получите ID вложения для использования в Enrich Entity. |
| Attachments | Delete Attachment | Удалить вложение по ID — удобный шаг очистки после обогащения. |
| Configuration | Get Options | Доступные модели, языки, стратегии и ограничения тарифа организации. |
Сценарии Make тарифицируются за операцию. Вместо переноса модуля Batch Enrich из коннектора n8n приложение Make использует встроенный Iterator от Make + Enrich Entity. Каждая итерация независима, сбои не каскадируются, а тарификация точно отражает то, что было обработано.
Один вызов Enrich Entity заполняет каждое многоязычное свойство на всех выбранных языках — за один проход LLM, а не за N последовательных обращений. Сопоставляйте любой язык напрямую: {{result.names.primary.fr}}.
Отдельная конечная точка POST /api/single/enrich/sync оборачивает потоковый процесс на стороне сервера. Одна операция Make = один бандл. Без опроса, без шаблонов из двух модулей.
7 RPC-вызовов получают схемы, модели, языки, стратегии, модели классификации/арбитража и параметры веб-поиска на этапе настройки — закреплённые схемы отображаются первыми, метки моделей включают цены.
Выберите 2+ модели, и результат автоматически объединяется. Итоговый набор включает is_fused, source_models[] и сводку слияния fusion: {agreed_fields, conflicted_fields, total_fields}.
Необязательная дешёвая модель-классификатор проверяет, что сущность соответствует ожидаемому типу схемы, прежде чем запускается обогащение. Несоответствия приводят к типизированной ошибке DataError вместо галлюцинированных данных.
Ошибки HTTP 402 (ограничения тарифа или нехватка кредитов) преобразуются в типизированную ошибку Make OutOfMoneyError. Сообщение повторяет понятное человеку описание от бэкенда (с URL для пополнения счёта, когда кредиты закончились), а также машиночитаемый код — используйте код в обработчике ошибок сценария, чтобы оповещать людей, переключаться на более дешёвые модели или ставить на паузу.
Выпадающий список Web Search читает parameters.models и отключается, когда ни одна из выбранных моделей не объявляет supports_web_search.
Сценарии Make тарифицируются за операцию. Рабочие процессы с несколькими сущностями используют встроенный Iterator от Make + Enrich Entity, обеспечивая детальную обработку ошибок для каждой сущности и точную тарификацию.
Тайм-аут по умолчанию 300 секунд на вызов, в пределах [10, 900]. Задание автоматически отменяется на стороне сервера, если не завершается вовремя, возвращая типизированную ошибку ConnectionError.
Каждый статус, который может вернуть бэкенд, сопоставлен с типизированной ошибкой Make, чтобы обработчики ошибок сценария могли ветвиться по режиму сбоя, а не разбирать строки.

| HTTP | Тип ошибки Make | Когда срабатывает |
|---|---|---|
| 400 | DataError | Схема не найдена, отсутствуют ключи поиска, недопустимые модели или языки. |
| 401 | InvalidCredentials | Неверный или отсутствующий ключ API. |
| 402 | OutOfMoneyError | Превышен лимит плана ИЛИ недостаточно кредитов. Message = body.detail.detail (для человека, включает URL для пополнения при insufficient_credits) + body.detail.code (для машины). Ветвление по коду: insufficient_credits, model_limit_exceeded, language_limit_exceeded, concurrent_job_limit_reached, daily/weekly/monthly_prompt_limit_exceeded. |
| 403 | AccessDeniedError | Недостаточная роль или область действия. |
| 404 | InvalidConfigurationError | Схема или запись не найдена. |
| 422 | DataError | Предупреждение классификации. body.detail.classification содержит status, reasoning, confidence, entity_description. |
| 429 | RateLimitError | Ограничение частоты запросов провайдера (временное). |
| 499 | RuntimeError | Задание отменено. |
| 502 | ConnectionError | Ошибка вышестоящего LLM-провайдера (например, переполнение контекста). |
| 504 | ConnectionError | Истекло timeout_seconds; задача автоматически отменена на стороне сервера. |