modeli

Mistral: Mistral Small 3.1 24B

Markdown · JSON

Mistral: Mistral Small 3.1 24B

Mistral Small 3.1 24B Instruct 2503 liniji Small 3 dodaja razumevanje slik in kontekst 128k po navedbah proizvajalca. V samostojni različici, prilagojeni sledenju navodilom, združuje večjezično besedilo, programiranje in matematično sklepanje s sistemskimi navodili, JSON in izvornim klicanjem funkcij.

O modelu

Ta opis zajema zmožnosti modela. Vhodi, izhodi in možnosti, ki so na voljo v Ailoot, so spodaj navedeni za izbrano metodo.

Mistral Small 3.1 24B Instruct 2503 nadgrajuje Small 3 2501 z dodanim vizualnim razumevanjem in razširitvijo podpore dolgemu kontekstu na 128k žetonov. Ima 24 milijard parametrov in je prilagojen sledenju navodilom iz posebej poimenovane izdaje Small 3.1 Base. Model sprejema besedilo in slike ter ustvarja besedilo, vključno z razlago, kodo ali strukturiranim zapisom.

Ključne zmogljivosti

Vid modelu omogoča analizo vidnega gradiva ob uporabnikovem vprašanju. Slika dokumenta lahko poda polje ali izjavo za pregled, diagram razmerje za razlago, graf pa podatke za primerjavo. Oznake, enote in ustrezna okoliška vsebina naj bodo razločni, da se vprašanje nanaša na dokaze, ki so dejansko prisotni na sliki.

Proizvajalec navaja večjezično podporo za več deset jezikov, vključno z ruščino, angleščino, francoščino, nemščino, grščino, hindijščino, indonezijščino, italijanščino, japonščino, korejščino, malajščino, nepalščino, poljščino, portugalščino, romunščino, srbščino, španščino, švedščino, turščino, ukrajinščino, vietnamščino, arabščino, bengalščino, kitajščino in perzijščino. Za večjezični odgovor določite končni jezik, bralca in terminologijo. Imena, citirane oznake, identifikatorji spremenljivk in enote lahko ostanejo nespremenjeni, okoliško besedilo pa se prilagodi.

Kartica opisuje tudi pogovorne in sklepne zmogljivosti, izvorno klicanje funkcij, izhod JSON in upoštevanje sistemskih pozivov. Njen razčlenjevalnik žetonov je Tekken z besediščem, označenim kot 131k. To so funkcije poimenovane različice, prilagojene sledenju navodilom; njena različica Base ima drugo vlogo, poznejši izdaji Small 3.2 in Small 4 pa ohranjata lastne spremembe in načine.

Priprava dokumentnih, programskih in matematičnih nalog

Pri nalogi z dolgimi dokumenti označite dokumente in postavite eno opredeljeno vprašanje. Primerjava lahko zahteva matriko zahtev z izjavo, njenim izvornim razdelkom in morebitnim nesoglasjem med dokumenti. Povzetek lahko zahteva samo gradivo, pomembno za navedeno spremembo. Dolg kontekst ohranja te vire skupaj, končni odgovor pa lahko ostane jedrnat.

Pri razlagi kode podajte funkcijo in vhod, katerega vedenju je treba slediti. Vključite ustrezne pomožne funkcije ali deklaracije in vprašajte, kako se stanje spremeni, preden se vrednost vrne. Pri predlagani spremembi navedite zahtevo, javni vmesnik, ki ga je treba ohraniti, in pričakovani izhod. Popravljeno kodo zahtevajte ločeno od razlage in primerov.

Pri matematični nalogi pred zahtevo za izpeljavo opredelite simbole in predpostavke o domeni. Določite, ali naj bo končni rezultat natančen, zaokrožen ali dokaz trditve. Če je pogoj na sliki, ohranite formulo in povezane oznake razločne ter zahtevajte, naj model v odgovoru ohrani ta zapis. Takšna priprava pretvori dokumentirani poudarek modela na programskem in matematičnem sklepanju v izdelek, ki ga je mogoče pregledati.

