modellar

Meta: Muse Spark 1.2

Markdown · JSON

Meta: Muse Spark 1.2

Muse Spark 1.2 — Meta kompaniyasining vizual kod yozish, diagrammalar va audio-vizual tushunishga qaratilgan multimodal mulohaza modeli. U ulangan vositalar orqali berilgan tasvir yoki videoni veb va o‘yin kodi takliflariga aylantira oladi; matnli chiqish va ishlab chiqaruvchi ko‘rsatgan 1,048,576 tokenli kontekstga ega.

Model haqida

Bu tavsif model imkoniyatlarini yoritadi. Ailoot da tanlangan usul uchun mavjud kirish, chiqish va parametrlar quyida keltirilgan.

Muse Spark 1.2 — Meta kompaniyasining Muse Spark 1.1 uchun kod yozishga yo‘naltirilgan yangilanishi; multimodal tushunish va vizual mulohazaga urg‘u beradi. Ishlab chiqaruvchi namoyishlari tasvir va videoni veb-sahifa va o‘yinlar kabi raqamli materiallar bilan bog‘laydi, model jadvalida esa 1,048,576 tokenli kontekst va matnli chiqish ko‘rsatilgan. Ushbu yozuv Contributor 1.2 va keyingi 1.3 dan farqli Standard 1.2 ga tegishli.

Vizual kod yozish

Nashr ko‘rinadigan joylashuv, iyerarxiya va uslubni ishlaydigan kodga aylantirish, so‘ng natijadagi materialni vositalar orqali tekshirishni tavsiflaydi. Foydali topshiriq uchun tasvir yoki klipni amalga oshirilishi kerak bo‘lgan xatti-harakat bilan birga bering. Skrinshot tashqi ko‘rinishni ko‘rsatishi, ammo o‘zaro aloqalarni aniqlamasligi mumkin; shu sababli natija o‘z ichiga olishi kerak bo‘lgan boshqaruvlar, holatlar va foydalanuvchi amallariga kutilgan javobni nomlang.

Ko‘rinadigan tuzilma, taklif etilgan amalga oshirish va taxminlarni alohida so‘rang. Masalan, sahifani qayta yaratish topshirig‘i namunada ko‘rsatilgan nomli bo‘limlar va vizual munosabatlarni talab qilishi, so‘ng bitta belgilangan o‘zaro aloqa uchun kodni so‘rashi mumkin. Kodni render qilish va sinab ko‘rish ulangan muhitni talab qiladi; natijadagi skrinshot yoki bajarish qayta aloqasi keyingi tuzatish uchun kiritmaga aylanishi mumkin.

Ishlab chiqaruvchi kod yaratishdan tashqari diagrammalarni tushunish va vizual mulohazani ham ko‘rsatadi. Diagrammadagi o‘qlar, birliklar va belgilarni saqlang, har bir xulosaga asos bo‘lgan kuzatuvni so‘rang. Sxema uchun tushuntiriladigan bog‘lanishni va saqlanadigan manba belgilarini ko‘rsating. Hujjat tasviri uchun ko‘rinadigan matnni aynan ko‘chirishni xulosa yoki talqindan ajrating.

Fazoviy va audio-vizual jarayonlar

1.2 e’loni ixtisoslashgan robototexnika varianti va ikki darajali rejalash/amal tizimini ham muhokama qiladi. Bular alohida tajribaviy komponentlar: yuqori darajali model sahna va quyi topshiriqlar haqida mulohaza yuritadi, alohida tasvir-til-amal siyosati esa quyi darajali amallarni bajaradi. Oila nashrida shu namoyish borligi uchungina matn qaytaradigan Standard modelni robot aktuatori deb tasvirlamaslik kerak.

Standard versiya uchun model jadvali matn, tasvir, video, audio va PDF ni kiritmalar sifatida hujjatlashtiradi. Audio-vizual topshiriq savolga tegishli voqea yoki aytilgan shartni so‘rashi va asos bo‘lgan materialning tartibli bayonini qaytarishi mumkin. Har bir modalni yo‘nalishsiz umumlashtirishni so‘rash o‘rniga, tegishli segment va javob shaklini belgilang.

