الانتقال إلى المحتوى الرئيسي
OpenAI ChatGPT هو نظام محادثة بالذكاء الاصطناعي قوي للغاية، فما عليك سوى إدخال كلمات توجيهية ليتمكن من إنشاء ردود سلسة وطبيعية في غضون ثوانٍ قليلة. يتميز ChatGPT في المجال بقدراته الممتازة على فهم اللغة وتوليدها، واليوم، أصبح ChatGPT مستخدمًا على نطاق واسع في مختلف الصناعات والمجالات، وأصبح تأثيره أكثر وضوحًا. سواء في المحادثات اليومية أو الكتابة الإبداعية أو الاستشارات المهنية أو برمجة الأكواد، يمكن لـ ChatGPT تقديم مساعدة ذكية مدهشة، مما يحسن بشكل كبير كفاءة العمل والإبداع لدى البشر. تقدم هذه الوثيقة بشكل أساسي سير عمل استخدام عملية OpenAI Chat Completion API، وباستخدامها يمكننا بسهولة استخدام ميزة المحادثة الخاصة بـ OpenAI ChatGPT الرسمي.

GPT-6.1 Sol

استخدم model: "gpt-6.1-sol" لاختيار هذا النموذج. يدعم الإخراج المتدفق، واستدعاء الدوال، والإخراج المنظم، وإدخال الصور. خلال الأسبوع الأول من فتحه، سيكون متاحًا فقط لحاملي ACE T1+ الذين تم التحقق منهم (100,000 ACE على الأقل) أو للمستخدمين المصرح لهم؛ ويُعتمد وقت الإتاحة المحدد على تنبيه الوصول في وحدة التحكم. تدعم مستويات الاستدلال low وmedium وhigh وxhigh وmax، ولا تدعم حاليًا none أو minimal. يوصى بالبدء من reasoning_effort: "low". عند تجاوز الإدخال 272,000 tokens، ينطبق تسعير السياق الطويل على الطلب بالكامل، وتخضع الرسوم للسعر الحالي في وحدة التحكم.

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

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

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

بعد ذلك، يمكنك ملء المحتوى المقابل في الواجهة، كما هو موضح في الصورة:

عند استخدام هذه الواجهة لأول مرة، نحتاج إلى ملء ثلاثة عناصر على الأقل، أحدها هو authorization، ويمكن اختياره مباشرة من القائمة المنسدلة. المعلمة الأخرى هي model، وmodel هي فئة النموذج التي نختار استخدامها من موقع OpenAI ChatGPT الرسمي، وهنا لدينا بشكل أساسي 20 نموذجًا، ويمكنك الاطلاع على النماذج التي نوفرها لمزيد من التفاصيل. المعلمة الأخيرة هي messages، وmessages هي مصفوفة كلمات الاستفسار التي ندخلها، وهي مصفوفة، مما يعني إمكانية رفع عدة كلمات استفسار في الوقت نفسه، وكل كلمة استفسار تتضمن role وcontent، حيث يشير role إلى دور السائل، ونحن نوفر ثلاث هويات، وهي user وassistant وsystem. أما content الآخر فهو المحتوى المحدد لاستفسارنا. في الوقت نفسه، يمكنك ملاحظة وجود إنشاء لكود الاستدعاء المقابل على الجانب الأيمن، ويمكنك نسخ الكود وتشغيله مباشرة، أو النقر مباشرة على زر «Try» للاختبار. المعلمات الاختيارية الشائعة:
  • max_tokens: يحد من الحد الأقصى لعدد tokens في الرد الواحد.
  • temperature: عشوائية التوليد، بين 0 و2، وكلما زادت القيمة زاد التشتت.
  • n: عدد الردود المرشحة التي يتم توليدها في المرة الواحدة.
  • response_format: إعداد تنسيق الإرجاع.

بعد الاستدعاء، نجد أن النتيجة المرجعة كما يلي:
تحتوي النتيجة المرجعة على عدة حقول، ويتم تقديمها كما يلي:
  • id، معرّف مهمة المحادثة التي تم إنشاؤها هذه المرة، ويُستخدم لتمييز مهمة المحادثة هذه بشكل فريد.
  • model ، نموذج OpenAI ChatGPT الرسمي المختار.
  • choices، معلومات الإجابة التي يقدمها ChatGPT استجابةً لكلمات الاستفسار.
  • usage : معلومات إحصائية حول token لسؤال وجواب هذه المرة.
من بينها، يتضمن choices معلومات إجابة ChatGPT، وchoices بداخله هو ChatGPT، ويمكن ملاحظة ذلك كما هو موضح في الصورة.

يمكن ملاحظة أن حقل content داخل choices يتضمن المحتوى المحدد لرد ChatGPT.

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

تدعم هذه الواجهة أيضًا الاستجابة المتدفقة، وهذا مفيد جدًا لربط صفحات الويب، ويمكن أن يتيح للصفحة تحقيق تأثير العرض حرفًا بحرف. إذا كنت تريد إرجاع الاستجابة بشكل متدفق، يمكنك تغيير معلمة stream في رأس الطلب إلى true. يتم التعديل كما هو موضح في الصورة، ولكن يجب أن يتضمن كود الاستدعاء تغييرات مقابلة لدعم الاستجابة المتدفقة.

