Mistral: Mistral Medium 3.1 (batch)
Mistral Medium 3.1 er en tekst- og billedmodel til samtalesvar, dokumentspørgsmål og struktureret udtrækning. Dens producentangivne kontekst på 128k og angivne funktioner til funktionskald, forudsagt output og præfikser understøtter kildebaserede forklaringer og målrettede redigeringsarbejdsgange.
Om modellen
Denne beskrivelse dækker modellens funktioner. Tilgængelige input, output og indstillinger i Ailoot står nedenfor for den valgte metode.
Mistral Medium 3.1 er en multimodal Mistral AI-udgave til tekstlig og visuel forståelse. Producenten beskriver revisionen som en forbedring af tone og ydeevne inden for Medium 3-linjen. Den tager imod tekst og billeder og producerer tekst: en forklaring, et dokumentsvar, en struktureret post eller et foreslået funktionskald. Producentens faste identifikator for denne udgave er mistral-medium-2508.
Kontekst og den konkrete udgave
Modelsiden dokumenterer et kontekstvindue på 128k. Brug det til at holde relaterede kildepassager, billedbaseret bevismateriale, samtalen og brugerens opgave samlet. Identificer dokumenternes roller og spørgsmålet, der skal besvares, før du leverer en stor samling. En lang kontekst kan understøtte en fokuseret sammenligning, mens den endelige artefakt forbliver en kort tabel eller et revideret afsnit.
Medium 3.1 bevarer sin egen specifikation. Konteksten på 256k, den tætte arkitektur med 128 milliarder parametre og de konfigurerbare hybride ræsonnementstilstande beskrevet for Medium 3.5 bør ikke tillægges denne post. 3.1-siden angiver ikke et parameterantal eller et særskilt maksimalt tal for svarlængde, som med sikkerhed kan erstattes med den senere models.
Struktureret output og funktioner
Producenten angiver strukturerede output, funktionskald og forudsagte output blandt denne udgaves funktioner. Til en struktureret udtrækningsopgave skal du definere de krævede felter, forventede typer og behandlingen af oplysninger, der ikke findes i kilden. En post kan indeholde dokumentidentifikatoren, det udtrukne udsagn, dets kildeplacering og det tilbageværende spørgsmål. Bed om posten alene, når et program skal parse den, eller hold en prosaforklaring særskilt, når nogen skal undersøge fortolkningen.
Mistrals fælles dokumentation om struktureret output skelner mellem JSON-tilstand og et brugerdefineret skema. JSON-tilstand kræver en udtrykkelig instruktion om det ønskede JSON-format, mens den brugerdefinerede vej definerer en mere specifik struktur. Det er formatering af tekstresultatet og ikke en ny indholdsmodalitet eller en ekstern handling.
Ved funktioner definerer applikationen den tilgængelige operation og argumenterne, modellen vælger et passende kald og forbereder værdier, og applikationen udfører det. Resultatet bliver derefter oplysninger til næste svar. En dokumentassistent kan bruge et opslag til at indhente manglende referencedata, men kun hvis den omgivende applikation leverer opslaget og returnerer dets faktiske resultat. Hold det foreslåede kald og de returnerede data knyttet til hinanden.
Forudsagte ændringer og svarpræfikser
Forudsagte output er nyttige, når det meste af det ønskede resultat allerede kendes, såsom et dokument eller en kodefil, der kræver en begrænset ændring. Giv det eksisterende indhold, og beskriv ændringen præcist, inklusive hvad der skal forblive uændret. En anmodning kan opdatere ét afsnits terminologi eller erstatte én implementeringsdetalje, mens resten af dokumentet bevares. Forudsigelsen indeholder forventet outputindhold frem for en afsluttet ændring anvendt i en fil.
Modelsiden angiver også fortsættelse fra svarpræfiks. I producentens chatdokumentation leverer et præfiks en kendt begyndelse på assistentens svar, hvorefter genereringen fortsætter. En kendt begyndelse og en forudsagt tekstkrop løser forskellige forberedelsesproblemer. Batchbehandling og agent-/samtalegrænseflader er ligeledes arbejdsgangsfunktioner frem for separate billed-, lyd- eller ræsonnementsudgaver af Medium 3.1.
Dokument- og billedspørgsmål
Den angivne document-QnA-arbejdsgang kombinerer OCR-klargjort tekst, struktur og formatering med sprogmodelanalyse. Spørg til den konkrete betingelse, passage eller relation, opgaven kræver. En sammenligning kan identificere kildedokumenterne og bede om fælles udsagn, konflikter og uafklarede detaljer med kildeplaceringen ved siden af hvert fund.
Producentens synsvejledning omfatter udtrykkeligt Medium 3.1. Et direkte visuelt spørgsmål kan give et læsbart diagram, dokumentbillede eller skærmbillede og spørge, hvilke synlige beviser der understøtter en konklusion. Bevar akser, enheder, etiketter og konteksten omkring et beskåret felt. Hvis flere billeder leveres, skal du identificere deres rækkefølge og rolle frem for at lade modellen udlede, hvilket der er originalen, revisionen eller referencen.
Kombiner for eksempel et skriftligt proceskrav med et skærmbillede, og bed om en tabel over synlige overensstemmelser, forskelle og spørgsmål, der kræver flere oplysninger. En anden opgave kan give to versioner af et dokument og bede om en revideret passage, der bevarer deres fælles betingelser og løser en navngiven uoverensstemmelse. Det er foreslåede anvendelser af de dokumenterede visuelle funktioner samt dokument- og redigeringsfunktioner med det krævede resultat defineret på forhånd.
Forberedelse af den endelige artefakt
Giv assistenten en klar rolle, det kildemateriale, den skal bruge, og svarets form. Hold varige svarregler adskilt fra dokumentet, der undersøges, og angiv målsproget og terminologien. Et nyttigt svar kan adskille en udtrukket kendsgerning, dens kilde og en fortolkning, så det bliver lettere at undersøge end ét samlet resumé.
Det dokumenterede resultat forbliver tekst. Eksterne værktøjer, filændringer og yderligere dokumentbehandling tilhører applikationen, der er forbundet med samtalen. Bevar den navngivne Medium 3.1-udgave og dens kontekst på 128k, og bed om den forklaring, strukturerede post eller målrettede revision, næste trin faktisk kræver.
Ailoot Ultra · Batch POST /v1/batches mistralai/mistral-medium-3.1:batch
mistralai/mistral-medium-3.1:batch
mistralai/mistral-medium-3.1:batchStart
Mistral Medium 3.1 er en tekst- og billedmodel til samtalesvar, dokumentspørgsmål og struktureret udtrækning. Dens producentangivne kontekst på 128k og angivne funktioner til funktionskald, forudsagt output og præfikser understøtter kildebaserede forklaringer og målrettede redigeringsarbejdsgange.
- Accepterede input
- Tekst
- Resultater
- Tekst
Tilgængelig i Ailoot · input og metoder
Ailoot Ultra · Batch POST /v1/batches
- Inputtyper
text- Outputtyper
text- Outputformat
- JSON direkte i results[].response.body
| Felt | Type | Krav | Værdier og grænser | Standard |
|---|---|---|---|---|
Feltendpoint | Typestring | KravPåkrævet | Værdier og grænser /v1/chat/completions | Standard— |
Feltmodel | Typestring | KravPåkrævet | Værdier og grænser mistralai/mistral-medium-3.1:batch | Standard— |
Feltrequests | Typebatch_item[] | KravPåkrævet | Værdier og grænser Minimumsantal elementer: 1 | Standard— |
Feltrequests[].custom_id | Typestring | KravPåkrævet | Værdier og grænser | Standard— |
Feltrequests[].body.messages | Typemessage[] | KravPåkrævet | Værdier og grænser | Standard— |
Feltcompletion_window | Typestring | KravValgfrit | Værdier og grænser 24h | Standard— |
Feltprovider | Typeobject|null | KravValgfrit | Værdier og grænser | Standard— |
Feltrequests[].body.model | Typestring | KravValgfrit | Værdier og grænser mistralai/mistral-medium-3.1:batch, mistralai/mistral-medium-3.1 | Standard— |
Feltprovider.only | Typestring[] | KravValgfrit | Værdier og grænser mistral | Standard— |
Feltprovider.allow_fallbacks | Typeboolean|null | KravValgfrit | Værdier og grænser false, null | Standard— |
Metodeparametre og livscyklus
| Parameter | Kontrakt |
|---|---|
Parametercontent_type | Kontraktapplication/json |
Parameterrequired | Kontraktendpoint, model, requests |
Parametermaterial_types | Kontrakttext |
Parameterrepresentation | Kontraktrequests[] direkte i anmodningen; hvert element har custom_id og body |
Parameterrequest_endpoint_profile | Kontrakt/v1/chat/completions |
Parameterfile_material | KontraktDen kaldende part kan læse det faktiske JSONL-indhold i UTF-8 lokalt ind i requests[]. Der angives hverken purpose til upload, input_file_id eller en filreference. Hvis kundematerialet mangler eller er tomt, stoppes forberedelsen før POST. |
Parameterserialization_order | Kontraktendpoint, model, provider (hvis angivet), completion_window (hvis angivet), requests til sidst |
Parameteroptional_controls | Kontraktprovider.only, provider.allow_fallbacks, completion_window |
Parameterschema_scope | KontraktAnmodningsindhold for Chat Completions med tekst i den dokumenterede inline Batch-struktur. |
Livscyklus: asynchronous
GET /v1/batches/{operation_id} · det faktiske response.id fra den oprindelige oprettelse; samme bruger/nøgle/gruppe
Priser
Tarifoplysninger tilføjer ikke anmodningsmuligheder. Understøttede parametre står ved den valgte metode.
- Hurtig tilstand
- Ikke angivet Når hurtig tilstand er valgt
- flex-tilstand
- Ikke angivet Når flex-tilstanden er valgt
- Maksimal ræsonneringsindsats
- Ikke angivet Når default-justeringen anvendes ved maksimal ræsonneringsindsats
- Priser for eksplicit caching
- Ikke aktiveret Når der anmodes om eksplicit caching
Ailoot-takster
Priser efter konfiguration
Knyt hver omkostning til de viste betingelser. Brug én takst for hver gruppe af alternative konfigurationer.
| Konfiguration | Takstplan | Konteksttokens, mere end | Konteksttokens, op til og med | Beløb |
|---|---|---|---|---|
| KonfigurationGrundtakster for tokens | TakstplanGrundtakst | Konteksttokens, mere end— | Konteksttokens, op til og medIngen øvre grænse | Beløb Input · Inputtokens $0.0004 / 1K tokens Output · Outputtokens $0.002 / 1K tokens Input · Cachelæsning $0.00004 / 1K tokens Input · Cacheskrivning — / 1K tokens Input · Cacheskrivning, 1 time — / 1K tokens |
| KonfigurationAnmodningslængde · niveau 1 | Takstplan— | Konteksttokens, mere end0 | Konteksttokens, op til og medIngen øvre grænse | Beløb Input · Inputtokens $0.0004 / 1K tokens Output · Outputtokens $0.002 / 1K tokens Input · Cachelæsning $0.00004 / 1K tokens Input · Cacheskrivning — / 1K tokens Input · Cacheskrivning, 1 time — / 1K tokens |
Ailoot reserverer et estimeret beløb før en anmodning. Efter resultatet afregnes det endelige beløb ud fra det målte forbrug. Ved streaming bruges den endelige forbrugsregistrering til afregningen. Sådan fungerer reservation og afregning →
Eksempelanmodninger
Ailoot Ultra · Batch
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-medium-3.1: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-medium-3.1:batch', 'mistralai/mistral-medium-3.1']: raise ValueError("body.model must be an exact documented caller or wire ID")
return {"endpoint":"/v1/chat/completions", "model":"mistralai/mistral-medium-3.1: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.
Hent og gem resultater
Ailoot Ultra · Batch
JSON direkte i results[].response.body
GET /v1/batches/{operation_id}
Kontrollér opgavestatus
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
Behold alle færdige resultater
Gem hvert fuldstændigt returneret svar, hver fil og hver indholdsdel.
Gem hele den oprindelige status i JSON, hvert resultat/custom_id og det fulde svar- eller fejlindhold. Gem færdige results[] som JSONL uden filtrering.
Hvis det oprindelige svar skal kontrolleres
Gem det oprindelige operations-ID. 503 result_pending_check har X-Should-Retry:false; send aldrig en oprindelig batch igen, hvis dens udfald er ukendt.
Svarfelter
| Felt | Type |
|---|---|
Feltresults[].custom_id | Typestring |
Feltresults[].response.body.choices[].message.content | Typestring|null |
Feltresults[].error | Typeobject|null |
Feltusage | Typeobject|null |
Feltid | Typestring |
Feltmodel | Typestring |
Feltendpoint | Typestring |
Feltstatus | Typestring |
Feltrequest_counts | Typeobject |
Feltresults[].id | Typestring |
Feltresults[].response.status_code | Typeinteger |
Feltresults[].response.request_id | Typestring |
Fejl og næste trin
| Svar | Betingelse | Næste trin |
|---|---|---|
Svar400 · invalid_request_error | BetingelseUgyldig dokumenteret inline-struktur, dublerede nøgler, ugyldig elementidentitet eller konflikt med modellens konfigurerede funktioner. | Næste trinRet de angivne felter, før du sender en ny anmodning. |
Svar401 · authentication_error | BetingelseUgyldig API-nøgle. | Næste trinBrug den godkendte Ailoot-nøgle. |
Svar403 · permission_error | BetingelseBatch-gruppen er ikke tilgængelig. | Næste trinKontrollér nøglens/gruppens adgangsrettigheder. |
Svar422 · invalid_request_error | BetingelseBatch afregnes via saldoen; oprettelse via et abonnement afvises. | Næste trinBrug den godkendte gruppe med saldoafregning. |
Svar422 · price_unavailable | BetingelseDer kan ikke beregnes en pris for Batch-inputtet. | Næste trinGem svaret; brug det dokumenterede input for API-familien. |
Svar402 · billing_error | BetingelseReservationen til Batch er ikke tilgængelig. | Næste trinAfklar adgangen, før du sender en ny anmodning. |
Svar503 · price_unavailable | BetingelsePrisen for Batch-metoden eller de native satser er ikke tilgængelige. | Næste trinGem svaret; erstat ikke priserne med andre priser. |
Svar503 · api_error | BetingelseDen præcise leverandørrute er ikke tilgængelig. | Næste trinGem svaret, så ruten kan repareres. |
Svar503 · result_pending_check | BetingelseDet oprindelige resultat skal kontrolleres; X-Should-Retry:false. | Næste trinGem det oprindelige operation_id/id, og læs dets status; gentag aldrig den oprindelige POST. |
Svar404 · not_found | BetingelseOperationen til Batch-status findes ikke eller tilhører en anden identitet. | Næste trinBrug det nøjagtige oprindelige id og samme bruger/nøgle/gruppe. |
Aliaser
Modelaliaser
Ailoot Ultra mistralai/mistral-medium-3.1:batch
Aliaser for metodestier
Brug metodestierne vist ovenfor.
Relaterede kalder-ID’er
FAQ · Mistral: Mistral Medium 3.1 (batch)
- Hvilke input og resultater er tilgængelige?
POST /v1/batches·mistralai/mistral-medium-3.1:batch:text→text- Hvilke felter bruger anmodningen?
POST /v1/batches·mistralai/mistral-medium-3.1:batch:endpoint,model,requests,completion_window,provider- Hvilke grænser gælder?
POST /v1/batches·mistralai/mistral-medium-3.1:batch:requests.min_items:1