Ishlab chiqaruvchi misollari videoni tushunish, batafsil izoh yozish va vositalar yordamida tekshirishni birlashtiradi. Amaliy jarayon namoyishni uning yozma tartibi bilan taqqoslashi, ko‘rinadigan mosliklar va farqlarni so‘rashi, so‘ng ilovaning keyingi qadami uchun matnli natija tayyorlashi mumkin. Yaratilgan izohli matn, kod va tuzilmali topilmalar hujjatlashtirilgan chiqishdir; tasvir yoki nutq yaratish alohida nomlangan komponentlarga tegishli.

Mulohaza sozlamalari va kontekst

Muse Spark ko‘rinadigan matnni yaratishdan oldin ichki mulohaza yuritadi. 1.2 uchun amal qiladigan hujjatlashtirilgan darajalar minimal, low, medium, high va xhigh. Max Standard 1.3 ga tegishli, none esa mulohazani o‘chirishning qo‘llab-quvvatlanadigan usuli emas. Daraja ko‘rsatilmasa, model o‘zi belgilaydigan darajadan foydalanadi.

1,048,576 tokenli kontekst bog‘liq manba materiali va suhbatni saqlay oladi, ammo maqsad va yakuniy material baribir belgilanishi kerak. Uzun hujjat topshirig‘i uchun savolni aniqlang, har bir manbani belgilang va ajratilgan ma’lumot yonida uning joylashuvini saqlang. Mulohaza va ko‘rinadigan javob tokenlari chiqish byudjetini bo‘lishadi; shu sababli topshiriqqa haqiqatan kerakli izoh yoki kod uchun yetarli joy ajrating.

Xom ichki mulohaza oddiy matn sifatida ochilmaydi. Ishlab chiqaruvchining chat interfeysi ham tashqi chaqiruvchilar uchun navbatlar orasida o‘qiladigan maxfiy izni olib o‘tmaydi; keyingi so‘rovga kerakli ko‘rinadigan xabarlar, manbalar va qaytarilgan vosita natijalarini saqlang. Log ehtimolliklar qo‘llab-quvvatlanmaydi, shu sababli model bu xususiyatni xulosalarining ishonch o‘lchovi sifatida bermaydi.

Vositalar va tuzilmali materiallar

Ilova dasturchi funksiyalarini tavsiflaydi, model taklif etilgan chaqiruvlar va argumentlarni yaratadi, ilova esa ularni bajarib, har bir chaqiruv natijasini qaytaradi. Shundan so‘ng model haqiqiy qayta aloqani tekshirib, keyingi qadamni tanlashi mumkin. Nashrning vizual kiritmalar va yaratilgan materiallarni tekshirishga urg‘u berishi shu vositalarning muhit tarkibida bo‘lishiga bog‘liq.

Tuzilmali chiqish matnni belgilangan JSON sxemasi bilan cheklashi mumkin. Vizual ma’lumot ajratish qaydi manba tasviri, obyekt yoki belgi, kuzatilgan qiymat va talqinni o‘z ichiga olishi mumkin. Kodni ko‘rib chiqish ta’sirlangan belgi, nomuvofiqlik va taklif etilgan o‘zgarishni aniqlashi mumkin. Ishlab chiqaruvchining qat’iy rejimi ildiz oddiy obyekt bo‘lishini, ro‘yxatdagi barcha xossalar majburiy bo‘lishini va qo‘shimcha xossalar o‘chirilishini talab qiladi; rekursiv sxemalar rad etiladi.