Oblika navodil in priporočena uporaba

Proizvajalec objavlja pogovorno predlogo V7-Tekken, ki razlikuje sistemsko, uporabniško in pomočnikovo vlogo, ter priporoča ustrezno implementacijo razčlenjevalnika žetonov kot merodajni vir. Sistemsko navodilo naj opredeli vlogo pomočnika in pravila odgovora, uporabniško sporočilo pa naj vsebuje dejansko nalogo in izvorno gradivo. Pravilno oblikovanje pogovora se razlikuje od vstavljanja oznak, podobnih vlogam, v citirani dokument.

Kartica priporoča razmeroma nizko temperaturo, denimo 0.15, in sistemski poziv, prilagojen primeru uporabe. Opredelite izhodna polja ali razdelke in pogoje, ki morajo ostati pri preoblikovanju. Pri ponavljajočem se izluščevanju zahtevajte JSON z določenimi imeni in tipi ter predstavitev vrednosti, ki v viru manjkajo. Kadar mora človek pregledati razlago, je mogoče pojasnjevalni odstavek vrniti ločeno.

Postopek klicanja funkcij

Model lahko izbere funkcijo med orodji, ki jih opiše aplikacija, in ustvari njene argumente. Aplikacija izvede funkcijo, vrne rezultat z ustreznim klicem orodja, model pa ga uporabi v naslednjem odgovoru. Proizvajalčev primer pokaže ta pogovorni cikel, vključno s prejšnjo uporabo orodij in novim uporabnikovim vprašanjem. Predlagana poizvedba se zato razlikuje od podatkov, ki jih poizvedba dejansko vrne.

Praktični pomočnik lahko najprej izlušči vprašanje iz dokumenta, nato pa s podano referenčno funkcijo pridobi manjkajoči pogoj. Funkcijo jasno opišite, vključite njene zahtevane argumente in vrnjeni rezultat ohranite povezan z izvorno operacijo. JSON ureja besedilni rezultat; klicanje funkcij zahteva povezano operacijo in ne izvaja kode ali bere podatkovne zbirke prikrito.

Vsebinske omejitve

Dokumentirana vizualna zmogljivost bere slike; ne ustvarja jih. Smernice za pomočnika v objavljeni kartici ta model razlikujejo tudi od prepisovanja zvoka in videa, zato je treba za govorno ali video vprašanje ustrezno vsebino podati skozi primeren ločen pripravljalni korak. Spletni dostop in zunanja dejanja prav tako zagotavljajo povezana orodja, ne sam model za besedilo in slike.

Kontekst 128k zadeva vhod naloge in ustvarjeni pogovor, primer ustvarjanja s 512 žetoni v kartici pa je samo primer nastavitve. Pregledani viri ne določajo ločene stroge zmogljivosti dolžine odgovora. Ohranite konkretno različico Instruct 2503, njeno obliko pogovora in zahtevano razlago, zapis ali izdelek s kodo.

Praktična naloga

Praktična naloga

Tehnični primer v angleščini

Trace an accumulator function

Trace this Python function on [3, -1, 4]: 'def running_sum(xs):
    total = 0
    out = []
    for x in xs:
        total += x
        out.append(total)
    return out'. Give a row for each iteration showing x, total and out, then the return value. Explain in one sentence why out differs from doubling each element.

Pričakovani rezultat

A three-row state trace, the final list and one sentence distinguishing cumulative addition from elementwise multiplication.

Preverjanje rezultata

Each row uses the prior total, including the negative input, rather than restarting the accumulator.
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions mistralai/mistral-small-3.1-24b-instruct

mistralai/mistral-small-3.1-24b-instruct

Mistral /mistralai/mistral-small-3.1-24b-instruct

