أضف وحدة 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 لغة الأسواق الأوروبية والآسيوية والشرق أوسطية والأفريقية الرئيسية.
نتيجة استدعاء واحد لإثراء الكيان مع 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) يصل إلى واجهة برمجة تطبيقات Entity Enricher عند التهيئة. تظهر المخططات المثبّتة أولاً (مميّزة بالرمز 📌)، وتتضمن تسميات النماذج التسعير لكل مليون رمز، وترى المؤسسات المحدودة الخطة إشعاراً عند بلوغ حصتها.

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

9 وحدات موزّعة على 5 فئات. تُصدر وحدات البحث حزمة واحدة لكل نتيجة لسلاسل Iterator/Aggregator اللاحقة؛ بينما تُصدر وحدات الإجراء حزمة واحدة.
| الفئة | وحدة | الوصف |
|---|---|---|
| Enrichment | Enrich Entity | إثراء باستدعاء واحد مع دمج متعدد النماذج. يُعيد النتيجة النهائية المدمجة (أو أفضل نتيجة لنموذج واحد). يُلغى تلقائيًا عند ظهور تحذير تصنيف. |
| Schemas | List Schemas | يُرجع حزمة Make واحدة لكل مخطط محفوظ، جاهزة لسلاسل Iterator/Aggregator. |
| Schemas | Get Schema Details | محتوى المخطط الكامل بما في ذلك مجالات الخبرة والخصائص ومفاتيح البحث. |
| Records | List Records | ابحث في سجلات الإثراء السابقة باستخدام عوامل التصفية (النوع، النجاح، النص الحر). |
| Records | Get Record | استرجاع نتيجة إثراء واحدة مع مقاييس كاملة لكل موجّه. |
| Fusion | Merge Results | أعد دمج نتائج إثراء متعددة، مع إمكانية استخدام مُحكِّم LLM مختلف. |
| Attachments | Upload Attachment | رفع ملف (مُعيَّن كمخزن مؤقت من وحدة سابقة، مثل HTTP ▸ Get a File) وإرجاع معرّف المرفق الخاص به لاستخدامه في Enrich Entity. |
| Attachments | Delete Attachment | حذف مرفق حسب المعرّف — خطوة تنظيف مفيدة بعد الإثراء. |
| Configuration | Get Options | النماذج واللغات والاستراتيجيات المتاحة، وحدود خطة المؤسسة. |
تُحتسب فواتير سيناريوهات Make لكل عملية. فبدلاً من نقل وحدة الإثراء بالدفعات الخاصة بموصّل n8n، يستخدم تطبيق Make أداة التكرار المدمجة في Make مع Enrich Entity. كل تكرار مستقل، والأخطاء لا تتسلسل، وتعكس الفوترة بالضبط ما تمت معالجته.
يملأ استدعاء واحد لإثراء الكيان كل خاصية متعددة اللغات بجميع اللغات المختارة — يُنتَج في تمريرة LLM واحدة، وليس عبر N جولات متتالية. اربط أي لغة مباشرةً: {{result.names.primary.fr}}.
تُغلّف نقطة نهاية POST /api/single/enrich/sync المخصصة تدفّق البثّ على جانب الخادم. عملية Make واحدة = حزمة واحدة. لا استطلاع، ولا أنماط ذات وحدتين.
تجلب 7 استدعاءات RPC المخططات والنماذج واللغات والاستراتيجيات ونماذج التصنيف والتحكيم وخيارات البحث على الويب في وقت التهيئة — تظهر المخططات المثبّتة أولًا، وتتضمن أسماء النماذج معلومات التسعير.
اختر نموذجين أو أكثر ويُدمَج الناتج تلقائيًا. تتضمّن حزمة الإخراج is_fused وsource_models[] وملخّص fusion: {agreed_fields, conflicted_fields, total_fields}.
يتحقق نموذج تصنيف رخيص اختياري من مطابقة الكيان للنوع المتوقع في المخطط قبل تشغيل الإثراء. ويُنتج عدم التطابق خطأ 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؛ أُلغيت المهمة تلقائيًا على جانب الخادم. |