Materialning to‘g‘riligini amaliy ifodalang: qaysi manba tafsilotlarini saqlashi kerak, o‘zaro aloqa qanday ishlashi lozim va qaysi qaytarilgan qayta aloqa shu xatti-harakatni tasdiqlaydi. O‘qilgan manbalar model kontekstidan tashqari mustaqil maksimal kirish yoki chiqish tokeni sig‘imlarini bermaydi. Standard 1.2 nashrini hamda taklif etilgan matnli material bilan uni tekshirishda ishlatiladigan bajarish yoki render natijasi orasidagi farqni saqlang.

Amaliy vazifa

Amaliy vazifa

Ingliz tilidagi texnik misol

Implement a specified responsive layout

Draft semantic HTML and CSS for a product comparison section with a title, introduction and three feature columns. At narrow widths, stack the columns in the same reading order. Each column needs a heading and three bullet points. Use the placeholder copy supplied in your code and explain the breakpoint choice; return source only, without claiming a rendered result.

Kutiladigan natija

A bounded HTML/CSS section and a short explanation of stacking behavior and reading order.

Natijani tekshirish

At the proposed narrow breakpoint, the DOM order and visual order match and no horizontal overflow is introduced.
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions meta/muse-spark-1.2

meta/muse-spark-1.2

Meta /meta/muse-spark-1.2

Boshlash

Muse Spark 1.2 — Meta kompaniyasining vizual kod yozish, diagrammalar va audio-vizual tushunishga qaratilgan multimodal mulohaza modeli. U ulangan vositalar orqali berilgan tasvir yoki videoni veb va o‘yin kodi takliflariga aylantira oladi; matnli chiqish va ishlab chiqaruvchi ko‘rsatgan 1,048,576 tokenli kontekstga ega.

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
MaydonTurTalabQiymatlar va cheklovlarStandart
MaydonmodelTurstringTalabMajburiyQiymatlar va cheklovlar
meta/muse-spark-1.2
Standart—
MaydonmessagesTurmessage[]TalabMajburiyQiymatlar va cheklovlar
Elementlarning eng kam soni: 1
Standart—
Maydonmessages[].roleTurstringTalabMajburiyQiymatlar 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[].contentTurstring|content_part[]|nullTalabIxtiyoriyQiymatlar va cheklovlarStandart—
Maydonmessages[].tool_callsTurtool_call[]TalabIxtiyoriyQiymatlar va cheklovlarStandart—
Maydonmessages[].tool_call_idTurstringTalabIxtiyoriyQiymatlar va cheklovlar
Quyidagi holatda qo‘llanadi: role=tool; haqiqatan qaytarilgan IDdan foydalaning
Standart—
Maydonmessages[].nameTurstringTalabIxtiyoriyQiymatlar va cheklovlarStandart—
Maydonmessages[].reasoning_contentTurstringTalabIxtiyoriyQiymatlar va cheklovlar
Quyidagi holatda qo‘llanadi: Ushbu model foydalanganda, haqiqatan qaytarilgan fikrlash ma’lumotlarini keyingi so‘rovda qayta yuboring
Standart—
Maydonmessages[].reasoning_detailsTurobject|arrayTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
Maydonmax_tokensTurintegerTalabIxtiyoriyQiymatlar va cheklovlar
Eng kam: 1
Modelga bogʻliq
Standart—
Maydonmax_completion_tokensTurintegerTalabIxtiyoriyQiymatlar va cheklovlar
Eng kam: 1
Modelga bogʻliq
Standart—
MaydonstreamTurbooleanTalabIxtiyoriyQiymatlar va cheklovlarStandartfalse
Maydonstream_options.include_usageTurbooleanTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
MaydontemperatureTurnumberTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
Maydontop_pTurnumberTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
MaydonstopTurstring|string[]TalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
MaydontoolsTurfunction_tool[]TalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
Maydontools[].typeTurstringTalabIxtiyoriyQiymatlar va cheklovlar
function
Modelga bogʻliq
Standart—
Maydontools[].function.nameTurstringTalabMajburiyQiymatlar va cheklovlar
Quyidagi holatda qo‘llanadi: Funksiya vositasi taqdim etilgan
Standart—
Maydontools[].function.descriptionTurstringTalabIxtiyoriyQiymatlar va cheklovlarStandart—
Maydontools[].function.parametersTurJSON_schemaTalabIxtiyoriyQiymatlar va cheklovlarStandart—
Maydontool_choiceTurstring|objectTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
Maydonparallel_tool_callsTurbooleanTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
Maydonresponse_formatTurobjectTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
Maydonreasoning_effortTurstringTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
MaydonreasoningTurobjectTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
Maydonservice_tierTurstringTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
MaydoninstructionsTurstringTalabIxtiyoriyQiymatlar va cheklovlar
Moslik maydoni
Standart—
MaydonfunctionsTurfunction[]TalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
Maydonfunction_callTurstring|objectTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
Maydonprompt_cache_optionsTurobjectTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
MaydonmodalitiesTurstring[]TalabIxtiyoriyQiymatlar va cheklovlar
text
Standart—
MaydonproviderTurobjectTalabIxtiyoriyQiymatlar va cheklovlar
Shartlar: Ushbu Ultra matn marshrutida provider.options rad etiladi
Standart—
Maydoncache_control.ttlTurstringTalabIxtiyoriyQiymatlar va cheklovlar
Shartlar: Haqiqiy prompt-kesh joylarida 1h rad etiladi
Standart—
Kirish materiallari birikmalari

