OpenAI: GPT-5.4 Pro
Alohida GPT-5.4 Pro nashri qiyin mulohaza va professional ishlar uchun qoʻshimcha hisoblashdan foydalanadi. U matn va tasvirlarni qabul qiladi hamda OpenAI’ning Responses interfeysi orqali medium, high va xhigh kuch sozlamalarida matnli javob ishlab chiqadi.
- Ailoot Ultra · OpenAI Chat
POST /v1/chat/completionsgpt-5.4-pro - Ailoot Ultra · Anthropic Messages
POST /v1/messagesgpt-5.4-pro - Ailoot Ultra · OpenAI Chat
POST /v1/chat/completionsopenai/gpt-5.4-pro - Ailoot Ultra · Anthropic Messages
POST /v1/messagesopenai/gpt-5.4-pro
Model haqida
Bu tavsif model imkoniyatlarini yoritadi. Ailoot da tanlangan usul uchun mavjud kirish, chiqish va parametrlar quyida keltirilgan.
GPT-5.4 Pro — OpenAI’ning GPT-5.4 modelining alohida Pro nashri. U murakkab savollarni ko‘rib chiqish va batafsilroq javob tayyorlash uchun qo‘shimcha hisoblashdan foydalanadi. Model matn va tasvirlarni qabul qiladi hamda matn yaratadi. Pro bu modelning nomlangan o‘zligiga kiradi; u GPT-5.6 va GPT-6 asosiy modellari uchun kiritilgan Pro fikrlash rejimi sozlamasidan farq qiladi.
GPT-5.4 oilasi taqdimoti modelni fikrlash va dasturlashni hujjat, taqdimot va elektron jadval vazifalari bilan birlashtiradigan murakkab professional ishlarga joylashtiradi. Masalan, Pro so‘rovida bir nechta dasturiy yechim yondashuvini o‘zaro bog‘liq talablar to‘plamiga nisbatan solishtirish, tanlovni belgilaydigan shartlarni aniqlash va aniq tavsiya berishni so‘rashingiz mumkin. Hujjat vazifasi uchun xulosa aniq asosga ega bo‘lishi uchun savol, manba materiali va mezonlarni bering.
OpenAI GPT-5.4 Pro uchun 1,050,000 tokenli kontekst oynasi va eng ko‘pi bilan 128,000 chiqish tokenini belgilaydi; bilimlar chegarasi — 2025-yil 31-avgust. Qo‘llanadigan fikrlash kuchi qiymatlari medium, high va xhigh; standart qiymat — medium. Fikrlash ham token sig‘imidan joy oladi. Uzun kirishni tegishli manba materiali atrofida tartiblang va tahlil hamda so‘ralgan yakuniy natija uchun joy qoldiring.
Ishlab chiqaruvchi bu Pro modelini faqat Responses API’da hujjatlashtiradi; u yakuniy javobdan oldin bir nechta navbatli model muloqotini qo‘llaydi. Murakkab so‘rovlar bir necha daqiqa davom etishi mumkin. OpenAI uzun ishni sinxron kutish bilan bog‘liq ulanish kutish muddati tugashining oldini olish uchun fonda bajarishni tavsiya qiladi. Shu jarayonda ilova javob identifikatorini saqlaydi, ish navbatda yoki bajarilayotganini tekshiradi va yakuniy holatga yetganda natijani oladi.
Model kartasi oqimli uzatish, funksiyalarni chaqirish, veb va fayl qidiruv, tasvir kiritish, tasvir yaratish vositalari va MCP qo‘llovini ko‘rsatadi. Ishlab chiqaruvchining aynan shu vositalar to‘plamiga vosita qidiruvi, patch operatsiyalari va kompyuterdan foydalanish ham kiradi. Bu vositalar modelning matnli chiqishidan alohidadir. Ilovalar tegishli operatsiyalarni taqdim etadi, o‘z harakatlarini bajaradi va davom etadigan ish uchun haqiqiy natijalarni beradi. Boshqa GPT-5.4 modelining barcha imkoniyatlari bir xil deb taxmin qilish o‘rniga, bu nashr uchun alohida GPT-5.4 Pro vositalari ro‘yxatidan foydalanish kerak.
Aniq tugash mezoni va natija tuzilmasini tayyorlang. Muhandislik ishi uchun ta’sirlanadigan xatti-harakatni, taklif etilgan yechimni, u o‘zgartiradigan bog‘liqliklarni va uni tekshirish uchun kerakli dalillarni so‘rang. Tahlilda berilgan faktlar, keltirib chiqarilgan munosabatlar va hal qilinmagan shartlarni ajrating. Tasvir savolni qo‘llasa, muhim tafsilotni belgilang. Foydali yakuniy natija muhim tanlovlarini boshlang‘ich maqsad va materiallarga bog‘laydigan aniq kod taklifi, qaror yozuvi yoki rejadir.
Amaliy vazifa
Amaliy vazifa
Ingliz tilidagi texnik misol
Compare implementation approaches against hard requirements
Compare three delivery designs for an export: synchronous processing, an in-memory background worker and a durable job queue. Requirements: the request returns promptly, accepted jobs survive process restarts, and users can retrieve status later. Explain what each design needs to meet every requirement, recommend an approach and identify its operational trade-offs. State assumptions rather than inventing measurements.Kutiladigan natija
A requirements-by-approach comparison, a justified recommendation and explicit operational assumptions.Natijani tekshirish
The answer tests restart survival and persistent status separately and does not invent benchmark or cost figures.Ailoot Ultra · OpenAI Chat POST /v1/chat/completions gpt-5.4-pro
gpt-5.4-progpt-5.4-proopenai/gpt-5.4-pro
Boshlash
Alohida GPT-5.4 Pro nashri qiyin mulohaza va professional ishlar uchun qoʻshimcha hisoblashdan foydalanadi. U matn va tasvirlarni qabul qiladi hamda OpenAI’ning Responses interfeysi orqali medium, high va xhigh kuch sozlamalarida matnli javob ishlab chiqadi.
- Qabul qilinadigan kirish ma’lumotlari
- Matn
- Natijalar
- Matn
Ailoot da mavjud · kirish ma’lumotlari va usullar
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
- Kirish
text- Chiqish
text- Chiqish formati
- json yoki SSE
| Maydon | Tur | Talab | Qiymatlar va cheklovlar | Standart |
|---|---|---|---|---|
Maydonmodel | Turstring | TalabMajburiy | Qiymatlar va cheklovlar gpt-5.4-pro | Standart— |
Maydonmessages | Turmessage[] | TalabMajburiy | Qiymatlar va cheklovlar Elementlarning eng kam soni: 1 | Standart— |
Maydonmessages[].role | Turstring | TalabMajburiy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
Maydonmessages[].content | Turstring | TalabIxtiyoriy | Qiymatlar va cheklovlar Quyidagi holatda qo‘llanadi: Matnli suhbat | Standart— |
Maydonstream | Turboolean | TalabIxtiyoriy | Qiymatlar va cheklovlar | Standartfalse |
Kirish materiallari birikmalari
Matn · UTF8 matni
messages[].content
Usul parametrlari va hayot sikli
| Parametr | Parametr talablari |
|---|---|
Parametrcontent_type | Parametr talablariapplication/json |
Parametrrequired | Parametr talablarimodel, messages |
Parametrmaterial_types | Parametr talablaritext |
Parametrmessages | Parametr talablarirole/content tuzilishidagi xabarlar massivi |
Parametrfile_material | Parametr talablariHaqiqiy UTF-8 hujjati aynan matn sifatida kiritiladi; fayl IDsi faraz qilinmaydi |
Parametroptional_controls | Parametr talablaristream |
Parametrcontrol_scope | Parametr talablariMatnli suhbat; stream mantiqiy qiymat bo‘lib, standart holatda false. |
Parametroutput_modalities | Parametr talablaritext |
Parametrhosted_operations | Parametr talablarifalse |
Parametrmultimodal_input_binding | Parametr talablarinull |
Usul taxalluslari: /chat/completions
Hayot sikli: synchronous_or_streamed
Aniq model IDsini messages bilan yuboring.
Kontekst uzunligi chiqishning yuqori chegarasi emas.
Matn fayli aynan matnni taqdim etishi mumkin; tasvir, audio va fayl obyekti kirishlari aniq bog‘lashni talab qiladi.
Tariflar
Tarif ma’lumotlari so‘rov imkoniyatlarini qo‘shmaydi. Qo‘llab-quvvatlanadigan parametrlar tanlangan usulda ko‘rsatilgan.
- Tezkor rejim
- Standart tarif Tezkor rejim tanlanganda
- Flex rejimi
- Standart tarif flex rejimi tanlanganda
- Maksimal fikrlash darajasi
- Standart tarif Maksimal fikrlash darajasi uchun standart (default) tuzatish qo‘llanganda
- Fikrlash darajasi · yuqori
- Standart tarif Fikrlash darajasi yuqori bo‘lganda
- Fikrlash darajasi · o‘rtacha
- Standart tarif Fikrlash darajasi o‘rtacha bo‘lganda
- Fikrlash darajasi · xhigh
- Standart tarif Fikrlash darajasi xhigh bo‘lganda
Ailoot tariflari
Sozlamalar bo‘yicha narxlar
Har bir to‘lovni ko‘rsatilgan shartlarga moslang. Har bir muqobil sozlamalar to‘plami uchun bitta tarifdan foydalaning.
| Sozlama | Tariflar jadvali | Kontekst tokenlari soni bundan ko‘p | Kontekst tokenlari soni bundan oshmaydi, chegara kiradi | To‘lov |
|---|---|---|---|---|
| SozlamaTokenlar uchun bazaviy tariflar | Tariflar jadvaliAsosiy tarif | Kontekst tokenlari soni bundan ko‘p— | Kontekst tokenlari soni bundan oshmaydi, chegara kiradiYuqori chegara yo‘q | To‘lov Kirish · Kirish tokenlari $0.06 / 1K token Chiqish · Chiqish tokenlari $0.36 / 1K token Kirish · Keshdan o‘qish $0 / 1K token Kirish · Keshga yozish $0 / 1K token Kirish · Keshga yozish, 1 soat — / 1K token |
| SozlamaSo‘rov uzunligi bo‘yicha 1-daraja | Tariflar jadvali— | Kontekst tokenlari soni bundan ko‘p0 | Kontekst tokenlari soni bundan oshmaydi, chegara kiradi272 000 | To‘lov Kirish · Kirish tokenlari $0.06 / 1K token Chiqish · Chiqish tokenlari $0.36 / 1K token Kirish · Keshdan o‘qish $0 / 1K token Kirish · Keshga yozish $0 / 1K token Kirish · Keshga yozish, 1 soat — / 1K token |
| SozlamaSo‘rov uzunligi bo‘yicha 2-daraja | Tariflar jadvali— | Kontekst tokenlari soni bundan ko‘p272 000 | Kontekst tokenlari soni bundan oshmaydi, chegara kiradiYuqori chegara yo‘q | To‘lov Kirish · Kirish tokenlari $0.06 / 1K token Chiqish · Chiqish tokenlari $0.36 / 1K token Kirish · Keshdan o‘qish $0 / 1K token Kirish · Keshga yozish $0 / 1K token Kirish · Keshga yozish, 1 soat — / 1K token |
Ailoot so‘rovdan oldin taxminiy summani band qiladi. Natijadan keyin o‘lchangan sarf asosidagi yakuniy to‘lovni yechadi. Oqimli javob bo‘yicha yakuniy hisob-kitob yakuniy sarf yozuviga asoslanadi. Summani band qilish va to‘lovni hisoblash tartibi →
So‘rov namunalari
Ailoot Ultra · OpenAI Chat
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model":"gpt-5.4-pro","messages":[{"role":"user","content":"hello"}],"stream":false}')
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("choices",[]):
if x.get("message",{}).get("content"): print(x["message"]["content"])
PY_RESULT
from openai import OpenAI
import os
if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model="gpt-5.4-pro", messages=[{"role":"user","content":"hello"}], stream=False)
import base64, json
from pathlib import Path
def save_result(data, stem="result"):
# Keep every field, including usage, IDs, reasoning and tool requests.
Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
print(json.dumps(data, ensure_ascii=False, indent=2))
def save_blob(encoded, suffix, label):
raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
file = Path(stem + "-" + label + "." + ext)
file.write_bytes(raw)
print("Saved", file)
for index, block in enumerate(data.get("content") or []):
print("Content", index, json.dumps(block, ensure_ascii=False))
for choice in data.get("choices") or []:
print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
for index, item in enumerate(data.get("output") or []):
print("Output", index, json.dumps(item, ensure_ascii=False))
if item.get("type") == "image_generation_call" and item.get("result"):
save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
for ci, candidate in enumerate(data.get("candidates") or []):
for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
blob = part.get("inlineData") or part.get("inline_data")
if blob and blob.get("data"):
mime = blob.get("mimeType") or blob.get("mime_type")
suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))
save_result(result.to_dict(mode="json"))
Natijalarni olish va saqlash
Ailoot Ultra · OpenAI Chat
json yoki SSE
Barcha tayyor natijalarni saqlash
Qaytarilgan har bir to‘liq javob, fayl va kontent qismini saqlang.
Har bir javob variantini va uning kontenti, vosita chaqiruvlari hamda fikrlash ma’lumotlarini saqlang. SSEda o‘zgarish qismlarini variant va vosita indeksi bo‘yicha yig‘ing, yakuniy tugash sababi va sarf ma’lumotlarini saqlang.
Asl javobni tekshirish kerak bo‘lsa
So‘rov va javob IDlari hamda sarlavhalarini saqlang. Matn vazifasini olish uchun umumiy URL taqdim etilmagan.
Javob maydonlari
| Maydon | Tur |
|---|---|
Maydonchoices[].index | Turinteger |
Maydonchoices[].message.content | Turstring|null |
Maydonchoices[].message.tool_calls | Turtool_call[] |
Maydonchoices[].message.reasoning_content | Turstring |
Maydonchoices[].message.reasoning_details | Turobject|array |
Maydonchoices[].finish_reason | Turstring|null |
Maydonusage | Turobject |
Xatolar va keyingi qadamlar
| Javob | Shart | Keyingi qadam |
|---|---|---|
Javob400 · invalid_request_error | ShartMajburiy maydonlar, material ifodasi yoki parametr qiymati noto‘g‘ri | Keyingi qadamYangi yaratish so‘rovidan oldin ko‘rsatilgan maydonlarni tuzating. |
Taxalluslar
Model taxalluslari
Ailoot Ultra gpt-5.4-pro, openai/gpt-5.4-pro
Usul yo‘llari taxalluslari
/chat/completions
Chaqirish uchun tegishli ID lar
Ailoot Ultra · Anthropic Messages POST /v1/messages gpt-5.4-pro
gpt-5.4-progpt-5.4-proopenai/gpt-5.4-pro
Boshlash
Alohida GPT-5.4 Pro nashri qiyin mulohaza va professional ishlar uchun qoʻshimcha hisoblashdan foydalanadi. U matn va tasvirlarni qabul qiladi hamda OpenAI’ning Responses interfeysi orqali medium, high va xhigh kuch sozlamalarida matnli javob ishlab chiqadi.
- Qabul qilinadigan kirish ma’lumotlari
- Matn
- Natijalar
- json · sse
Ailoot da mavjud · kirish ma’lumotlari va usullar
Ailoot Ultra · Anthropic Messages POST /v1/messages
- Kirish
text- Chiqish
json,sse- Chiqish formati
- JSON yoki SSE
| Maydon | Tur | Talab | Qiymatlar va cheklovlar | Standart |
|---|---|---|---|---|
Maydonmodel | Turstring | TalabMajburiy | Qiymatlar va cheklovlar gpt-5.4-pro | Standart— |
Maydonmessages | Turmessage[] | TalabMajburiy | Qiymatlar va cheklovlar | Standart— |
Maydonmessages[].role | Turstring | TalabMajburiy | Qiymatlar va cheklovlar user, assistant | Standart— |
Maydonmessages[].content | Turstring | TalabMajburiy | Qiymatlar va cheklovlar | Standart— |
Maydonmax_tokens | Turinteger | TalabMajburiy | Qiymatlar va cheklovlar | Standart— |
Maydonstream | Turboolean | TalabIxtiyoriy | Qiymatlar va cheklovlar | Standartfalse |
Kirish materiallari birikmalari
Matn · UTF-8 matni
messages[].content satri
Usul parametrlari va hayot sikli
| Parametr | Parametr talablari |
|---|---|
Parametrcontent_type | Parametr talablariapplication/json |
Parametrrequired | Parametr talablarimodel, messages, max_tokens |
Parametroptional_controls | Parametr talablaristream |
Parametrmaterial_types | Parametr talablaritext |
Parametrtext_file_material | Parametr talablariHaqiqiy UTF-8 hujjatini o‘qing va uning matnini ko‘rsatilgan kirish yoki xabar kontenti satriga joylashtiring. |
Hayot sikli: synchronous_or_streamed
Tariflar
Tarif ma’lumotlari so‘rov imkoniyatlarini qo‘shmaydi. Qo‘llab-quvvatlanadigan parametrlar tanlangan usulda ko‘rsatilgan.
- Tezkor rejim
- Standart tarif Tezkor rejim tanlanganda
- Flex rejimi
- Standart tarif flex rejimi tanlanganda
- Maksimal fikrlash darajasi
- Standart tarif Maksimal fikrlash darajasi uchun standart (default) tuzatish qo‘llanganda
- Fikrlash darajasi · yuqori
- Standart tarif Fikrlash darajasi yuqori bo‘lganda
- Fikrlash darajasi · o‘rtacha
- Standart tarif Fikrlash darajasi o‘rtacha bo‘lganda
- Fikrlash darajasi · xhigh
- Standart tarif Fikrlash darajasi xhigh bo‘lganda
Ailoot tariflari
Sozlamalar bo‘yicha narxlar
Har bir to‘lovni ko‘rsatilgan shartlarga moslang. Har bir muqobil sozlamalar to‘plami uchun bitta tarifdan foydalaning.
| Sozlama | Tariflar jadvali | Kontekst tokenlari soni bundan ko‘p | Kontekst tokenlari soni bundan oshmaydi, chegara kiradi | To‘lov |
|---|---|---|---|---|
| SozlamaTokenlar uchun bazaviy tariflar | Tariflar jadvaliAsosiy tarif | Kontekst tokenlari soni bundan ko‘p— | Kontekst tokenlari soni bundan oshmaydi, chegara kiradiYuqori chegara yo‘q | To‘lov Kirish · Kirish tokenlari $0.06 / 1K token Chiqish · Chiqish tokenlari $0.36 / 1K token Kirish · Keshdan o‘qish $0 / 1K token Kirish · Keshga yozish $0 / 1K token Kirish · Keshga yozish, 1 soat — / 1K token |
| SozlamaSo‘rov uzunligi bo‘yicha 1-daraja | Tariflar jadvali— | Kontekst tokenlari soni bundan ko‘p0 | Kontekst tokenlari soni bundan oshmaydi, chegara kiradi272 000 | To‘lov Kirish · Kirish tokenlari $0.06 / 1K token Chiqish · Chiqish tokenlari $0.36 / 1K token Kirish · Keshdan o‘qish $0 / 1K token Kirish · Keshga yozish $0 / 1K token Kirish · Keshga yozish, 1 soat — / 1K token |
| SozlamaSo‘rov uzunligi bo‘yicha 2-daraja | Tariflar jadvali— | Kontekst tokenlari soni bundan ko‘p272 000 | Kontekst tokenlari soni bundan oshmaydi, chegara kiradiYuqori chegara yo‘q | To‘lov Kirish · Kirish tokenlari $0.06 / 1K token Chiqish · Chiqish tokenlari $0.36 / 1K token Kirish · Keshdan o‘qish $0 / 1K token Kirish · Keshga yozish $0 / 1K token Kirish · Keshga yozish, 1 soat — / 1K token |
Ailoot so‘rovdan oldin taxminiy summani band qiladi. Natijadan keyin o‘lchangan sarf asosidagi yakuniy to‘lovni yechadi. Oqimli javob bo‘yicha yakuniy hisob-kitob yakuniy sarf yozuviga asoslanadi. Summani band qilish va to‘lovni hisoblash tartibi →
So‘rov namunalari
Ailoot Ultra · Anthropic Messages
{
"model": "gpt-5.4-pro",
"max_tokens": 128,
"messages": [
{
"role": "user",
"content": "Summarize the incident report."
}
],
"stream": false
}set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path
source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
raise SystemExit('Choose a document containing text')
payload = {'model': 'gpt-5.4-pro', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
-H "x-api-key: $AILOOT_API_KEY" -H 'anthropic-version: 2023-06-01' -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
PY_RESULT
import json, os
from pathlib import Path
source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
raise SystemExit('Choose a document containing text')
payload = {'model': 'gpt-5.4-pro', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
from urllib.request import Request, urlopen
from urllib.error import HTTPError
api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'x-api-key': 'PLACEHOLDER_KEY', 'anthropic-version': '2023-06-01', 'Content-Type': 'application/json'}
headers['x-api-key'] = api_key
request = Request('https://api.ailoot.ai/v1/messages', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
with urlopen(request, timeout=120) as response:
raw = response.read()
Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
Path('result.json').write_bytes(error.read())
Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path
result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
Natijalarni olish va saqlash
Ailoot Ultra · Anthropic Messages
JSON yoki SSE
Barcha tayyor natijalarni saqlash
Qaytarilgan har bir to‘liq javob, fayl va kontent qismini saqlang.
Barcha kontent bloklari, fikrlash imzolari va haqiqiy vosita ishlatish IDlarini saqlang. SSE bloklarining barcha o‘zgarish qismlarini yig‘ing; birinchi matn bloki to‘liq chiqish emas.
Asl javobni tekshirish kerak bo‘lsa
So‘rov va javob IDlari hamda sarlavhalarini saqlang. Matn vazifasini olish uchun umumiy URL taqdim etilmagan.
Javob maydonlari
| Maydon | Tur |
|---|---|
Maydonid | Turstring |
Maydonmodel | Turstring |
Maydoncontent[] | Turtext|thinking|tool_use|other content block |
Maydonstop_reason | Turstring|null |
Maydonusage | Turobject |
Xatolar va keyingi qadamlar
| Javob | Shart | Keyingi qadam |
|---|---|---|
Javob400 · invalid_request_error | ShartMajburiy maydonlar, material ifodasi yoki parametr qiymati noto‘g‘ri | Keyingi qadamYangi yaratish so‘rovidan oldin ko‘rsatilgan maydonlarni tuzating. |
Taxalluslar
Model taxalluslari
Ailoot Ultra gpt-5.4-pro, openai/gpt-5.4-pro
Usul yo‘llari taxalluslari
/chat/completions
Chaqirish uchun tegishli ID lar
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions openai/gpt-5.4-pro
openai/gpt-5.4-progpt-5.4-proopenai/gpt-5.4-pro
Boshlash
Alohida GPT-5.4 Pro nashri qiyin mulohaza va professional ishlar uchun qoʻshimcha hisoblashdan foydalanadi. U matn va tasvirlarni qabul qiladi hamda OpenAI’ning Responses interfeysi orqali medium, high va xhigh kuch sozlamalarida matnli javob ishlab chiqadi.
- Qabul qilinadigan kirish ma’lumotlari
- Matn
- Natijalar
- Matn
Ailoot da mavjud · kirish ma’lumotlari va usullar
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
- Kirish
text- Chiqish
text- Chiqish formati
- json yoki SSE
| Maydon | Tur | Talab | Qiymatlar va cheklovlar | Standart |
|---|---|---|---|---|
Maydonmodel | Turstring | TalabMajburiy | Qiymatlar va cheklovlar openai/gpt-5.4-pro | Standart— |
Maydonmessages | Turmessage[] | TalabMajburiy | Qiymatlar va cheklovlar Elementlarning eng kam soni: 1 | Standart— |
Maydonmessages[].role | Turstring | TalabMajburiy | Qiymatlar va cheklovlar Namunalar: system, user, assistant, tool, function Shartlar: Bu rollar manba kodining moslik turlarida ochiq ifodalangan; aniq rollar to‘plami har bir modelga xos bo‘lib qoladi. Modelga bogʻliq | Standart— |
Maydonmessages[].content | Turstring|content_part[]|null | TalabIxtiyoriy | Qiymatlar va cheklovlar | Standart— |
Maydonmessages[].tool_calls | Turtool_call[] | TalabIxtiyoriy | Qiymatlar va cheklovlar | Standart— |
Maydonmessages[].tool_call_id | Turstring | TalabIxtiyoriy | Qiymatlar va cheklovlar Quyidagi holatda qo‘llanadi: role=tool; haqiqatan qaytarilgan IDdan foydalaning | Standart— |
Maydonmessages[].name | Turstring | TalabIxtiyoriy | Qiymatlar va cheklovlar | Standart— |
Maydonmessages[].reasoning_content | Turstring | TalabIxtiyoriy | Qiymatlar va cheklovlar Quyidagi holatda qo‘llanadi: Ushbu model foydalanganda, haqiqatan qaytarilgan fikrlash ma’lumotlarini keyingi so‘rovda qayta yuboring | Standart— |
Maydonmessages[].reasoning_details | Turobject|array | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
Maydonmax_tokens | Turinteger | TalabIxtiyoriy | Qiymatlar va cheklovlar Eng kam: 1 Modelga bogʻliq | Standart— |
Maydonmax_completion_tokens | Turinteger | TalabIxtiyoriy | Qiymatlar va cheklovlar Eng kam: 1 Modelga bogʻliq | Standart— |
Maydonstream | Turboolean | TalabIxtiyoriy | Qiymatlar va cheklovlar | Standartfalse |
Maydonstream_options.include_usage | Turboolean | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
Maydontemperature | Turnumber | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
Maydontop_p | Turnumber | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
Maydonstop | Turstring|string[] | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
Maydontools | Turfunction_tool[] | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
Maydontools[].type | Turstring | TalabIxtiyoriy | Qiymatlar va cheklovlar function Modelga bogʻliq | Standart— |
Maydontools[].function.name | Turstring | TalabMajburiy | Qiymatlar va cheklovlar Quyidagi holatda qo‘llanadi: Funksiya vositasi taqdim etilgan | Standart— |
Maydontools[].function.description | Turstring | TalabIxtiyoriy | Qiymatlar va cheklovlar | Standart— |
Maydontools[].function.parameters | TurJSON_schema | TalabIxtiyoriy | Qiymatlar va cheklovlar | Standart— |
Maydontool_choice | Turstring|object | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
Maydonparallel_tool_calls | Turboolean | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
Maydonresponse_format | Turobject | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
Maydonreasoning_effort | Turstring | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
Maydonreasoning | Turobject | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
Maydonservice_tier | Turstring | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
Maydoninstructions | Turstring | TalabIxtiyoriy | Qiymatlar va cheklovlar Moslik maydoni | Standart— |
Maydonfunctions | Turfunction[] | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
Maydonfunction_call | Turstring|object | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
Maydonprompt_cache_options | Turobject | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
Maydonmodalities | Turstring[] | TalabIxtiyoriy | Qiymatlar va cheklovlar text | Standart— |
Maydonprovider | Turobject | TalabIxtiyoriy | Qiymatlar va cheklovlar Shartlar: Ushbu Ultra matn marshrutida provider.options rad etiladi | Standart— |
Maydoncache_control.ttl | Turstring | TalabIxtiyoriy | Qiymatlar va cheklovlar Shartlar: Haqiqiy prompt-kesh joylarida 1h rad etiladi | Standart— |
Kirish materiallari birikmalari
Matn · UTF8 matni
messages[].content
Usul parametrlari va hayot sikli
| Parametr | Parametr talablari |
|---|---|
Parametrcontent_type | Parametr talablariapplication/json |
Parametrrequired | Parametr talablarimodel, messages |
Parametrmaterial_types | Parametr talablaritext |
Parametrmessages | Parametr talablarirole/content tuzilishidagi xabarlar massivi |
Parametrfile_material | Parametr talablariHaqiqiy UTF-8 hujjati aynan matn sifatida kiritiladi; fayl IDsi faraz qilinmaydi |
Parametroptional_controls | Parametr talablaristream, temperature, top_p, stop, max_tokens, max_completion_tokens, reasoning, response_format, tools, tool_choice |
Parametrcontrol_scope | Parametr talablariModelga xos; foydalanuvchi funksiya vositalari hostingdagi vositalardan farq qiladi |
Parametroutput_modalities | Parametr talablaritext |
Parametrhosted_operations | Parametr talablarifalse |
Parametrmultimodal_input_binding | Parametr talablarinull |
Hayot sikli: synchronous_or_streamed
Aniq model IDsini messages bilan yuboring.
Kontekst uzunligi chiqishning yuqori chegarasi emas.
Matn fayli aynan matnni taqdim etishi mumkin; tasvir, audio va fayl obyekti kirishlari aniq bog‘lashni talab qiladi.
Tariflar
Tarif ma’lumotlari so‘rov imkoniyatlarini qo‘shmaydi. Qo‘llab-quvvatlanadigan parametrlar tanlangan usulda ko‘rsatilgan.
- Tezkor rejim
- Standart tarif Tezkor rejim tanlanganda
- Flex rejimi
- Standart tarif flex rejimi tanlanganda
- Maksimal fikrlash darajasi
- Standart tarif Maksimal fikrlash darajasi uchun standart (default) tuzatish qo‘llanganda
- Fikrlash darajasi · yuqori
- Standart tarif Fikrlash darajasi yuqori bo‘lganda
- Fikrlash darajasi · o‘rtacha
- Standart tarif Fikrlash darajasi o‘rtacha bo‘lganda
- Fikrlash darajasi · xhigh
- Standart tarif Fikrlash darajasi xhigh bo‘lganda
Ailoot tariflari
Sozlamalar bo‘yicha narxlar
Har bir to‘lovni ko‘rsatilgan shartlarga moslang. Har bir muqobil sozlamalar to‘plami uchun bitta tarifdan foydalaning.
| Sozlama | Tariflar jadvali | Kontekst tokenlari soni bundan ko‘p | Kontekst tokenlari soni bundan oshmaydi, chegara kiradi | To‘lov |
|---|---|---|---|---|
| SozlamaTokenlar uchun bazaviy tariflar | Tariflar jadvaliAsosiy tarif | Kontekst tokenlari soni bundan ko‘p— | Kontekst tokenlari soni bundan oshmaydi, chegara kiradiYuqori chegara yo‘q | To‘lov Kirish · Kirish tokenlari $0.06 / 1K token Chiqish · Chiqish tokenlari $0.36 / 1K token Kirish · Keshdan o‘qish $0 / 1K token Kirish · Keshga yozish $0 / 1K token Kirish · Keshga yozish, 1 soat — / 1K token |
| SozlamaSo‘rov uzunligi bo‘yicha 1-daraja | Tariflar jadvali— | Kontekst tokenlari soni bundan ko‘p0 | Kontekst tokenlari soni bundan oshmaydi, chegara kiradi272 000 | To‘lov Kirish · Kirish tokenlari $0.06 / 1K token Chiqish · Chiqish tokenlari $0.36 / 1K token Kirish · Keshdan o‘qish $0 / 1K token Kirish · Keshga yozish $0 / 1K token Kirish · Keshga yozish, 1 soat — / 1K token |
| SozlamaSo‘rov uzunligi bo‘yicha 2-daraja | Tariflar jadvali— | Kontekst tokenlari soni bundan ko‘p272 000 | Kontekst tokenlari soni bundan oshmaydi, chegara kiradiYuqori chegara yo‘q | To‘lov Kirish · Kirish tokenlari $0.06 / 1K token Chiqish · Chiqish tokenlari $0.36 / 1K token Kirish · Keshdan o‘qish $0 / 1K token Kirish · Keshga yozish $0 / 1K token Kirish · Keshga yozish, 1 soat — / 1K token |
Ailoot so‘rovdan oldin taxminiy summani band qiladi. Natijadan keyin o‘lchangan sarf asosidagi yakuniy to‘lovni yechadi. Oqimli javob bo‘yicha yakuniy hisob-kitob yakuniy sarf yozuviga asoslanadi. Summani band qilish va to‘lovni hisoblash tartibi →
So‘rov namunalari
Ailoot Ultra · OpenAI Chat
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "openai/gpt-5.4-pro", "messages": [{"role": "user", "content": "Explain the difference between an observation and a hypothesis in three sentences."}]}')
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("choices",[]):
if x.get("message",{}).get("content"): print(x["message"]["content"])
PY_RESULT
from openai import OpenAI
import os
if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model='openai/gpt-5.4-pro',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}])
import base64, json
from pathlib import Path
def save_result(data, stem="result"):
# Keep every field, including usage, IDs, reasoning and tool requests.
Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
print(json.dumps(data, ensure_ascii=False, indent=2))
def save_blob(encoded, suffix, label):
raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
file = Path(stem + "-" + label + "." + ext)
file.write_bytes(raw)
print("Saved", file)
for index, block in enumerate(data.get("content") or []):
print("Content", index, json.dumps(block, ensure_ascii=False))
for choice in data.get("choices") or []:
print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
for index, item in enumerate(data.get("output") or []):
print("Output", index, json.dumps(item, ensure_ascii=False))
if item.get("type") == "image_generation_call" and item.get("result"):
save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
for ci, candidate in enumerate(data.get("candidates") or []):
for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
blob = part.get("inlineData") or part.get("inline_data")
if blob and blob.get("data"):
mime = blob.get("mimeType") or blob.get("mime_type")
suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))
save_result(result.to_dict(mode="json"))
from openai import OpenAI
import os
from pathlib import Path
if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
import base64, json
from pathlib import Path
def save_result(data, stem="result"):
# Keep every field, including usage, IDs, reasoning and tool requests.
Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
print(json.dumps(data, ensure_ascii=False, indent=2))
def save_blob(encoded, suffix, label):
raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
file = Path(stem + "-" + label + "." + ext)
file.write_bytes(raw)
print("Saved", file)
for index, block in enumerate(data.get("content") or []):
print("Content", index, json.dumps(block, ensure_ascii=False))
for choice in data.get("choices") or []:
print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
for index, item in enumerate(data.get("output") or []):
print("Output", index, json.dumps(item, ensure_ascii=False))
if item.get("type") == "image_generation_call" and item.get("result"):
save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
for ci, candidate in enumerate(data.get("candidates") or []):
for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
blob = part.get("inlineData") or part.get("inline_data")
if blob and blob.get("data"):
mime = blob.get("mimeType") or blob.get("mime_type")
suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))
with client.chat.completions.stream(model='openai/gpt-5.4-pro',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}]) as stream:
with Path("stream-events.jsonl").open("w",encoding="utf-8") as log:
for event in stream:
payload=event.to_dict(mode="json")
log.write(json.dumps(payload,ensure_ascii=False)+"\n"); log.flush()
print(json.dumps(payload,ensure_ascii=False))
final=stream.get_final_completion()
save_result(final.to_dict(mode="json"),"stream-result")
Natijalarni olish va saqlash
Ailoot Ultra · OpenAI Chat
json yoki SSE
Barcha tayyor natijalarni saqlash
Qaytarilgan har bir to‘liq javob, fayl va kontent qismini saqlang.
Har bir javob variantini va uning kontenti, vosita chaqiruvlari hamda fikrlash ma’lumotlarini saqlang. SSEda o‘zgarish qismlarini variant va vosita indeksi bo‘yicha yig‘ing, yakuniy tugash sababi va sarf ma’lumotlarini saqlang.
Asl javobni tekshirish kerak bo‘lsa
So‘rov va javob IDlari hamda sarlavhalarini saqlang. Matn vazifasini olish uchun umumiy URL taqdim etilmagan.
Javob maydonlari
| Maydon | Tur |
|---|---|
Maydonchoices[].index | Turinteger |
Maydonchoices[].message.content | Turstring|null |
Maydonchoices[].message.tool_calls | Turtool_call[] |
Maydonchoices[].message.reasoning_content | Turstring |
Maydonchoices[].message.reasoning_details | Turobject|array |
Maydonchoices[].finish_reason | Turstring|null |
Maydonusage | Turobject |
Xatolar va keyingi qadamlar
| Javob | Shart | Keyingi qadam |
|---|---|---|
Javob400 · invalid_request_error | ShartMajburiy maydonlar, material ifodasi yoki parametr qiymati noto‘g‘ri | Keyingi qadamYangi yaratish so‘rovidan oldin ko‘rsatilgan maydonlarni tuzating. |
Taxalluslar
Model taxalluslari
Ailoot Ultra gpt-5.4-pro, openai/gpt-5.4-pro
Usul yo‘llari taxalluslari
/chat/completions
Chaqirish uchun tegishli ID lar
Ailoot Ultra · Anthropic Messages POST /v1/messages openai/gpt-5.4-pro
openai/gpt-5.4-progpt-5.4-proopenai/gpt-5.4-pro
Boshlash
Alohida GPT-5.4 Pro nashri qiyin mulohaza va professional ishlar uchun qoʻshimcha hisoblashdan foydalanadi. U matn va tasvirlarni qabul qiladi hamda OpenAI’ning Responses interfeysi orqali medium, high va xhigh kuch sozlamalarida matnli javob ishlab chiqadi.
- Qabul qilinadigan kirish ma’lumotlari
- Matn
- Natijalar
- json · sse
Ailoot da mavjud · kirish ma’lumotlari va usullar
Ailoot Ultra · Anthropic Messages POST /v1/messages
- Kirish
text- Chiqish
json,sse- Chiqish formati
- JSON yoki SSE
| Maydon | Tur | Talab | Qiymatlar va cheklovlar | Standart |
|---|---|---|---|---|
Maydonmodel | Turstring | TalabMajburiy | Qiymatlar va cheklovlar openai/gpt-5.4-pro | Standart— |
Maydonmessages | Turmessage[] | TalabMajburiy | Qiymatlar va cheklovlar | Standart— |
Maydonmessages[].role | Turstring | TalabMajburiy | Qiymatlar va cheklovlar user, assistant | Standart— |
Maydonmessages[].content | Turstring | TalabMajburiy | Qiymatlar va cheklovlar | Standart— |
Maydonmax_tokens | Turinteger | TalabMajburiy | Qiymatlar va cheklovlar | Standart— |
Maydonstream | Turboolean | TalabIxtiyoriy | Qiymatlar va cheklovlar | Standartfalse |
Kirish materiallari birikmalari
Matn · UTF-8 matni
messages[].content satri
Usul parametrlari va hayot sikli
| Parametr | Parametr talablari |
|---|---|
Parametrcontent_type | Parametr talablariapplication/json |
Parametrrequired | Parametr talablarimodel, messages, max_tokens |
Parametroptional_controls | Parametr talablaristream |
Parametrmaterial_types | Parametr talablaritext |
Parametrtext_file_material | Parametr talablariHaqiqiy UTF-8 hujjatini o‘qing va uning matnini ko‘rsatilgan kirish yoki xabar kontenti satriga joylashtiring. |
Hayot sikli: synchronous_or_streamed
Tariflar
Tarif ma’lumotlari so‘rov imkoniyatlarini qo‘shmaydi. Qo‘llab-quvvatlanadigan parametrlar tanlangan usulda ko‘rsatilgan.
- Tezkor rejim
- Standart tarif Tezkor rejim tanlanganda
- Flex rejimi
- Standart tarif flex rejimi tanlanganda
- Maksimal fikrlash darajasi
- Standart tarif Maksimal fikrlash darajasi uchun standart (default) tuzatish qo‘llanganda
- Fikrlash darajasi · yuqori
- Standart tarif Fikrlash darajasi yuqori bo‘lganda
- Fikrlash darajasi · o‘rtacha
- Standart tarif Fikrlash darajasi o‘rtacha bo‘lganda
- Fikrlash darajasi · xhigh
- Standart tarif Fikrlash darajasi xhigh bo‘lganda
Ailoot tariflari
Sozlamalar bo‘yicha narxlar
Har bir to‘lovni ko‘rsatilgan shartlarga moslang. Har bir muqobil sozlamalar to‘plami uchun bitta tarifdan foydalaning.
| Sozlama | Tariflar jadvali | Kontekst tokenlari soni bundan ko‘p | Kontekst tokenlari soni bundan oshmaydi, chegara kiradi | To‘lov |
|---|---|---|---|---|
| SozlamaTokenlar uchun bazaviy tariflar | Tariflar jadvaliAsosiy tarif | Kontekst tokenlari soni bundan ko‘p— | Kontekst tokenlari soni bundan oshmaydi, chegara kiradiYuqori chegara yo‘q | To‘lov Kirish · Kirish tokenlari $0.06 / 1K token Chiqish · Chiqish tokenlari $0.36 / 1K token Kirish · Keshdan o‘qish $0 / 1K token Kirish · Keshga yozish $0 / 1K token Kirish · Keshga yozish, 1 soat — / 1K token |
| SozlamaSo‘rov uzunligi bo‘yicha 1-daraja | Tariflar jadvali— | Kontekst tokenlari soni bundan ko‘p0 | Kontekst tokenlari soni bundan oshmaydi, chegara kiradi272 000 | To‘lov Kirish · Kirish tokenlari $0.06 / 1K token Chiqish · Chiqish tokenlari $0.36 / 1K token Kirish · Keshdan o‘qish $0 / 1K token Kirish · Keshga yozish $0 / 1K token Kirish · Keshga yozish, 1 soat — / 1K token |
| SozlamaSo‘rov uzunligi bo‘yicha 2-daraja | Tariflar jadvali— | Kontekst tokenlari soni bundan ko‘p272 000 | Kontekst tokenlari soni bundan oshmaydi, chegara kiradiYuqori chegara yo‘q | To‘lov Kirish · Kirish tokenlari $0.06 / 1K token Chiqish · Chiqish tokenlari $0.36 / 1K token Kirish · Keshdan o‘qish $0 / 1K token Kirish · Keshga yozish $0 / 1K token Kirish · Keshga yozish, 1 soat — / 1K token |
Ailoot so‘rovdan oldin taxminiy summani band qiladi. Natijadan keyin o‘lchangan sarf asosidagi yakuniy to‘lovni yechadi. Oqimli javob bo‘yicha yakuniy hisob-kitob yakuniy sarf yozuviga asoslanadi. Summani band qilish va to‘lovni hisoblash tartibi →
So‘rov namunalari
Ailoot Ultra · Anthropic Messages
{
"model": "openai/gpt-5.4-pro",
"max_tokens": 128,
"messages": [
{
"role": "user",
"content": "Summarize the incident report."
}
],
"stream": false
}set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path
source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
raise SystemExit('Choose a document containing text')
payload = {'model': 'openai/gpt-5.4-pro', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
-H "x-api-key: $AILOOT_API_KEY" -H 'anthropic-version: 2023-06-01' -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
PY_RESULT
import json, os
from pathlib import Path
source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
raise SystemExit('Choose a document containing text')
payload = {'model': 'openai/gpt-5.4-pro', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
from urllib.request import Request, urlopen
from urllib.error import HTTPError
api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'x-api-key': 'PLACEHOLDER_KEY', 'anthropic-version': '2023-06-01', 'Content-Type': 'application/json'}
headers['x-api-key'] = api_key
request = Request('https://api.ailoot.ai/v1/messages', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
with urlopen(request, timeout=120) as response:
raw = response.read()
Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
Path('result.json').write_bytes(error.read())
Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path
result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
Natijalarni olish va saqlash
Ailoot Ultra · Anthropic Messages
JSON yoki SSE
Barcha tayyor natijalarni saqlash
Qaytarilgan har bir to‘liq javob, fayl va kontent qismini saqlang.
Barcha kontent bloklari, fikrlash imzolari va haqiqiy vosita ishlatish IDlarini saqlang. SSE bloklarining barcha o‘zgarish qismlarini yig‘ing; birinchi matn bloki to‘liq chiqish emas.
Asl javobni tekshirish kerak bo‘lsa
So‘rov va javob IDlari hamda sarlavhalarini saqlang. Matn vazifasini olish uchun umumiy URL taqdim etilmagan.
Javob maydonlari
| Maydon | Tur |
|---|---|
Maydonid | Turstring |
Maydonmodel | Turstring |
Maydoncontent[] | Turtext|thinking|tool_use|other content block |
Maydonstop_reason | Turstring|null |
Maydonusage | Turobject |
Xatolar va keyingi qadamlar
| Javob | Shart | Keyingi qadam |
|---|---|---|
Javob400 · invalid_request_error | ShartMajburiy maydonlar, material ifodasi yoki parametr qiymati noto‘g‘ri | Keyingi qadamYangi yaratish so‘rovidan oldin ko‘rsatilgan maydonlarni tuzating. |
Taxalluslar
Model taxalluslari
Ailoot Ultra gpt-5.4-pro, openai/gpt-5.4-pro
Usul yo‘llari taxalluslari
/chat/completions
Chaqirish uchun tegishli ID lar
FAQ · OpenAI: GPT-5.4 Pro
- Qanday kirish ma’lumotlari va natijalar mavjud?
POST /v1/chat/completions·gpt-5.4-pro:text→textPOST /v1/messages·gpt-5.4-pro:text→json,ssePOST /v1/chat/completions·openai/gpt-5.4-pro:text→textPOST /v1/messages·openai/gpt-5.4-pro:text→json,sse- So‘rov qaysi maydonlardan foydalanadi?
POST /v1/chat/completions·gpt-5.4-pro:model,messages,streamPOST /v1/messages·gpt-5.4-pro:model,messages,max_tokens,streamPOST /v1/chat/completions·openai/gpt-5.4-pro:model,messages,stream,modalities,providerPOST /v1/messages·openai/gpt-5.4-pro:model,messages,max_tokens,stream- Qanday cheklovlar amal qiladi?
POST /v1/chat/completions·gpt-5.4-pro:messages.min_items:1POST /v1/chat/completions·openai/gpt-5.4-pro:messages.min_items:1