بعد تعديل stream إلى true، ستُرجع API بيانات JSON المقابلة سطرًا بسطر، وعلى مستوى الكود نحتاج إلى إجراء تعديلات مناسبة للحصول على النتائج سطرًا بسطر. كود استدعاء Python نموذجي:
تأثير الإخراج كما يلي:
يمكن ملاحظة أن الاستجابة تحتوي على العديد من data، وتكون choices داخل data هي أحدث محتوى للإجابة، وهو متسق مع المحتوى المذكور أعلاه. تمثل choices محتوى الإجابة المضاف حديثًا، ويمكنك الربط مع نظامك بناءً على النتائج. وفي الوقت نفسه، يتم تحديد انتهاء الاستجابة المتدفقة وفقًا لمحتوى data، فإذا كان المحتوى هو [DONE]، فهذا يعني أن إجابة الاستجابة المتدفقة قد انتهت بالكامل. تحتوي نتيجة data المُعادة على عدة حقول، كما يلي:
  • id، معرّف مهمة المحادثة التي تم إنشاؤها هذه المرة، ويُستخدم لتمييز مهمة المحادثة هذه بشكل فريد.
  • model ، نموذج OpenAI ChatGPT الرسمي المختار.
  • choices، معلومات الإجابة التي يقدمها ChatGPT على كلمات السؤال.
يدعم JavaScript أيضًا ذلك، فعلى سبيل المثال يكون كود الاستدعاء المتدفق لـ Node.js كما يلي:
كود عينة Java:
يمكن إعادة كتابة اللغات الأخرى بشكل مستقل، والمبدأ واحد في جميع الحالات.

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

إذا كنت ترغب في ربط وظيفة المحادثة متعددة الجولات، فأنت بحاجة إلى رفع عدة كلمات سؤال إلى حقل messages، ويُعرض المثال المحدد لعدة كلمات سؤال كما هو موضح في الصورة التالية:

كود استدعاء عينة Python:
من خلال رفع عدة عبارات استفسار، يمكن تحقيق محادثات متعددة الجولات بسهولة، ويمكن الحصول على الرد التالي:
يمكن ملاحظة أن المعلومات التي يحتوي عليها choices تتطابق مع محتوى الاستخدام الأساسي، وهذا يتضمن المحتوى المحدد لرد ChatGPT على محادثات متعددة، وبهذه الطريقة يمكن الإجابة عن الأسئلة المقابلة وفقًا لمحتوى المحادثات المتعددة.

التكامل مع OpenAI-Python

تتوافق واجهة برمجة تطبيقات OpenAI Chat Completion مع واجهة OpenAI الرسمية، ويمكن استخدام حزمة SDK الرسمية OpenAI-Python مباشرةً للتكامل، وستقدم هذه المقالة بإيجاز طريقة الاستخدام.
  1. تحتاج أولًا إلى إعداد بيئة Python محلية، ويمكن البحث عن هذه العملية في Google.
  2. نزّل وثبّت بيئة التطوير، مثل تثبيت محرر VSCode.
  3. اضبط متغيرات بيئة OpenAI.
  • في مجلد المشروع، أنشئ ملفًا باسم .env واحفظه.
  • محتوى ملف .env:
استبدل sk-xxx بمفتاحك الخاص. إن OPENAI_BASE_URL هي واجهة الوكيل للوصول إلى OpenAI.
  1. ثبّت الحزم التي يعتمد عليها المشروع
في نظام Mac OS، يكون الأمر:
  1. أنشئ ملف الشفرة المصدرية للمثال
افترض أننا أنشأنا شفرة مثال باسم index.py، ويكون محتواها المحدد كما يلي:

نماذج متصلة بالإنترنت

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

وفي الوقت نفسه، يمكنك ملاحظة وجود توليد للشفرة المقابلة للاستدعاء على الجانب الأيمن، ويمكنك نسخ الشفرة وتشغيلها مباشرةً، أو النقر مباشرةً على زر «Try» للاختبار.

بعد الاستدعاء، نجد أن النتيجة المرجعة كما يلي:
يمكن ملاحظة أن معلومات الرد داخل choices يتم الحصول عليها بعد الاستعلام عبر الإنترنت، كما أنها تعرض الروابط ذات الصلة. يجب عرض معلومات الرد داخل choices باستخدام صياغة markdown، وبهذه الطريقة فقط يمكن الحصول على أفضل تجربة، وفي النهاية يعكس هذا أيضًا الميزة القوية لوظيفة الاتصال بالإنترنت في نموذجنا.

النموذج المرئي