Matn · UTF8 matni

messages[].content

Usul parametrlari va hayot sikli
ParametrParametr talablari
Parametrcontent_typeParametr talablariapplication/json
ParametrrequiredParametr talablarimodel, messages
Parametrmaterial_typesParametr talablaritext
ParametrmessagesParametr talablarirole/content tuzilishidagi xabarlar massivi
Parametrfile_materialParametr talablariHaqiqiy UTF-8 hujjati aynan matn sifatida kiritiladi; fayl IDsi faraz qilinmaydi
Parametroptional_controlsParametr talablaristream, temperature, top_p, stop, max_tokens, max_completion_tokens, reasoning, response_format, tools, tool_choice
Parametrcontrol_scopeParametr talablariModelga xos; foydalanuvchi funksiya vositalari hostingdagi vositalardan farq qiladi
Parametroutput_modalitiesParametr talablaritext
Parametrhosted_operationsParametr talablarifalse
Parametrmultimodal_input_bindingParametr 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 · past
Standart tarif Fikrlash darajasi past bo‘lganda
Fikrlash darajasi · o‘rtacha
Standart tarif Fikrlash darajasi o‘rtacha bo‘lganda
Fikrlash darajasi · minimal
Standart tarif Fikrlash darajasi minimal 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.

SozlamaTariflar jadvaliKontekst tokenlari soni bundan ko‘pKontekst tokenlari soni bundan oshmaydi, chegara kiradiTo‘lov
SozlamaTokenlar uchun bazaviy tariflarTariflar jadvaliAsosiy tarifKontekst tokenlari soni bundan ko‘p—Kontekst tokenlari soni bundan oshmaydi, chegara kiradiYuqori chegara yo‘qTo‘lov
Kirish · Kirish tokenlari $0.0025 / 1K token
Chiqish · Chiqish tokenlari $0.0085 / 1K token
Kirish · Keshdan o‘qish $0.0003 / 1K token
Kirish · Keshga yozish — / 1K token
Kirish · Keshga yozish, 1 soat — / 1K token
SozlamaSo‘rov uzunligi bo‘yicha 1-darajaTariflar jadvali—Kontekst tokenlari soni bundan ko‘p0Kontekst tokenlari soni bundan oshmaydi, chegara kiradiYuqori chegara yo‘qTo‘lov
Kirish · Kirish tokenlari $0.0025 / 1K token
Chiqish · Chiqish tokenlari $0.0085 / 1K token
Kirish · Keshdan o‘qish $0.0003 / 1K token
Kirish · Keshga yozish — / 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

