أضف وحدة Make واحدة إلى أي سيناريو، واربط كيانًا من خطوة سابقة، لتحصل على كائن JSON منظَّم ومُتحقَّق منه وفق المخطط ومدموج من عدة نماذج — مع مخرجات متعددة اللغات بـ 40 لغة تُنتَج في تمريرة واحدة لـ LLM. 15 وحدة من الطراز الأول مع قوائم منسدلة ديناميكية ومعالجة أخطاء تراعي حدود الخطة، مصممة لنموذج الفوترة لكل عملية في Make.
يوفّر Entity Enricher بالفعل موصّل n8n يستهلك تدفّق Server-Sent Events. لا يمكن لوحدات Make استهلاك SSE بشكل أصلي — إذ تمثّل كل وحدة استدعاء HTTP ذرّياً واحداً. ولدعم الإثراء كعملية واحدة في Make، يوفّر الخادم نقطة نهاية مخصّصة POST /api/single/enrich/sync تغلّف تدفّق البث من جانب الخادم وتُعيد النتيجة المدمجة النهائية في استجابة واحدة.
اختر أكثر من لغة في حقل Languages ويملأ Entity Enricher كل خاصية متعددة اللغات بجميع اللغات المحددة في استدعاء LLM واحد — وليس N من الجولات المتتابعة لكل لغة. تغطّي 40 لغة الأسواق الأوروبية والآسيوية والشرق أوسطية والأفريقية الرئيسية.
نتيجة استدعاء واحد لإثراء الكيان مع 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 الموحّد). وإلى أن يصل التطبيق إلى متجر Make، حمّله جانبيًا عبر Developer Hub:
make-app-entity-enricher/ بصيغة .zip، أو تلصق كل ملف .json / .imljson في علامة تبويبه داخل المحرّر.ent_XXXXXXXXXXXX، يُختبَر تلقائيًا مقابل /api/enrichment/options)، أو اتصال OAuth 2.0: سجّل الدخول إلى Entity Enricher وانقر على تفويض.
يُملأ كل حقل قابل للاختيار في وحدات Make عبر استدعاء إجرائي بعيد (RPC) يصل إلى واجهة برمجة تطبيقات Entity Enricher عند التهيئة. تظهر المخططات المثبّتة أولاً (مميّزة بالرمز 📌)، وتتضمن تسميات النماذج التسعير لكل مليون رمز، وترى المؤسسات المحدودة الخطة إشعاراً عند بلوغ حصتها.

https://entityenricher.ai. لا تُجرِ التغيير إلا لعمليات النشر المُستضافة ذاتيًا.تعرض الوحدة المركزية حقول إدخالها عبر قوائم منسدلة ديناميكية: المخطط، النماذج (اختيار متعدد)، اللغات (اختيار متعدد)، الاستراتيجية، نماذج التصنيف والتحكيم الاختيارية، البحث على الويب، مخطط الاستجابة، الإخراج المنظم الصارم، المهلة، ومفاتيح تبديل البيانات الوصفية. اربط كيانًا من أي وحدة سابقة عبر حقل بيانات الكيان.
عند تحديد نموذجين أو أكثر، تُدمَج النتيجة تلقائيًا على جانب الخادم. يعرض لوح إخراج Make is_fused: true، وقائمة source_models، وملخص fusion يحصي الحقول المتفق عليها والمتعارضة:

identity_merges — كل مرة أعاد فيها هذا التشغيل استخدام هوية قائمة كانت قد تولّدت من كلمات مختلفة، مع درجة التشابه التي حسمت الأمر (وتكون فارغة عندما يحسمه تطابق تام في الرمز أو الكلمة، إذ لا يُقاس أي تشابه حينها).entity_keys — قيم عمود المفتاح المخزَّنة فعليًا، لتتمكن وحدة لاحقة من الوصول إلى الصف الذي أنشأته للتو دون تخمين.حالة كتابة إلى قاعدة البيانات تُبلِّغ بصدق عن الكتابة الجزئية بدل عدّها نجاحًا كاملًا، إلى جانب skipped_items وkey_collisions.retries، الذي حلّ محلّ الحقل الأقدم attempts — وهي إعادة تسمية كاسرة للتوافق، لذا حدِّث أي سيناريو كان يربطه.15 وحدة موزّعة على 7 فئات. وحدات البحث تُصدر حزمة لكل نتيجة لتغذية سلاسل Iterator/Aggregator التالية؛ أما وحدات الإجراءات فتُصدر حزمة واحدة.
| الفئة | وحدة | الوصف |
|---|---|---|
| Enrichment | Enrich Entity | إثراء باستدعاء واحد مع دمج متعدد النماذج. يُعيد النتيجة النهائية المدمجة (أو أفضل نتيجة لنموذج واحد). يُلغى تلقائيًا عند ظهور تحذير تصنيف. |
| Schemas | List Schemas | يُرجع حزمة Make واحدة لكل مخطط محفوظ، جاهزة لسلاسل Iterator/Aggregator. |
| Schemas | Get Schema Details | محتوى المخطط الكامل بما في ذلك مجالات الخبرة والخصائص ومفاتيح البحث. |
| Schemas | Generate Sample | أنشئ من 1 إلى N من كائنات JSON نموذجية واقعية لنوع كيان واحد في استدعاء حاجب واحد — نقطة الدخول إلى تأليف المخطط. تُحدّد العينة الأولى مجموعة الحقول؛ أما البقية فهي نسخ بنفس الحقول. |
| Schemas | Generate Schema | أنشئ مخطط JSON واحفظه تلقائيًا من 1 إلى N من الكائنات النموذجية لنفس نوع الكيان — اتحاد الحقول، وقابلة للإبطال حيث يكون الحقل مفقودًا في بعض العينات، وقيم حقيقية مُلاحَظة كأمثلة. |
| Records | List Records | ابحث في سجلات الإثراء السابقة باستخدام عوامل التصفية (النوع، النجاح، النص الحر). |
| Records | Get Record | استرجاع نتيجة إثراء واحدة مع مقاييس كاملة لكل موجّه. |
| Records | Inject Records into Database | أرسِل مخرجات إثراء مخزَّنة (أو محوَّلة) إلى مزامنة قاعدة البيانات الخاصة بمخططها. تُعاد مطابقتها مع العقد المنشور للمخطط، ثم تُمرَّر عبر بوابة القبول. |
| Fusion | Merge Results | أعد دمج نتائج إثراء متعددة، مع إمكانية استخدام مُحكِّم LLM مختلف. |
| Attachments | Upload Attachment | رفع ملف (مُعيَّن كمخزن مؤقت من وحدة سابقة، مثل HTTP ▸ Get a File) وإرجاع معرّف المرفق الخاص به لاستخدامه في Enrich Entity. |
| Attachments | Delete Attachment | حذف مرفق حسب المعرّف — خطوة تنظيف مفيدة بعد الإثراء. |
| Database Sync | List Database Syncs | يُعيد عمليات مزامنة قاعدة البيانات لمخطط، مع أعداد الفروق المعلّقة. |
| Database Sync | Fetch Database Deltas | يُعيد نافذة FIFO التالية من فروق SQL لمزامنة قاعدة البيانات. عند تفعيل Claim تُحجَز الصفوف ويجب تأكيدها؛ وإلا فإن القراءة قابلة لإعادة التشغيل. |
| Database Sync | Acknowledge Database Deltas | يؤكّد الفروق المطبَّقة حتى معرّف مُحدّد — يحرّر الحجز، ووفقًا لخيارات المزامنة، يحذف النسخ المُسلّمة. |
| Configuration | Get Options | النماذج واللغات والاستراتيجيات المتاحة، وحدود خطة المؤسسة. |
تُشغّل وحدات Database Sync تغذية الفروق الخاصة بـمزامنة قاعدة البيانات من سيناريو مجدوَل: تحجز وحدة Fetch Database Deltas نافذة SQL التالية، ثم تطبّقها وحدة قاعدة بيانات أو HTTP، وتؤكّدها وحدة Acknowledge Database Deltas (اربط Next Cursor من Fetch بوحدة Acknowledge).
تُحتسب فواتير سيناريوهات Make لكل عملية. فبدلاً من نقل وحدة الإثراء بالدفعات الخاصة بموصّل n8n، يستخدم تطبيق Make أداة التكرار المدمجة في Make مع Enrich Entity. كل تكرار مستقل، والأخطاء لا تتسلسل، وتعكس الفوترة بالضبط ما تمت معالجته.
يملأ استدعاء واحد لإثراء الكيان كل خاصية متعددة اللغات بجميع اللغات المختارة — يُنتَج في تمريرة LLM واحدة، وليس عبر N جولات متتالية. اربط أي لغة مباشرةً: {{result.names.primary.fr}}.
تُغلّف نقطة نهاية POST /api/single/enrich/sync المخصصة تدفّق البثّ على جانب الخادم. عملية Make واحدة = حزمة واحدة. لا استطلاع، ولا أنماط ذات وحدتين.
تفتح وحدة "إثراء الكيان" ببيانات الكيان والمخطط واللغات والبحث على الويب فقط — ويعمل Entity Enricher تلقائيًا بأفضل نموذج لدى مؤسستك. أما النماذج والمرفقات والاستراتيجية وخيارات التصنيف/التحكيم فتوجد خلف زر "إظهار الإعدادات المتقدّمة" في Make.
10 استدعاءات RPC تجلب المخططات ومزامنات قواعد البيانات والنماذج واللغات والاستراتيجيات ونماذج التصنيف/التحكيم وخيارات مخطط الاستجابة والمخرجات المهيكلة عند الإعداد — تظهر المخططات المثبّتة أولًا، وتتضمن تسميات النماذج أسعارها.
اختر نموذجين أو أكثر ويُدمَج الناتج تلقائيًا. تتضمّن حزمة الإخراج is_fused وsource_models[] وملخّص fusion: {agreed_fields, conflicted_fields, total_fields, method, arbitration_model}.
يتحقق نموذج تصنيف رخيص اختياري من مطابقة الكيان للنوع المتوقع في المخطط قبل تشغيل الإثراء. ويُنتج عدم التطابق خطأ DataError مُصنّفًا بدلًا من بيانات مُختلَقة.
تتحوّل أخطاء HTTP 402 (حدود الخطة أو نقص الأرصدة) إلى خطأ Make OutOfMoneyError مُصنَّف. تعكس الرسالة التفاصيل القابلة للقراءة البشرية من الواجهة الخلفية (مع رابط لشحن رصيد الفوترة عند نفاد الأرصدة) بالإضافة إلى رمز قابل للقراءة آليًا — وجّه معالج أخطاء السيناريو بناءً على الرمز لتنبيه البشر، أو الرجوع إلى نماذج أرخص، أو الإيقاف المؤقت.
تقرأ قائمة البحث على الويب المنسدلة parameters.models وتعطّل نفسها عندما لا يُصرّح أيٌّ من النماذج المحددة بـ supports_web_search.
تُحتسب فواتير سيناريوهات Make لكل عملية. وتستخدم سير العمل متعددة الكيانات أداة التكرار المدمجة في Make مع Enrich Entity، ما يوفّر معالجة دقيقة للأخطاء لكل كيان وفوترة دقيقة.
مهلة افتراضية مدتها 300 ثانية لكل طلب، محصورة بين [10، 900]. تُلغى المهمة تلقائيًا من جانب الخادم إذا لم تكتمل في الوقت المحدد، وتُرجع خطأ ConnectionError مُصنّفًا.
تُربط كل حالة يمكن للواجهة الخلفية إرجاعها بخطأ Make ذي نوع محدد، بحيث يمكن لمعالجات أخطاء السيناريو أن تتفرّع حسب نمط الفشل بدلاً من تحليل النصوص.