Začetek

Mistral Small 3.1 24B Instruct 2503 liniji Small 3 dodaja razumevanje slik in kontekst 128k po navedbah proizvajalca. V samostojni različici, prilagojeni sledenju navodilom, združuje večjezično besedilo, programiranje in matematično sklepanje s sistemskimi navodili, JSON in izvornim klicanjem funkcij.

Dovoljeni vhodi
Besedilo
Rezultati
Besedilo

Na voljo v Ailoot · vhodi in metode

Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
Vhod
text
Izhod
text
Izhodni format
json ali SSE
PoljeVrstaZahtevaVrednosti in omejitvePrivzeto
PoljemodelVrstastringZahtevaObveznoVrednosti in omejitve
mistralai/mistral-small-3.1-24b-instruct
Privzeto—
PoljemessagesVrstamessage[]ZahtevaObveznoVrednosti in omejitve
Najmanjše število elementov: 1
Privzeto—
Poljemessages[].roleVrstastringZahtevaObveznoVrednosti in omejitve
Primeri: system, user, assistant, tool, function
Pogoji: Te vloge so izrecno predstavljene s tipi združljivosti v izvorni kodi; natančen nabor vlog ostaja odvisen od modela.
Odvisno od modela
Privzeto—
Poljemessages[].contentVrstastring|content_part[]|nullZahtevaIzbirnoVrednosti in omejitvePrivzeto—
Poljemessages[].tool_callsVrstatool_call[]ZahtevaIzbirnoVrednosti in omejitvePrivzeto—
Poljemessages[].tool_call_idVrstastringZahtevaIzbirnoVrednosti in omejitve
Velja, ko: role=tool; uporabite dejansko vrnjeni ID
Privzeto—
Poljemessages[].nameVrstastringZahtevaIzbirnoVrednosti in omejitvePrivzeto—
Poljemessages[].reasoning_contentVrstastringZahtevaIzbirnoVrednosti in omejitve
Velja, ko: Pošljite nazaj dejansko vrnjeno sklepanje, kadar ga ta model uporablja
Privzeto—
Poljemessages[].reasoning_detailsVrstaobject|arrayZahtevaIzbirnoVrednosti in omejitve
Odvisno od modela
Privzeto—
Poljemax_tokensVrstaintegerZahtevaIzbirnoVrednosti in omejitve
Najmanj: 1
Odvisno od modela
Privzeto—
Poljemax_completion_tokensVrstaintegerZahtevaIzbirnoVrednosti in omejitve
Najmanj: 1
Odvisno od modela
Privzeto—
PoljestreamVrstabooleanZahtevaIzbirnoVrednosti in omejitvePrivzetofalse
Poljestream_options.include_usageVrstabooleanZahtevaIzbirnoVrednosti in omejitve
Odvisno od modela
Privzeto—
PoljetemperatureVrstanumberZahtevaIzbirnoVrednosti in omejitve
Odvisno od modela
Privzeto—
Poljetop_pVrstanumberZahtevaIzbirnoVrednosti in omejitve
Odvisno od modela
Privzeto—
PoljestopVrstastring|string[]ZahtevaIzbirnoVrednosti in omejitve
Odvisno od modela
Privzeto—
PoljetoolsVrstafunction_tool[]ZahtevaIzbirnoVrednosti in omejitve
Odvisno od modela
Privzeto—
Poljetools[].typeVrstastringZahtevaIzbirnoVrednosti in omejitve
function
Odvisno od modela
Privzeto—
Poljetools[].function.nameVrstastringZahtevaObveznoVrednosti in omejitve
Velja, ko: podano je funkcijsko orodje
Privzeto—
Poljetools[].function.descriptionVrstastringZahtevaIzbirnoVrednosti in omejitvePrivzeto—
Poljetools[].function.parametersVrstaJSON_schemaZahtevaIzbirnoVrednosti in omejitvePrivzeto—
Poljetool_choiceVrstastring|objectZahtevaIzbirnoVrednosti in omejitve
Odvisno od modela
Privzeto—
Poljeparallel_tool_callsVrstabooleanZahtevaIzbirnoVrednosti in omejitve
Odvisno od modela
Privzeto—
Poljeresponse_formatVrstaobjectZahtevaIzbirnoVrednosti in omejitve
Odvisno od modela
Privzeto—
Poljereasoning_effortVrstastringZahtevaIzbirnoVrednosti in omejitve
Odvisno od modela
Privzeto—
PoljereasoningVrstaobjectZahtevaIzbirnoVrednosti in omejitve
Odvisno od modela
Privzeto—
Poljeservice_tierVrstastringZahtevaIzbirnoVrednosti in omejitve
Odvisno od modela
Privzeto—
PoljeinstructionsVrstastringZahtevaIzbirnoVrednosti in omejitve
Polje združljivosti
Privzeto—
PoljefunctionsVrstafunction[]ZahtevaIzbirnoVrednosti in omejitve
Odvisno od modela
Privzeto—
Poljefunction_callVrstastring|objectZahtevaIzbirnoVrednosti in omejitve
Odvisno od modela
Privzeto—
Poljeprompt_cache_optionsVrstaobjectZahtevaIzbirnoVrednosti in omejitve
Odvisno od modela
Privzeto—
PoljemodalitiesVrstastring[]ZahtevaIzbirnoVrednosti in omejitve
text
Privzeto—
PoljeproviderVrstaobjectZahtevaIzbirnoVrednosti in omejitve
Pogoji: provider.options je na tej besedilni poti Ultra zavrnjen
Privzeto—
Poljecache_control.ttlVrstastringZahtevaIzbirnoVrednosti in omejitve
Pogoji: 1h je zavrnjen na dejanskih mestih za predpomnjenje pozivov
Privzeto—
Kombinacije vhodnih gradiv

