Source: https://ailoot.ai/models/nb/mistralai-mistral-small-24b-instruct-2501/
Canonical: https://ailoot.ai/models/nb/mistralai-mistral-small-24b-instruct-2501/
Language: nb

# Mistral: Mistral Small 3

[Markdown](https://ailoot.ai/models/nb/mistralai-mistral-small-24b-instruct-2501/index.md) · [JSON](https://ailoot.ai/models/nb/mistralai-mistral-small-24b-instruct-2501/facts.json)

## [Mistral: Mistral Small 3](https://ailoot.ai/models/nb/mistralai-mistral-small-24b-instruct-2501/)

Mistral Small 3 Instruct 2501 er en tekstmodell med 24 milliarder parametere for samtaleinstruksjoner, strukturerte uttrekk og verktøystøttede applikasjoner. Den gir en kontekst på 32k ifølge produsenten, flerspråklige svar, støtte for systeminstruksjoner, JSON og innebygde funksjonskall i en egen tekstbasert utgivelse.

- [**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `mistralai/mistral-small-24b-instruct-2501`](https://ailoot.ai/models/nb/mistralai-mistral-small-24b-instruct-2501/#method-0)
- [**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `mistralai/mistral-small-24b-instruct-2501`](https://ailoot.ai/models/nb/mistralai-mistral-small-24b-instruct-2501/#method-1)

Om modellen

Denne beskrivelsen dekker modellens funksjoner. Tilgjengelige inndata, utdata og alternativer i Ailoot er oppført nedenfor for den valgte metoden.

Mistral Small 3 Instruct 2501 er den instruksjonstilpassede utgivelsen av Mistral Small 3 med 24 milliarder parametere. Den er finjustert fra den separat navngitte modellen Small 24B Base 2501. Produsenten posisjonerer den for raskt reagerende samtaleassistanse, funksjonskall og fagspesifikk tilpasning, med tekst både som inndata og som generert resultat.

Kjernefunksjoner og treningsforskjell

Modellkortet dokumenterer flerspråklig støtte, samtale- og resonneringsfunksjoner, innebygde funksjonskall, JSON-utdata og etterlevelse av systeminstruksjoner. Kontekstvinduet er på 32k, og den bruker en Tekken-tokenizer med et vokabular merket 131k. Kontekstbetegnelsen gjelder teksten som beholdes for oppgaven, mens vokabularbetegnelsen beskriver tokenisering; de er forskjellige spesifikasjoner.

Produsenten lister språk som engelsk, fransk, tysk, spansk, italiensk, kinesisk, japansk, koreansk, portugisisk, nederlandsk og polsk, med russisk også inkludert i språkmetadataene til det utgitte modellkortet. Definer målspråket og eventuell terminologi som skal forbli uendret. En oversatt forklaring kan beholde identifikatorer, navn og enheter samtidig som den omkringliggende teksten tilpasses leseren.

Utgivelseskunngjøringen sier at Small 3 ikke er trent med forsterkningslæring eller syntetiske data, og skiller forhåndstrente og instruksjonstilpassede modellkontrollpunkter. Den beskriver modellen som et grunnlag som kan tilpasses videre, fremfor et hybridkontrollpunkt med de senere resonneringskontrollene til Small 4. Denne oppføringen er Instruct 2501-utgaven for å følge en samtaleoppgave.

Samtaleoppgaver og strukturerte oppgaver

For en kundestøtteassistent gir du brukerens spørsmål, relevant referansemateriale og svarreglene. Be om handlingen som svarer på spørsmålet, og betingelsen den gjelder under. Praktiske utdata kan skille et kortfattet svar fra uttrukne felter applikasjonen trenger for neste steg, fremfor å blande dem i en ustrukturert forklaring.

For klassifisering gir du de tillatte etikettene og forskjellene mellom dem. For uttrekk navngir du feltene, forventede typer og representasjon av manglende informasjon. En datapost kan inneholde problemkategorien, en identifikator kopiert fra meldingen og en kort oppsummering av den ønskede handlingen. JSON organiserer resultatet, mens feltutforming og tolkningsregler forblir en del av den oppgitte oppgaven.

For en kodeforklaring inkluderer du funksjonen, relevante deklarasjoner og konkrete inndata. Spør hvilket forløp gjennom koden som bestemmer resultatet. For en matematisk forklaring definerer du variabler og antakelser og identifiserer uttrykket eller påstanden som skal fastslås. Disse tekstbaserte oppgavene kan returnere en metode, en forklaring og det endelige artefaktet uten å anta at modellen selv kjører koden eller en ekstern beregning.

Systeminstruksjoner og anbefalte innstillinger

Modellkortet anbefaler en systeminstruksjon tilpasset den tiltenkte assistenten og en relativt lav temperatur, som 0.15. Bruk systeminstruksjonen til å definere rollen, stilen og svarreglene, mens brukermeldingen inneholder det faktiske problemet eller kildematerialet. Hold siterte instruksjoner inne i et dokument atskilt fra applikasjonens instruksjon om hva som skal gjøres med dokumentet.

For en hverdagsassistent angir du om resultatet skal være et kort svar, en strukturert datapost eller en lengre forklaring. Hvis et svar skal tolkes maskinelt, ber du om dataposten separat fra eventuell løpende tekst. I en gjentatt dokumentflyt bevarer du kildeidentifikatoren ved hvert resultat slik at applikasjonen kan returnere riktig materiale til brukeren.

Funksjonskall og spesialisering

Modellen kan velge en beskrevet funksjon og produsere argumentene. Applikasjonen utfører operasjonen og returnerer resultatet med det tilhørende verktøykallet, og deretter kan neste svar bruke informasjonen. Eksemplet i modellkortet viser en samtale med tidligere verktøybruk etterfulgt av et nytt spørsmål. Dette gir assistenten en måte å be om informasjon fra tilknyttede verktøy på uten å behandle et foreslått kall som et fullført oppslag.

Beskriv formålet med hver funksjon og de påkrevde verdiene tydelig. En oppslagsoppgave kan navngi informasjonen som trengs, og returnere det faktiske verktøyresultatet til samtalen; en tekstbehandlingsfunksjon kan gi en transformert passasje for neste svar. Hold verktøysettet knyttet til den aktuelle prosessen, og bevar koblingen mellom den foreslåtte operasjonen og resultatet.

Produsenten beskriver også finjustering for fagspesialisering. Denne prosessen endrer en modell for et definert domene; å gi et dokument i én samtale er derimot kildebetinging for den oppgaven. Gi domenematerialet og svarkravene den bestemte assistenten trenger, fremfor å anta at en tilpasning allerede er utført.

Kontekst og faktiske begrensninger

Small 3 2501 er en modell som bare behandler tekst, med en kontekst på 32k. Synsfunksjonen og konteksten på 128k introdusert i Small 3.1 tilhører den senere utgivelsen, og hybridmodusene til Small 4 skal tilsvarende ikke overføres hit. Det relevante innholdet i et bilde, et lydopptak eller en video må klargjøres gjennom en annen komponent før denne tekstoppgaven.

Genereringsinnstillingene på 256 og 512 tokener i modellkortet er brukseksempler, ikke separate maksimale utdatakapasiteter. Hold den konkrete Instruct 2501-identiteten, tokenizeren og det ønskede resultatet eksplisitte. Det nyttige endelige artefaktet er svaret, JSON-posten eller den foreslåtte koden der betydningen og formatet samsvarer med den opprinnelige skriftlige oppgaven.

Praktisk oppgave

### Praktisk oppgave

Teknisk eksempel på engelsk

```
Prepare a reference-grounded support answer

Answer this customer question using only the reference: 'Can I change the pickup location after the parcel is handed to the carrier?' Reference: 'Before handover, support may change the pickup location. After handover, the recipient must request a change from the carrier; availability depends on its route.' Return a concise reply and the condition supporting it.
```

#### Forventet resultat

```
A short customer reply plus the reference condition that determines the next contact.
```

#### Kontroller resultatet

```
The reply directs the handed-over parcel's request to the carrier and does not promise that a change is available.
```

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `mistralai/mistral-small-24b-instruct-2501`

[`mistralai/mistral-small-24b-instruct-2501`](https://ailoot.ai/models/nb/#m=mistralai%2Fmistral-small-24b-instruct-2501&route=Ultra&caller=mistralai%2Fmistral-small-24b-instruct-2501&fmt=chat)

Mistral /`mistralai/mistral-small-24b-instruct-2501`

### Start

Mistral Small 3 Instruct 2501 er en tekstmodell med 24 milliarder parametere for samtaleinstruksjoner, strukturerte uttrekk og verktøystøttede applikasjoner. Den gir en kontekst på 32k ifølge produsenten, flerspråklige svar, støtte for systeminstruksjoner, JSON og innebygde funksjonskall i en egen tekstbasert utgivelse.

Godkjente inndata

Tekst

Resultater

Tekst

### Tilgjengelig i Ailoot · inndata & metoder

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions`

Inndatatyper

`text`

Utdatatyper

`text`

Utdataformat

json eller SSE

| Felt | Type | Krav | Verdier & grenser | Standard |
| --- | --- | --- | --- | --- |
| Felt`model` | Type`string` | KravPåkrevd | Verdier & grenser mistralai/mistral-small-24b-instruct-2501 | Standard— |
| Felt`messages` | Type`message[]` | KravPåkrevd | Verdier & grenser Minste antall elementer: 1 | Standard— |
| Felt`messages[].role` | Type`string` | KravPåkrevd | Verdier & grenser Eksempler: system, user, assistant, tool, function Vilkår: Disse rollene representeres eksplisitt av kompatibilitetstyper i kildekoden; det eksakte rollesettet for modellen er fortsatt modellspesifikt. Avhenger av modellen | Standard— |
| Felt`messages[].content` | Type`string\|content_part[]\|null` | KravValgfritt | Verdier & grenser | Standard— |
| Felt`messages[].tool_calls` | Type`tool_call[]` | KravValgfritt | Verdier & grenser | Standard— |
| Felt`messages[].tool_call_id` | Type`string` | KravValgfritt | Verdier & grenser Gjelder når: role=tool; bruk faktisk returnert ID | Standard— |
| Felt`messages[].name` | Type`string` | KravValgfritt | Verdier & grenser | Standard— |
| Felt`messages[].reasoning_content` | Type`string` | KravValgfritt | Verdier & grenser Gjelder når: Send den faktisk returnerte resonneringen tilbake der denne modellen bruker den | Standard— |
| Felt`messages[].reasoning_details` | Type`object\|array` | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
| Felt`max_tokens` | Type`integer` | KravValgfritt | Verdier & grenser Minimum: 1 Avhenger av modellen | Standard— |
| Felt`max_completion_tokens` | Type`integer` | KravValgfritt | Verdier & grenser Minimum: 1 Avhenger av modellen | Standard— |
| Felt`stream` | Type`boolean` | KravValgfritt | Verdier & grenser | Standardfalse |
| Felt`stream_options.include_usage` | Type`boolean` | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
| Felt`temperature` | Type`number` | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
| Felt`top_p` | Type`number` | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
| Felt`stop` | Type`string\|string[]` | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
| Felt`tools` | Type`function_tool[]` | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
| Felt`tools[].type` | Type`string` | KravValgfritt | Verdier & grenser function Avhenger av modellen | Standard— |
| Felt`tools[].function.name` | Type`string` | KravPåkrevd | Verdier & grenser Gjelder når: funksjonsverktøy oppgitt | Standard— |
| Felt`tools[].function.description` | Type`string` | KravValgfritt | Verdier & grenser | Standard— |
| Felt`tools[].function.parameters` | Type`JSON_schema` | KravValgfritt | Verdier & grenser | Standard— |
| Felt`tool_choice` | Type`string\|object` | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
| Felt`parallel_tool_calls` | Type`boolean` | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
| Felt`response_format` | Type`object` | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
| Felt`reasoning_effort` | Type`string` | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
| Felt`reasoning` | Type`object` | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
| Felt`service_tier` | Type`string` | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
| Felt`instructions` | Type`string` | KravValgfritt | Verdier & grenser Kompatibilitetsfelt | Standard— |
| Felt`functions` | Type`function[]` | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
| Felt`function_call` | Type`string\|object` | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
| Felt`prompt_cache_options` | Type`object` | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
| Felt`modalities` | Type`string[]` | KravValgfritt | Verdier & grenser text | Standard— |
| Felt`provider` | Type`object` | KravValgfritt | Verdier & grenser Vilkår: provider.options avvises på denne Ultra-tekstruten | Standard— |
| Felt`cache_control.ttl` | Type`string` | KravValgfritt | Verdier & grenser Vilkår: 1h avvises på faktiske steder for mellomlagring av ledetekster | Standard— |

Kombinasjoner av inngående materialer

**Tekst** · UTF8-tekst

`messages[].content`

Metodeparametere og livssyklus

| Parameter | Avtale |
| --- | --- |
| Parameter`content_type` | Avtaleapplication/json |
| Parameter`required` | Avtalemodel, messages |
| Parameter`material_types` | Avtaletext |
| Parameter`messages` | Avtalemeldingstabell med role/content-struktur |
| Parameter`file_material` | Avtalefaktisk UTF-8-dokument satt inn som bokstavelig tekst; ingen fil-ID utledes |
| Parameter`optional_controls` | Avtalestream, temperature, top\_p, stop, max\_tokens, max\_completion\_tokens, reasoning, response\_format, tools, tool\_choice |
| Parameter`control_scope` | Avtalemodellspesifikt; brukerens funksjonsverktøy skiller seg fra driftede verktøy |
| Parameter`output_modalities` | Avtaletext |
| Parameter`hosted_operations` | Avtalefalse |
| Parameter`multimodal_input_binding` | Avtalenull |

Livssyklus: `synchronous_or_streamed`

Send eksakt modell-ID sammen med messages.

Kontekstlengde er ikke en outputgrense.

En tekstfil kan levere bokstavelig tekst; bilde-, lyd- og filobjektinput trenger eksakt binding.

### Priser

Tariffopplysninger legger ikke til forespørselsvalg. Støttede parametere står ved den valgte metoden.

Hurtigmodus

Standardpris Når hurtigmodus er valgt

Flex-modus

Standardpris Når flex-modus er valgt

Maksimal resonneringsinnsats

Standardpris Når justeringen «default» brukes for maksimal resonneringsinnsats

#### Ailoot-satser

#### Priser etter konfigurasjon

Knytt hver kostnad til de viste vilkårene. Bruk én sats for hvert sett med alternative konfigurasjoner.

| Konfigurasjon | Prisplan | Konteksttokener, mer enn | Konteksttokener, opptil og med | Kostnad |
| --- | --- | --- | --- | --- |
| KonfigurasjonGrunnpriser for tokener | PrisplanGrunnsats | Konteksttokener, mer enn— | Konteksttokener, opptil og medIngen øvre grense | Kostnad Inndata · Inngående tokener **$0.0001** / 1K tokener Utdata · Utgående tokener **$0.00016** / 1K tokener Inndata · Lesing fra hurtigbuffer **—** / 1K tokener Inndata · Skriving til hurtigbuffer **—** / 1K tokener Inndata · Skriving til hurtigbuffer, 1 time **—** / 1K tokener |
| KonfigurasjonNivå 1 for forespørselslengde | Prisplan— | Konteksttokener, mer enn0 | Konteksttokener, opptil og medIngen øvre grense | Kostnad Inndata · Inngående tokener **$0.0001** / 1K tokener Utdata · Utgående tokener **$0.00016** / 1K tokener Inndata · Lesing fra hurtigbuffer **—** / 1K tokener Inndata · Skriving til hurtigbuffer **—** / 1K tokener Inndata · Skriving til hurtigbuffer, 1 time **—** / 1K tokener |

Ailoot reserverer et estimert beløp før en forespørsel. Etter resultatet gjøres det endelige beløpet opp basert på målt forbruk. Oppgjør for strømming bruker den endelige forbruksposten. [Slik fungerer reservasjon og oppgjør →](https://ailoot.ai/docs/nb/billing/reserve/)

### Eksempelforespørsler

#### Ailoot Ultra · OpenAI Chat

curlPython SDKPython-strømming

```bash
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-24b-instruct-2501", "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
```

```python
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-24b-instruct-2501',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"))
```

```python
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-24b-instruct-2501',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")
```

### Motta og lagre resultater

#### Ailoot Ultra · OpenAI Chat

json eller SSE

##### Behold alle ferdige resultater

Behold alle fullstendige returnerte svar, filer og innholdsdeler.

Behold hvert svaralternativ med innhold, verktøykall og resonnering. Sett sammen endringer i SSE etter svaralternativets/verktøyets indeks, og behold endelig avslutningsgrunn og bruksdata.

##### Hvis det opprinnelige svaret må kontrolleres

Behold forespørsels-/svar-ID-er og headere. Ingen generell URL for henting av tekstjobber oppgis.

Svarfelter

| Felt | Type |
| --- | --- |
| Felt`choices[].index` | Typeinteger |
| Felt`choices[].message.content` | Typestring\|null |
| Felt`choices[].message.tool_calls` | Typetool\_call\[\] |
| Felt`choices[].message.reasoning_content` | Typestring |
| Felt`choices[].message.reasoning_details` | Typeobject\|array |
| Felt`choices[].finish_reason` | Typestring\|null |
| Felt`usage` | Typeobject |

Feil og neste trinn

| Svar | Vilkår | Neste trinn |
| --- | --- | --- |
| Svar400 · `invalid_request_error` | VilkårUgyldige påkrevde felter, materialrepresentasjon eller parameterverdi | Neste trinnKorriger de angitte feltene før en ny opprettelsesforespørsel. |

### Aliaser

#### Modellaliaser

**Ailoot Ultra** [`mistralai/mistral-small-24b-instruct-2501`](https://ailoot.ai/models/nb/#m=mistralai%2Fmistral-small-24b-instruct-2501&route=Ultra&caller=mistralai%2Fmistral-small-24b-instruct-2501&fmt=chat)

#### Aliaser for metodestier

Bruk metodestiene som vises ovenfor.

#### Tilknyttede anroper-ID-er

[`mistralai/mistral-small-24b-instruct-2501`](https://ailoot.ai/models/nb/#m=mistralai%2Fmistral-small-24b-instruct-2501&route=Ultra&caller=mistralai%2Fmistral-small-24b-instruct-2501&fmt=chat)

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

[`mistralai/mistral-small-24b-instruct-2501`](https://ailoot.ai/models/nb/#m=mistralai%2Fmistral-small-24b-instruct-2501&route=Ultra&caller=mistralai%2Fmistral-small-24b-instruct-2501&fmt=messages)

Mistral /`mistralai/mistral-small-24b-instruct-2501`

### Start

Mistral Small 3 Instruct 2501 er en tekstmodell med 24 milliarder parametere for samtaleinstruksjoner, strukturerte uttrekk og verktøystøttede applikasjoner. Den gir en kontekst på 32k ifølge produsenten, flerspråklige svar, støtte for systeminstruksjoner, JSON og innebygde funksjonskall i en egen tekstbasert utgivelse.

Godkjente inndata

Tekst

Resultater

json · sse

### Tilgjengelig i Ailoot · inndata & metoder

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages`

Inndatatyper

`text`

Utdatatyper

`json`, `sse`

Utdataformat

JSON eller SSE

| Felt | Type | Krav | Verdier & grenser | Standard |
| --- | --- | --- | --- | --- |
| Felt`model` | Type`string` | KravPåkrevd | Verdier & grenser mistralai/mistral-small-24b-instruct-2501 | Standard— |
| Felt`messages` | Type`message[]` | KravPåkrevd | Verdier & grenser | Standard— |
| Felt`messages[].role` | Type`string` | KravPåkrevd | Verdier & grenser user, assistant | Standard— |
| Felt`messages[].content` | Type`string` | KravPåkrevd | Verdier & grenser | Standard— |
| Felt`max_tokens` | Type`integer` | KravPåkrevd | Verdier & grenser | Standard— |
| Felt`stream` | Type`boolean` | KravValgfritt | Verdier & grenser | Standardfalse |

Kombinasjoner av inngående materialer

**Tekst** · UTF-8-tekst

`messages[].content-streng`

Metodeparametere og livssyklus

| Parameter | Avtale |
| --- | --- |
| Parameter`content_type` | Avtaleapplication/json |
| Parameter`required` | Avtalemodel, messages, max\_tokens |
| Parameter`optional_controls` | Avtalestream |
| Parameter`material_types` | Avtaletext |
| Parameter`text_file_material` | AvtaleLes det faktiske UTF-8-dokumentet og legg teksten i den angitte input- eller meldingsinnholdsstrengen. |

Livssyklus: `synchronous_or_streamed`

### Priser

Tariffopplysninger legger ikke til forespørselsvalg. Støttede parametere står ved den valgte metoden.

Hurtigmodus

Standardpris Når hurtigmodus er valgt

Flex-modus

Standardpris Når flex-modus er valgt

Maksimal resonneringsinnsats

Standardpris Når justeringen «default» brukes for maksimal resonneringsinnsats

#### Ailoot-satser

#### Priser etter konfigurasjon

Knytt hver kostnad til de viste vilkårene. Bruk én sats for hvert sett med alternative konfigurasjoner.

| Konfigurasjon | Prisplan | Konteksttokener, mer enn | Konteksttokener, opptil og med | Kostnad |
| --- | --- | --- | --- | --- |
| KonfigurasjonGrunnpriser for tokener | PrisplanGrunnsats | Konteksttokener, mer enn— | Konteksttokener, opptil og medIngen øvre grense | Kostnad Inndata · Inngående tokener **$0.0001** / 1K tokener Utdata · Utgående tokener **$0.00016** / 1K tokener Inndata · Lesing fra hurtigbuffer **—** / 1K tokener Inndata · Skriving til hurtigbuffer **—** / 1K tokener Inndata · Skriving til hurtigbuffer, 1 time **—** / 1K tokener |
| KonfigurasjonNivå 1 for forespørselslengde | Prisplan— | Konteksttokener, mer enn0 | Konteksttokener, opptil og medIngen øvre grense | Kostnad Inndata · Inngående tokener **$0.0001** / 1K tokener Utdata · Utgående tokener **$0.00016** / 1K tokener Inndata · Lesing fra hurtigbuffer **—** / 1K tokener Inndata · Skriving til hurtigbuffer **—** / 1K tokener Inndata · Skriving til hurtigbuffer, 1 time **—** / 1K tokener |

Ailoot reserverer et estimert beløp før en forespørsel. Etter resultatet gjøres det endelige beløpet opp basert på målt forbruk. Oppgjør for strømming bruker den endelige forbruksposten. [Slik fungerer reservasjon og oppgjør →](https://ailoot.ai/docs/nb/billing/reserve/)

### Eksempelforespørsler

#### Ailoot Ultra · Anthropic Messages

Komplett, minimal JSON-kroppcurl · bruk UTF-8-dokumentet dittPython · lagre hele resultatet

```json
{
  "model": "mistralai/mistral-small-24b-instruct-2501",
  "max_tokens": 128,
  "messages": [
    {
      "role": "user",
      "content": "Summarize the incident report."
    }
  ],
  "stream": false
}
```

```bash
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-24b-instruct-2501', '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
```

```python
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-24b-instruct-2501', '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))
```

### Motta og lagre resultater

#### Ailoot Ultra · Anthropic Messages

JSON eller SSE

##### Behold alle ferdige resultater

Behold alle fullstendige returnerte svar, filer og innholdsdeler.

Behold alle innholdsblokker, resonneringssignaturer og faktiske ID-er for verktøybruk. Sett sammen alle SSE-blokkendringer; den første tekstblokken er ikke hele resultatet.

##### Hvis det opprinnelige svaret må kontrolleres

Behold forespørsels-/svar-ID-er og headere. Ingen generell URL for henting av tekstjobber oppgis.

Svarfelter

| Felt | Type |
| --- | --- |
| Felt`id` | Typestring |
| Felt`model` | Typestring |
| Felt`content[]` | Typetext\|thinking\|tool\_use\|other content block |
| Felt`stop_reason` | Typestring\|null |
| Felt`usage` | Typeobject |

Feil og neste trinn

| Svar | Vilkår | Neste trinn |
| --- | --- | --- |
| Svar400 · `invalid_request_error` | VilkårUgyldige påkrevde felter, materialrepresentasjon eller parameterverdi | Neste trinnKorriger de angitte feltene før en ny opprettelsesforespørsel. |

### Aliaser

#### Modellaliaser

**Ailoot Ultra** [`mistralai/mistral-small-24b-instruct-2501`](https://ailoot.ai/models/nb/#m=mistralai%2Fmistral-small-24b-instruct-2501&route=Ultra&caller=mistralai%2Fmistral-small-24b-instruct-2501&fmt=messages)

#### Aliaser for metodestier

Bruk metodestiene som vises ovenfor.

#### Tilknyttede anroper-ID-er

[`mistralai/mistral-small-24b-instruct-2501`](https://ailoot.ai/models/nb/#m=mistralai%2Fmistral-small-24b-instruct-2501&route=Ultra&caller=mistralai%2Fmistral-small-24b-instruct-2501&fmt=messages)

FAQ · Mistral: Mistral Small 3

Hvilke inndata og resultater er tilgjengelige?

`POST /v1/chat/completions` · `mistralai/mistral-small-24b-instruct-2501`: `text` → `text` `POST /v1/messages` · `mistralai/mistral-small-24b-instruct-2501`: `text` → `json`, `sse`

Hvilke felt bruker forespørselen?

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

Hvilke grenser gjelder?

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

Koble Ailoot til Claude Code, OpenCode, Hermes eller egen applikasjon.

## Selskapet og dets prosjektportefølje

Selskapet og dets prosjektportefølje: millioner av kunder; månedlig salg for milliarder.

## Kjøp tokener med rabatt.

Abonnementsrabatt for jevnlig bruk. Kampanjekoder gir opptil 50% på tokenkjøp.

Abonnement

Velg et rabattabonnement for faste forespørsler.

Kampanjekode opptil 50%

Oppgi kode ved kjøp. Prisen beregnes på nytt etter gjeldende kampanje.

Kostnader i historikken

Modell, tokener og beløp lagres for hver forespørsel.

[Velg abonnement](https://ailoot.ai/docs/nb/billing/subscriptions/) · [Se modellpriser](https://ailoot.ai/models/nb/)

## Koble API-et til produktet du selger.

SaaS, apper og boter etter Ailoots offentlige tilbud og lisensavtale. Be om forhandlerlisens for videresalg.

Kommersiell applikasjon

Bygg tekst-, bilde-, video- og lydgenerering inn i betalte funksjoner i tjenesten.

Forhandlerlisens

Send prosjektbeskrivelse og tilgangsopplegg. Be om skriftlige vilkår for bruk og videresalg.

Dokumenter på nettstedet

Offentlig tilbud, lisensavtale og retningslinjer for databehandling er tilgjengelige før tilkobling.

[Be om forhandlerlisens](mailto:support@ailoot.ai) · [Offentlig tilbud og lisensavtale](https://ailoot.ai/legal/offer?lang=nb)

## Ailoot · Selskapet og dets prosjektportefølje





Ailoot bygger på etablert driftserfaring, en stor kundebase, stabil tjeneste og løpende KPI-kontroll.





Selskapet og dets prosjektportefølje: millioner av kunder; månedlig salg for milliarder.





Ailoot bruker denne driftserfaringen til API-tilgang til AI-funksjoner i kundenes produkter, agenter, applikasjoner og automatiseringer.
