مرحبا يا جماعة،
نحن نستضيف نماذج على Azure (foundry الخاص بهم)، لكن يبدو أننا لا نستطيع استخدام هذه كـ “chat models” في عقدة AI agent.
حاولت نماذج مختلفة متعددة (deepseek، نماذج من OpenAI..) لكنها تلقي نفس الخطأ دائماً.
“API version not supported”.
أعتقد أن هذا يتعلق بحقيقة أن هذه النماذج ترسل حمولة من نوع chat completion، بدلاً من استخدام المعيار الحالي لحمولة Response API.
هل لديكم أي فكرة عن كيفية إصلاح هذا؟
أو كيفية استخدام النماذج المستضافة فعلاً على foundry الخاص بـ Azure في عقدة n8n agent؟
شكراً!
@Adam_Luka المشكلة ليست في الحمولة، بل في حقل إصدار واجهة برمجة التطبيقات (API Version) في بيانات اعتماد Azure OpenAI الخاصة بك، هذا الخطأ يعني أن القيمة المعيّنة هناك غير مدعومة لمواردك. عيّن قيمة api-version مدعومة حالية (تعرض صفحة إهمال إصدار واجهة برمجة التطبيقات لـ Azure OpenAI من Microsoft أيها هو نشط وأيها متقاعد). هناك تحفظ واحد، عقدة Azure OpenAI توجه فقط نحو نماذج نشر OpenAI، النماذج غير OpenAI مثل Deepseek تمر عبر نقطة نهاية الاستدلال لـ Azure AI وليس هذه العقدة.
لقد جربت نسخ API متعددة في بيانات الاعتماد الخاصة بي، لكن لا شيء يبدو أنه يعمل.
هذا يتعلق بحقيقة أن عقدة وكيل الذكاء الاصطناعي مرتبطة بحمولة Chat completions، بدلاً من استجابة API.
يبدو أن n8n متأخرة فقط في هذا الصدد.
@Adam_Luka
هل يمكنك إيقاف هذا في نموذج الدردشة؟

@Adam_Luka أصحح نفسي، إنه قابل للوصول بالفعل، لكن ليس من خلال عقدة Azure OpenAI، استخدم عقدة OpenAI Chat Model مع بيانات الاعتماد بحيث يكون Base URL مضبوطًا على نقطة نهاية openai-compatible الخاصة بك (https://{your-project}.services.ai.azure.com/openai/v1) بالإضافة إلى مفتاح foundry API الخاص بك. تبقى عقدة Azure OpenAI مقفولة على سطح chat-completions الكلاسيكي .openai.azure.com، وهذا هو السبب في رفضها كل إصدار API جربته.
@Adam_Luka
تم الإبلاغ عن انحدار في إصدارات n8n حول الإصدار 2.20.0 حيث بدأت عقدة Azure بفرض نقطة نهاية /responses بدون خيار للعودة. إذا قمت بالتحديث مؤخراً وحدثت مشاكل، وجد بعض المستخدمين الاستقرار بتثبيت صورة Docker الخاصة بهم على n8nio/n8n:2.19.5 إلى أن تتم إضافة خيار “استخدام Responses API” رسمي إلى عقدة Azure.
هل يمكنك محاولة هذا؟
مرحبا @Adam_Luka!
المشكلة الأساسية هي أن عقدة نموذج Azure OpenAI Chat في n8n مصممة بشكل صارم لاستخدام مسار الاستدلال من Azure OpenAI (/openai/deployments/{deployment}/chat/completions)، والذي يعمل فقط مع نماذج OpenAI المستضافة على Azure. النماذج التي لا تتبع OpenAI والمنشورة عبر Azure AI Foundry (مثل DeepSeek) تستخدم صيغة نقطة نهاية مختلفة تماماً.
بالنسبة لتلك النماذج، أسهل طريقة هي استخدام عقدة OpenAI Chat Model (وليس عقدة Azure) والإشارة بها مباشرة إلى نقطة نهاية الاستدلال من Azure AI Foundry - تبدو نقطة النهاية مثل https://{your-project}.services.ai.azure.com/models وتقبل مفتاح API. في بيانات الاعتماد، اضبط Base URL على تلك النقطة النهائية واستخدم مفتاح API الخاص بك من Azure AI Foundry. يجب أن يطابق اسم النموذج اسم النشر في Foundry.
إذا أردت البقاء على عقدة Azure OpenAI، فستعمل بشكل صحيح فقط مع النماذج المنشورة من قبل OpenAI (GPT-4o، وغيرها) المنشورة على خدمة Azure OpenAI Service، وليس على Azure AI Foundry.
مرحبا @nguyenthieutoan،
شكراً لتوجيهك لي في الاتجاه الصحيح!
لأي شخص يواجه نفس المشكلة، الحل قريب جداً مما تم مشاركته أعلاه، لكن مع بعض التغييرات البسيطة:
- استخدم عقدة نموذج OpenAI Chat
- عند إعداد بيانات الاعتماد، استخدم ما يلي:
- مفتاح API - مفتاح Foundry API الخاص بك
- لكن عنوان URL الأساسي مختلف قليلاً، فهو ليس /models بل:
https://{your-project}.services.ai.azure.com/openai/v1
- بعد ذلك يمكنك اختيار النموذج الذي تريد استخدامه
شكراً لكم مرة أخرى يا جماعة!