Besedilo · Besedilo UTF8

messages[].content

Parametri in življenjski cikel metode
ParameterSpecifikacija
Parametercontent_typeSpecifikacijaapplication/json
ParameterrequiredSpecifikacijamodel, messages
Parametermaterial_typesSpecifikacijatext
ParametermessagesSpecifikacijapolje sporočil s strukturo role/content
Parameterfile_materialSpecifikacijadejanski dokument UTF-8 je vstavljen kot dobesedno besedilo; ID datoteke se ne izpeljuje
Parameteroptional_controlsSpecifikacijastream, temperature, top_p, stop, max_tokens, max_completion_tokens, reasoning, response_format, tools, tool_choice
Parametercontrol_scopeSpecifikacijaodvisno od modela; uporabniška funkcijska orodja se razlikujejo od orodij, ki jih izvaja storitev
Parameteroutput_modalitiesSpecifikacijatext
Parameterhosted_operationsSpecifikacijafalse
Parametermultimodal_input_bindingSpecifikacijanull

Življenjski cikel: synchronous_or_streamed

Pošljite natančen ID modela skupaj z messages.

Dolžina konteksta ni zgornja meja izhoda.

Besedilna datoteka lahko poda dobesedno besedilo; slikovni, zvočni vhodi in vhodi z datotečnimi objekti potrebujejo natančno vezavo.

Cenik

Tarifni podatki ne dodajajo možnosti zahteve. Podprti parametri so navedeni pri izbrani metodi.

Hitri način
Standardna tarifa Ko je izbran hitri način
Način flex
Standardna tarifa Ko je izbran način flex
Najvišja raven razmišljanja
Standardna tarifa Ko najvišja raven razmišljanja uporablja privzeto prilagoditev (default)

Cene Ailoot

Cene po nastavitvah

Vsak strošek povežite s prikazanimi pogoji. Za vsak nabor alternativnih nastavitev uporabite eno ceno.

