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

申请流程

لاستخدام OpenAI Chat Completion API، يمكنك أولاً زيارة صفحة OpenAI Chat Completion API والنقر على زر “Acquire” للحصول على الشهادات المطلوبة: إذا لم تكن قد قمت بتسجيل الدخول أو التسجيل بعد، فسيتم تحويلك تلقائيًا إلى صفحة تسجيل الدخول لدعوتك للتسجيل وتسجيل الدخول، وبعد تسجيل الدخول، سيتم إرجاعك تلقائيًا إلى الصفحة الحالية. عند التقديم لأول مرة، ستحصل على حصة مجانية يمكن استخدامها مجانًا.

基本使用

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

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

بعد الاستدعاء، نجد أن النتيجة المرجعة هي كما يلي:
{
  "id": "chatcmpl-Cmd6uwSxN75F4PAdQSFEO8f2QPs4E",
  "object": "chat.completion",
  "created": 1765706120,
  "model": "gpt-5.2",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "Hello! What can I help you with today?",
        "refusal": null,
        "annotations": []
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 7,
    "completion_tokens": 13,
    "total_tokens": 20,
    "prompt_tokens_details": {
      "cached_tokens": 0,
      "audio_tokens": 0
    },
    "completion_tokens_details": {
      "reasoning_tokens": 0,
      "audio_tokens": 0,
      "accepted_prediction_tokens": 0,
      "rejected_prediction_tokens": 0
    }
  },
  "service_tier": "default",
  "system_fingerprint": null
}
تتكون النتيجة المرجعة من عدة حقول، كما هو موضح أدناه:
  • id، هو معرف مهمة المحادثة التي تم إنشاؤها، ويستخدم لتحديد هذه المهمة بشكل فريد.
  • model، هو النموذج الذي تم اختياره من موقع OpenAI ChatGPT الرسمي.
  • choices، هي معلومات الرد التي قدمها ChatGPT على كلمات الاستفسار.
  • usage، هو إحصائيات عدد الرموز المستخدمة في هذه المحادثة.
حيث أن choices تحتوي على معلومات رد ChatGPT، ويمكن ملاحظة ذلك كما هو موضح في الصورة.

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

流式响应

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

بعد تغيير stream إلى true، ستقوم API بإرجاع بيانات JSON سطرًا بسطر، وعلى مستوى الكود، نحتاج إلى إجراء التعديلات اللازمة للحصول على النتائج سطرًا بسطر. كود استدعاء Python كمثال:
import requests

url = "https://api.acedata.cloud/openai/chat/completions"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "model": "gpt-4",
    "messages": [{"role":"user","content":"hello"}],
    "stream": True
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
نتيجة الإخراج كما يلي:
data: {"choices": [{"delta": {"role": "assistant"}, "index": 0}], "created": 1721007348, "id": "chatcmpl-YzczYjVhNjhjMzMwNDQ5MDkyNGYzOGZjZGE1ZGQ5OGU", "model": "gpt-4", "object": "chat.completion.chunk", "recipient": "all"}

data: {"choices": [{"delta": {"content": "مرحبًا", "role": "assistant"}, "index": 0}], "created": 1721007348, "id": "chatcmpl-YzczYjVhNjhjMzMwNDQ5MDkyNGYzOGZjZGE1ZGQ5OGU", "model": "gpt-4", "object": "chat.completion.chunk", "recipient": "all"}

data: {"choices": [{"delta": {"content": " هناك", "role": "assistant"}, "index": 0}], "created": 1721007348, "id": "chatcmpl-YzczYjVhNjhjMzMwNDQ5MDkyNGYzOGZjZGE1ZGQ5OGU", "model": "gpt-4", "object": "chat.completion.chunk", "recipient": "all"}

data: {"choices": [{"delta": {"content": "!", "role": "assistant"}, "index": 0}], "created": 1721007348, "id": "chatcmpl-YzczYjVhNjhjMzMwNDQ5MDkyNGYzOGZjZGE1ZGQ5OGU", "model": "gpt-4", "object": "chat.completion.chunk", "recipient": "all"}

