Skip to main content
نحن نعلم أن تكامل بعض واجهات برمجة التطبيقات للإجابة على الأسئلة في السوق ليس سهلاً نسبيًا، مثل واجهة برمجة تطبيقات OpenAI للدردشة، التي تحتوي على حقل messages، وإذا أردنا إكمال محادثة مستمرة، نحتاج إلى تمرير كل تاريخ السياق، بالإضافة إلى معالجة مشكلة تجاوز حد التوكن. واجهة برمجة تطبيقات الذكاء الاصطناعي للإجابة على الأسئلة المقدمة من AceDataCloud تم تحسينها لهذه الحالات، حيث تم تغليف تنفيذ المحادثات المستمرة مع الحفاظ على فعالية الإجابة، دون الحاجة للقلق بشأن تمرير الرسائل أو مشكلة تجاوز حد التوكن (تمت معالجتها تلقائيًا داخل واجهة برمجة التطبيقات)، كما توفر أيضًا وظائف استعلام وتعديل المحادثات، مما يبسط التكامل بشكل كبير. ستتناول هذه الوثيقة توضيح تكامل واجهة برمجة تطبيقات الذكاء الاصطناعي للإجابة على الأسئلة.

عملية التقديم

لاستخدام واجهة برمجة تطبيقات الذكاء الاصطناعي للإجابة على الأسئلة، يجب أولاً الذهاب إلى وحدة التحكم في Ace Data Cloud للحصول على رمز API الخاص بك، للاحتفاظ به كنسخة احتياطية. إذا لم تكن قد قمت بتسجيل الدخول أو التسجيل بعد، فسيتم تحويلك تلقائيًا إلى صفحة تسجيل الدخول لدعوتك للتسجيل وتسجيل الدخول، وبعد الانتهاء، سيتم إرجاعك تلقائيًا إلى الصفحة الحالية. يمكن استخدام رمز API واحد لاستدعاء جميع خدمات المنصة، دون الحاجة لتقديم طلب منفصل لكل خدمة. عند التقديم لأول مرة، ستحصل على رصيد مجاني لتجربته؛ وعند نفاد الرصيد، يمكنك إعادة شحن الرصيد العام في وحدة التحكم.
📘 الوثيقة الكاملة: واجهة برمجة تطبيقات الذكاء الاصطناعي للإجابة على الأسئلة →

الاستخدام الأساسي

أولاً، يجب أن نفهم طريقة الاستخدام الأساسية، وهي إدخال السؤال والحصول على الإجابة، كل ما عليك هو تمرير حقل question وتحديد النموذج المناسب. على سبيل المثال، إذا سألت: “What’s your name؟”، يمكننا بعد ذلك ملء المحتوى المقابل على الواجهة، كما هو موضح في الصورة: يمكنك أن ترى أننا قمنا بتعيين رؤوس الطلب، بما في ذلك:
  • accept: نوع الاستجابة التي ترغب في تلقيها، هنا تم تعيينها إلى application/json، أي بتنسيق JSON.
  • authorization: مفتاح استدعاء واجهة برمجة التطبيقات، يمكنك اختياره مباشرة بعد التقديم.
كما تم تعيين جسم الطلب، بما في ذلك:
  • model: اختيار النموذج، مثل GPT 3.5 أو GPT 4.
  • question: السؤال الذي تحتاج إلى طرحه، يمكن أن يكون نصًا عاديًا.
بعد الاختيار، يمكنك أن تلاحظ أنه تم إنشاء كود مطابق على الجانب الأيمن، كما هو موضح في الصورة:

انقر على زر “Try” لإجراء الاختبار، كما هو موضح في الصورة أعلاه، وهنا حصلنا على النتيجة التالية:
يمكنك أن ترى أن النتيجة التي تم إرجاعها تحتوي على حقل answer، وهو إجابة السؤال. يمكنك إدخال أي سؤال، وستحصل على أي إجابة. إذا كنت لا تحتاج إلى أي دعم للمحادثات متعددة الجولات، فإن هذه الواجهة يمكن أن تسهل تكاملك بشكل كبير. بالإضافة إلى ذلك، إذا كنت ترغب في توليد كود التكامل المقابل، يمكنك نسخه مباشرة، على سبيل المثال، كود CURL كما يلي:
كود التكامل بلغة Python كما يلي:

المحادثات متعددة الجولات

إذا كنت ترغب في تكامل وظيفة المحادثات متعددة الجولات، تحتاج إلى تمرير معلمة إضافية stateful، وقيمتها تكون true، ويجب أن تحمل كل طلب لاحق هذه المعلمة. بعد تمرير معلمة stateful، ستقوم واجهة برمجة التطبيقات بإرجاع معلمة إضافية id، تمثل معرف المحادثة الحالية، وفيما بعد، كل ما عليك هو تمرير هذا المعرف كمعلمة، مما يسهل تنفيذ المحادثات متعددة الجولات. دعنا نوضح العملية المحددة. في الطلب الأول، قم بتعيين معلمة stateful إلى true، ومرر بشكل طبيعي معلمات model و question، كما هو موضح في الصورة: الكود المقابل كما يلي:
يمكنك الحصول على الإجابة التالية:
في الطلب الثاني، قم بتمرير حقل id الذي تم إرجاعه من الطلب الأول كمعلمة، مع الحفاظ على تعيين معلمة stateful إلى true، واسأل “What I asked you just now؟”، كما هو موضح في الصورة: الكود المقابل كما يلي:
النتيجة كما يلي:
يمكنك أن ترى أنه يمكننا الإجابة على الأسئلة بناءً على السياق.

الاستجابة المتدفقة

تدعم هذه الواجهة أيضًا الاستجابة المتدفقة، وهو أمر مفيد جدًا لتكامل الويب، حيث يمكن أن يتيح للويب تحقيق تأثير العرض كلمة بكلمة. إذا كنت ترغب في إرجاع الاستجابة بشكل متدفق، يمكنك تغيير معلمة accept في رأس الطلب إلى application/x-ndjson. التعديل كما هو موضح في الصورة، ولكن يجب أن يكون هناك تغييرات مناسبة في كود الاستدعاء لدعم الاستجابة المتدفقة. بعد تغيير accept إلى application/x-ndjson، ستقوم واجهة برمجة التطبيقات بإرجاع بيانات JSON المقابلة سطرًا بسطر، وعلى مستوى الكود، نحتاج إلى إجراء التعديلات اللازمة للحصول على النتائج سطرًا بسطر. كود استدعاء Python النموذجي:
输出效果如下:
يمكن رؤية أن answer في الاستجابة هو المحتوى الأحدث للإجابة، و delta_answer هو المحتوى الجديد المضاف للإجابة، يمكنك استخدام النتائج لدمجها في نظامك. JavaScript أيضًا مدعوم، مثل كود الاستدعاء المتدفق لـ Node.js كما يلي:
مثال كود Java:
يمكنك إعادة كتابة الكود بلغات أخرى، المبدأ هو نفسه.

نموذج الإعدادات

نعلم أن واجهات برمجة التطبيقات المتعلقة بـ OpenAI لديها مفهوم system_prompt، وهو إعداد نموذج كامل، مثل ما اسمه وما إلى ذلك. هذه واجهة برمجة التطبيقات الخاصة بالأسئلة والأجوبة AI تعرض أيضًا هذه المعلمة، المسماة preset، باستخدامها يمكننا إضافة إعدادات للنموذج، دعنا نجرب مثالًا: هنا نضيف حقل preset إضافي، المحتوى هو أنت فنان محترف، كما هو موضح في الصورة: الكود المقابل كما يلي:
نتيجة التشغيل كما يلي:
يمكننا أن نرى هنا أننا أخبرنا GPT أنه روبوت، ثم سألناه ماذا يمكنه أن يفعل من أجلنا، فيمكنه أن يتقمص دور الروبوت للإجابة على الأسئلة.

التعرف على الصور

يمكن لهذا AI أيضًا دعم إضافة مرفقات لإجراء التعرف على الصور، من خلال تمرير روابط الصور المقابلة عبر references، على سبيل المثال، لدي هنا صورة لتفاح، كما هو موضح في الصورة: رابط الصورة هو https://cdn.acedata.cloud/ht05g0.png، نقوم بتمريره مباشرة كمعامل references، مع ملاحظة أنه يجب اختيار نموذج يدعم التعرف البصري، والنموذج المدعوم حاليًا هو gpt-4-vision، لذا الإدخال كما يلي: الكود المقابل كما يلي:
نتيجة التشغيل كما يلي:
يمكننا أن نرى أننا حصلنا بنجاح على نتيجة الإجابة المقابلة للصورة.

الأسئلة والأجوبة المتصلة بالإنترنت

تدعم هذه الواجهة أيضًا نماذج متصلة بالإنترنت، بما في ذلك GPT-3.5 وGPT-4، حيث يوجد في خلفية واجهة برمجة التطبيقات عملية بحث تلقائية على الإنترنت وتلخيص، يمكننا اختيار النموذج ليكون gpt-3.5-browsing لتجربته، كما هو موضح في الصورة: الكود كما يلي:
نتيجة التشغيل كما يلي:
يمكنك أن ترى، هنا قام بالبحث تلقائيًا على موقع قناة الطقس، وحصل على المعلومات الموجودة فيه، ثم أعاد النتائج في الوقت الحقيقي.
إذا كانت لديك متطلبات أعلى لجودة إجابات النموذج، يمكنك تغيير النموذج إلى gpt-4-browsing، وستكون جودة الإجابة أفضل.