شارك سير العمل أدناه. يبدو أن المشكلة في ‘sub-node Default Data Loader’ والخطأ المرجع هو:
واجهنا خطأ:
{
“errorMessage”: “DOMMatrix is not defined”,
“errorDescription”: “DOMMatrix is not defined”,
“errorDetails”: {},
“n8nDetails”: {
“time”: “6/15/2026, 5:38:18 PM”,
“n8nVersion”: “2.25.7 (Self Hosted)”,
“binaryDataMode”: “filesystem”
}
}
الخطأ لديك يأتي من Data Loader الافتراضي الذي يستخدم loader: "pdfLoader" في الخلفية، والذي يستدعي تبعية pdfjs تتوقع واجهات برمجية للمتصفح مثل DOMMatrix غير متاحة في الخادم/Docker. كان هذا خطأ معروف يتعلق بـ pdf loader وتم إصلاحه في إصدارات n8n الأخيرة، لذا أولاً تأكد من أن مثيلك يعمل فعلاً على أحدث صورة (اسحب الوسم الذي تتوقعه وأعد تشغيل الحاوية). كحل بديل، يمكنك تجاوز PDF loader تماماً: أضف عقدة Extract from File قبل Default Data Loader الخاص بك، اضبطها على “Read Text from File”، ثم غيّر Default Data Loader Type of Data إلى JSON أو Text وخريطة النص المستخرج إليها. بهذه الطريقة يعمل المُحمّل على نص عادي فقط ولا يلمس الكود pdfjs الإشكالي. إذا كنت بالفعل على أحدث إصدار وتراى أخطاء DOMMatrix بعد سحب نظيف، فسيكون من المفيد مشاركة وسم صورة Docker الدقيق والعقد مباشرة قبل Data Loader حتى نتمكن من المراجعة مرة أخرى.
شكراً على اقتراحاتك.
تمكنت من تجاوز خطأ DOMMatrix وتم تشغيل سير العمل بنجاح. يمكنني رؤية العناصر الـ 24 على جانب الإخراج في Pinecone Vector Store
ومع ذلك، لا أرى فهرسي محدثاً على موقع Pinecone. (أرفق لقطة شاشة)
يسعدني أن يكون الحل البديل قد حل مشكلة DOMMatrix. بخصوص عدم تحديث فهرس Pinecone - هناك عدة أشياء يجب التحقق منها: أولاً، تأكد من أن اسم الفهرس (Index Name) والمساحة (Namespace) في عقدة Pinecone Vector Store تطابق تماماً ما تراه في لوحة معلومات Pinecone (فهي حساسة لحالة الأحرف). ثانياً، تحقق من أن مفتاح API الخاص بك في Pinecone مرتبط بالمشروع والبيئة الصحيحة. ثالثاً، افتح لوحة معلومات Pinecone وانتقل إلى الفهرس الصحيح - أحياناً العرض الافتراضي يعرض فهرساً مختلفاً. إذا أرجعت العقدة 24 عنصراً في الإخراج بدون أخطاء، فمن المحتمل أن عملية الإدراج (upsert) قد تم قبولها، لذا فإن عدم تطابق المساحة (namespace) هو السبب الأكثر شيوعاً لهذا.
مرحباً!
شكراً على اقتراحاتك. بما أن لدي فهرساً واحداً فقط، ولم أنشئ مساحة اسم عند إنشاؤه، استخدمت Pinecone Namespace=“default” في n8n الخاص بي. ومع ذلك، هذا لم يساعد. أنا أتابع توثيق Pinecone لإنشاء مساحة اسم جديدة وسأحاول مرة أخرى وسأعود إليك. شكراً مرة أخرى.
بخصوص Pinecone، لا تختبر namespace كسلسلة نصية default مع مسافات. يستخدم Pinecone __default__ للـ namespace الافتراضي؛ إذا أنشأت namespace مخصصاً، يجب استخدام القيمة الدقيقة نفسها في عقدة Pinecone في n8n وفي مرشح لوحة التحكم.
الفحص المقبول لم يعد هو مخرجات Data Loader. قم بتشغيل upsert واحد برقم معرّف ثابت مثل test-001، ثم اسرد/ابحث عن هذا المعرّف في __default__ وفي namespace الذي كتبته. إذا ظهر في مكان واحد فقط، فإن المسار يكتب بشكل صحيح ولوحة التحكم تبحث في namespace مختلف.
بما أن جزء DOMMatrix تم تجاوزه بالفعل وتعرض n8n 24 عنصر إخراج، فسأتوقف عن استخدام لوحة معلومات Pinecone كنقطة إثبات أولى.
الفصل التالي هو:
قام n8n بإنتاج أجزاء لكن لم يقم بإدراجها;
قبلت Pinecone عملية الإدراج لكنها هبطت في namespace/index/project مختلف;
قبلتها Pinecone، لكن مرشح لوحة المعلومات لا يعرض الـ namespace الذي كتبت إليه.
أصغر اختبار إثبات سأقوم به:
استخدم مدخل نص صغير واحد، وليس ملف PDF;
عيّن معرف ثابت مثل test-001;
عيّن الـ namespace بوضوح إلى default أو إلى قيمة مخصصة بسيطة مثل n8n_test;
أدرج حقل بيانات وصفية واضح واحد، على سبيل المثال source: n8n_probe;
قم فوراً بتشغيل استعلام Pinecone/fetch بحثاً عن test-001 في ذلك الـ namespace بالذات.
إذا وجد fetch/query اختبار test-001، فإن سير العمل يكتب بشكل صحيح والمشكلة هي رؤية لوحة المعلومات/الفهرس/الـ namespace.
إذا لم يتمكن fetch/query من العثور على test-001، فإن المشكلة تحدث قبل أو أثناء الإدراج: اسم الفهرس، نطاق المشروع/مفتاح API، عدم تطابق بُعد التضمين، أو عدم استقبال عقدة متجر المتجهات للعناصر التي تعتقد أنها تستقبلها.
سأتجنب أيضاً قيم الـ namespace التي تحتوي على مسافات أو علامات اقتباس. قم بالاختبار باستخدام default أو n8n_test فقط حتى تزيل متغير واحد من التشخيص.