gpt-4o هو نموذج لغوي كبير متعدد الوسائط طورته OpenAI، وقد أضاف قدرة الفهم البصري على أساس GPT-4. يمكن لهذا النموذج معالجة مدخلات النصوص والصور في الوقت نفسه، محققًا الفهم والتوليد عبر الوسائط. تتوافق معالجة النصوص باستخدام نموذج gpt-4o مع محتوى الاستخدام الأساسي المذكور أعلاه، وفيما يلي مقدمة موجزة حول كيفية استخدام قدرة النموذج على معالجة الصور. تُستخدم قدرة معالجة الصور في نموذج gpt-4o بشكل رئيسي من خلال إضافة حقل type إلى محتوى content الأصلي، ومن خلال هذا الحقل يمكن معرفة ما إذا كان المرفوع نصًا أم صورة، وبالتالي استخدام قدرة معالجة الصور في نموذج gpt-4o. وفيما يلي شرح رئيسي لطريقتين لاستدعاء هذه الوظيفة باستخدام Curl وPython.
  • طريقة نص Curl البرمجي
  • طريقة نص Python البرمجي
ثم يمكن الحصول على النتيجة التالية، ومعلومات الحقول في النتيجة متسقة مع ما سبق، والتفاصيل كما يلي:
يمكن ملاحظة أن محتوى الإجابة يستند إلى الصورة، لذلك من خلال الطريقتين المذكورتين أعلاه يمكن استخدام قدرات معالجة النصوص والصور في نموذج gpt-4-vision بسهولة. بالإضافة إلى gpt-4o، يوجد نموذج آخر أقل تكلفة يسمى gpt-4o-mini. يُعد gpt-4o-mini أحدث جيل من نماذج اللغة الكبيرة التي طورتها OpenAI، فهو لا يتمتع بسرعة استجابة عالية فحسب، بل إن سعره أقل أيضًا، ويدعم تعدد الوسائط كذلك. يمكن الرجوع إلى محتوى استخدام نموذج gpt-4o أعلاه لمعرفة كيفية استخدام وظيفة vision.

نموذج الرسم GPT-4o

توليد صور بناءً على صورة مرجعية

فيما يلي مثال على توليد صورة بأسلوب مخصص بناءً على صورة، دعونا أولًا نلقي نظرة على الصورة التي أدخلناها، كما هو موضح في الصورة التالية: يمكن ملاحظة أن الصورة المرجعية هي صورة لشخص حقيقي، ويمكننا جعلها تتغير إلى أسلوب معين، مثل تحويلها إلى صورة بأسلوب الأنمي، ومثال الطلب المحدد:
نتيجة المثال:
حيث إن message.content داخل choices هو نتيجة المحادثة الكاملة التي تم إنشاؤها، وتكون الصورة مضمنة فيه بصيغة Markdown (رابط الصورة عنوان مؤقت، يرجى تنزيلها وحفظها في الوقت المناسب). يمكن ملاحظة أن الصورة المُنشأة هي بالفعل بأسلوب الأنمي، كما هو موضح في الصورة التالية:

توليد صورة من نص فقط

يمكننا استخدام كلمة توجيهية لجعلها تولد صورة، وإعادتها إلينا كنتيجة بأسلوب المحادثة. فيما يلي نأخذ إنشاء صورة لغروب شمس في مدينة مستقبلية مثالًا، والمثال المحدد أدناه:
نتيجة المثال:
يمكن ملاحظة أن النتيجة تتوافق مع كلمة التوجيه، والتفاصيل كما يلي:

توليد صورة واحدة من عدة صور

يمكننا أيضًا استخدام عدة صور مرجعية لتوليد صورة واحدة، مثل استخدام صورة لرجل وسيم وصورة قهوة، ويمكن استخدام هاتين الصورتين لتوليد صورة لرجل وسيم يشرب القهوة. فيما يلي الصور المرجعية المحددة:

فيما يلي نأخذ إنشاء صورة لرجل يرفع القهوة ويكاد يشربها مثالًا، والمثال المحدد أدناه:
مثال على النتيجة:
يمكن ملاحظة أن النتيجة المُنشأة تجمع بالفعل بين الصورتين لإنشائها، وفيما يلي النتيجة المحددة:

معالجة الأخطاء

عند استدعاء API، إذا واجهت خطأً، فسيُرجع API رمز الخطأ والمعلومات المقابلة. على سبيل المثال:
  • 400 token_mismatched: طلب غير صالح، قد يكون بسبب معلمات مفقودة أو غير صالحة.
  • 400 api_not_implemented: طلب غير صالح، قد يكون بسبب معلمات مفقودة أو غير صالحة.
  • 401 invalid_token: غير مصرح به، رمز التفويض غير صالح أو مفقود.
  • 429 too_many_requests: طلبات كثيرة جدًا، لقد تجاوزت حد المعدل.
  • 500 api_error: خطأ داخلي في الخادم، حدث خطأ ما على الخادم.

مثال على استجابة الخطأ

الخلاصة

من خلال هذا المستند، أصبحت تعرف بالفعل كيفية استخدام OpenAI Chat Completion API لتنفيذ وظيفة المحادثة الخاصة بـ OpenAI ChatGPT الرسمي بسهولة. نأمل أن يساعدك هذا المستند على التكامل مع API واستخدامه بشكل أفضل. إذا كانت لديك أي أسئلة، فيرجى الاتصال بفريق الدعم الفني لدينا في أي وقت.