data: {"choices": [{"delta": {"content": " كيف", "role": "assistant"}, "index": 0}], "created": 1721007348, "id": "chatcmpl-YzczYjVhNjhjMzMwNDQ5MDkyNGYzOGZjZGE1ZGQ5OGU", "model": "gpt-4", "object": "chat.completion.chunk", "recipient": "all"}

data: {"choices": [{"delta": {"content": " يمكن", "role": "assistant"}, "index": 0}], "created": 1721007348, "id": "chatcmpl-YzczYjVhNjhjMzMwNDQ5MDkyNGYzOGZjZGE1ZGQ5OGU", "model": "gpt-4", "object": "chat.completion.chunk", "recipient": "all"}

data: {"choices": [{"delta": {"content": " أنا", "role": "assistant"}, "index": 0}], "created": 1721007348, "id": "chatcmpl-YzczYjVhNjhjMzMwNDQ5MDkyNGYzOGZjZGE1ZGQ5OGU", "model": "gpt-4", "object": "chat.completion.chunk", "recipient": "all"}

data: {"choices": [{"delta": {"content": " أساعد", "role": "assistant"}, "index": 0}], "created": 1721007348, "id": "chatcmpl-YzczYjVhNjhjMzMwNDQ5MDkyNGYzOGZjZGE1ZGQ5OGU", "model": "gpt-4", "object": "chat.completion.chunk", "recipient": "all"}

data: {"choices": [{"delta": {"content": " أنت", "role": "assistant"}, "index": 0}], "created": 1721007348, "id": "chatcmpl-YzczYjVhNjhjMzMwNDQ5MDkyNGYzOGZjZGE1ZGQ5OGU", "model": "gpt-4", "object": "chat.completion.chunk", "recipient": "all"}

data: {"choices": [{"delta": {"content": " اليوم", "role": "assistant"}, "index": 0}], "created": 1721007348, "id": "chatcmpl-YzczYjVhNjhjMzMwNDQ5MDkyNGYzOGZjZGE1ZGQ5OGU", "model": "gpt-4", "object": "chat.completion.chunk", "recipient": "all"}

data: {"choices": [{"delta": {"content": "؟", "role": "assistant"}, "index": 0}], "created": 1721007348, "id": "chatcmpl-YzczYjVhNjhjMzMwNDQ5MDkyNGYzOGZjZGE1ZGQ5OGU", "model": "gpt-4", "object": "chat.completion.chunk", "recipient": "all"}

data: {"choices": [{"delta": {"role": "assistant"}, "index": 0}], "created": 1721007348, "id": "chatcmpl-YzczYjVhNjhjMzMwNDQ5MDkyNGYzOGZjZGE1ZGQ5OGU", "model": "gpt-4", "object": "chat.completion.chunk", "recipient": "all"}

data: {"choices": [{"delta": {"role": "assistant"}, "finish_reason": "stop", "index": 0}], "created": 1721007349, "id": "chatcmpl-YzczYjVhNjhjMzMwNDQ5MDkyNGYzOGZjZGE1ZGQ5OGU", "model": "gpt-4", "object": "chat.completion.chunk", "recipient": "all"}

data: [DONE]

يمكنك أن ترى أن هناك العديد من data في الاستجابة، و data تحتوي على choices التي تمثل أحدث محتوى للإجابة، وهو متوافق مع المحتوى المقدم أعلاه. choices هي محتوى الإجابة الجديد، يمكنك دمج النتائج في نظامك. أيضًا، يتم تحديد نهاية الاستجابة المتدفقة بناءً على محتوى data، إذا كان المحتوى هو [DONE]، فهذا يعني أن الإجابة المتدفقة قد انتهت بالكامل. تحتوي نتائج data على عدة حقول، الشرح كالتالي:
  • id، معرف فريد لمهمة المحادثة هذه.
  • model، النموذج المختار من OpenAI ChatGPT.
  • choices، معلومات الإجابة التي قدمها ChatGPT بناءً على السؤال.
