Mistral: Mistral Medium 3.1 (batch)
Mistral Medium 3.1 je model pro textový a obrazový vstup určený ke konverzačním odpovědím, otázkám k dokumentům a strukturované extrakci. Jeho kontext 128 tisíc tokenů uváděný výrobcem a uvedené funkce volání funkcí, předpovězeného výstupu a prefixů podporují vysvětlení založená na zdrojích a cílené postupy úprav.
O modelu
Tento popis zahrnuje schopnosti modelu. Vstupy, výstupy a možnosti dostupné v Ailoot jsou uvedeny níže pro vybranou metodu.
Mistral Medium 3.1 je multimodální edice Mistral AI pro porozumění textu a vizuálním materiálům. Výrobce popisuje tuto revizi jako zlepšení tónu a výkonu v řadě Medium 3. Přijímá text a obrázky a vytváří text: vysvětlení, odpověď k dokumentu, strukturovaný záznam nebo navržené volání funkce. Pevný identifikátor výrobce pro tuto edici je mistral-medium-2508.
Kontext a konkrétní edice
Stránka modelu dokumentuje kontextové okno 128 tisíc tokenů. Využijte je k zachování souvisejících zdrojových pasáží, obrazových podkladů, konverzace a úlohy uživatele pohromadě. Než dodáte rozsáhlou kolekci, určete role dokumentů a otázku k zodpovězení. Dlouhý kontext může podpořit cílené srovnání, zatímco konečný artefakt zůstane krátkou tabulkou nebo upravenou sekcí.
Medium 3.1 si zachovává vlastní specifikaci. Kontext 256 tisíc tokenů, hustou architekturu se 128 miliardami parametrů a nastavitelné hybridní režimy uvažování popsané pro Medium 3.5 nelze přiřazovat této položce. Stránka 3.1 neposkytuje počet parametrů ani samostatný údaj maximální délky odpovědi, které by bylo možné bezpečně nahradit údaji pozdějšího modelu.
Strukturovaný výstup a funkce
Výrobce mezi funkcemi této edice uvádí strukturované výstupy, volání funkcí a předpovězené výstupy. Pro strukturovanou extrakční úlohu definujte požadovaná pole, očekávané typy a zacházení s informacemi chybějícími ve zdroji. Záznam může obsahovat identifikátor dokumentu, extrahované tvrzení, jeho zdrojové umístění a otázku, která zůstává. Požadujte samotný záznam, pokud jej bude parsovat program, nebo ponechte textové vysvětlení oddělené, pokud někdo musí zkontrolovat výklad.
Společná dokumentace strukturovaného výstupu Mistral rozlišuje režim JSON a vlastní schéma. Režim JSON vyžaduje výslovný pokyn k požadovanému formátu JSON, zatímco vlastní cesta definuje konkrétnější strukturu. Jde o formátování textového výsledku, nikoli o novou obsahovou modalitu nebo externí akci.
Při volání funkcí aplikace definuje dostupnou operaci a její argumenty, model vybere vhodné volání a připraví hodnoty argumentů a aplikace operaci provede. Výsledek operace se poté stane podkladem pro další odpověď. Dokumentový asistent může pomocí vyhledání získat chybějící referenční data, ale pouze pokud okolní aplikace toto vyhledání poskytuje a vrací jeho skutečný výsledek. Navržené volání a vrácená data udržujte vzájemně propojené.
Předpovězené úpravy a prefixy odpovědí
Předpovězené výstupy jsou užitečné, když je většina požadovaného výsledku již známa, například dokument nebo soubor kódu potřebující omezenou úpravu. Dodejte existující obsah a popište změnu přesně, včetně toho, co musí zůstat nezměněné. Požadavek může aktualizovat terminologii jedné sekce nebo nahradit jeden implementační detail při zachování zbytku dokumentu. Předpověď obsahuje očekávaný výstupní obsah, nikoli dokončenou změnu aplikovanou na soubor.
Stránka modelu uvádí také pokračování od prefixu odpovědi. V konverzační dokumentaci výrobce prefix dodává známý začátek odpovědi asistenta, po němž generování pokračuje. Známý začátek a předpovězený obsah řeší různé problémy přípravy. Dávkové zpracování a rozhraní agenta či konverzace jsou podobně funkcemi postupu, nikoli samostatnými edicemi Medium 3.1 pro obraz, zvuk nebo uvažování.
Otázky k dokumentům a vizuálním materiálům
Uvedený postup document-QnA spojuje text, strukturu a formátování připravené pomocí OCR s analýzou jazykovým modelem. Ptejte se na konkrétní podmínku, pasáž nebo vztah požadovaný úlohou. Srovnání může určit zdrojové dokumenty a požadovat společná tvrzení, konflikty a nevyřešené detaily při zachování zdrojového umístění vedle každého zjištění.
Vizuální příručka výrobce výslovně zahrnuje Medium 3.1. Přímá vizuální otázka může dodat čitelný graf, obrázek dokumentu nebo snímek obrazovky a ptát se, které viditelné podklady podporují závěr. Zachovejte osy, jednotky, označení a kontext kolem oříznutého pole. Je-li dodáno několik obrázků, určete jejich pořadí a roli místo ponechání modelu, aby odvodil, který je originál, revize nebo reference.
Například spojte písemný požadavek procesu se snímkem obrazovky a požadujte tabulku viditelných shod, rozdílů a otázek vyžadujících více informací. Jiná úloha může dodat dvě verze dokumentu a žádat upravenou pasáž, která zachová jejich společné podmínky a vyřeší pojmenovaný nesoulad. Jde o navržená použití zdokumentovaných vizuálních, dokumentových a editačních schopností s předem definovaným požadovaným výsledkem.
Příprava konečného artefaktu
Dejte asistentovi jasnou roli, zdrojové materiály k použití a podobu odpovědi. Trvalá pravidla odpovědi odlišujte od zkoumaného dokumentu a uveďte cílový jazyk a terminologii. Užitečná odpověď může oddělit extrahovaná fakta, jejich zdroj a výklad, takže se kontroluje snáze než jediné sloučené shrnutí.
Zdokumentovaným výsledkem zůstává text. Externí nástroje, změny souborů a další zpracování dokumentů patří aplikaci připojené ke konverzaci. Zachovejte pojmenovanou edici Medium 3.1 a její kontext 128 tisíc tokenů a požadujte vysvětlení, strukturovaný záznam nebo cílenou revizi, které další krok skutečně potřebuje.
Ailoot Ultra · Dávka POST /v1/batches mistralai/mistral-medium-3.1:batch
mistralai/mistral-medium-3.1:batch
mistralai/mistral-medium-3.1:batchÚvod
Mistral Medium 3.1 je model pro textový a obrazový vstup určený ke konverzačním odpovědím, otázkám k dokumentům a strukturované extrakci. Jeho kontext 128 tisíc tokenů uváděný výrobcem a uvedené funkce volání funkcí, předpovězeného výstupu a prefixů podporují vysvětlení založená na zdrojích a cílené postupy úprav.
- Přijímané vstupy
- Text
- Výsledky
- Text
Dostupné v Ailoot · vstupy a metody
Ailoot Ultra · Dávka POST /v1/batches
- Vstup
text- Výstup
text- Výstupní formát
- vložený JSON v results[].response.body
| Pole | Typ | Požadavek | Hodnoty a limity | Výchozí |
|---|---|---|---|---|
Poleendpoint | Typstring | PožadavekPovinné | Hodnoty a limity /v1/chat/completions | Výchozí— |
Polemodel | Typstring | PožadavekPovinné | Hodnoty a limity mistralai/mistral-medium-3.1:batch | Výchozí— |
Polerequests | Typbatch_item[] | PožadavekPovinné | Hodnoty a limity Minimální počet položek: 1 | Výchozí— |
Polerequests[].custom_id | Typstring | PožadavekPovinné | Hodnoty a limity | Výchozí— |
Polerequests[].body.messages | Typmessage[] | PožadavekPovinné | Hodnoty a limity | Výchozí— |
Polecompletion_window | Typstring | PožadavekVolitelné | Hodnoty a limity 24h | Výchozí— |
Poleprovider | Typobject|null | PožadavekVolitelné | Hodnoty a limity | Výchozí— |
Polerequests[].body.model | Typstring | PožadavekVolitelné | Hodnoty a limity mistralai/mistral-medium-3.1:batch, mistralai/mistral-medium-3.1 | Výchozí— |
Poleprovider.only | Typstring[] | PožadavekVolitelné | Hodnoty a limity mistral | Výchozí— |
Poleprovider.allow_fallbacks | Typboolean|null | PožadavekVolitelné | Hodnoty a limity false, null | Výchozí— |
Parametry a životní cyklus metody
| Parametr | Kontrakt |
|---|---|
Parametrcontent_type | Kontraktapplication/json |
Parametrrequired | Kontraktendpoint, model, requests |
Parametrmaterial_types | Kontrakttext |
Parametrrepresentation | Kontraktvložené requests[]; každá položka obsahuje custom_id a body |
Parametrrequest_endpoint_profile | Kontrakt/v1/chat/completions |
Parametrfile_material | KontraktVolající může lokálně načíst skutečný soubor JSONL v kódování UTF-8 do requests[]. Nepoužívá se účel nahrání, input_file_id ani odkaz na soubor. Chybějící nebo prázdné podklady zákazníka zastaví přípravu před POST. |
Parametrserialization_order | Kontraktendpoint, model, provider (je-li uveden), completion_window (je-li uvedeno), requests nakonec |
Parametroptional_controls | Kontraktprovider.only, provider.allow_fallbacks, completion_window |
Parametrschema_scope | KontraktTěla požadavků Text Chat Completions v dokumentované obálce pro vložené dávkové požadavky Batch. |
Životní cyklus: asynchronous
GET /v1/batches/{operation_id} · skutečné response.id z původní odpovědi na vytvoření; stejný uživatel, klíč a skupina
Tarify
Údaje o tarifech nepřidávají možnosti požadavku. Podporované parametry jsou uvedeny u vybrané metody.
- Rychlý režim
- Neuvedeno Při výběru rychlého režimu
- Režim flex
- Neuvedeno Při výběru režimu flex
- Maximální intenzita uvažování
- Neuvedeno Když se při maximální intenzitě uvažování použije výchozí úprava (default)
- Ceny explicitní mezipaměti
- Není zapnuto Při požadavku na explicitní mezipaměť
Sazby Ailoot
Ceny podle konfigurace
Přiřaďte každý poplatek k uvedeným podmínkám. Pro každou sadu alternativních konfigurací použijte jednu sazbu.
| Konfigurace | Tabulka sazeb | Tokeny kontextu, více než | Tokeny kontextu, do uvedené hodnoty včetně | Poplatek |
|---|---|---|---|---|
| KonfiguraceZákladní sazby za tokeny | Tabulka sazebZákladní sazba | Tokeny kontextu, více než— | Tokeny kontextu, do uvedené hodnoty včetněBez horní meze | Poplatek Vstup · Vstupní tokeny $0.0004 / 1K tokenů Výstup · Výstupní tokeny $0.002 / 1K tokenů Vstup · Čtení z mezipaměti $0.00004 / 1K tokenů Vstup · Zápis do mezipaměti — / 1K tokenů Vstup · Zápis do mezipaměti, 1 hodina — / 1K tokenů |
| KonfiguracePásmo délky požadavku 1 | Tabulka sazeb— | Tokeny kontextu, více než0 | Tokeny kontextu, do uvedené hodnoty včetněBez horní meze | Poplatek Vstup · Vstupní tokeny $0.0004 / 1K tokenů Výstup · Výstupní tokeny $0.002 / 1K tokenů Vstup · Čtení z mezipaměti $0.00004 / 1K tokenů Vstup · Zápis do mezipaměti — / 1K tokenů Vstup · Zápis do mezipaměti, 1 hodina — / 1K tokenů |
Ailoot před požadavkem rezervuje odhadovanou částku. Po výsledku vyúčtuje konečný poplatek podle naměřeného využití. Při streamování se účtování řídí konečným záznamem využití. Jak funguje rezervace a vyúčtování →
Příklady požadavků
Ailoot Ultra · Dávka
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.
Přijímání a ukládání výsledků
Ailoot Ultra · Dávka
vložený JSON v results[].response.body
GET /v1/batches/{operation_id}
Ověřit stav úlohy
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
Uchovejte všechny dokončené výsledky
Uchovejte každou úplnou vrácenou odpověď, soubor i část obsahu.
Uchovejte úplný původní JSON se stavem, každý výsledek a custom_id a úplné tělo odpovědi nebo chyby. Dokončené results[] uložte jako JSONL bez filtrování.
Pokud je nutné ověřit původní odpověď
Uchovejte původní ID operace. Odpověď 503 result_pending_check obsahuje X-Should-Retry:false; původní dávku s neznámým výsledkem nikdy znovu neodesílejte.
Pole odpovědi
| Pole | Typ |
|---|---|
Poleresults[].custom_id | Typstring |
Poleresults[].response.body.choices[].message.content | Typstring|null |
Poleresults[].error | Typobject|null |
Poleusage | Typobject|null |
Poleid | Typstring |
Polemodel | Typstring |
Poleendpoint | Typstring |
Polestatus | Typstring |
Polerequest_counts | Typobject |
Poleresults[].id | Typstring |
Poleresults[].response.status_code | Typinteger |
Poleresults[].response.request_id | Typstring |
Chyby a další kroky
| Odpověď | Podmínka | Další krok |
|---|---|---|
Odpověď400 · invalid_request_error | PodmínkaNeplatná dokumentovaná obálka vložených požadavků, duplicitní klíče, nesprávná identita položky nebo rozpor s nastavenými schopnostmi modelu. | Další krokPřed jakýmkoli novým odesláním opravte označená pole. |
Odpověď401 · authentication_error | PodmínkaNeplatný klíč API. | Další krokPoužijte autorizovaný klíč Ailoot. |
Odpověď403 · permission_error | PodmínkaSkupina pro dávkové požadavky není dostupná. | Další krokZkontrolujte oprávnění klíče a skupiny. |
Odpověď422 · invalid_request_error | PodmínkaDávkové požadavky se účtují ze zůstatku; vytvoření v rámci předplatného se odmítá. | Další krokPoužijte autorizovanou skupinu s účtováním ze zůstatku. |
Odpověď422 · price_unavailable | PodmínkaPro vstup dávky nelze vypočítat cenovou nabídku. | Další krokUchovejte odpověď; použijte dokumentovaný vstup pro danou rodinu API. |
Odpověď402 · billing_error | PodmínkaRezerva pro dávku není dostupná. | Další krokPřed novým požadavkem vyřešte podmínky přijetí. |
Odpověď503 · price_unavailable | PodmínkaCena dávkové metody nebo nativní sazby nejsou dostupné. | Další krokUchovejte odpověď; nenahrazujte ceny jinými. |
Odpověď503 · api_error | PodmínkaPřesná trasa dodavatele není dostupná. | Další krokUchovejte odpověď pro opravu směrování. |
Odpověď503 · result_pending_check | PodmínkaPůvodní výsledek vyžaduje kontrolu; X-Should-Retry:false. | Další krokUchovejte původní operation_id/id a načítejte jeho stav; původní POST nikdy neopakujte. |
Odpověď404 · not_found | PodmínkaOperace pro kontrolu stavu dávky neexistuje nebo patří jiné identitě. | Další krokPoužijte přesné původní id a stejného uživatele, klíč a skupinu. |
Aliasy
Aliasy modelu
Ailoot Ultra mistralai/mistral-medium-3.1:batch
Aliasy cest metod
Použijte cesty metod uvedené výše.
Související ID modelů
FAQ · Mistral: Mistral Medium 3.1 (batch)
- Jaké vstupy a výsledky jsou dostupné?
POST /v1/batches·mistralai/mistral-medium-3.1:batch:text→text- Jaká pole požadavek používá?
POST /v1/batches·mistralai/mistral-medium-3.1:batch:endpoint,model,requests,completion_window,provider- Jaké limity platí?
POST /v1/batches·mistralai/mistral-medium-3.1:batch:requests.min_items:1