Mistral: Mistral Small 4 (batch)
Mistral Small 4 on hybridi teksti- ja kuvamalli, jossa on ohje-, päättely- ja ohjelmointikykyjä. Sen 119 miljardin parametrin mixture-of-experts-julkaisu aktivoi 6,5 miljardia parametria tokenia kohti ja tukee valmistajan ilmoittamaa 256 tuhannen tokenin kontekstia, valittavaa päättelypanosta, JSON-muotoa ja funktiokutsuja.
Tietoa mallista
Tämä kuvaus kattaa mallin ominaisuudet. Ailootissa saatavilla olevat syötteet, tulosteet ja asetukset luetellaan alla valitulle menetelmälle.
Mistral Small 4 yhdistää yleisen ohjeiden noudattamisen, päättelyn ja ohjelmoinnin yhteen multimodaaliseen malliin. Valmistaja kuvaa sen yhdistävän Instruct-, Magistral-päättely- ja Devstral-ohjelmointiperheet. Se vastaanottaa tekstiä ja kuvia sekä palauttaa tekstiä; funktiokutsut ja JSON-tuloste ovat käytettävissä työkaluavusteisiin sovelluksiin.
Arkkitehtuuri ja keskeiset ominaisuudet
Julkaisussa on yhteensä 119 miljardia parametria, ja se aktivoi 6,5 miljardia tokenia kohti. Sen mixture-of-experts-arkkitehtuurissa on 128 asiantuntijaa, joista 4 on aktiivisia, ja valmistaja dokumentoi 256 tuhannen tokenin konteksti-ikkunan. Aktiivisten parametrien ja asiantuntijoiden määrät kuvaavat mallin rakennetta; ne eroavat yhteen tehtävään sisältyvän teksti- tai kuvasisällön määrästä.
Malli tarjoaa ohje- ja päättelytoiminnallisuuden samoissa mallipainoissa. Valmistaja mainitsee myös näön, järjestelmäkehotteiden noudattamisen ja monikielisen tuen kymmenille kielille, kuten englannille, ranskalle, espanjalle, saksalle, italialle, portugalille, hollannille, kiinalle, japanille, korealle ja arabialle. Tekstiohje voi siten kysyä kuvasta tai yhdistää kirjallisen vaatimuksen näkyvään näyttöön, ja vastaus palautetaan tekstinä.
Visuaalinen tehtävä voi antaa asiakirjasivun ja pyytää nimettyyn ehtoon liittyvät arvot. Pidä tunnisteet ja yksiköt luettavina ja kerro, tuleeko tuloksen säilyttää alkuperäinen sanamuoto, tiivistää se vai verrata sitä toiseen lähteeseen. Käyttöliittymätehtävä voi yhdistää kuvakaappauksen käyttäjän tavoitteeseen ja pyytää olennaista näkyvää ohjainta sekä ehdotettua seuraavaa vaihetta tukevaa näyttöä.
Ohje- tai päättelytilan valinta
Julkaistu kortti dokumentoi reasoning effort -arvon none välittömään ohjetyyppiseen vastaukseen ja arvon high päättelyyn sekä suosittelee high-arvoa monimutkaisiin kehotteisiin. Valinta tehdään pyyntökohtaisesti saman Small 4 -mallin sisällä. Tavallisella luokittelulla tai lyhyellä uudelleenkirjoituksella voi olla erilainen vastaussopimus kuin matemaattisella, visuaalisella tai ohjelmointiongelmalla, joka tarvitsee perusteellisen selityksen.
Valmistaja suosittelee korkealle päättelypanokselle temperature-arvoa 0.7. Arvolle none se määrittää tehtävän mukaan temperature-arvot 0.0–0.7. Asetukset kuvaavat dokumentoituja tiloja eivätkä tee päättelypanoksesta oikean tuloksen takuuta. Määritä oletukset, tulosmuoto ja olennainen lähdeaineisto ennen tehtävän tarvitseman päättelyn määrän valintaa.
Anna ratkaistavaan ongelmaan koko ehto ja pyydä olennaiset perustellut vaiheet sekä lopullinen lauseke. Anna kooditehtävään vaatimus, kohdefunktio ja konkreettinen syöte; pyydä toteutusehdotus erillään selityksestä ja esimerkeistä. Valmistajan käyttöesittelyt sisältävät ohjeiden noudattamista, kuvaan sovellettua laskentatyökalua ja visuaalista päättelyä, ja ne havainnollistavat tekstin ja kuvanäytön käyttöä näissä erilaisissa tehtävissä.
Ohjelmointi, asiakirjat ja työkalut
Malli on suunnattu koodikannan tutkimiseen ja ohjelmistokehitysagenteille, yleisavustajille, asiakirjojen ymmärtämiseen ja tutkimukseen. Ohjelmointiagentin pyyntö voi nimetä muutettavan moduulin, säilytettävän rajapinnan ja tavoitellun toiminnan. Anna olennainen lähdekoodi ja virhenäyttö. Malli voi ehdottaa seuraavaa toimintoa tai koodimuutosta, kun taas sovellus tarjoaa koodivarastopääsyn, suorituksen ja palautteen.
Määritä asiakirjapoimintaan vaaditut kentät ja puuttuvien tietojen esitystapa. Hyödyllinen tietue voi erottaa asiakirjatunnisteen, lähteen lausuman, tulkitun vaatimuksen ja avoimen kysymyksen. Valmistajan palvelukortti mainitsee mukautetun rakenteisen tulosteen ja asiakirjakysymyksiin vastaamisen; jälkimmäinen käyttää asiakirjankäsittelyä ja OCR:ää tekstin ja rakenteen valmisteluun ennen kielimallin analyysia. Suoran kuvakysymyksen ja OCR-avusteisen asiakirjatyönkulun tulee säilyttää omat syötteen valmistelutapansa.
Funktiokutsut vaativat selkeästi kuvatut työkalut. Malli valitsee funktion ja luo argumentit; sovellus suorittaa toiminnon ja palauttaa tuloksen seuraavaa vastausta varten. Sama logiikka pätee hakuun, laskentaan ja ohjelmointitoimintoon. JSON-muotoilu jäsentää vastauksen, kun taas työkalukutsu pyytää ulkoista toimenpidettä; niitä ei pidä käsitellä keskenään vaihdettavina tuloksina.
Palvelukortissa mainitaan myös ennakoidut tulosteet, vastauksen alkukatkelmat, eräkäsittely ja agenttikeskustelut. Ennakoidut tulosteet auttavat, kun asiakirja tai kooditiedosto on tuotettava uudelleen rajatulla muutoksella ja muu sisältö tunnetaan. Määritä muokkaus ja säilytettävä aineisto. Annetusta alkukatkelmasta jatkaminen käyttää vastauksen tunnettua alkua, kun taas eräkäsittely koskee työn lähettämistä eikä uutta päättelytilaa.
Kontekstin ja version rajat
Suunnittele kirjallinen tehtävä, visuaalinen aineisto, keskustelu ja haluttu vastaus dokumentoidun 256 tuhannen tokenin kontekstin mukaan. Julkaistu käyttöesimerkki määrittää 262 144 tokenin kontekstin, kun taas sen 1 024 tokenin generointiesimerkki ei ole erillinen tulosteen enimmäiskapasiteetti. Luetut lähteet eivät anna erillistä ehdotonta vastauksen pituusrajaa valitun tehtäväpituuden tilalle.
Small 4:llä on oma 119 miljardin parametrin mixture-of-experts-arkkitehtuurinsa ja hybriditilansa. Sen ei tule periä Medium 3.5:n tiheää 128 miljardin parametrin arkkitehtuuria tai Ministral 3:n erillisiä Instruct- ja Reasoning-versioita. Valmistaja julkaisee myös erillisiä kvantisoituja ja spekulatiivisen dekoodauksen artefakteja; ne ovat erillisiä käyttöönottoartefakteja eivätkä erilaisia sisältömodaliteetteja. Säilytä nimetty Small 4 -julkaisu ja varsinaiseen selitykseen, rakenteiseen tietueeseen tai kooditulokseen pyydetty tila.
Ailoot Ultra · Eräajo POST /v1/batches mistralai/mistral-small-2603:batch
mistralai/mistral-small-2603:batch
mistralai/mistral-small-2603:batchAloitus
Mistral Small 4 on hybridi teksti- ja kuvamalli, jossa on ohje-, päättely- ja ohjelmointikykyjä. Sen 119 miljardin parametrin mixture-of-experts-julkaisu aktivoi 6,5 miljardia parametria tokenia kohti ja tukee valmistajan ilmoittamaa 256 tuhannen tokenin kontekstia, valittavaa päättelypanosta, JSON-muotoa ja funktiokutsuja.
- Hyväksytyt syötteet
- Teksti
- Tulokset
- Teksti
Saatavilla Ailootissa · syötteet & menetelmät
Ailoot Ultra · Eräajo POST /v1/batches
- Syötetyypit
text- Tulostyypit
text- Tulosteen muoto
- vastaukseen sisältyvä JSON kentässä results[].response.body
| Kenttä | Tyyppi | Vaatimus | Arvot & rajat | Oletus |
|---|---|---|---|---|
Kenttäendpoint | Tyyppistring | VaatimusPakollinen | Arvot & rajat /v1/chat/completions | Oletus— |
Kenttämodel | Tyyppistring | VaatimusPakollinen | Arvot & rajat mistralai/mistral-small-2603:batch | Oletus— |
Kenttärequests | Tyyppibatch_item[] | VaatimusPakollinen | Arvot & rajat Kohteiden vähimmäismäärä: 1 | Oletus— |
Kenttärequests[].custom_id | Tyyppistring | VaatimusPakollinen | Arvot & rajat | Oletus— |
Kenttärequests[].body.messages | Tyyppimessage[] | VaatimusPakollinen | Arvot & rajat | Oletus— |
Kenttäcompletion_window | Tyyppistring | VaatimusValinnainen | Arvot & rajat 24h | Oletus— |
Kenttäprovider | Tyyppiobject|null | VaatimusValinnainen | Arvot & rajat | Oletus— |
Kenttärequests[].body.model | Tyyppistring | VaatimusValinnainen | Arvot & rajat mistralai/mistral-small-2603:batch, mistralai/mistral-small-2603 | Oletus— |
Kenttäprovider.only | Tyyppistring[] | VaatimusValinnainen | Arvot & rajat mistral | Oletus— |
Kenttäprovider.allow_fallbacks | Tyyppiboolean|null | VaatimusValinnainen | Arvot & rajat false, null | Oletus— |
Menetelmän parametrit ja elinkaari
| Parametri | Sopimus |
|---|---|
Parametricontent_type | Sopimusapplication/json |
Parametrirequired | Sopimusendpoint, model, requests |
Parametrimaterial_types | Sopimustext |
Parametrirepresentation | Sopimuspyyntöön sisältyvä requests[]; jokaisella alkiolla on custom_id ja body |
Parametrirequest_endpoint_profile | Sopimus/v1/chat/completions |
Parametrifile_material | SopimusKutsuja voi lukea todellisen UTF-8 JSONL -aineiston paikallisesti requests[]-taulukkoon. Latauksen purpose-arvoa, input_file_id-arvoa tai tiedostoviitettä ei käytetä. Puuttuva tai tyhjä asiakkaan aineisto keskeyttää valmistelun ennen POST-pyyntöä. |
Parametriserialization_order | Sopimusendpoint, model, provider (jos annettu), completion_window (jos annettu), requests viimeisenä |
Parametrioptional_controls | Sopimusprovider.only, provider.allow_fallbacks, completion_window |
Parametrischema_scope | SopimusTekstimuotoiset Chat Completions -pyyntörungot dokumentoidussa pyyntöön sisältyvässä Batch-kääreessä. |
Elinkaari: asynchronous
GET /v1/batches/{operation_id} · alkuperäisen luontivastauksen todellinen response.id; sama käyttäjä, avain ja ryhmä
Hinnoittelu
Hintatiedot eivät lisää pyyntövalintoja. Tuetut parametrit on lueteltu valitulle menetelmälle.
- Nopea tila
- Ei määritetty Kun nopea tila on valittu
- Flex-tila
- Ei määritetty Kun flex-tila on valittu
- Päättelyn enimmäisteho
- Ei määritetty Kun päättelyn enimmäistehoon sovelletaan default-oletussäätöä
- Eksplisiittisen välimuistin hinnoittelu
- Ei käytössä Kun eksplisiittistä välimuistia pyydetään
Ailoot-hinnat
Hinnat asetusten mukaan
Kohdista kukin veloitus näytettyihin ehtoihin. Käytä yhtä hintaa kutakin vaihtoehtoisten asetusten ryhmää kohden.
| Asetukset | Hinnasto | Kontekstin tokenit, enemmän kuin | Kontekstin tokenit, enintään raja-arvo mukaan lukien | Veloitus |
|---|---|---|---|---|
| AsetuksetTokenien perushinnat | HinnastoPerushinta | Kontekstin tokenit, enemmän kuin— | Kontekstin tokenit, enintään raja-arvo mukaan lukienEi ylärajaa | Veloitus Syöte · Syötetokenit $0.00015 / 1K tokenia Tuloste · Tulostokenit $0.0006 / 1K tokenia Syöte · Välimuistin luku $0.000015 / 1K tokenia Syöte · Välimuistiin kirjoitus — / 1K tokenia Syöte · Välimuistiin kirjoitus, 1 tunti — / 1K tokenia |
| AsetuksetPyynnön pituusluokka 1 | Hinnasto— | Kontekstin tokenit, enemmän kuin0 | Kontekstin tokenit, enintään raja-arvo mukaan lukienEi ylärajaa | Veloitus Syöte · Syötetokenit $0.00015 / 1K tokenia Tuloste · Tulostokenit $0.0006 / 1K tokenia Syöte · Välimuistin luku $0.000015 / 1K tokenia Syöte · Välimuistiin kirjoitus — / 1K tokenia Syöte · Välimuistiin kirjoitus, 1 tunti — / 1K tokenia |
Ailoot varaa arvioidun summan ennen pyyntöä. Tuloksen jälkeen lopullinen veloitus toteutetaan mitatun käytön perusteella. Suoratoiston veloituksessa käytetään lopullista käyttötietuetta. Varauksen ja lopullisen veloituksen toiminta →
Esimerkkipyynnöt
Ailoot Ultra · Eräajo
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json
from pathlib import Path
body=json.loads('{"endpoint":"/v1/chat/completions","model":"mistralai/mistral-small-2603:batch","requests":[{"custom_id":"req-0001","body":{"messages":[{"role":"user","content":"Hello!"}],"max_tokens":16}}]}')
Path("batch-request.json").write_text(json.dumps(body,ensure_ascii=False),encoding="utf-8")
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/batches \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @batch-request.json -D batch-response-headers.txt -o batch-create-response.json
import json, os
from pathlib import Path
from urllib.request import Request, urlopen
def prepare_requests(customer_path):
path = Path(customer_path)
if not path.is_file(): raise ValueError("Customer JSONL file is missing")
items = [json.loads(line) for line in path.read_text(encoding="utf-8").splitlines() if line.strip()]
if not items: raise ValueError("Customer JSONL contains no requests")
ids = set()
for item in items:
if set(item) != {"custom_id", "body"}: raise ValueError("Each item needs custom_id and body")
cid = item["custom_id"]
if not isinstance(cid, str) or not cid.strip() or cid in ids: raise ValueError("custom_id must be nonempty and unique")
ids.add(cid)
if not isinstance(item["body"], dict) or not item["body"].get("messages"): raise ValueError("Supply actual text messages")
supplied_model = item["body"].get("model")
if supplied_model is not None and supplied_model not in ['mistralai/mistral-small-2603:batch', 'mistralai/mistral-small-2603']: raise ValueError("body.model must be an exact documented caller or wire ID")
return {"endpoint":"/v1/chat/completions", "model":"mistralai/mistral-small-2603:batch", "requests":items}
if __name__ == "__main__":
material = os.environ.get("AILOOT_BATCH_REQUESTS_JSONL", "")
if not material: raise SystemExit("Set AILOOT_BATCH_REQUESTS_JSONL to your actual customer file")
body = prepare_requests(material)
key = os.environ.get("AILOOT_API_KEY", "")
if not key: raise SystemExit("Set AILOOT_API_KEY")
request = Request("https://api.ailoot.ai/v1/batches", data=json.dumps(body, ensure_ascii=False).encode("utf-8"), headers={"Authorization":"Bearer " + key, "Content-Type":"application/json"}, method="POST")
with urlopen(request) as response:
raw = response.read()
Path("batch-create-response.json").write_bytes(raw)
print(raw.decode("utf-8"))
import json
from pathlib import Path
raw = Path("batch-status-response.json").read_bytes()
response = json.loads(raw)
if response.get("status") != "completed":
raise SystemExit("Keep the original operation; read its status without resubmitting")
results = response.get("results")
if not isinstance(results, list) or not results:
raise SystemExit("Preserve the original response; completed results are missing")
Path("batch-results.jsonl").write_text("".join(json.dumps(item, ensure_ascii=False) + "\n" for item in results), encoding="utf-8")
# Preserve batch-status-response.json with aggregate usage and every result/error.
Vastaanota ja tallenna tulokset
Ailoot Ultra · Eräajo
vastaukseen sisältyvä JSON kentässä results[].response.body
GET /v1/batches/{operation_id}
Tarkista työn tila
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
BATCH_OPERATION_ID="$(python3 - <<'PY_ID'
import json
from pathlib import Path
from urllib.parse import quote
response = json.loads(Path("batch-create-response.json").read_text(encoding="utf-8"))
operation = response.get("id")
if not isinstance(operation, str) or not operation: raise SystemExit("No actual original operation ID; preserve the response and do not resubmit")
print(quote(operation, safe=""))
PY_ID
)"
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/batches/$BATCH_OPERATION_ID" \
-H "Authorization: Bearer $AILOOT_API_KEY" -o batch-status-response.json
Säilytä kaikki valmistuneet tulokset
Säilytä jokainen kokonainen palautettu vastaus, tiedosto ja sisällön osa.
Säilytä koko alkuperäinen tilatiedot sisältävä JSON, jokainen tulos ja custom_id sekä täydellinen vastaus- tai virherunko. Tallenna valmistuneet results[]-tulokset JSONL-muodossa suodattamatta.
Jos alkuperäinen vastaus on tarkistettava
Säilytä alkuperäinen operaation ID. 503 result_pending_check sisältää otsakkeen X-Should-Retry:false; älä koskaan lähetä uudelleen alkuperäistä eräajoa, jonka tila on tuntematon.
Vastauksen kentät
| Kenttä | Tyyppi |
|---|---|
Kenttäresults[].custom_id | Tyyppistring |
Kenttäresults[].response.body.choices[].message.content | Tyyppistring|null |
Kenttäresults[].error | Tyyppiobject|null |
Kenttäusage | Tyyppiobject|null |
Kenttäid | Tyyppistring |
Kenttämodel | Tyyppistring |
Kenttäendpoint | Tyyppistring |
Kenttästatus | Tyyppistring |
Kenttärequest_counts | Tyyppiobject |
Kenttäresults[].id | Tyyppistring |
Kenttäresults[].response.status_code | Tyyppiinteger |
Kenttäresults[].response.request_id | Tyyppistring |
Virheet ja seuraavat vaiheet
| Vastaus | Ehto | Seuraava vaihe |
|---|---|---|
Vastaus400 · invalid_request_error | EhtoDokumentoitu pyyntöön sisältyvä kääre on virheellinen, avaimet ovat päällekkäisiä, alkion identiteetti on virheellinen tai määritetyt mallin ominaisuudet ovat ristiriidassa. | Seuraava vaiheKorjaa ilmoitetut kentät ennen uutta lähetystä. |
Vastaus401 · authentication_error | EhtoVirheellinen API-avain. | Seuraava vaiheKäytä valtuutettua Ailoot-avainta. |
Vastaus403 · permission_error | EhtoEräajoryhmä ei ole käytettävissä. | Seuraava vaiheTarkista avaimen ja ryhmän käyttöoikeudet. |
Vastaus422 · invalid_request_error | EhtoEräajo laskutetaan saldosta; tilauspohjaisella laskutuksella tehty eräajon luontipyyntö hylätään. | Seuraava vaiheKäytä valtuutettua saldosta laskutettavaa ryhmää. |
Vastaus422 · price_unavailable | EhtoEräajon syötteelle ei voida laskea hinta-arviota. | Seuraava vaiheSäilytä vastaus; käytä dokumentoitua API-perheen syötettä. |
Vastaus402 · billing_error | EhtoEräajon varaus ei ole käytettävissä. | Seuraava vaihePoista pyynnön hyväksymisen esteet ennen uutta pyyntöä. |
Vastaus503 · price_unavailable | EhtoEräajomenetelmän hinta tai natiivit hinnat eivät ole käytettävissä. | Seuraava vaiheSäilytä vastaus; älä korvaa hintoja toisilla. |
Vastaus503 · api_error | EhtoTäsmällinen toimittajan reitti ei ole käytettävissä. | Seuraava vaiheSäilytä vastaus reitin korjaamista varten. |
Vastaus503 · result_pending_check | EhtoAlkuperäinen tulos edellyttää tarkistusta; X-Should-Retry:false. | Seuraava vaiheSäilytä alkuperäinen operation_id/id ja lue sen tila; älä koskaan toista alkuperäistä POST-pyyntöä. |
Vastaus404 · not_found | EhtoEräajon tilan operaatiota ei ole tai se kuuluu toiselle identiteetille. | Seuraava vaiheKäytä täsmälleen alkuperäistä id-arvoa sekä samaa käyttäjää, avainta ja ryhmää. |
Aliakset
Mallin aliakset
Ailoot Ultra mistralai/mistral-small-2603:batch
Menetelmäpolkujen aliakset
Käytä yllä näytettyjä menetelmäpolkuja.
Liittyvät kutsujan ID:t
FAQ · Mistral: Mistral Small 4 (batch)
- Mitä syötteitä ja tuloksia on saatavilla?
POST /v1/batches·mistralai/mistral-small-2603:batch:text→text- Mitä kenttiä pyyntö käyttää?
POST /v1/batches·mistralai/mistral-small-2603:batch:endpoint,model,requests,completion_window,provider- Mitä rajoja sovelletaan?
POST /v1/batches·mistralai/mistral-small-2603:batch:requests.min_items:1