JavaScript مدعوم أيضًا، مثل كود الاستدعاء المتدفق لـ Node.js كما يلي:
const options = {
  method: "post",
  headers: {
    accept: "application/json",
    authorization: "Bearer {token}",
    "content-type": "application/json",
  },
  body: JSON.stringify({
    model: "gpt-4",
    messages: [{ role: "user", content: "مرحبًا" }],
    stream: true,
  }),
};

fetch("https://api.acedata.cloud/openai/chat/completions", options)
  .then((response) => response.json())
  .then((response) => console.log(response))
  .catch((err) => console.error(err));
كود مثال بلغة Java:
JSONObject jsonObject = new JSONObject();
jsonObject.put("model", "gpt-4");
jsonObject.put("messages", [{"role":"user","content":"مرحبًا"}]);
jsonObject.put("stream", true);
MediaType mediaType = "application/json; charset=utf-8".toMediaType();
RequestBody body = jsonObject.toString().toRequestBody(mediaType);
Request request = new Request.Builder()
  .url("https://api.acedata.cloud/openai/chat/completions")
  .post(body)
  .addHeader("accept", "application/json")
  .addHeader("authorization", "Bearer {token}")
  .addHeader("content-type", "application/json")
  .build();

OkHttpClient client = new OkHttpClient();
Response response = client.newCall(request).execute();
System.out.print(response.body!!.string())
يمكنك إعادة كتابة الكود بلغة أخرى بنفس المبدأ.

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

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

كود مثال لاستدعاء Python:
import requests

url = "https://api.acedata.cloud/openai/chat/completions"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "model": "gpt-4",
    "messages": [{"role":"user","content":"مرحبًا"},{"role":"assistant","content":"مرحبًا! كيف يمكنني مساعدتك اليوم؟"},{"role":"user","content":"ماذا قلت للتو؟"}]
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
من خلال رفع عدة أسئلة، يمكن بسهولة تحقيق محادثة متعددة الجولات، ويمكن الحصول على الإجابة التالية:
{
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "لقد قلت، \"مرحبًا.\""
      },
      "finish_reason": "stop"
    }
  ],
  "created": 1721323012,
  "id": "chatcmpl-NWZmOTA5MDlkZjBjNDRjNGEwMzRjYzA5NmM1MzQwMWY",
  "model": "gpt-4",
  "object": "chat.completion.chunk",
  "recipient": "all",
  "usage": {
    "prompt_tokens": 31,
    "completion_tokens": 6,
    "total_tokens": 37
  }
}
يمكنك أن ترى أن المعلومات الموجودة في choices تتوافق مع المحتوى المستخدم بشكل أساسي، وهذا يتضمن المحتوى المحدد الذي يرد به ChatGPT على عدة محادثات، بحيث يمكنه الإجابة على الأسئلة بناءً على محتوى المحادثات المتعددة.

دمج OpenAI-Python

خدمة واجهة برمجة التطبيقات الخاصة بإكمال محادثات OpenAI تعتمد على خدمة OpenAI الرسمية، يمكن الاطلاع على OpenAI-Python الرسمية، ستقدم هذه المقالة مقدمة موجزة حول كيفية استخدام الخدمة المقدمة رسميًا.
  1. أولاً، تحتاج إلى إعداد بيئة Python محلية، يمكنك البحث عن هذه العملية على جوجل.
  2. قم بتنزيل وتثبيت بيئة التطوير، مثل تثبيت محرر VSCode.
  3. قم بتكوين متغيرات البيئة لـ OpenAI.
  • في مجلد المشروع، أنشئ ملفًا باسم .env واحفظه.
  • محتوى ملف .env:
OPENAI_API_KEY="sk-xxx"
OPENAI_BASE_URL="https://api.acedata.cloud/openai"  # تذكير: إذا كنت تستخدم مفتاح OpenAI الرسمي، فلا تستخدم هذا العنوان.
استبدل sk-xxx بمفتاحك الخاص. OPENAI_BASE_URL هو واجهة الوكيل للوصول إلى OpenAI.
  1. قم بتثبيت حزم الاعتماد الخاصة بالمشروع.