NastavitevCenovna lestvicaŽetonov konteksta več kotŽetonov konteksta do vključnoStrošek
NastavitevOsnovne cene za žetoneCenovna lestvicaOsnovna cenaŽetonov konteksta več kot—Žetonov konteksta do vključnoBrez zgornje mejeStrošek
Vhod · Vhodni žetoni $0.0011 / 1K žetonov
Izhod · Izhodni žetoni $0.00111 / 1K žetonov
Vhod · Branje predpomnilnika $0 / 1K žetonov
Vhod · Zapis v predpomnilnik $0 / 1K žetonov
Vhod · Zapis v predpomnilnik, 1 ura — / 1K žetonov
NastavitevRazred 1 glede na dolžino zahteveCenovna lestvica—Žetonov konteksta več kot0Žetonov konteksta do vključnoBrez zgornje mejeStrošek
Vhod · Vhodni žetoni $0.0011 / 1K žetonov
Izhod · Izhodni žetoni $0.00111 / 1K žetonov
Vhod · Branje predpomnilnika $0 / 1K žetonov
Vhod · Zapis v predpomnilnik $0 / 1K žetonov
Vhod · Zapis v predpomnilnik, 1 ura — / 1K žetonov

Ailoot pred zahtevo rezervira ocenjeni znesek. Po rezultatu obračuna končni strošek na podlagi izmerjene porabe. Obračun pretakanja uporablja končni zapis porabe. Kako delujeta rezervacija in obračun →

Primeri zahtev

Ailoot Ultra · OpenAI Chat

curlPython SDKTok Python
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "mistralai/mistral-small-3.1-24b-instruct", "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='mistralai/mistral-small-3.1-24b-instruct',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='mistralai/mistral-small-3.1-24b-instruct',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")

Prejmi in shrani rezultate

Ailoot Ultra · OpenAI Chat

json ali SSE

Ohrani vse dokončane rezultate

Shranite vsak v celoti vrnjen odgovor, datoteko in del vsebine.

Ohranite vsako možnost odgovora ter njeno vsebino, klice orodij in sklepanje. V SSE sestavite delne spremembe po indeksu možnosti/orodja ter ohranite končni razlog zaključka in podatke o porabi.

Če je treba preveriti izvirni odgovor

Ohranite ID zahtev/odgovorov in glave. Splošni URL za pridobivanje besedilne naloge ni podan.

Polja odgovora
PoljeVrsta
Poljechoices[].indexVrstainteger
Poljechoices[].message.contentVrstastring|null
Poljechoices[].message.tool_callsVrstatool_call[]
Poljechoices[].message.reasoning_contentVrstastring
Poljechoices[].message.reasoning_detailsVrstaobject|array
Poljechoices[].finish_reasonVrstastring|null
PoljeusageVrstaobject
Napake in naslednji koraki
OdgovorPogojNaslednji korak
Odgovor400 · invalid_request_errorPogojNeveljavna obvezna polja, predstavitev gradiva ali vrednost parametraNaslednji korakPred novo zahtevo za ustvarjanje popravite navedena polja.

Druga imena

Druga imena modelov

Ailoot Ultra mistralai/mistral-small-3.1-24b-instruct

Druga imena poti metod

Uporabite zgoraj navedene poti metod.

Povezani ID-ji za klic

mistralai/mistral-small-3.1-24b-instruct

Ailoot Ultra · Anthropic Messages POST /v1/messages mistralai/mistral-small-3.1-24b-instruct

mistralai/mistral-small-3.1-24b-instruct

Mistral /mistralai/mistral-small-3.1-24b-instruct

Začetek

Mistral Small 3.1 24B Instruct 2503 liniji Small 3 dodaja razumevanje slik in kontekst 128k po navedbah proizvajalca. V samostojni različici, prilagojeni sledenju navodilom, združuje večjezično besedilo, programiranje in matematično sklepanje s sistemskimi navodili, JSON in izvornim klicanjem funkcij.

