Source: https://ailoot.ai/models/ms/mistralai-mistral-medium-3-1-u003a-batch/
Canonical: https://ailoot.ai/models/ms/mistralai-mistral-medium-3-1-u003a-batch/
Language: ms

# Mistral: Mistral Medium 3.1 (batch)

[Markdown](https://ailoot.ai/models/ms/mistralai-mistral-medium-3-1-u003a-batch/index.md) · [JSON](https://ailoot.ai/models/ms/mistralai-mistral-medium-3-1-u003a-batch/facts.json)

## [Mistral: Mistral Medium 3.1 (batch)](https://ailoot.ai/models/ms/mistralai-mistral-medium-3-1-u003a-batch/)

Mistral Medium 3.1 ialah model teks dan imej untuk jawapan perbualan, soalan dokumen dan pengekstrakan berstruktur. Konteks 128k yang dinyatakan oleh pembuat serta ciri panggilan fungsi, output ramalan dan awalan yang disenaraikan menyokong penjelasan berasaskan sumber dan aliran kerja penyuntingan bersasar.

- [**Ailoot Ultra · Kelompok** `POST /v1/batches` `mistralai/mistral-medium-3.1:batch`](https://ailoot.ai/models/ms/mistralai-mistral-medium-3-1-u003a-batch/#method-0)

Tentang model

Huraian ini merangkumi keupayaan model. Input, output dan pilihan yang tersedia di Ailoot disenaraikan di bawah untuk kaedah yang dipilih.

Mistral Medium 3.1 ialah edisi multimodal Mistral AI untuk pemahaman teks dan visual. Pembuat menerangkan semakan ini sebagai penambahbaikan nada dan prestasi dalam barisan Medium 3. Ia menerima teks dan imej serta menghasilkan teks: penjelasan, jawapan dokumen, rekod berstruktur atau cadangan panggilan fungsi. Pengecam tetap pembuat untuk edisi ini ialah mistral-medium-2508.

Konteks dan edisi khusus

Halaman model mendokumentasikan tetingkap konteks 128k. Gunakannya untuk mengekalkan petikan sumber berkaitan, bukti imej, perbualan dan tugas pengguna bersama. Kenal pasti peranan dokumen dan soalan yang hendak dijawab sebelum memberikan koleksi besar. Konteks panjang boleh menyokong perbandingan berfokus sementara artifak akhir kekal berupa jadual pendek atau bahagian yang disemak.

Medium 3.1 mengekalkan spesifikasinya sendiri. Konteks 256k, seni bina padat 128B dan mod penaakulan hibrid boleh konfigurasi yang diterangkan untuk Medium 3.5 tidak patut dikaitkan dengan entri ini. Halaman 3.1 tidak memberikan bilangan parameter atau angka panjang jawapan maksimum berasingan yang boleh digantikan dengan selamat daripada model kemudian.

Output berstruktur dan fungsi

Pembuat menyenaraikan output berstruktur, panggilan fungsi dan output ramalan antara ciri edisi ini. Untuk tugas pengekstrakan berstruktur, takrifkan medan wajib, jenis yang dijangka dan cara menangani maklumat yang tiada dalam sumber. Rekod boleh mengandungi pengecam dokumen, pernyataan yang diekstrak, lokasi sumbernya dan soalan yang masih ada. Minta rekod sahaja apabila program akan menghuraikannya, atau kekalkan penjelasan prosa berasingan apabila seseorang perlu memeriksa tafsiran.

Dokumentasi output berstruktur bersama Mistral membezakan mod JSON daripada skema tersuai. Mod JSON memerlukan arahan jelas tentang format JSON yang diingini, manakala laluan tersuai mentakrifkan struktur yang lebih khusus. Ini pemformatan hasil teks, bukannya modaliti kandungan baharu atau tindakan luaran.

Untuk fungsi, aplikasi mentakrifkan operasi dan argumen yang tersedia, model memilih panggilan yang sesuai dan menyediakan nilai, dan aplikasi melaksanakannya. Hasilnya kemudian menjadi maklumat untuk jawapan seterusnya. Pembantu dokumen boleh menggunakan carian untuk memperoleh data rujukan yang tiada, tetapi hanya jika aplikasi sekeliling membekalkan carian itu dan mengembalikan hasil sebenarnya. Kekalkan panggilan yang dicadangkan dan data yang dikembalikan berkaitan antara satu sama lain.

Suntingan ramalan dan awalan respons

Output ramalan berguna apabila sebahagian besar hasil yang diingini sudah diketahui, seperti dokumen atau fail kod yang memerlukan suntingan terhad. Berikan kandungan sedia ada dan terangkan perubahan dengan tepat, termasuk perkara yang mesti dikekalkan tanpa perubahan. Permintaan mungkin mengemas kini istilah satu bahagian atau menggantikan satu butiran pelaksanaan sambil mengekalkan seluruh dokumen selebihnya. Ramalan mengandungi kandungan output yang dijangka dan bukannya perubahan selesai yang diterapkan pada fail.

Halaman model turut menyenaraikan penyambungan awalan respons. Dalam dokumentasi sembang pembuat, awalan membekalkan permulaan yang diketahui untuk respons pembantu, selepas itu penjanaan diteruskan. Permulaan yang diketahui dan badan ramalan menyelesaikan masalah penyediaan yang berbeza. Pemprosesan kelompok dan antara muka ejen/perbualan juga ialah ciri aliran kerja, bukannya edisi imej, audio atau penaakulan berasingan Medium 3.1.

Soalan dokumen dan visual

Aliran kerja document-QnA yang disenaraikan menggabungkan teks, struktur dan pemformatan yang disediakan melalui OCR dengan analisis model bahasa. Tanya tentang syarat, petikan atau hubungan khusus yang diperlukan oleh tugas. Perbandingan boleh mengenal pasti dokumen sumber dan meminta pernyataan bersama, percanggahan dan butiran yang belum diselesaikan, dengan mengekalkan lokasi sumber di sisi setiap dapatan.

Panduan penglihatan pembuat secara jelas merangkumi Medium 3.1. Soalan visual langsung boleh memberikan carta, imej dokumen atau tangkapan skrin yang boleh dibaca dan bertanya bukti yang kelihatan yang menyokong kesimpulan. Kekalkan paksi, unit, label dan konteks di sekeliling medan yang dipangkas. Jika beberapa imej diberikan, kenal pasti susunan dan peranannya dan jangan biarkan model menyimpulkan imej yang merupakan asal, semakan atau rujukan.

Contohnya, padankan keperluan proses bertulis dengan tangkapan skrin dan minta jadual padanan yang kelihatan, perbezaan dan soalan yang memerlukan lebih maklumat. Tugas lain boleh memberikan dua versi dokumen dan meminta petikan semakan yang mengekalkan syarat bersama sambil menyelesaikan ketidakselarasan yang dinamakan. Ini ialah cadangan aplikasi keupayaan visual, dokumen dan penyuntingan yang didokumentasikan, dengan hasil yang diperlukan ditentukan terlebih dahulu.

Penyediaan artifak akhir

Berikan pembantu peranan yang jelas, bahan sumber untuk digunakan dan bentuk jawapan. Kekalkan peraturan respons yang berterusan secara berasingan daripada dokumen yang diperiksa, dan nyatakan bahasa akhir serta istilah. Respons yang berguna boleh memisahkan fakta yang diekstrak, sumbernya dan tafsiran, menjadikannya lebih mudah diperiksa berbanding satu ringkasan yang digabungkan.

Hasil yang didokumentasikan kekal berupa teks. Alat luaran, perubahan fail dan pemprosesan dokumen selanjutnya milik aplikasi yang disambungkan kepada perbualan. Kekalkan edisi Medium 3.1 yang dinamakan dan konteks 128k model ini, dan minta penjelasan, rekod berstruktur atau semakan bersasar yang benar-benar diperlukan oleh langkah seterusnya.

**Ailoot Ultra · Kelompok** `POST /v1/batches` `mistralai/mistral-medium-3.1:batch`

[`mistralai/mistral-medium-3.1:batch`](https://ailoot.ai/models/ms/#m=mistralai%2Fmistral-medium-3.1%3Abatch&route=Ultra&caller=mistralai%2Fmistral-medium-3.1%3Abatch&fmt=batches)

Mistral /`mistralai/mistral-medium-3.1:batch`

### Pengenalan

Mistral Medium 3.1 ialah model teks dan imej untuk jawapan perbualan, soalan dokumen dan pengekstrakan berstruktur. Konteks 128k yang dinyatakan oleh pembuat serta ciri panggilan fungsi, output ramalan dan awalan yang disenaraikan menyokong penjelasan berasaskan sumber dan aliran kerja penyuntingan bersasar.

Input yang diterima

Teks

Hasil

Teks

### Tersedia di Ailoot · input & kaedah

**Ailoot Ultra · Kelompok** `POST /v1/batches`

Input

`text`

Output

`text`

Format output

JSON results\[\].response.body sebaris

| Medan | Jenis | Keperluan | Nilai & had | Lalai |
| --- | --- | --- | --- | --- |
| Medan`endpoint` | Jenis`string` | KeperluanDiperlukan | Nilai & had /v1/chat/completions | Lalai— |
| Medan`model` | Jenis`string` | KeperluanDiperlukan | Nilai & had mistralai/mistral-medium-3.1:batch | Lalai— |
| Medan`requests` | Jenis`batch_item[]` | KeperluanDiperlukan | Nilai & had Item minimum: 1 | Lalai— |
| Medan`requests[].custom_id` | Jenis`string` | KeperluanDiperlukan | Nilai & had | Lalai— |
| Medan`requests[].body.messages` | Jenis`message[]` | KeperluanDiperlukan | Nilai & had | Lalai— |
| Medan`completion_window` | Jenis`string` | KeperluanPilihan | Nilai & had 24h | Lalai— |
| Medan`provider` | Jenis`object\|null` | KeperluanPilihan | Nilai & had | Lalai— |
| Medan`requests[].body.model` | Jenis`string` | KeperluanPilihan | Nilai & had mistralai/mistral-medium-3.1:batch, mistralai/mistral-medium-3.1 | Lalai— |
| Medan`provider.only` | Jenis`string[]` | KeperluanPilihan | Nilai & had mistral | Lalai— |
| Medan`provider.allow_fallbacks` | Jenis`boolean\|null` | KeperluanPilihan | Nilai & had false, null | Lalai— |

Parameter kaedah dan kitar hayat

| Parameter | Kontrak |
| --- | --- |
| Parameter`content_type` | Kontrakapplication/json |
| Parameter`required` | Kontrakendpoint, model, requests |
| Parameter`material_types` | Kontraktext |
| Parameter`representation` | Kontrakrequests\[\] sebaris; setiap item mempunyai custom\_id dan body |
| Parameter`request_endpoint_profile` | Kontrak/v1/chat/completions |
| Parameter`file_material` | KontrakPemanggil boleh membaca JSONL UTF-8 sebenar secara setempat ke dalam requests\[\]. Tiada tujuan muat naik, input\_file\_id atau rujukan fail digunakan. Bahan pelanggan yang tiada atau kosong menghentikan persediaan sebelum POST. |
| Parameter`serialization_order` | Kontrakendpoint, model, provider (jika dibekalkan), completion\_window (jika dibekalkan), requests di akhir |
| Parameter`optional_controls` | Kontrakprovider.only, provider.allow\_fallbacks, completion\_window |
| Parameter`schema_scope` | KontrakBadan permintaan Chat Completions teks dalam pembungkus Batch sebaris yang didokumenkan. |

Kitar hayat: `asynchronous`

`GET /v1/batches/{operation_id}` · response.id sebenar daripada respons penciptaan asal; pengguna/kunci/kumpulan yang sama

### Pelan harga

Rujukan tarif tidak menambah pilihan permintaan. Parameter yang disokong disenaraikan untuk kaedah yang dipilih.

Mod pantas

Tidak dinyatakan Apabila mod pantas dipilih

Mod flex

Tidak dinyatakan Apabila mod flex dipilih

Usaha penaakulan maksimum

Tidak dinyatakan Apabila usaha penaakulan maksimum menggunakan pelarasan default

Harga cache eksplisit

Tidak diaktifkan Apabila cache eksplisit diminta

#### Kadar Ailoot

#### Harga mengikut konfigurasi

Padankan setiap caj dengan syarat yang dipaparkan. Gunakan satu kadar bagi setiap set konfigurasi alternatif.

| Konfigurasi | Jadual kadar | Token konteks, melebihi | Token konteks, sehingga dan termasuk | Caj |
| --- | --- | --- | --- | --- |
| KonfigurasiKadar asas token | Jadual kadarKadar asas | Token konteks, melebihi— | Token konteks, sehingga dan termasukTiada had atas | Caj Input · Token input **$0.0004** / 1K token Output · Token output **$0.002** / 1K token Input · Bacaan cache **$0.00004** / 1K token Input · Penulisan cache **—** / 1K token Input · Penulisan cache, 1 jam **—** / 1K token |
| KonfigurasiTahap panjang permintaan 1 | Jadual kadar— | Token konteks, melebihi0 | Token konteks, sehingga dan termasukTiada had atas | Caj Input · Token input **$0.0004** / 1K token Output · Token output **$0.002** / 1K token Input · Bacaan cache **$0.00004** / 1K token Input · Penulisan cache **—** / 1K token Input · Penulisan cache, 1 jam **—** / 1K token |

Ailoot merizabkan anggaran amaun sebelum permintaan. Selepas hasil diterima, caj akhir diselesaikan berdasarkan penggunaan terukur. Penyelesaian caj penstriman menggunakan rekod penggunaan akhir. [Cara rizab dan penyelesaian caj berfungsi →](https://ailoot.ai/docs/ms/billing/reserve/)

### Contoh permintaan

#### Ailoot Ultra · Kelompok

curl · data ujian yang disimpanPython HTTP · JSONL sebenar pelangganPython · simpan setiap hasil yang telah siap

```bash
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
```

```python
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"))
```

```python
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.
```

### Terima dan simpan hasil

#### Ailoot Ultra · Kelompok

JSON results\[\].response.body sebaris

- `GET /v1/batches/{operation_id}`

##### Semak status tugas

curl · status operasi asal

```bash
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
```

##### Simpan semua hasil yang selesai

Simpan setiap respons lengkap, fail dan bahagian kandungan yang dikembalikan.

Simpan keseluruhan JSON status asal, setiap hasil/custom\_id serta badan respons atau ralat yang lengkap. Simpan results\[\] yang telah selesai sebagai JSONL tanpa penapisan.

##### Jika respons asal perlu disemak

Simpan ID operasi asal. 503 result\_pending\_check mempunyai X-Should-Retry:false; jangan sekali-kali hantar semula kelompok asal yang hasilnya tidak diketahui.

Medan respons

| Medan | Jenis |
| --- | --- |
| Medan`results[].custom_id` | Jenisstring |
| Medan`results[].response.body.choices[].message.content` | Jenisstring\|null |
| Medan`results[].error` | Jenisobject\|null |
| Medan`usage` | Jenisobject\|null |
| Medan`id` | Jenisstring |
| Medan`model` | Jenisstring |
| Medan`endpoint` | Jenisstring |
| Medan`status` | Jenisstring |
| Medan`request_counts` | Jenisobject |
| Medan`results[].id` | Jenisstring |
| Medan`results[].response.status_code` | Jenisinteger |
| Medan`results[].response.request_id` | Jenisstring |

Ralat dan langkah seterusnya

| Respons | Syarat | Langkah seterusnya |
| --- | --- | --- |
| Respons400 · `invalid_request_error` | SyaratPembungkus sebaris yang didokumenkan tidak sah, kunci berulang, identiti item atau keupayaan model yang dikonfigurasikan bercanggah. | Langkah seterusnyaBetulkan medan yang dinyatakan sebelum sebarang penghantaran baharu. |
| Respons401 · `authentication_error` | SyaratKunci API tidak sah. | Langkah seterusnyaGunakan kunci Ailoot yang dibenarkan. |
| Respons403 · `permission_error` | SyaratKumpulan kelompok tidak tersedia. | Langkah seterusnyaSemak hak akses kunci/kumpulan. |
| Respons422 · `invalid_request_error` | SyaratKelompok menggunakan pengebilan baki; penciptaan melalui langganan ditolak. | Langkah seterusnyaGunakan kumpulan yang dibenarkan untuk pengebilan melalui baki. |
| Respons422 · `price_unavailable` | SyaratSebut harga tidak dapat diberikan untuk input kelompok. | Langkah seterusnyaSimpan respons; gunakan input keluarga API yang didokumenkan. |
| Respons402 · `billing_error` | SyaratRizab kelompok tidak tersedia. | Langkah seterusnyaSelesaikan isu penerimaan permintaan sebelum menghantar permintaan baharu. |
| Respons503 · `price_unavailable` | SyaratHarga kaedah kelompok/kadar natif tidak tersedia. | Langkah seterusnyaSimpan respons; jangan gantikan harga. |
| Respons503 · `api_error` | SyaratLaluan pembekal yang tepat tidak tersedia. | Langkah seterusnyaSimpan respons untuk pembaikan laluan. |
| Respons503 · `result_pending_check` | SyaratHasil asal memerlukan semakan; X-Should-Retry:false. | Langkah seterusnyaSimpan operation\_id/id asal dan baca statusnya; jangan sekali-kali ulang POST asal. |
| Respons404 · `not_found` | SyaratOperasi status kelompok tiada atau dimiliki oleh identiti lain. | Langkah seterusnyaGunakan id asal yang tepat serta pengguna/kunci/kumpulan yang sama. |

### Alias

#### Alias model

**Ailoot Ultra** [`mistralai/mistral-medium-3.1:batch`](https://ailoot.ai/models/ms/#m=mistralai%2Fmistral-medium-3.1%3Abatch&route=Ultra&caller=mistralai%2Fmistral-medium-3.1%3Abatch&fmt=batches)

#### Alias laluan kaedah

Gunakan laluan kaedah yang dipaparkan di atas.

#### ID pemanggil berkaitan

[`mistralai/mistral-medium-3.1:batch`](https://ailoot.ai/models/ms/#m=mistralai%2Fmistral-medium-3.1%3Abatch&route=Ultra&caller=mistralai%2Fmistral-medium-3.1%3Abatch&fmt=batches)

FAQ · Mistral: Mistral Medium 3.1 (batch)

Apakah input dan hasil yang tersedia?

`POST /v1/batches` · `mistralai/mistral-medium-3.1:batch`: `text` → `text`

Apakah medan yang digunakan oleh permintaan?

`POST /v1/batches` · `mistralai/mistral-medium-3.1:batch`: `endpoint`, `model`, `requests`, `completion_window`, `provider`

Apakah had yang terpakai?

`POST /v1/batches` · `mistralai/mistral-medium-3.1:batch`: `requests.min_items`: `1`

Sambungkan Ailoot kepada Claude Code, OpenCode, Hermes atau aplikasi anda.

## Syarikat dan portfolio projeknya

Syarikat dan portfolio projeknya: jutaan pelanggan; jualan bernilai berbilion setiap bulan.

## Beli token dengan diskaun.

Diskaun langganan untuk penggunaan berkala. Kod promosi — sehingga 50% bagi pembelian token.

Langganan

Pilih pelan berdiskaun untuk permintaan berkala anda.

Kod promosi sehingga 50%

Masukkan kod semasa pembelian. Harga dikira semula mengikut promosi semasa.

Perbelanjaan dalam sejarah

Model, token dan jumlah disimpan bagi setiap permintaan.

[Pilih langganan](https://ailoot.ai/docs/ms/billing/subscriptions/) · [Lihat harga model](https://ailoot.ai/models/ms/)

## Sambungkan API kepada produk yang anda jual.

SaaS, aplikasi dan bot — di bawah tawaran rasmi serta perjanjian lesen Ailoot. Untuk jualan semula, mohon lesen penjual semula.

Aplikasi komersial

Tambahkan penjanaan teks, imej, video dan audio pada ciri berbayar perkhidmatan anda.

Lesen penjual semula

Hantar keterangan projek dan susunan akses. Minta terma penggunaan serta jualan semula secara bertulis.

Dokumen pada laman

Tawaran, perjanjian lesen dan dasar pemprosesan data tersedia sebelum sambungan.

[Mohon lesen penjual semula](mailto:support@ailoot.ai) · [Tawaran dan perjanjian lesen](https://ailoot.ai/legal/offer?lang=ms)

## Ailoot · Syarikat dan portfolio projeknya





Ailoot berteraskan pengalaman operasi yang mantap, pangkalan pelanggan yang besar, perkhidmatan yang stabil dan pemantauan KPI berterusan.





Syarikat dan portfolio projeknya: jutaan pelanggan; jualan bernilai berbilion setiap bulan.





Ailoot menggunakan pengalaman operasi ini untuk akses API kepada ciri AI dalam produk pelanggan, ejen, aplikasi dan automasi.