curlPython SDKPython oqimi
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "meta/muse-spark-1.2", "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='meta/muse-spark-1.2',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='meta/muse-spark-1.2',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
MaydonTur
Maydonchoices[].indexTurinteger
Maydonchoices[].message.contentTurstring|null
Maydonchoices[].message.tool_callsTurtool_call[]
Maydonchoices[].message.reasoning_contentTurstring
Maydonchoices[].message.reasoning_detailsTurobject|array
Maydonchoices[].finish_reasonTurstring|null
MaydonusageTurobject
Xatolar va keyingi qadamlar
JavobShartKeyingi qadam
Javob400 · invalid_request_errorShartMajburiy maydonlar, material ifodasi yoki parametr qiymati noto‘g‘riKeyingi qadamYangi yaratish so‘rovidan oldin ko‘rsatilgan maydonlarni tuzating.

Taxalluslar

Model taxalluslari

Ailoot Ultra meta/muse-spark-1.2

Usul yo‘llari taxalluslari

Yuqorida ko‘rsatilgan usul yo‘llaridan foydalaning.

Chaqirish uchun tegishli ID lar

meta/muse-spark-1.2

Ailoot Ultra · Anthropic Messages POST /v1/messages meta/muse-spark-1.2

meta/muse-spark-1.2

Meta /meta/muse-spark-1.2

Boshlash

Muse Spark 1.2 — Meta kompaniyasining vizual kod yozish, diagrammalar va audio-vizual tushunishga qaratilgan multimodal mulohaza modeli. U ulangan vositalar orqali berilgan tasvir yoki videoni veb va o‘yin kodi takliflariga aylantira oladi; matnli chiqish va ishlab chiqaruvchi ko‘rsatgan 1,048,576 tokenli kontekstga ega.

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
MaydonTurTalabQiymatlar va cheklovlarStandart
MaydonmodelTurstringTalabMajburiyQiymatlar va cheklovlar
meta/muse-spark-1.2
Standart—
MaydonmessagesTurmessage[]TalabMajburiyQiymatlar va cheklovlarStandart—
Maydonmessages[].roleTurstringTalabMajburiyQiymatlar va cheklovlar
user, assistant
Standart—
Maydonmessages[].contentTurstringTalabMajburiyQiymatlar va cheklovlarStandart—
Maydonmax_tokensTurintegerTalabMajburiyQiymatlar va cheklovlarStandart—
MaydonstreamTurbooleanTalabIxtiyoriyQiymatlar va cheklovlarStandartfalse
Kirish materiallari birikmalari

Matn · UTF-8 matni

messages[].content satri

Usul parametrlari va hayot sikli
ParametrParametr talablari
Parametrcontent_typeParametr talablariapplication/json
ParametrrequiredParametr talablarimodel, messages, max_tokens
Parametroptional_controlsParametr talablaristream
Parametrmaterial_typesParametr talablaritext
Parametrtext_file_materialParametr 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 · past
Standart tarif Fikrlash darajasi past bo‘lganda
Fikrlash darajasi · o‘rtacha
Standart tarif Fikrlash darajasi o‘rtacha bo‘lganda
Fikrlash darajasi · minimal
Standart tarif Fikrlash darajasi minimal 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.

SozlamaTariflar jadvaliKontekst tokenlari soni bundan ko‘pKontekst tokenlari soni bundan oshmaydi, chegara kiradiTo‘lov
SozlamaTokenlar uchun bazaviy tariflarTariflar jadvaliAsosiy tarifKontekst tokenlari soni bundan ko‘p—Kontekst tokenlari soni bundan oshmaydi, chegara kiradiYuqori chegara yo‘qTo‘lov
Kirish · Kirish tokenlari $0.0025 / 1K token
Chiqish · Chiqish tokenlari $0.0085 / 1K token
Kirish · Keshdan o‘qish $0.0003 / 1K token
Kirish · Keshga yozish — / 1K token
Kirish · Keshga yozish, 1 soat — / 1K token
SozlamaSo‘rov uzunligi bo‘yicha 1-darajaTariflar jadvali—Kontekst tokenlari soni bundan ko‘p0Kontekst tokenlari soni bundan oshmaydi, chegara kiradiYuqori chegara yo‘qTo‘lov
Kirish · Kirish tokenlari $0.0025 / 1K token
Chiqish · Chiqish tokenlari $0.0085 / 1K token
Kirish · Keshdan o‘qish $0.0003 / 1K token
Kirish · Keshga yozish — / 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

