POST /v1/responses والحصول على استجابة واحدة مكتملة.
بثّ الاستجابة
يحتفظ كل حدث محلَّل (في TypeScript وPython) بحقوله الأصلية (
type وdelta و…) ويضيف text وusage ورموز الاستدلال (reasoningTokens / reasoning_tokens). لا يحتوي text إلا على النص الجديد: فهو فارغ في أحداث .done وفي response.completed، التي تكرر نصًا لديك بالفعل، والنص الكامل لحدث .done موجود في fullText / full_text.
مع أسطر SSE الخام (في C# وPHP وRuby وJava)، حلّل كل سطر data: بوصفه JSON وتعامل بنفسك مع أسماء الأحداث، وأنواع الأحداث مثل response.output_text.delta وresponse.completed، وعلامات الاكتمال. تعيّن دوال البث stream: true نيابةً عنك، لذا لا تعيّنه في الطلب.
قراءة نص المخرجات
المخرجات مصفوفة من العناصر. النص موجود في عناصرoutput من النوع message، واستدعاءات الدوال في العناصر من النوع function_call، وأعداد الرموز في usage. تجمع resp.output_text في Python النص نيابةً عنك.
إرسال أدوات الدوال
جسم الطلب هو نفسه في كل حزمة SDK. في Rust:Rust
المعاملات
أسماء الحقول في كل حزمة SDK هي حقول جسم JSON. يستخدم النوعphaseo.ResponsesRequest في Go حقول بنية بأسلوب PascalCase (Model وInput).
تشرح صفحة المعاملات كل حقل، ويحتوي مرجع Responses API على المخطط الكامل.
الاستجابة
ResponsesResponse:
stream: true، ترسل نقطة النهاية أحداث SSE ذات أنواع محددة. يصل النص في أحداث response.output_text.delta، ويحمل الحدث الأخير response.completed الاستجابة كاملة مع الاستخدام: