Meta: Muse Spark 1.1
Muse Spark 1.1 – Meta daugiarūšis samprotavimo modelis agentams, kompiuterio naudojimui ir programavimui. Jis dirba su didelės apimties tekstiniu ir vizualiniu kontekstu, generuoja tekstą ir siūlomus įrankių veiksmus bei turi gamintojo nurodytą 1,048,576 žetonų kontekstą su samprotavimo lygiais iki xhigh.
- Ailoot Ultra · OpenAI pokalbis
POST /v1/chat/completionsmeta/muse-spark-1.1 - Ailoot Ultra · Anthropic pranešimai
POST /v1/messagesmeta/muse-spark-1.1
Apie modelį
Šis aprašas apima modelio galimybes. Pasirinktam metodui Ailoot prieinamos įvestys, išvestys ir parinktys nurodytos toliau.
Muse Spark 1.1 – Meta Superintelligence Labs daugiarūšis samprotavimo modelis agentiniam darbui, programavimui ir kompiuterio naudojimo darbo eigoms. Pirminiame gamintojo leidime akcentuojamas planavimas, orkestravimas, konteksto valdymas ir vizualinių įrodymų derinimas su įrankių suteikiamais veiksmais. Dokumentuota išvestis yra tekstas; modelį supanti programa suteikia faktinį vykdymą ir atvaizduotus artefaktus.
Agentų planavimas ir ilgas kontekstas
Leidime aprašomas prisitaikymas prie natyvių įrankių, pasirinktinių funkcijų ir agentų aplinkų. Kaip pagrindinis agentas modelis gali rinkti kontekstą, sudaryti planą ir deleguoti apibrėžtą darbą; deleguotame vaidmenyje jis laikosi paskirtos užduoties ir gali perduoti informaciją apie kliūtį aukštesniam lygiui. Tai agento aplinkos naudojamos galimybės, o ne subagentų rinkinys, automatiškai sukuriamas vienu tekstiniu atsakymu.
Gamintojo modelių lentelėje pateiktas 1,048,576 žetonų kontekstas. Jo 1.1 leidime aprašomas ankstesnio darbo prisiminimas ir vėlesniems žingsniams reikalingos informacijos glaudinimas. Naudinga užduotis turėtų nurodyti tikslą, šaltinių medžiagą ir galutinį artefaktą, aiškiai išsaugant svarbius sprendimus ir įrankių rezultatus. Didelis kontekstas padeda išlaikyti susijusią informaciją kartu, tačiau neapibrėžia, kurį reikalavimą rezultatas turi tenkinti.
Ilgam projekto klausimui pažymėkite šaltinių dokumentus ir prašykite susijusio reikalavimo, jo vietos ir neišspręstos sąlygos. Planui prašykite veiksmų sekos, atitinkančios pateiktus apribojimus, ir nurodykite, koks rezultatas reikštų kiekvieno žingsnio užbaigimą. Tęsdami išsaugokite matomas išvadas ir rezultatus, užuot manę, kad neapibrėžta atmintis turi kiekvieną ankstesnį faktą.
Kompiuterio naudojimas ir programavimas
Gamintojas aprašo kompiuterines darbo eigas keičiantis programoms, modeliui prijungtoje aplinkoje pasirenkant tiesioginę sąveiką su sąsaja arba automatizavimą scenarijais. Ekrano kopija gali pateikti matomą būseną, o tekstinis nurodymas – apibrėžti naudotojo tikslą. Prašykite susijusio valdiklio, siūlomos operacijos ir ją pagrindžiančių įrodymų, tada grąžinkite faktinę naują būseną, jeigu aplinka atlieka tą operaciją.
Programavimo srityje leidime aprašomas klaidų diagnozavimas, funkcijų įgyvendinimas ir kodo migracijų tvarkymas. Derinimo demonstracija jungia kodo generavimą, ekrano kopijas, gedimo vietos nustatymą ir pataisymo peržiūrą. Praktinė užklausa gali pateikti klaidingą programos veikimą, paveiktą pirminį kodą ir numatomą rezultatą, tada prašyti siūlomo pakeitimo, išsaugant viešąją sąsają. Kodo vykdymas ir failų keitimas lieka programos įrankių suteikiamomis operacijomis.
Pateikite modeliui kodą ir deklaracijas, lemiančias veikimą. Paaiškinimui pateikite atsektiną įvestį; keitimui nurodykite rezultatą ir apribojimus; vizualiniam įgyvendinimui pridėkite ekrano kopiją ir sąveikas, kurių vaizdas nerodo. Prašykite artefakto atskirai nuo jo prielaidų ir grįžtamojo ryšio, reikalingo jam patikrinti.
Daugiarūšės įvestys
Modelių lentelė 1.1 versijai dokumentuoja teksto, vaizdų, vaizdo įrašų, garso ir PDF įvestį bei teksto išvestį. Leidime aprašomas išsamių vaizdų ir vaizdo įrašų turinio aprašų kūrimas, kodo generavimas pagal vizualinę medžiagą ir suvokimo detalių naudojimas ilgesnėje darbo eigoje. Klausimas apie dokumentą gali prašyti su šaltiniais susietų laukų ar palyginimo; klausimas apie vaizdo įrašą gali nurodyti aprašytiną įvykį ar seką; audiovizualinis klausimas gali apibrėžti, kuri ištarta ir matoma informacija svarbi.
Modelio išvestis lieka rašytinis paaiškinimas, struktūrizuotas rezultatas ar siūlomas kodas. Sugeneruotam vaizdui, sintezuotai kalbai ar užbaigtam išoriniam veiksmui reikia atskirai suteikto komponento. Išsaugokite šaltinių identifikatorius, žymas, matavimo vienetus ir susijusius segmentus, kad tekstinį rezultatą būtų galima palyginti su originalia medžiaga.
Samprotavimas, įrankiai ir struktūrizuota išvestis
Muse Spark samprotavimo vadovas šiam leidimui dokumentuoja minimal, low, medium, high ir xhigh. Max yra vėlesnis Standard 1.3 nustatymas, o none nepalaikomas. Samprotavimas vyksta net be aiškios intensyvumo reikšmės, o išvesties biudžetas apima ir privatų vidinį samprotavimą, ir matomą atsakymą. Neapdorotas samprotavimas ir logaritminės tikimybės neatskleidžiami kaip įprasti pasitikėjimo ar paaiškinimo laukai.
Kūrėjo apibrėžtų įrankių kvietimas vyksta ciklu: programa suteikia operacijas, modelis parengia argumentus, programa vykdo kiekvieną kvietimą ir grąžina jo rezultatą, o kitas atsakymas naudoja gautą baigtį. Įrankio kvietimas gali prašyti informacijos ar operacijos; jis pats nėra įrodymas, kad operacija užbaigta. Pokalbyje išlaikykite pradinio kvietimo ir rezultato sąsają.
Gamintojas taip pat dokumentuoja struktūrizuotą tekstą, apribotą pateikta JSON schema. Apibrėžkite programai reikalingus laukus ir jų tipus, o šaltinio informaciją atskirkite nuo interpretacijos, kai jų paskirtys skiriasi. Struktūrizuota forma nepatvirtina faktinio teisingumo; originalūs šaltiniai ir faktiniai įrankių rezultatai vis tiek lemia patikrinamo atsakymo turinį.
Leidimo ir tęstinumo ribos
Muse Spark 1.1 išlieka atskiru leidimu. Konkrečių 1.2 programavimo pakeitimų, 1.3 ilgalaikės elgsenos atnaujinimų ir Standard 1.3 max nustatymo nereikėtų jam priskirti vien dėl bendros šeimos. Gamintojo pokalbių sąsaja nesuteikia išoriniams kvietėjams privataus samprotavimo pakartotiniam pateikimui, todėl išsaugokite matomą istoriją ir naudokite prijungtos sąsajos siūlomus tęstinumo mechanizmus.
Perskaityti šaltiniai nenurodo atskirų griežtų didžiausių įvesties ar išvesties žetonų talpų, išskyrus dokumentuotą kontekstą. Apibrėžkite reikiamą tekstinį artefaktą ir išsaugokite kiekvienam veiksmui ar išvadai reikalingus įrodymus, atskirdami modelio planavimą ir suvokimą nuo aplinkos, vykdančios jo siūlomas operacijas.
Praktinė užduotis
Praktinė užduotis
Techninis pavyzdys anglų kalba
Plan an approval workflow
Plan a document approval flow from these constraints: the author submits a draft; a reviewer must approve before the coordinator publishes; rejected drafts return to the author; publication needs a recorded approval ID. Give the ordered steps and evidence required at each transition. Mark any actor permission that the supplied rules do not define.Laukiamas rezultatas
A numbered workflow with approval evidence, rejection path and unresolved permission questions.Rezultato patikra
Verify every publication path requires a recorded approval ID and rejection cannot skip review.Ailoot Ultra · OpenAI pokalbis POST /v1/chat/completions meta/muse-spark-1.1
meta/muse-spark-1.1Pradžia
Muse Spark 1.1 – Meta daugiarūšis samprotavimo modelis agentams, kompiuterio naudojimui ir programavimui. Jis dirba su didelės apimties tekstiniu ir vizualiniu kontekstu, generuoja tekstą ir siūlomus įrankių veiksmus bei turi gamintojo nurodytą 1,048,576 žetonų kontekstą su samprotavimo lygiais iki xhigh.
- Leidžiamos įvestys
- Tekstas
- Rezultatai
- Tekstas
Prieinama Ailoot · įvestys ir metodai
Ailoot Ultra · OpenAI pokalbis POST /v1/chat/completions
- Įvestis
text- Išvestis
text- Išvesties formatas
- json arba SSE
| Laukas | Tipas | Reikalavimas | Reikšmės ir ribos | Numatyta |
|---|---|---|---|---|
Laukasmodel | Tipasstring | ReikalavimasPrivaloma | Reikšmės ir ribos meta/muse-spark-1.1 | Numatyta— |
Laukasmessages | Tipasmessage[] | ReikalavimasPrivaloma | Reikšmės ir ribos Mažiausias elementų skaičius: 1 | Numatyta— |
Laukasmessages[].role | Tipasstring | ReikalavimasPrivaloma | Reikšmės ir ribos Pavyzdžiai: system, user, assistant, tool, function Sąlygos: Šie vaidmenys aiškiai išreikšti šaltinio kodo suderinamumo tipuose; tikslus vaidmenų rinkinys priklauso nuo konkretaus modelio. Priklauso nuo modelio | Numatyta— |
Laukasmessages[].content | Tipasstring|content_part[]|null | ReikalavimasNeprivaloma | Reikšmės ir ribos | Numatyta— |
Laukasmessages[].tool_calls | Tipastool_call[] | ReikalavimasNeprivaloma | Reikšmės ir ribos | Numatyta— |
Laukasmessages[].tool_call_id | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos Taikoma, kai: role=tool; naudokite tikrąjį grąžintą ID | Numatyta— |
Laukasmessages[].name | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos | Numatyta— |
Laukasmessages[].reasoning_content | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos Taikoma, kai: Grąžinkite tikrąjį gautą samprotavimą ten, kur šis modelis jį naudoja | Numatyta— |
Laukasmessages[].reasoning_details | Tipasobject|array | ReikalavimasNeprivaloma | Reikšmės ir ribos Priklauso nuo modelio | Numatyta— |
Laukasmax_tokens | Tipasinteger | ReikalavimasNeprivaloma | Reikšmės ir ribos Mažiausia reikšmė: 1 Priklauso nuo modelio | Numatyta— |
Laukasmax_completion_tokens | Tipasinteger | ReikalavimasNeprivaloma | Reikšmės ir ribos Mažiausia reikšmė: 1 Priklauso nuo modelio | Numatyta— |
Laukasstream | Tipasboolean | ReikalavimasNeprivaloma | Reikšmės ir ribos | Numatytafalse |
Laukasstream_options.include_usage | Tipasboolean | ReikalavimasNeprivaloma | Reikšmės ir ribos Priklauso nuo modelio | Numatyta— |
Laukastemperature | Tipasnumber | ReikalavimasNeprivaloma | Reikšmės ir ribos Priklauso nuo modelio | Numatyta— |
Laukastop_p | Tipasnumber | ReikalavimasNeprivaloma | Reikšmės ir ribos Priklauso nuo modelio | Numatyta— |
Laukasstop | Tipasstring|string[] | ReikalavimasNeprivaloma | Reikšmės ir ribos Priklauso nuo modelio | Numatyta— |
Laukastools | Tipasfunction_tool[] | ReikalavimasNeprivaloma | Reikšmės ir ribos Priklauso nuo modelio | Numatyta— |
Laukastools[].type | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos function Priklauso nuo modelio | Numatyta— |
Laukastools[].function.name | Tipasstring | ReikalavimasPrivaloma | Reikšmės ir ribos Taikoma, kai: pateiktas funkcijos tipo įrankis | Numatyta— |
Laukastools[].function.description | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos | Numatyta— |
Laukastools[].function.parameters | TipasJSON_schema | ReikalavimasNeprivaloma | Reikšmės ir ribos | Numatyta— |
Laukastool_choice | Tipasstring|object | ReikalavimasNeprivaloma | Reikšmės ir ribos Priklauso nuo modelio | Numatyta— |
Laukasparallel_tool_calls | Tipasboolean | ReikalavimasNeprivaloma | Reikšmės ir ribos Priklauso nuo modelio | Numatyta— |
Laukasresponse_format | Tipasobject | ReikalavimasNeprivaloma | Reikšmės ir ribos Priklauso nuo modelio | Numatyta— |
Laukasreasoning_effort | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos Priklauso nuo modelio | Numatyta— |
Laukasreasoning | Tipasobject | ReikalavimasNeprivaloma | Reikšmės ir ribos Priklauso nuo modelio | Numatyta— |
Laukasservice_tier | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos Priklauso nuo modelio | Numatyta— |
Laukasinstructions | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos Suderinamumo laukas | Numatyta— |
Laukasfunctions | Tipasfunction[] | ReikalavimasNeprivaloma | Reikšmės ir ribos Priklauso nuo modelio | Numatyta— |
Laukasfunction_call | Tipasstring|object | ReikalavimasNeprivaloma | Reikšmės ir ribos Priklauso nuo modelio | Numatyta— |
Laukasprompt_cache_options | Tipasobject | ReikalavimasNeprivaloma | Reikšmės ir ribos Priklauso nuo modelio | Numatyta— |
Laukasmodalities | Tipasstring[] | ReikalavimasNeprivaloma | Reikšmės ir ribos text | Numatyta— |
Laukasprovider | Tipasobject | ReikalavimasNeprivaloma | Reikšmės ir ribos Sąlygos: provider.options šiame Ultra teksto maršrute atmetamas | Numatyta— |
Laukascache_control.ttl | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos Sąlygos: 1h atmetamas tikrosiose užklausų podėlio vietose | Numatyta— |
Įvesties medžiagos deriniai
Tekstas · UTF8 tekstas
messages[].content
Metodo parametrai ir gyvavimo ciklas
| Parametras | Specifikacija |
|---|---|
Parametrascontent_type | Specifikacijaapplication/json |
Parametrasrequired | Specifikacijamodel, messages |
Parametrasmaterial_types | Specifikacijatext |
Parametrasmessages | Specifikacijapranešimų masyvas su role/content struktūra |
Parametrasfile_material | Specifikacijatikrasis UTF-8 dokumentas įterptas kaip pažodinis tekstas; failo ID nenumanomas |
Parametrasoptional_controls | Specifikacijastream, temperature, top_p, stop, max_tokens, max_completion_tokens, reasoning, response_format, tools, tool_choice |
Parametrascontrol_scope | Specifikacijapriklauso nuo modelio; naudotojo funkcijų įrankiai skiriasi nuo priglobtų įrankių |
Parametrasoutput_modalities | Specifikacijatext |
Parametrashosted_operations | Specifikacijafalse |
Parametrasmultimodal_input_binding | Specifikacijanull |
Gyvavimo ciklas: synchronous_or_streamed
Siųskite tikslų modelio ID kartu su messages.
Konteksto ilgis nėra išvesties limitas.
Teksto failas gali pateikti pažodinį tekstą; vaizdų / garso / failų objektų įvestims reikia tikslaus susiejimo.
Planai
Tarifų informacija neprideda užklausos parinkčių. Palaikomi parametrai nurodyti prie pasirinkto metodo.
- Spartusis režimas
- Standartinis įkainis Pasirinkus spartųjį režimą
- Flex režimas
- Standartinis įkainis Pasirinkus flex režimą
- Didžiausios samprotavimo pastangos
- Standartinis įkainis Kai didžiausioms samprotavimo pastangoms taikomas numatytasis koregavimas (default)
- Samprotavimo pastangos · high
- Standartinis įkainis Kai samprotavimo pastangų lygis yra high
- Samprotavimo pastangos · low
- Standartinis įkainis Kai samprotavimo pastangų lygis yra low
- Samprotavimo pastangos · medium
- Standartinis įkainis Kai samprotavimo pastangų lygis yra medium
- Samprotavimo pastangos · minimal
- Standartinis įkainis Kai samprotavimo pastangų lygis yra minimal
- Samprotavimo pastangos · xhigh
- Standartinis įkainis Kai samprotavimo pastangų lygis yra xhigh
Ailoot įkainiai
Kainos pagal konfigūraciją
Kiekvieną mokestį susiekite su nurodytomis sąlygomis. Kiekvienam alternatyvių konfigūracijų rinkiniui taikykite vieną įkainį.
| Konfigūracija | Įkainių lentelė | Konteksto tokenų daugiau nei | Konteksto tokenų iki imtinai | Mokestis |
|---|---|---|---|---|
| KonfigūracijaBaziniai žetonų įkainiai | Įkainių lentelėBazinis įkainis | Konteksto tokenų daugiau nei— | Konteksto tokenų iki imtinaiBe viršutinės ribos | Mokestis Įvestis · Įvesties tokenai $0.0025 / 1K tokenų Išvestis · Išvesties tokenai $0.0085 / 1K tokenų Įvestis · Talpyklos skaitymas $0.0003 / 1K tokenų Įvestis · Rašymas į talpyklą — / 1K tokenų Įvestis · Rašymas į talpyklą, 1 val — / 1K tokenų |
| KonfigūracijaUžklausos ilgio pakopa 1 | Įkainių lentelė— | Konteksto tokenų daugiau nei0 | Konteksto tokenų iki imtinaiBe viršutinės ribos | Mokestis Įvestis · Įvesties tokenai $0.0025 / 1K tokenų Išvestis · Išvesties tokenai $0.0085 / 1K tokenų Įvestis · Talpyklos skaitymas $0.0003 / 1K tokenų Įvestis · Rašymas į talpyklą — / 1K tokenų Įvestis · Rašymas į talpyklą, 1 val — / 1K tokenų |
Ailoot prieš užklausą rezervuoja numatomą sumą. Gavus rezultatą, galutinis mokestis nuskaitomas pagal išmatuotą naudojimą. Srautinio atsakymo atsiskaitymui naudojamas galutinis naudojimo įrašas. Kaip veikia rezervavimas ir atsiskaitymas →
Užklausų pavyzdžiai
Ailoot Ultra · OpenAI pokalbis
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.1", "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.1',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.1',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")
Gauti ir išsaugoti rezultatus
Ailoot Ultra · OpenAI pokalbis
json arba SSE
Išsaugoti visus baigtus rezultatus
Išsaugokite kiekvieną visą grąžintą atsakymą, failą ir turinio dalį.
Išsaugokite kiekvieną variantą ir jo turinį / įrankių iškvietimus / samprotavimą. SSE prieaugius surinkite pagal varianto / įrankio indeksą; išsaugokite galutinę užbaigimo priežastį ir naudojimo duomenis.
Jei reikia patikrinti pradinį atsakymą
Išsaugokite užklausų / atsakymų ID ir antraštes. Bendras teksto užduoties gavimo URL nepateikiamas.
Atsakymo laukai
| Laukas | Tipas |
|---|---|
Laukaschoices[].index | Tipasinteger |
Laukaschoices[].message.content | Tipasstring|null |
Laukaschoices[].message.tool_calls | Tipastool_call[] |
Laukaschoices[].message.reasoning_content | Tipasstring |
Laukaschoices[].message.reasoning_details | Tipasobject|array |
Laukaschoices[].finish_reason | Tipasstring|null |
Laukasusage | Tipasobject |
Klaidos ir tolesni veiksmai
| Atsakymas | Sąlyga | Kitas žingsnis |
|---|---|---|
Atsakymas400 · invalid_request_error | SąlygaNetinkami privalomi laukai, medžiagos pateikimo forma arba parametro reikšmė | Kitas žingsnisPrieš naują kūrimo užklausą pataisykite nurodytus laukus. |
Pseudonimai
Modelių pseudonimai
Ailoot Ultra meta/muse-spark-1.1
Metodų kelių pseudonimai
Naudokite aukščiau nurodytus metodų kelius.
Susiję ID iškvietimui
Ailoot Ultra · Anthropic pranešimai POST /v1/messages meta/muse-spark-1.1
meta/muse-spark-1.1Pradžia
Muse Spark 1.1 – Meta daugiarūšis samprotavimo modelis agentams, kompiuterio naudojimui ir programavimui. Jis dirba su didelės apimties tekstiniu ir vizualiniu kontekstu, generuoja tekstą ir siūlomus įrankių veiksmus bei turi gamintojo nurodytą 1,048,576 žetonų kontekstą su samprotavimo lygiais iki xhigh.
- Leidžiamos įvestys
- Tekstas
- Rezultatai
- json · sse
Prieinama Ailoot · įvestys ir metodai
Ailoot Ultra · Anthropic pranešimai POST /v1/messages
- Įvestis
text- Išvestis
json,sse- Išvesties formatas
- JSON arba SSE
| Laukas | Tipas | Reikalavimas | Reikšmės ir ribos | Numatyta |
|---|---|---|---|---|
Laukasmodel | Tipasstring | ReikalavimasPrivaloma | Reikšmės ir ribos meta/muse-spark-1.1 | Numatyta— |
Laukasmessages | Tipasmessage[] | ReikalavimasPrivaloma | Reikšmės ir ribos | Numatyta— |
Laukasmessages[].role | Tipasstring | ReikalavimasPrivaloma | Reikšmės ir ribos user, assistant | Numatyta— |
Laukasmessages[].content | Tipasstring | ReikalavimasPrivaloma | Reikšmės ir ribos | Numatyta— |
Laukasmax_tokens | Tipasinteger | ReikalavimasPrivaloma | Reikšmės ir ribos | Numatyta— |
Laukasstream | Tipasboolean | ReikalavimasNeprivaloma | Reikšmės ir ribos | Numatytafalse |
Įvesties medžiagos deriniai
Tekstas · UTF-8 tekstas
messages[].content eilutė
Metodo parametrai ir gyvavimo ciklas
| Parametras | Specifikacija |
|---|---|
Parametrascontent_type | Specifikacijaapplication/json |
Parametrasrequired | Specifikacijamodel, messages, max_tokens |
Parametrasoptional_controls | Specifikacijastream |
Parametrasmaterial_types | Specifikacijatext |
Parametrastext_file_material | SpecifikacijaPerskaitykite tikrąjį UTF-8 dokumentą ir įterpkite jo tekstą į nurodytą input lauką arba pranešimo turinio eilutę. |
Gyvavimo ciklas: synchronous_or_streamed
Planai
Tarifų informacija neprideda užklausos parinkčių. Palaikomi parametrai nurodyti prie pasirinkto metodo.
- Spartusis režimas
- Standartinis įkainis Pasirinkus spartųjį režimą
- Flex režimas
- Standartinis įkainis Pasirinkus flex režimą
- Didžiausios samprotavimo pastangos
- Standartinis įkainis Kai didžiausioms samprotavimo pastangoms taikomas numatytasis koregavimas (default)
- Samprotavimo pastangos · high
- Standartinis įkainis Kai samprotavimo pastangų lygis yra high
- Samprotavimo pastangos · low
- Standartinis įkainis Kai samprotavimo pastangų lygis yra low
- Samprotavimo pastangos · medium
- Standartinis įkainis Kai samprotavimo pastangų lygis yra medium
- Samprotavimo pastangos · minimal
- Standartinis įkainis Kai samprotavimo pastangų lygis yra minimal
- Samprotavimo pastangos · xhigh
- Standartinis įkainis Kai samprotavimo pastangų lygis yra xhigh
Ailoot įkainiai
Kainos pagal konfigūraciją
Kiekvieną mokestį susiekite su nurodytomis sąlygomis. Kiekvienam alternatyvių konfigūracijų rinkiniui taikykite vieną įkainį.
| Konfigūracija | Įkainių lentelė | Konteksto tokenų daugiau nei | Konteksto tokenų iki imtinai | Mokestis |
|---|---|---|---|---|
| KonfigūracijaBaziniai žetonų įkainiai | Įkainių lentelėBazinis įkainis | Konteksto tokenų daugiau nei— | Konteksto tokenų iki imtinaiBe viršutinės ribos | Mokestis Įvestis · Įvesties tokenai $0.0025 / 1K tokenų Išvestis · Išvesties tokenai $0.0085 / 1K tokenų Įvestis · Talpyklos skaitymas $0.0003 / 1K tokenų Įvestis · Rašymas į talpyklą — / 1K tokenų Įvestis · Rašymas į talpyklą, 1 val — / 1K tokenų |
| KonfigūracijaUžklausos ilgio pakopa 1 | Įkainių lentelė— | Konteksto tokenų daugiau nei0 | Konteksto tokenų iki imtinaiBe viršutinės ribos | Mokestis Įvestis · Įvesties tokenai $0.0025 / 1K tokenų Išvestis · Išvesties tokenai $0.0085 / 1K tokenų Įvestis · Talpyklos skaitymas $0.0003 / 1K tokenų Įvestis · Rašymas į talpyklą — / 1K tokenų Įvestis · Rašymas į talpyklą, 1 val — / 1K tokenų |
Ailoot prieš užklausą rezervuoja numatomą sumą. Gavus rezultatą, galutinis mokestis nuskaitomas pagal išmatuotą naudojimą. Srautinio atsakymo atsiskaitymui naudojamas galutinis naudojimo įrašas. Kaip veikia rezervavimas ir atsiskaitymas →
Užklausų pavyzdžiai
Ailoot Ultra · Anthropic pranešimai
{
"model": "meta/muse-spark-1.1",
"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.1', '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.1', '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))
Gauti ir išsaugoti rezultatus
Ailoot Ultra · Anthropic pranešimai
JSON arba SSE
Išsaugoti visus baigtus rezultatus
Išsaugokite kiekvieną visą grąžintą atsakymą, failą ir turinio dalį.
Išsaugokite visus turinio blokus, mąstymo parašus ir tikruosius įrankių naudojimo ID. Surinkite visus SSE blokų prieaugius; pirmasis teksto blokas nėra visa išvestis.
Jei reikia patikrinti pradinį atsakymą
Išsaugokite užklausų / atsakymų ID ir antraštes. Bendras teksto užduoties gavimo URL nepateikiamas.
Atsakymo laukai
| Laukas | Tipas |
|---|---|
Laukasid | Tipasstring |
Laukasmodel | Tipasstring |
Laukascontent[] | Tipastext|thinking|tool_use|other content block |
Laukasstop_reason | Tipasstring|null |
Laukasusage | Tipasobject |
Klaidos ir tolesni veiksmai
| Atsakymas | Sąlyga | Kitas žingsnis |
|---|---|---|
Atsakymas400 · invalid_request_error | SąlygaNetinkami privalomi laukai, medžiagos pateikimo forma arba parametro reikšmė | Kitas žingsnisPrieš naują kūrimo užklausą pataisykite nurodytus laukus. |
Pseudonimai
Modelių pseudonimai
Ailoot Ultra meta/muse-spark-1.1
Metodų kelių pseudonimai
Naudokite aukščiau nurodytus metodų kelius.
Susiję ID iškvietimui
FAQ · Meta: Muse Spark 1.1
- Kokios įvestys ir rezultatai prieinami?
POST /v1/chat/completions·meta/muse-spark-1.1:text→textPOST /v1/messages·meta/muse-spark-1.1:text→json,sse- Kokius laukus naudoja užklausa?
POST /v1/chat/completions·meta/muse-spark-1.1:model,messages,stream,modalities,providerPOST /v1/messages·meta/muse-spark-1.1:model,messages,max_tokens,stream- Kokie apribojimai taikomi?
POST /v1/chat/completions·meta/muse-spark-1.1:messages.min_items:1