pip install openai
في نظام Mac OS، الأمر هو:
pip3 install openai
  1. أنشئ ملف كود مصدر تجريبي.
افترض أننا أنشأنا كودًا تجريبيًا باسم index.py، المحتوى المحدد كما يلي:
import os
from openai import OpenAI

client = OpenAI(api_key=os.environ.get("OPENAI_API_KEY"))

response = client.chat.completions.create(
    messages=[
        {
            "role": "user",
            "content": "مرحبًا",
        }
    ],
    model="gpt-4",
)

print(response.text)

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

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

يمكنك أيضًا ملاحظة أن هناك رمز استدعاء مطابق على الجانب الأيمن، يمكنك نسخ الرمز وتشغيله مباشرة، أو يمكنك النقر على زر “جرب” لاختباره.

بعد الاستدعاء، نجد أن النتيجة المرجعة كما يلي:
{
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "للحصول على آخر الأخبار في الصين اليوم، يمكنك التحقق من المواقع الإخبارية الرئيسية مثل:\n\n- [BBC News China](https://www.bbc.com/news/world/asia/china)\n- [CNN China News](https://edition.cnn.com/china)\n- [Reuters China](https://www.reuters.com/news/archive/china-news)\n\nستحتوي هذه المصادر على معلومات محدثة حول الأحداث الجارية في الصين."
      },
      "finish_reason": "stop"
    }
  ],
  "created": 1721009347,
  "id": "chatcmpl-YzA0M2RjZDVkYThlNDkxNTkzOThmZWQ4OGMzNzdhNzA",
  "model": "gpt-4-browsing",
  "object": "chat.completion.chunk",
  "recipient": "all",
  "usage": {
    "prompt_tokens": 325,
    "completion_tokens": 82,
    "total_tokens": 407
  }
}
يمكنك أن ترى أن المعلومات الموجودة في choices هي استجابة تم الحصول عليها من خلال البحث عبر الإنترنت، وقد تم تقديم الروابط ذات الصلة، يجب تنسيق المعلومات الموجودة في choices باستخدام صيغة markdown للحصول على أفضل تجربة، وأخيرًا، يعكس ذلك القوة الكبيرة لوظيفة الاتصال بالإنترنت في نموذجنا.

النموذج البصري

gpt-4o هو نموذج لغوي كبير متعدد الوسائط تم تطويره بواسطة OpenAI، حيث أضاف القدرة على الفهم البصري على أساس GPT-4. يمكن لهذا النموذج معالجة كل من المدخلات النصية والصورية، مما يحقق الفهم والتوليد عبر الأنماط. استخدام نموذج gpt-4o لمعالجة النصوص يتوافق مع المحتوى الأساسي المستخدم أعلاه، وسأقدم هنا مقدمة موجزة حول كيفية استخدام قدرة النموذج على معالجة الصور. تتمثل قدرة معالجة الصور في نموذج gpt-4o بشكل أساسي في إضافة حقل type إلى محتوى content الأصلي، من خلال هذا الحقل يمكن معرفة ما إذا كان ما تم رفعه هو نص أم صورة، وبالتالي استخدام قدرة معالجة الصور في نموذج gpt-4o، وسأوضح أدناه كيفية استدعاء هذه الوظيفة باستخدام طريقتين: Curl و Python.
  • طريقة سكربت Curl
curl -X POST 'https://api.acedata.cloud/openai/chat/completions' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
    "model": "gpt-4o",
    "messages": [
      {
        "role": "user",
        "content": [
          {
            "type": "text",
            "text": "ماذا يوجد في هذه الصورة؟"
          },
          {
            "type": "image_url",
            "image_url": {
              "url": "https://upload.wikimedia.org/wikipedia/commons/thumb/d/dd/Gfp-wisconsin-madison-the-nature-boardwalk.jpg/2560px-Gfp-wisconsin-madison-the-nature-boardwalk.jpg"
            }
          }
        ]
      }
    ]
  }'
  • طريقة سكربت Python