Dovoljeni vhodi
Besedilo
Rezultati
json · sse

Na voljo v Ailoot · vhodi in metode

Ailoot Ultra · Anthropic Messages POST /v1/messages
Vhod
text
Izhod
json, sse
Izhodni format
JSON ali SSE
PoljeVrstaZahtevaVrednosti in omejitvePrivzeto
PoljemodelVrstastringZahtevaObveznoVrednosti in omejitve
mistralai/mistral-small-3.1-24b-instruct
Privzeto—
PoljemessagesVrstamessage[]ZahtevaObveznoVrednosti in omejitvePrivzeto—
Poljemessages[].roleVrstastringZahtevaObveznoVrednosti in omejitve
user, assistant
Privzeto—
Poljemessages[].contentVrstastringZahtevaObveznoVrednosti in omejitvePrivzeto—
Poljemax_tokensVrstaintegerZahtevaObveznoVrednosti in omejitvePrivzeto—
PoljestreamVrstabooleanZahtevaIzbirnoVrednosti in omejitvePrivzetofalse
Kombinacije vhodnih gradiv

Besedilo · Besedilo UTF-8

niz messages[].content

Parametri in življenjski cikel metode
ParameterSpecifikacija
Parametercontent_typeSpecifikacijaapplication/json
ParameterrequiredSpecifikacijamodel, messages, max_tokens
Parameteroptional_controlsSpecifikacijastream
Parametermaterial_typesSpecifikacijatext
Parametertext_file_materialSpecifikacijaPreberite dejanski dokument UTF-8 in njegovo besedilo vstavite v navedeni vhodni niz ali niz vsebine sporočila.

Življenjski cikel: synchronous_or_streamed

Cenik

Tarifni podatki ne dodajajo možnosti zahteve. Podprti parametri so navedeni pri izbrani metodi.

Hitri način
Standardna tarifa Ko je izbran hitri način
Način flex
Standardna tarifa Ko je izbran način flex
Najvišja raven razmišljanja
Standardna tarifa Ko najvišja raven razmišljanja uporablja privzeto prilagoditev (default)

Cene Ailoot

Cene po nastavitvah

Vsak strošek povežite s prikazanimi pogoji. Za vsak nabor alternativnih nastavitev uporabite eno ceno.

NastavitevCenovna lestvicaŽetonov konteksta več kotŽetonov konteksta do vključnoStrošek
NastavitevOsnovne cene za žetoneCenovna lestvicaOsnovna cenaŽetonov konteksta več kot—Žetonov konteksta do vključnoBrez zgornje mejeStrošek
Vhod · Vhodni žetoni $0.0011 / 1K žetonov
Izhod · Izhodni žetoni $0.00111 / 1K žetonov
Vhod · Branje predpomnilnika $0 / 1K žetonov
Vhod · Zapis v predpomnilnik $0 / 1K žetonov
Vhod · Zapis v predpomnilnik, 1 ura — / 1K žetonov
NastavitevRazred 1 glede na dolžino zahteveCenovna lestvica—Žetonov konteksta več kot0Žetonov konteksta do vključnoBrez zgornje mejeStrošek
Vhod · Vhodni žetoni $0.0011 / 1K žetonov
Izhod · Izhodni žetoni $0.00111 / 1K žetonov
Vhod · Branje predpomnilnika $0 / 1K žetonov
Vhod · Zapis v predpomnilnik $0 / 1K žetonov
Vhod · Zapis v predpomnilnik, 1 ura — / 1K žetonov

Ailoot pred zahtevo rezervira ocenjeni znesek. Po rezultatu obračuna končni strošek na podlagi izmerjene porabe. Obračun pretakanja uporablja končni zapis porabe. Kako delujeta rezervacija in obračun →

Primeri zahtev

Ailoot Ultra · Anthropic Messages