To‘liq minimal JSON so‘rov tanasicurl · O‘zingizning UTF-8 hujjatingizdan foydalaningPython · Natijani to‘liq saqlang
{
  "model": "meta/muse-spark-1.2",
  "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': 'meta/muse-spark-1.2', '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': 'meta/muse-spark-1.2', '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
MaydonTur
MaydonidTurstring
MaydonmodelTurstring
Maydoncontent[]Turtext|thinking|tool_use|other content block
Maydonstop_reasonTurstring|null
MaydonusageTurobject
Xatolar va keyingi qadamlar
JavobShartKeyingi qadam
Javob400 · invalid_request_errorShartMajburiy maydonlar, material ifodasi yoki parametr qiymati noto‘g‘riKeyingi qadamYangi yaratish so‘rovidan oldin ko‘rsatilgan maydonlarni tuzating.

Taxalluslar

Model taxalluslari

Ailoot Ultra meta/muse-spark-1.2

Usul yo‘llari taxalluslari

Yuqorida ko‘rsatilgan usul yo‘llaridan foydalaning.

Chaqirish uchun tegishli ID lar

meta/muse-spark-1.2

FAQ · Meta: Muse Spark 1.2
Qanday kirish ma’lumotlari va natijalar mavjud?

POST /v1/chat/completions · meta/muse-spark-1.2: text → text

POST /v1/messages · meta/muse-spark-1.2: text → json, sse

So‘rov qaysi maydonlardan foydalanadi?

POST /v1/chat/completions · meta/muse-spark-1.2: model, messages, stream, modalities, provider

POST /v1/messages · meta/muse-spark-1.2: model, messages, max_tokens, stream

Qanday cheklovlar amal qiladi?

POST /v1/chat/completions · meta/muse-spark-1.2: messages.min_items: 1

Batafsil

Ailoot’ni Claude Code, OpenCode, Hermes yoki ilovangizga ulang.

Kompaniya va uning loyihalar portfeli

Kompaniya va uning loyihalar portfeli: millionlab mijozlar; oylik sotuvlar hajmi milliardlarda.

Tokenlarni chegirma bilan xarid qiling.

Muntazam ish uchun obuna chegirmasi. Token xaridiga promokodlar — 50% gacha.

Obuna
Muntazam so‘rovlaringiz uchun chegirmali tarif tanlang.
50% gacha promokod
Xaridda kod kiriting. Narx amaldagi aksiya bilan qayta hisoblanadi.
Tarixdagi xarajatlar
Har so‘rov uchun model, token va summa saqlanadi.

Obuna tanlash · Model narxlarini ko‘rish

API’ni sotadigan mahsulotingizga ulang.

SaaS, ilova va botlar Ailoot ofertasi hamda litsenziya shartnomasiga muvofiq. Qayta sotishga reseller litsenziyasi so‘rang.

Tijorat ilovasi
Xizmatingizning pullik funksiyalariga matn, rasm, video va ovoz yaratishni qo‘shing.
Reseller litsenziyasi
Loyiha tavsifi va kirish sxemasini yuboring. Foydalanish va qayta sotishga yozma shartlarni so‘rang.
Saytdagi hujjatlar
Oferta, litsenziya shartnomasi va ma’lumotlar siyosati ulashdan oldin ochiq.

Reseller litsenziyasini so‘rash · Oferta va litsenziya shartnomasi