تقدم واجهة برمجة تطبيقات Responses نهجاً رائداً للتعامل مع التفاعلات المعقدة مع نماذج الذكاء الاصطناعي. على عكس واجهات برمجة التطبيقات التقليدية، فهي توفر نموذج محادثة ذا حالة، مما يلغي الحاجة إلى إدارة الحالة يدوياً. سيرشدك هذا الدليل خلال الخطوات الأساسية للاستفادة من واجهة برمجة تطبيقات Responses بفعالية.
البدء
أولاً، تأكد من تثبيت حزمة Python لـ OpenAI وأن مفتاح API الخاص بك جاهز.
from openai import OpenAI
import os
client = OpenAI(api_key=os.getenv("OPENAI_API_KEY"))إنشاء رد
لبدء محادثة، استخدم طريقة responses.create. إليك كيفية طلب النموذج لإخبار نكتة:
response = client.responses.create(
model="gpt-4o-mini",
input="أخبرني نكتة",
)
print(response.output[0].content[0].text)المحادثات ذات الحالة
إحدى الميزات الرئيسية لواجهة برمجة تطبيقات Responses هي كونها ذات حالة. يمكنك استرجاع سجل المحادثة الكامل في أي وقت:
fetched_response = client.responses.retrieve(
response_id=response.id
)
print(fetched_response.output[0].content[0].text)متابعة المحادثات
لمتابعة محادثة، قم ببساطة بالإشارة إلى معرف الرد السابق:
response_two = client.responses.create(
model="gpt-4o-mini",
input="أخبرني بواحدة أخرى",
previous_response_id=response.id
)
print(response_two.output[0].content[0].text)الأدوات المستضافة
تدعم واجهة برمجة تطبيقات Responses أدوات مستضافة مثل web_search، مما يتيح التكامل السلس لنتائج البحث على الويب في محادثاتك:
response = client.responses.create(
model="gpt-4o",
input="ما هي آخر أخبار الذكاء الاصطناعي؟",
tools=[
{
"type": "web_search"
}
]
)
import json
print(json.dumps(response.output, default=lambda o: o.__dict__, indent=2))التفاعلات متعددة الوسائط
تدعم واجهة برمجة التطبيقات بشكل أصلي النص والصور والصوت، مما يسمح بتفاعلات غنية ومتعددة الوسائط:
response_multimodal = client.responses.create(
model="gpt-4o",
input=[
{
"role": "user",
"content": [
{"type": "input_text", "text": "ابتكر كلمات مفتاحية متعلقة بالصورة، وابحث على الويب باستخدام أداة البحث عن أي أخبار متعلقة بالكلمات المفتاحية، ولخص النتائج واذكر المصادر."},
{"type": "input_image", "image_url": "https://upload.wikimedia.org/wikipedia/commons/thumb/1/15/Cat_August_2010-4.jpg/2880px-Cat_August_2010-4.jpg"}
]
}
],
tools=[
{"type": "web_search"}
]
)
import json
print(json.dumps(response_multimodal.__dict__, default=lambda o: o.__dict__, indent=4))الخلاصة
تبسط واجهة برمجة تطبيقات Responses تطوير التفاعلات المعقدة ومتعددة الوسائط والمعززة بالأدوات. من خلال التعامل مع الحالة ودمج الأدوات المستضافة، فإنها تقلل الحاجة إلى استدعاءات متعددة لواجهة برمجة التطبيقات وإدارة الحالة يدوياً، مما يجعل كودك أنظف وأكثر كفاءة.
هل أنت مستعد لتبسيط تفاعلاتك مع الذكاء الاصطناعي؟ تعمق في وثائق واجهة برمجة تطبيقات Responses وابدأ البناء اليوم!
المرجع
- Web Search and States with Responses API بواسطة Bill Chen