Popolno minimalno telo zahteve JSONcurl · uporabite svoj dokument UTF-8Python · shranite celoten rezultat
{
  "model": "mistralai/mistral-small-3.1-24b-instruct",
  "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': 'mistralai/mistral-small-3.1-24b-instruct', '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': 'mistralai/mistral-small-3.1-24b-instruct', '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))

Prejmi in shrani rezultate

Ailoot Ultra · Anthropic Messages

JSON ali SSE

Ohrani vse dokončane rezultate

Shranite vsak v celoti vrnjen odgovor, datoteko in del vsebine.

Ohranite vse vsebinske bloke, podpise sklepanja in dejanske ID uporabe orodij. Sestavite vse delne spremembe blokov SSE; prvi besedilni blok ni celoten izhod.

Če je treba preveriti izvirni odgovor

Ohranite ID zahtev/odgovorov in glave. Splošni URL za pridobivanje besedilne naloge ni podan.

Polja odgovora
PoljeVrsta
PoljeidVrstastring
PoljemodelVrstastring
Poljecontent[]Vrstatext|thinking|tool_use|other content block
Poljestop_reasonVrstastring|null
PoljeusageVrstaobject
Napake in naslednji koraki
OdgovorPogojNaslednji korak
Odgovor400 · invalid_request_errorPogojNeveljavna obvezna polja, predstavitev gradiva ali vrednost parametraNaslednji korakPred novo zahtevo za ustvarjanje popravite navedena polja.

Druga imena

Druga imena modelov

Ailoot Ultra mistralai/mistral-small-3.1-24b-instruct

Druga imena poti metod

Uporabite zgoraj navedene poti metod.

Povezani ID-ji za klic

mistralai/mistral-small-3.1-24b-instruct

FAQ · Mistral: Mistral Small 3.1 24B
Kateri vhodi in rezultati so na voljo?

POST /v1/chat/completions · mistralai/mistral-small-3.1-24b-instruct: text → text

POST /v1/messages · mistralai/mistral-small-3.1-24b-instruct: text → json, sse

Katera polja uporablja zahteva?

POST /v1/chat/completions · mistralai/mistral-small-3.1-24b-instruct: model, messages, stream, modalities, provider

POST /v1/messages · mistralai/mistral-small-3.1-24b-instruct: model, messages, max_tokens, stream

Katere omejitve veljajo?

POST /v1/chat/completions · mistralai/mistral-small-3.1-24b-instruct: messages.min_items: 1

Več podrobnosti

Ailoot povežite s Claude Code, OpenCode, Hermes ali svojo aplikacijo.

Podjetje in njegov portfelj projektov

Podjetje in njegov portfelj projektov: milijoni strank; mesečna prodaja v milijardah.

Žetone kupujte s popustom.

Naročniški popust za redno delo. Promocijske kode prinesejo do 50% popusta na nakup žetonov.

Naročnina
Za redne zahteve izberite paket s popustom.
Promocijska koda do 50%
Kodo vnesite ob nakupu. Cena se preračuna po veljavni akciji.
Poraba v zgodovini
Za vsako zahtevo se shranijo model, žetoni in znesek.

Izberite naročnino · Oglejte si cene modelov

API povežite z izdelkom, ki ga prodajate.

SaaS, aplikacije in boti po ponudbi in licenčni pogodbi Ailoot. Za nadaljnjo prodajo zaprosite za preprodajno licenco.

Komercialna aplikacija
Ustvarjanje besedila, slik, videa in zvoka vključite v plačljive funkcije svoje storitve.
Licenca za preprodajalca
Pošljite opis projekta in shemo dostopa. Zahtevajte pisne pogoje uporabe in nadaljnje prodaje.
Dokumenti na strani
Ponudba, licenčna pogodba in politika obdelave podatkov so dostopne pred povezavo.

Zaprosite za preprodajno licenco · Ponudba in licenčna pogodba