تغطي لوحة التحكم معظم احتياجات الأدوات دون واجهة برمجة التطبيقات هذه: يربط الاتصالات
→ التطبيقات Slack وHubSpot وSalesforce وGoogle Calendar
وGoogle Sheets وCal.com ببضع نقرات OAuth؛ ويحوّل الاتصالات →
واجهات برمجة التطبيقات أي واجهة برمجة تطبيقات HTTP إلى إجراء للوكيل (الصق أمر cURL
وسيُعدّ معالج ذكاء اصطناعي مسودة الأداة، مع اختبار طلب مضمّن)؛ ويضيف الاتصالات → MCP
خوادم MCP. راجع
الاتصالات. هذا الدليل هو واجهة
برمجة التطبيقات الأساسية الكامنة خلف واجهات برمجة التطبيقات.
بنية الأداة
جزآن:- المخطط — تعريف دالة بأسلوب OpenAI
(
{type: "function", function: {name, description, parameters}}) يوضح لنموذج اللغة الكبير ما الذي تفعله الأداة وما الوسيطات التي تقبلها. - نقطة النهاية — عنوان URL الذي تستدعيه خوادم ThunderPhone عندما يقرر نموذج اللغة الكبير استخدام الأداة. يكون الطلب JSON POST مع الوسيطات التي اختارها نموذج اللغة الكبير في النص.
1. اختر استراتيجية التخزين
مضمنة في الوكيل
أرفق أداة تُستخدم لمرة واحدة بمصفوفة
tools الخاصة بالوكيل. بسيط، لكنه
غير قابل لإعادة الاستخدام.تكامل محفوظ
خزّن الأداة باعتبارها تكاملًا قابلًا لإعادة الاستخدام
واربطها بالعديد من الوكلاء. يُوصى به لأي شيء يُستخدم أكثر
من مرة.
2. أنشئ التكامل
id الذي تمت إعادته (وهو UUID).
3. اختبر نقطة النهاية في بيئة الاختبار
قبل ربط التكامل بوكيل، أرسل طلبًا موقّعًا من خوادم ThunderPhone لتأكيد الاتصال:Response
400 code=url_not_allowed.
4. اربط التكامل بوكيل
أرفقه عبرintegration_ids عند إنشاء وكيل أو تحديثه:
get_weather عندما يسأل المتصل
عن الأحوال الجوية” — أو يمكنه اكتشافها ضمنيًا من
أوصاف المخطط.
5. نفّذ نقطة النهاية
عندما يستدعي الوكيل الأداة، يرسل ThunderPhone طلب POST موقّعًا إلىendpoint_url الخاص بك:
6. اختبر الحلقة
شغّل جلسة ميكروفون على الوكيل واطرح السؤال الذي تعالجه أداتك (“ما حالة الطقس في 94110؟”). يعرض النص المفرغ للمكالمة الرحلة الكاملة ذهابًا وإيابًا:GET /v1/calls/{call_id}/transcript؛
ويتوفر تدفق الأحداث الخام (مع التوقيت لكل إدخال وإزاحات الصوت) في
GET /v1/calls/{call_id}/history.
أخطاء شائعة
الوكيل لا يستدعي الأداة أبدًا
الوكيل لا يستدعي الأداة أبدًا
يقرر نموذج اللغة الكبير بناءً على وصف الأداة. إذا لم يتطابق سؤال
المتصل مع الوصف، فلن يستدعي النموذج الأداة. حسّن الوصف (أضف
المرادفات والصياغات الشائعة) أو اذكرها صراحةً في موجّه الوكيل
(“عندما يسأل المتصل عن الطقس، استخدم
get_weather.”).تعيد الأداة بيانات كثيرة جدًا
تعيد الأداة بيانات كثيرة جدًا
تُقتطع الاستجابات التي تتجاوز 6 كيلوبايت في معاينة النص المفرغ. أعد
الحقول التي يحتاجها نموذج اللغة الكبير فقط — وليس الصف كاملًا.
انتهاء المهلة
انتهاء المهلة
تحتوي نقاط نهاية الأدوات على مهلة افتراضية مدتها 10 ثوانٍ. إذا احتجت إلى مدة أطول،
عالج الأمر بشكل غير متزامن: أعد
{"status": "pending", "request_id": "..."}
واعرض النتيجة عبر استدعاء أداة منفصل.إدارة الإصدارات
إدارة الإصدارات
ينشئ كل
PATCH للتكامل مراجعة جديدة. افحص
GET /v1/integrations/{id}/versions
لمعرفة من غيّر ماذا. إذا أفسدت مخطط أداة، يمكنك
التراجع يدويًا بإرسال PATCH للقطات أقدم مرة أخرى.الخطوات التالية
مرجع التكاملات
CRUD، النقل، سجل الإصدارات.
مواصفات أدوات الدوال
قواعد JSON Schema الكاملة وعقد نقطة النهاية الموقّعة.
التحقق من التوقيعات
طبّق نمط توقيع webhook على نقاط نهاية الأدوات.
واجهة برمجة تطبيقات النص المفرغ + السجل
افحص الدورة الكاملة ذهابًا وإيابًا لاستدعاء أداة.