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

عملية الطلب

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

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

مسار طلب واجهة برمجة تطبيقات رسائل كلود هو /v1/messages، وهو متوافق مع واجهة برمجة تطبيقات Anthropic الرسمية. نحتاج على الأقل إلى تقديم ثلاثة معلمات إلزامية:
  • model: اختيار نموذج كلود المستخدم. الطراز الرائد الأحدث هو claude-fable-5-1 (سياق 1 مليون توكن، أقصى إخراج 128K توكن)؛ لا يزال الطراز الأصلي claude-fable-5 متوافقًا.
  • messages: مصفوفة الرسائل المدخلة، تحتوي كل رسالة على role (دور) و content (محتوى)، حيث يدعم role كل من user و assistant.
  • max_tokens: الحد الأقصى لعدد توكنات الإخراج، يستخدم لتحديد طول الرد في مرة واحدة.
المعلمات الاختيارية الشائعة:
  • system: كلمة تحفيزية للنظام، تستخدم لتحديد سلوك النموذج ودوره.
  • temperature: عشوائية التوليد، بين 0-1، كلما زادت القيمة، زادت تشتت الرد.
  • stream: هل تستخدم الاستجابة المتدفقة، تعيينها إلى true يمكن أن يحقق تأثير العودة كلمة بكلمة.
  • stop_sequences: تسلسل التوقف المخصص، سيتوقف النموذج عن التوليد عند مواجهة هذه النصوص.
  • top_p: معلمة أخذ العينات النووية، بالتعاون مع temperature للتحكم في عشوائية التوليد.
  • top_k: أخذ العينات فقط من أعلى K خيارات احتمالية.
  • tools: تعريف الأدوات، للسماح للنموذج باستدعاء وظائف خارجية.
  • tool_choice: التحكم في كيفية استخدام النموذج للأدوات المقدمة.
  • cache_control: إنشاء نقطة توقف مؤقتة تلقائيًا في آخر كتلة محتوى قابلة للتخزين المؤقت في الطلب؛ يمكن أيضًا كتابتها على كتلة المحتوى المحددة.

مثال cURL

مثال Python

بعد الاستدعاء، ستكون النتيجة كما يلي:
شرح حقول النتيجة:
  • id: المعرف الفريد لهذه الرسالة.
  • type: دائمًا message.
  • role: دائمًا assistant.
  • content: مصفوفة محتوى الرد، تحتوي كل عنصر على type (مثل text) والمحتوى المقابل.
  • model: اسم النموذج الذي يعالج الطلب.
  • stop_reason: سبب التوقف. القيم الثابتة تشمل end_turn، max_tokens، stop_sequence، tool_use، pause_turn (يمكن إعادة محتوى assistant الحالي كما هو للاستمرار)، refusal و model_context_window_exceeded.
  • stop_sequence: إذا توقفت بسبب تسلسل التوقف المخصص، يتم عرض نص التسلسل المتوقف المطابق.
  • stop_details: عندما يكون stop_reason هو refusal، قد تحتوي على فئة الرفض والتوضيح.
  • usage: إحصائيات استخدام التوكن. input_tokens هو الإدخال غير المخزن؛ cache_creation_input_tokens و cache_read_input_tokens هما على التوالي الكتابة والقراءة من التخزين المؤقت؛ output_tokens هو عدد توكنات الإخراج. السعر الرسمي لقراءة التخزين المؤقت لـ Fable 5.1 هو 0.25/مليونتوكن،وسعرالكتابةللتخزينالمؤقتلمدة5دقائقو1ساعةهو0.25/مليون توكن، وسعر الكتابة للتخزين المؤقت لمدة 5 دقائق و1 ساعة هو 12.50 و$20/مليون توكن على التوالي؛ يتم حساب الأسعار الفعلية للمنصة وفقًا لخصومات الحزم. قد تحتوي الاستجابة غير المتدفقة أيضًا على cost المسجل من Ace Data Cloud.

كلمات التحفيز النظامية

تدعم واجهة برمجة تطبيقات رسائل كلود تعيين كلمات تحفيز النظام من خلال حقل system، لتحديد سلوك النموذج ودوره وسياقه.

مثال Python

من خلال تعيين كلمة تحفيز system، يمكن التحكم بدقة في دور كلود وسلوكه.

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

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

مثال Python

تعود الاستجابة المتدفقة بتنسيق أحداث خادم مرسلة (SSE)، حيث يتم تمييز كل سطر بـ event: و data:. تشمل أنواع الأحداث المتدفقة:
  • message_start: بداية الرسالة، تحتوي على المعلومات الأساسية للرسالة واسم النموذج.
  • content_block_start: بداية كتلة المحتوى.
  • content_block_delta: تحديثات زيادة كتلة المحتوى، تحتوي على مقاطع نصية جديدة تم إنشاؤها.
  • content_block_stop: نهاية كتلة المحتوى.
  • message_delta: تحديثات زيادة على مستوى الرسالة، تحتوي على stop_reason ومعلومات usage النهائية.
  • message_stop: نهاية الرسالة.
تظهر النتائج كما يلي:
يمكنك أن ترى أن حدث content_block_delta في الاستجابة المتدفقة يحتوي على محتوى نصي يتم إنشاؤه تدريجياً، من خلال تجميع جميع text_delta يمكنك الحصول على الرد الكامل.

مثال على JavaScript

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

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

مثال على Python

تكون النتيجة كما يلي:
من خلال تمرير تاريخ المحادثة الكامل في messages، يمكن لكلود دمج السياق لتقديم إجابات دقيقة.

نموذج التفكير العميق

تفكير كلود وملخص التفكير هما مفهومان مختلفان: يمكن للنموذج إجراء استدلال داخلي، لكن واجهة برمجة التطبيقات لا تعيد سلسلة التفكير الأصلية. عند الحاجة لعرض عملية الاستدلال، تعيد واجهة برمجة التطبيقات ملخصًا معالجًا. يوصى باستخدام التفكير التكيفي للنموذج الحالي، ويتم التحكم في إجمالي جهد الاستدلال من خلال output_config.effort:
يكون شكل كتلة التفكير في الاستجابة كما يلي:
  • display: "summarized" تعيد ملخص تفكير قابل للقراءة؛ ليس سلسلة التفكير الأصلية.
  • display: "omitted" تعيد thinking: ""، ولكن لا تزال تحتفظ بـ opaque signature لدعم المحادثات اللاحقة.
  • القيم الافتراضية لـ Fable 5.1، Fable 5، Opus 5، Sonnet 5، Opus 4.8 و Opus 4.7 هي omitted؛ بينما Opus 4.6، Sonnet 4.6 وما قبلها التي تدعم التفكير تستخدم افتراضيًا summarized.
  • يؤثر العرض فقط على محتوى الاستجابة وتأخير التدفق، ولا يغلق الاستدلال، ولا يقلل من تكلفة تفكير الرموز.
  • ما إذا كان التفكير مفعلًا افتراضيًا وما هي القيم الافتراضية للعرض هما مسألتان مستقلتان. Opus 5 و Sonnet 5 مفعلان افتراضيًا التفكير التكيفي؛ بينما Opus 4.8، 4.7 و 4.6 تحتاج إلى تفعيل صريح.
  • budget_tokens تستخدم فقط للنماذج القديمة التي لا تزال تدعم ميزانية تفكير ثابتة. يجب على النماذج الجديدة استخدام thinking.type=adaptive و output_config.effort؛ تفكير Fable 5.1 مفعل دائمًا ولا يمكن إيقافه صراحة.
  • عند المحادثات متعددة الجولات واستدعاء الأدوات، يجب إعادة كتلة التفكير الكاملة التي أعادها المساعد و signature كما هي؛ لا تعدل أو تولد signature بنفسك.
  • بعض التوجيهات المتوافقة جزئيًا لا يمكنها معالجة redacted_thinking أو إيقاف التفكير صراحة، وفي هذه الحالة ستعيد خطأ في المعلمات، ولن تتجاهل أو تغير دلالة الطلب بصمت.
في الطلبات المتدفقة، سيؤدي summarized إلى إنتاج thinking_delta؛ بينما omitted لا ينتج thinking_delta، بل يحتفظ فقط بدورة حياة كتلة التفكير و signature_delta.

نموذج بصري

Claude يدعم الإدخال متعدد الوسائط، ويمكنه معالجة النصوص والصور في نفس الوقت. في واجهة برمجة التطبيقات للرسائل، يمكن استخدام القدرات البصرية عن طريق تعيين content إلى تنسيق مصفوفة وتمرير كتل محتوى الصورة.

استخدام ترميز Base64 للصورة

استخدام صورة URL

مثال cURL

تنسيقات الصور المدعومة تشمل: image/jpeg، image/png، image/gif، image/webp.

الوثائق و PDF

تستخدم PDF كتلة محتوى document، وتدعم مصدرين ثابتين هما Base64 و URL. يجب أن يكون مصدر Base64 باستخدام application/pdf:
يتم كتابة مصدر URL كـ {"type":"url","url":"https://example.com/report.pdf"}. تدعم document أيضًا text/plain ومصادر content المكونة من كتل نصية/صورية؛ تشمل الحقول الاختيارية title، context و citations. مصدر file_id في واجهة برمجة التطبيقات للملفات هو ميزة بيتا مستقلة، ولا تدخل ضمن العقد الثابتة لهذه الواجهة.

تخزين التلميحات

سيقوم cache_control في المستوى الأعلى تلقائيًا بوضع نقاط التوقف في آخر كتلة قابلة للتخزين المؤقت:
عند الحاجة إلى التحكم الدقيق في الموقع، يمكن أيضًا كتابة نفس cache_control في كتل المحتوى النصية، الصور، الوثائق، استخدام الأدوات، أو تعريف الأدوات. يدعم ttl قيم 5m (افتراضي) و 1h؛ يرجى استخدام usage.cache_creation_input_tokens و usage.cache_read_input_tokens لتحديد كتابة ونجاح التخزين المؤقت. مثال على نتيجة العودة:

استخدام الأدوات (Tool Use)

تدعم واجهة برمجة التطبيقات للرسائل في Claude بشكل أصلي وظيفة استدعاء الأدوات، مما يسمح للنموذج باستدعاء الأدوات/الدوال التي قمت بتعريفها مسبقًا عند الحاجة.

مثال Python

عندما يقرر النموذج استدعاء أداة، ستحتوي نتيجة العودة على كتلة محتوى من نوع tool_use:
لاحظ أن stop_reason هو tool_use، مما يشير إلى أن النموذج يحتاج إلى استدعاء أداة. بعد تلقي هذه النتيجة، تحتاج إلى تنفيذ دالة الأداة وإعادة النتيجة بشكل tool_result إلى النموذج:
النموذج سيقوم بناءً على نتائج الأدوات، بإنشاء الرد النهائي باللغة الطبيعية.

الفرق مع واجهة برمجة التطبيقات لإكمال الدردشة

تقدم Ace Data Cloud نوعين من تنسيقات واجهة برمجة التطبيقات لـ Claude، والفرق الرئيسي بينهما كما يلي: تشير usage.input_tokens في واجهة برمجة التطبيقات للرسائل فقط إلى المدخلات غير المخزنة، بينما cache_read_input_tokens و cache_creation_input_tokens هي فئات محاسبة مستقلة؛ وسيتم حساب الثلاثة وفقًا للأسعار المقابلة. إذا كان نظامك متصلاً بالفعل بواجهة برمجة التطبيقات بتنسيق OpenAI، يمكنك استخدام واجهة برمجة التطبيقات لإكمال الدردشة للتبديل بسلاسة. إذا كنت بحاجة إلى استخدام جميع قدرات Claude الأصلية، يُنصح باستخدام واجهة برمجة التطبيقات للرسائل.

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

تستخدم استجابة الأخطاء من الواجهة العامة غلاف منصة Ace Data Cloud: error.code هو رمز خطأ ثابت، وerror.message هو الوصف، وtrace_id يُستخدم لتتبع الطلب. تشمل حالات HTTP الشائعة:
  • 400: معلمات الطلب أو محتوى البروتوكول غير صالحة.
  • 401: رمز التفويض غير صالح أو مفقود أو منتهي.
  • 403: الوصول ممنوع، رصيد غير كافٍ أو حصة محدودة.
  • 404: واجهة برمجة التطبيقات أو النموذج غير موجود.
  • 413: جسم الطلب كبير جدًا.
  • 429: عدد الطلبات كبير جدًا.
  • 500 / 503 / 504: خطأ في الخدمة، غير متاح مؤقتًا أو تجاوز الوقت.

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

هيكل الخطأ هذا هو عقد التشغيل الخاص بـ Ace Data Cloud، ولا يساوي غلاف خطأ Anthropic الرسمي؛ يرجى معالجة ذلك وفقًا لحالة HTTP وerror.code.

الخاتمة

من خلال هذه الوثيقة، أصبحت على دراية بكيفية استخدام واجهة برمجة التطبيقات للرسائل من Claude لاستدعاء وظائف المحادثة بتنسيق Anthropic الأصلي. تدعم واجهة برمجة التطبيقات للرسائل محادثات أساسية، نصوص نظام، استجابات متدفقة، محادثات متعددة الجولات، تفكير عميق، فهم بصري، PDF، تخزين مؤقت للنصوص واستدعاء الأدوات وغيرها من الميزات الغنية. إذا كان لديك أي استفسارات، لا تتردد في الاتصال بفريق الدعم الفني لدينا.