```python
import requests

url = "https://api.acedata.cloud/openai/chat/completions"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "model": "gpt-4o",
    "messages": [
        {
            "role": "user",
            "content": [
                {
                    "type": "text", "text": "ما الذي في هذه الصورة؟"
                },
                {
                    "type": "image_url",
                    "image_url": {
                        "url": "https://upload.wikimedia.org/wikipedia/commons/thumb/d/dd/Gfp-wisconsin-madison-the-nature-boardwalk.jpg/2560px-Gfp-wisconsin-madison-the-nature-boardwalk.jpg"
                    }
                },
            ],
        }
    ]
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
ثم يمكن الحصول على النتيجة التالية، حيث أن معلومات الحقول في النتيجة تتوافق مع النص السابق، كما هو موضح أدناه:
{
  "id": "chatcmpl-123",
  "object": "chat.completion",
  "created": 1677652288,
  "model": "gpt-4-vision-preview",
  "system_fingerprint": "fp_44709d6fcb",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "\n\nتظهر هذه الصورة ممشى خشبي يمتد عبر مستنقع أخضر كثيف."
      },
      "logprobs": null,
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 9,
    "completion_tokens": 12,
    "total_tokens": 21
  }
}
يمكن ملاحظة أن محتوى الإجابة يعتمد على الصورة، وبالتالي من خلال الطريقتين المذكورتين أعلاه يمكن استخدام نموذج gpt-4-vision بسهولة لمعالجة النصوص والصور. بالإضافة إلى gpt-4o، هناك نموذج آخر بتكلفة أقل يسمى gpt-4o-mini. gpt-4o-mini هو أحدث جيل من نماذج اللغة الكبيرة التي طورتها OpenAI، حيث إنه سريع الاستجابة وأيضًا أرخص، ويدعم أيضًا النماذج متعددة الوسائط. يمكن الرجوع إلى محتوى استخدام نموذج gpt-4o أعلاه لاستخدام وظيفة الرؤية.

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

مثال على الطلب:
{
  "model": "gpt-4o-image",
  "messages": [
    {
      "role": "user",
      "content": [
        {
          "type": "text",
          "text": "إنشاء صورة بأسلوب جيبلي، مع قبعة"
        },
        {
          "type": "file_url",
          "file_url": {
            "url": "https://cdn.acedata.cloud/qzx2z1.png"
          }
        }
      ]
    }
  ],
  "stream": false
}
نتيجة المثال:
{
  "id": "chatcmpl-89CXTr5EHi7WgiO3qSzWxvmqwfryP",
  "object": "chat.completion.chunk",
  "model": "gpt-4o-image",
  "created": 1744395060,
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "{\n  \"prompt\": \"امرأة شابة ذات شعر أسود طويل ترتدي فستانًا أبيض وتقف في مكان خارجي ذو مناظر طبيعية. الصورة بأسلوب رسوم متحركة من استوديو جيبلي، مع ألوان ناعمة وتفاصيل دقيقة. ترتدي قبعة أنيقة وعصرية، مع ابتسامة دافئة ومبهجة. الخلفية تظهر خضرة وفرة وأجواء هادئة، مع أشعة الشمس تتخلل الأشجار.\",\n  \"size\": \"1024x1024\"\n}\n\n\n![file-96TSnzJ6MipkZwCmmYEZSA](https://filesystem.site/cdn/20250412/s8EFrYVqeRWc5SfTmF1SbgBS2WFGXb.webp)\n[تحميل⏬](https://filesystem.site/cdn/download/20250412/s8EFrYVqeRWc5SfTmF1SbgBS2WFGXb.webp)\n\nها هي الصورة التي تم إنشاؤها بأسلوب استوديو جيبلي، والتي تظهر امرأة شابة ترتدي فستانًا أبيض وقبعة أنيقة في مكان خارجي ذو مناظر طبيعية. تم التقاط الأجواء الدافئة والناعمة بتفاصيل لطيفة وألوان زاهية."
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 70,
    "completion_tokens": 17,
    "total_tokens": 87
  }
}

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

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

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

{
  "success": false,
  "error": {
    "code": "api_error",
    "message": "فشل في جلب البيانات"
  },
  "trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89"
}

الخاتمة

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