Responses
Markdownהפורמט החדש של OpenAI: קלט אחד, פלט עם טיפוסים מוגדרים, כלים והסקה. Codex CLI משתמש בו.
המדריך המלא
https://api.ailoot.ai/v1/responsescurl https://api.ailoot.ai/v1/responses \
-H "Authorization: Bearer $AILOOT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-6.1-sol",
"instructions": "השב בקצרה.",
"input": "מה ההבדל בין TCP ל-UDP?"
}' from openai import OpenAI
import os
client = OpenAI(max_retries=0, base_url="https://api.ailoot.ai/v1", api_key=os.environ["AILOOT_API_KEY"])
resp = client.responses.create(
model="gpt-6.1-sol",
instructions="השב בקצרה.",
input="מה ההבדל בין TCP ל-UDP?",
)
print(resp.output_text)import OpenAI from "openai";
const client = new OpenAI({ maxRetries: 0, baseURL: "https://api.ailoot.ai/v1", apiKey: process.env.AILOOT_API_KEY });
const resp = await client.responses.create({
model: "gpt-6.1-sol",
instructions: "השב בקצרה.",
input: "מה ההבדל בין TCP ל-UDP?",
});
console.log(resp.output_text);{
"id": "resp_67f1…",
"object": "response",
"status": "completed",
"model": "gpt-6.1-sol",
"output": [
{
"type": "message",
"role": "assistant",
"content": [
{ "type": "output_text", "text": "TCP מבטיח מסירה וסדר, UDP אינו מבטיח זאת, אך הוא מהיר יותר…" }
]
}
],
"usage": { "input_tokens": 24, "output_tokens": 61, "total_tokens": 85 }
}אימות
- Authorizationheaderחובה
המפתח בפורמט
Bearer sk-…. אפשר להשתמש גם בכותרותx-api-keyאוx-goog-api-key.
גוף הבקשה
- modelstringחובה
מזהה מודל בפורמט Responses. בקטלוג יש 53 כאלה: GPT, Claude, DeepSeek, Qwen, Kimi, GLM, MiniMax, Grok. מודלי Gemini אינם זמינים בפורמט הזה.
- inputstring | arrayחובה
טקסט הבקשה או מערך של הודעות וחלקים (טקסט, תמונות).
- instructionsstringרשות
הוראת מערכת.
- streambooleanרשות
זרם אירועי SSE; האירוע האחרון הוא
response.completed. הטקסט בתשלום מגיע כבלוק אחד לאחר חישוב העלות. - max_output_tokensintegerרשות
מספר הטוקנים המרבי בתשובה, כולל ההסקה. אם לא צוין, Ailoot מגדיר 4096 (או פחות, אם מגבלת התשובה של המודל נמוכה יותר). לתשובות ארוכות יש להגדיר מגבלה במפורש. בקשות עם
previous_response_idועם הכלים המובניםweb_searchאוcode_interpreterמתחשבות, כשמדובר בבקשות טקסט חדשות, באומדנים נפרדים של ההקשר השמור ושל עבודת הכלים; הן אינן מחושבות אוטומטית לפי עלות חלון הקלט כולו. רזרבות שהתקבלו בעבר שומרות על התנאים המקוריים. עבור תמונות, וידאו ושמע בפלט נשמרת כרזרבה מלוא עלות התוצאה. אם הרזרבה המחושבת חורגת מהיתרה הזמינה או ממגבלת המפתח, במודל ובמתודה נתמכים Ailoot עשוי להקטין אתmax_tokens(max_output_tokensב-Responses) לכמות שאפשר לשלם עבורה, אך לא מתחת ל-256 טוקנים, או למינימום של המתודה אם הוא גבוה יותר, ומדווח על כך בכותרתX-Ailoot-Max-Tokens-Capped. האפשרות להקטין נבדקת עבור מודל הטקסט המסוים והמתודה. היא חלה על נתיבי טקסט נתמכים של Gemini בפורמט המקורי של Gemini ובפורמט Anthropic Messages;deepseek-ai/deepseek-v4.1-flash,meta/llama-3.2-11b-vision-instruct,meta/muse-glimmer-30b,nvidia/ising-calibration-1.5-31b,nvidia/nemotron-3-nano-omni-30b-a3b-reasoning,nvidia/nemotron-3-super-120b-a12b,nvidia/nemotron-3-ultra-550b-a55b,nvidia/nemotron-3.5-content-safety,nvidia/nemotron-3.5-lightning-30b-a3b,nvidia/riva-translate-4b-instruct-v1.1,nvidia/riva-translate-4b-instruct-v2,poolside/laguna-xs-2.1,z-ai/glm-5.3-flash— בפורמטים Chat Completions ו-Messages (במקומות שבהם המודל תומך בהם). פלט — לצורך הרזרבה לבקשת טקסט חדשה, הוא מוערך לפי האורך הטיפוסי של התשובה והתנאים המוסכמים. את המגבלה המבוקשת מגדירים באמצעותmax_tokens(max_output_tokensב-Responses). המגבלה המבוקשת אינה זהה אוטומטית למספר הטוקנים שעל פיו חושבה הרזרבה, ואינה מבטיחה את אורך התשובה בפועל במודל שאין בו הגבלה אמינה. הערך ההתחלתי 4096 חל רק על הנתיבים המתאימים; הכלל המסוים תלוי במודל ובמתודה. - reasoningobjectרשות
{"effort": "low" | "medium" | "high"}עבור מודלי הסקה. - toolsarrayרשות
פונקציות שהמודל יכול לקרוא להן.
- textobjectרשות
פורמט התשובה, לדוגמה
{"format": {"type": "json_schema", ...}}. - temperaturenumberרשות
מידת האקראיות של התשובה, אם המודל תומך בה.
תשובה
- outputarray
רכיבי התשובה: הודעות (
message), הסקה וקריאות לפונקציות. ב-SDK נוח להשתמש ב-output_text. - statusstring
completed,incomplete(הגעה למגבלה) אוfailed. - usageobject
input_tokens,output_tokens,total_tokens.