Mistral: Ministral 3 8B 2512 (batch)
Ministral 3 8B Instruct 2512 is een meertalig tekst-en-beeldinstructiemodel met een taalcomponent van 8,4 miljard parameters en een beeldencoder van 0,4 miljard parameters. Het ondersteunt een door de maker opgegeven context van 256k, systeeminstructies, JSON en ingebouwde functieaanroepen voor assistenten en documentworkflows.
Over het model
Deze beschrijving gaat over de mogelijkheden van het model. De via Ailoot beschikbare invoer, uitvoer en opties staan hieronder voor de geselecteerde methode.
Ministral 3 8B Instruct 2512 is het middelgrote, op instructies afgestemde model in de Ministral 3-familie van Mistral AI. Het uitgebrachte checkpoint is nagetraind voor chat- en instructietaken met FP8-precisie. Het combineert een taalcomponent met een beeldencoder, aanvaardt tekst en beelden en retourneert tekst in plaats van een beeld- of audioartefact.
Architectuur en belangrijkste functies
De maker vermeldt een taalmodel met 8,4 miljard parameters en een beeldencoder met 0,4 miljard parameters. Het contextvenster wordt als 256k beschreven, en de gepubliceerde gebruiksaanwijzingen hanteren een standaard ingestelde lengte van 262.144. Deze beschrijven deze editie van 8B-grootte; de kleinere 3B- en grotere 14B-familieleden behouden hun eigen componentgroottes en configuraties.
Beeldbegrip breidt de modelinvoer uit voorbij een schriftelijke conversatie. Een documentafbeelding kan worden gecombineerd met een vraag over een geselecteerd veld, een alinea of een zichtbare relatie. Een screenshot kan worden gekoppeld aan het gebruikersdoel en een verzoek om het relevante bedieningselement te identificeren. Vraag bij elke conclusie de ondersteunende waarneming wanneer het antwoord van visuele details afhangt en behoud koppen, labels en eenheden die nodig zijn om een uitsnede te interpreteren.
De modelkaart beschrijft meertalig werk in tientallen talen, waaronder Engels, Frans, Spaans, Duits, Italiaans, Portugees, Nederlands, Chinees, Japans, Koreaans en Arabisch. Ze vermeldt ook het volgen van systeeminstructies, ingebouwde functieaanroepen en JSON-uitvoer. Bepaal de uiteindelijke taal, rol en uitvoervereisten expliciet in plaats van het model het beoogde artefact uit een grote invoer te laten afleiden.
Document-, conversatie- en agenttaken
De toepassingen van de maker omvatten chatinterfaces, dagelijkse assistenten, beeld- en documentbeschrijving, vertaling, contentgeneratie en gespecialiseerde agents. Lever voor een documentassistent de pagina aan en specificeer welke informatie moet worden teruggegeven. Een extractieverzoek kan veldlabels, verwachte types en de behandeling van ontbrekende waarden benoemen. Een nuttig antwoord kan de documentidentificatie, geëxtraheerde waarde en een korte uitleg op basis van de zichtbare bron bevatten.
Behoud voor een doorlopende conversatie het relevante vorige antwoord en stel een gerichte vervolgvraag. Een gebruiker kan eerst om een documentsamenvatting vragen en daarna vragen welke uitspraak één conclusie ondersteunt. Daardoor verandert de vereiste uitvoer van een algemeen overzicht in een brongebonden uitleg, met behoud van het oorspronkelijke materiaal en het doel van de dialoog.
Lever voor meertalige redactie de oorspronkelijke passage, de beoogde lezer en een terminologielijst aan. Vraag een herziene versie die namen, voorwaarden en eenheden behoudt, indien nuttig gevolgd door een korte uitleg van de wijzigingen. Geef voor contentgeneratie het publiek en de te vermelden feiten op voordat u om een kort concept of alternatieve formulering vraagt.
Bij een agenttaak levert de toepassing de tools en hun parameters. Het model kan een functie kiezen en argumenten voorbereiden, terwijl de toepassing die uitvoert en het resultaat teruggeeft. Het functievoorbeeld op de modelkaart combineert een beeldvraag met een rekentool. Houd het toolresultaat gescheiden van de voorgestelde aanroep, zodat het daaropvolgende schriftelijke antwoord informatie gebruikt die werkelijk door de bewerking werd teruggegeven.
Aanbevolen voorbereiding en instellingen
De maker beveelt een systeeminstructie aan die de omgeving, het gebruiksdoel en het gebruik van tools beschrijft. Houd de toolset goed afgebakend en beperkt tot het minimum dat de taak nodig heeft. Een kleine opzoekworkflow kan de functies aanbieden die voor de huidige vraag relevant zijn, met duidelijk benoemde vereiste argumenten, in plaats van een grote verzameling niet-gerelateerde bewerkingen te presenteren.
Voor dagelijks en productiegericht gebruik beveelt de modelkaart een temperatuur lager dan 0,1 aan, met hogere temperaturen voor creatieve verkenning. Behandel dit als een aanbeveling voor de instructieworkflow en niet als een afzonderlijke instelling voor de redeneermodus. De familie heeft aparte Base-, Instruct- en Reasoning-checkpoints; deze vermelding betreft de Instruct 2512-editie en niet de afzonderlijke Reasoning-release van dezelfde grootte.
Voor beelden beveelt de maker verhoudingen dicht bij 1:1 aan en raadt zeer smalle of brede invoer af. Snijd indien nodig bij, maar behoud de labels en context die de vraag vereist. Geef bij een pagina met verschillende niet-gerelateerde gebieden aan welk deel moet worden bekeken en welk resultaat moet worden teruggegeven. Een leesbare, gerichte afbeelding is nuttiger dan het model laten raden welk klein detail op een brede pagina van belang is.
Grenzen van context en editie
Stem tekst, beelden, conversatie en gewenst antwoord af op de ingestelde context. De gebruiksaanwijzingen laten expliciet toe de ingestelde modellengte te verkleinen wanneer minder context nodig is; het volledige venster is dus geen instructie om elk verzoek met al het beschikbare materiaal te vullen. Het generatievoorbeeld met 512 tokens op de kaart is slechts een voorbeeldinstelling, en de geraadpleegde bronnen stellen geen afzonderlijke harde maximale antwoordlengte vast.
Het FP8 Instruct-checkpoint, de vooraf getrainde Base-release en de Reasoning-release zijn afzonderlijke edities. De maker beschrijft ook specialisatie en fine-tuning als toepassingen. Behoud het genoemde checkpoint en de bijbehorende tokenizer bij het voorbereiden van de conversatie, en onderscheid tekstgeneratie van repositorytoegang, functie-uitvoering of andere acties die de omringende toepassing levert.
Ailoot Ultra · Batchverwerking POST /v1/batches mistralai/ministral-8b-2512:batch
mistralai/ministral-8b-2512:batch
mistralai/ministral-8b-2512:batchAan de slag
Ministral 3 8B Instruct 2512 is een meertalig tekst-en-beeldinstructiemodel met een taalcomponent van 8,4 miljard parameters en een beeldencoder van 0,4 miljard parameters. Het ondersteunt een door de maker opgegeven context van 256k, systeeminstructies, JSON en ingebouwde functieaanroepen voor assistenten en documentworkflows.
- Toegestane invoer
- Tekst
- Resultaten
- Tekst
Beschikbaar in Ailoot · invoer en methoden
Ailoot Ultra · Batchverwerking POST /v1/batches
- Invoer
text- Uitvoer
text- Uitvoerformaat
- inline JSON uit results[].response.body
| Veld | Type | Vereiste | Waarden en limieten | Standaard |
|---|---|---|---|---|
Veldendpoint | Typestring | VereisteVereist | Waarden en limieten /v1/chat/completions | Standaard— |
Veldmodel | Typestring | VereisteVereist | Waarden en limieten mistralai/ministral-8b-2512:batch | Standaard— |
Veldrequests | Typebatch_item[] | VereisteVereist | Waarden en limieten Minimumaantal items: 1 | Standaard— |
Veldrequests[].custom_id | Typestring | VereisteVereist | Waarden en limieten | Standaard— |
Veldrequests[].body.messages | Typemessage[] | VereisteVereist | Waarden en limieten | Standaard— |
Veldcompletion_window | Typestring | VereisteOptioneel | Waarden en limieten 24h | Standaard— |
Veldprovider | Typeobject|null | VereisteOptioneel | Waarden en limieten | Standaard— |
Veldrequests[].body.model | Typestring | VereisteOptioneel | Waarden en limieten mistralai/ministral-8b-2512:batch, mistralai/ministral-8b-2512 | Standaard— |
Veldprovider.only | Typestring[] | VereisteOptioneel | Waarden en limieten mistral | Standaard— |
Veldprovider.allow_fallbacks | Typeboolean|null | VereisteOptioneel | Waarden en limieten false, null | Standaard— |
Methodeparameters en levenscyclus
| Parameter | Contract |
|---|---|
Parametercontent_type | Contractapplication/json |
Parameterrequired | Contractendpoint, model, requests |
Parametermaterial_types | Contracttext |
Parameterrepresentation | Contractinline requests[]; elk item bevat custom_id en body |
Parameterrequest_endpoint_profile | Contract/v1/chat/completions |
Parameterfile_material | ContractDe aanroeper kan de daadwerkelijke UTF-8 JSONL lokaal in requests[] inlezen. Er wordt geen uploaddoel, input_file_id of bestandsverwijzing gebruikt. Ontbrekend of leeg klantmateriaal stopt de voorbereiding vóór POST. |
Parameterserialization_order | Contractendpoint, model, provider (indien opgegeven), completion_window (indien opgegeven), requests als laatste |
Parameteroptional_controls | Contractprovider.only, provider.allow_fallbacks, completion_window |
Parameterschema_scope | ContractAanvraagbodies voor tekst via Chat Completions in de gedocumenteerde inline Batch-structuur. |
Levenscyclus: asynchronous
GET /v1/batches/{operation_id} · daadwerkelijke response.id uit de oorspronkelijke aanmaakrespons; dezelfde gebruiker/sleutel/groep
Tarieven
Tariefverwijzingen voegen geen verzoekopties toe. Ondersteunde parameters staan bij de geselecteerde methode.
- Snelle modus
- Niet opgegeven Wanneer de snelle modus geselecteerd is
- Flex-modus
- Niet opgegeven Wanneer de flex-modus geselecteerd is
- Maximale redeneerinspanning
- Niet opgegeven Wanneer voor maximale redeneerinspanning de default-aanpassing wordt gebruikt
- Tarieven voor expliciete caching
- Niet ingeschakeld Wanneer expliciete caching wordt aangevraagd
Ailoot-tarieven
Prijzen per configuratie
Koppel elke kostenpost aan de getoonde voorwaarden. Gebruik één tarief voor elke groep alternatieve configuraties.
| Configuratie | Tariefstaffel | Contexttokens, meer dan | Contexttokens, tot en met | Kosten |
|---|---|---|---|---|
| ConfiguratieBasistarieven voor tokens | TariefstaffelBasistarief | Contexttokens, meer dan— | Contexttokens, tot en metGeen bovengrens | Kosten Invoer · Invoertokens $0.00015 / 1K tokens Uitvoer · Uitvoertokens $0.00015 / 1K tokens Invoer · Cache lezen $0.000015 / 1K tokens Invoer · Cache schrijven — / 1K tokens Invoer · Cache schrijven, 1 uur — / 1K tokens |
| ConfiguratieAanvraaglengte · niveau 1 | Tariefstaffel— | Contexttokens, meer dan0 | Contexttokens, tot en metGeen bovengrens | Kosten Invoer · Invoertokens $0.00015 / 1K tokens Uitvoer · Uitvoertokens $0.00015 / 1K tokens Invoer · Cache lezen $0.000015 / 1K tokens Invoer · Cache schrijven — / 1K tokens Invoer · Cache schrijven, 1 uur — / 1K tokens |
Ailoot reserveert vóór een verzoek een geschat bedrag. Na het resultaat worden de uiteindelijke kosten afgerekend op basis van het gemeten verbruik. Bij streaming gebeurt de afrekening op basis van de definitieve verbruiksregistratie. Zo werken reservering en afrekening →
Voorbeeldverzoeken
Ailoot Ultra · Batchverwerking
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/ministral-8b-2512: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/ministral-8b-2512:batch', 'mistralai/ministral-8b-2512']: raise ValueError("body.model must be an exact documented caller or wire ID")
return {"endpoint":"/v1/chat/completions", "model":"mistralai/ministral-8b-2512: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.
Resultaten ophalen en opslaan
Ailoot Ultra · Batchverwerking
inline JSON uit results[].response.body
GET /v1/batches/{operation_id}
Taakstatus controleren
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
Alle voltooide resultaten bewaren
Bewaar elk volledig teruggegeven antwoord, bestand en inhoudsonderdeel.
Bewaar de volledige oorspronkelijke status-JSON, elk resultaat/custom_id en de volledige respons- of foutbody. Sla voltooide results[] op als JSONL, zonder te filteren.
Als het oorspronkelijke antwoord moet worden gecontroleerd
Bewaar de oorspronkelijke bewerkings-ID. 503 result_pending_check bevat X-Should-Retry:false; dien een oorspronkelijke batch met onbekende status nooit opnieuw in.
Antwoordvelden
| Veld | Type |
|---|---|
Veldresults[].custom_id | Typestring |
Veldresults[].response.body.choices[].message.content | Typestring|null |
Veldresults[].error | Typeobject|null |
Veldusage | Typeobject|null |
Veldid | Typestring |
Veldmodel | Typestring |
Veldendpoint | Typestring |
Veldstatus | Typestring |
Veldrequest_counts | Typeobject |
Veldresults[].id | Typestring |
Veldresults[].response.status_code | Typeinteger |
Veldresults[].response.request_id | Typestring |
Fouten en vervolgstappen
| Antwoord | Voorwaarde | Volgende stap |
|---|---|---|
Antwoord400 · invalid_request_error | VoorwaardeOngeldige gedocumenteerde inline structuur, dubbele sleutels, ongeldige itemidentiteit of conflict met de geconfigureerde modelmogelijkheden. | Volgende stapCorrigeer de aangegeven velden vóór elke nieuwe indiening. |
Antwoord401 · authentication_error | VoorwaardeOngeldige API-sleutel. | Volgende stapGebruik de geautoriseerde Ailoot-sleutel. |
Antwoord403 · permission_error | VoorwaardeBatch-groep niet beschikbaar. | Volgende stapControleer de toegangsrechten van de sleutel/groep. |
Antwoord422 · invalid_request_error | VoorwaardeBatch wordt via het saldo gefactureerd; aanmaken via een abonnement wordt geweigerd. | Volgende stapGebruik de geautoriseerde groep die via het saldo wordt gefactureerd. |
Antwoord422 · price_unavailable | VoorwaardeVoor de Batch-invoer kan geen prijsraming worden gemaakt. | Volgende stapBewaar de respons; gebruik de gedocumenteerde invoer voor deze familie. |
Antwoord402 · billing_error | VoorwaardeReservering voor Batch niet beschikbaar. | Volgende stapLos het toelatingsprobleem op vóór een nieuwe aanvraag. |
Antwoord503 · price_unavailable | VoorwaardePrijs voor de Batch-methode/native tarieven niet beschikbaar. | Volgende stapBewaar de respons; vervang de prijzen niet. |
Antwoord503 · api_error | VoorwaardeDe exacte leveranciersroute is niet beschikbaar. | Volgende stapBewaar de respons voor het herstel van de route. |
Antwoord503 · result_pending_check | VoorwaardeHet oorspronkelijke resultaat moet gecontroleerd worden; X-Should-Retry:false. | Volgende stapBewaar de oorspronkelijke operation_id/id en lees de status ervan uit; herhaal de oorspronkelijke POST nooit. |
Antwoord404 · not_found | VoorwaardeBewerking voor de Batch-status ontbreekt of behoort toe aan een andere identiteit. | Volgende stapGebruik de exacte oorspronkelijke id en dezelfde gebruiker/sleutel/groep. |
Aliasnamen
Modelaliasnamen
Ailoot Ultra mistralai/ministral-8b-2512:batch
Aliasnamen voor methodepaden
Gebruik de hierboven getoonde methodepaden.
Gerelateerde aanroeper-ID’s
FAQ · Mistral: Ministral 3 8B 2512 (batch)
- Welke invoer en resultaten zijn beschikbaar?
POST /v1/batches·mistralai/ministral-8b-2512:batch:text→text- Welke velden gebruikt het verzoek?
POST /v1/batches·mistralai/ministral-8b-2512:batch:endpoint,model,requests,completion_window,provider- Welke limieten gelden?
POST /v1/batches·mistralai/ministral-8b-2512:batch:requests.min_items:1