| HTTP | نوع الخطأ في Make | متى يُطلَق |
|---|---|---|
| 400 | DataError | لم يُعثر على المخطط، أو مفاتيح البحث مفقودة، أو النماذج أو اللغات غير صالحة. |
| 401 | InvalidCredentials | مفتاح API غير صحيح أو مفقود. |
| 402 | OutOfMoneyError | تجاوز حد الخطة أو عدم كفاية الأرصدة. الرسالة = body.detail.detail (قابلة للقراءة البشرية، وتتضمّن رابط شحن لـ 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 الحالة والتعليل ومستوى الثقة و entity_description. |
| 429 | RateLimitError | تجاوز حد معدّل المزوّد (مؤقت). |
| 499 | RuntimeError | أُلغيت المهمة. |
| 502 | ConnectionError | خطأ من مزوّد LLM المصدر (مثل تجاوز سعة السياق). |
| 504 | ConnectionError | انقضت timeout_seconds؛ أُلغيت المهمة تلقائيًا على جانب الخادم. |
يأتي التطبيق بستة مخططات سيناريو قابلة للاستيراد — إثراء مفرد، ونمط الدفعة عبر Iterator، ومن مستند إلى إثراء، ومن صورة إلى عيّنة إلى مخطط، ومن عيّنات إلى مخطط، وتفريغ تغذية الفروق لمزامنة قاعدة البيانات. استورد أحدها واستبدل به اتصالك الخاص بدلًا من ربط الوحدات من الصفر.