model

OpenAI: gpt-oss-20b (batch)

Markdown · JSON

OpenAI: gpt-oss-20b (batch)

Model gpt-oss serbaguna OpenAI yang lebih kecil menerima dan mengembalikan teks untuk penalaran, pemrograman, dan alur khusus. Model ini mendukung penalaran yang dapat dikonfigurasi, panggilan fungsi, Structured Outputs, serta penyesuaian bobot terbuka yang dipublikasikan.

Tentang model

Deskripsi ini mencakup kemampuan model. Masukan, keluaran, dan opsi yang tersedia di Ailoot tercantum di bawah untuk metode yang dipilih.

gpt-oss-20b adalah model serbaguna berbobot terbuka OpenAI yang lebih kecil untuk penalaran dan alur kerja pengembang. Model ini menerima teks dan mengembalikan teks. Produsen memublikasikan 21 miliar parameter total dengan 3.6 miliar parameter aktif per token. Ini adalah edisi 20b dari keluarga gpt-oss, terpisah dari edisi 120b yang lebih besar dan dari model Safeguard untuk klasifikasi kebijakan.

Produsen menjelaskan penggunaan lokal dan khusus serta data pelatihan berbasis teks saja yang berfokus pada STEM, pemrograman, dan pengetahuan umum. Contoh tugasnya adalah menjelaskan potongan kode berdasarkan asumsi yang dinyatakan dan mengusulkan perubahan terfokus. Tugas analisis teks dapat berupa membandingkan deskripsi dengan kriteria eksplisit atau mengubah catatan kerja menjadi kumpulan temuan yang berguna. Berikan model bahan sumber dan hasil yang dibutuhkan pembaca atau langkah aplikasi berikutnya.

Arsitektur mixture-of-experts yang dipublikasikan memiliki 24 lapisan, 32 pakar, dan empat pakar aktif per token. Rilis MXFP4 asli OpenAI untuk bobot pakar dirancang agar muat dalam memori 16 GB. Bobotnya dirilis di bawah Apache 2.0 dan dapat disesuaikan untuk pekerjaan khusus. Sifat dari produsen ini menjelaskan model yang dipublikasikan, sehingga pengembang dapat membedakan ukuran serta peran penyesuaiannya tanpa mengasumsikan konfigurasi yang digunakan aplikasi tertentu.

Dokumentasi OpenAI mencantumkan jendela konteks 131072 token, keluaran maksimum yang dihasilkan sebesar 131072 token, dan batas pengetahuan 1 Juni 2024. Konteks yang tersedia harus menampung bahan yang diberikan, analisis, dan jawaban akhir. Model mendukung tingkat penalaran low, medium, dan high. Format Harmony yang diwajibkan memisahkan analisis internal dan respons akhir ke kanal yang berbeda, dan produsen menyatakan bahwa analisis mentah tidak boleh ditampilkan langsung kepada pengguna akhir.

Produsen mendokumentasikan panggilan fungsi, penelusuran web, eksekusi kode Python melalui alat, dan Structured Outputs. Fitur model yang tercantum juga mencakup pengaliran; lingkungan alat yang didokumentasikan meliputi fungsi, interpretasi kode, koneksi MCP, dan pencarian web. Aplikasi menyediakan serta mengeksekusi operasinya dan mengembalikan hasil sebenarnya untuk keputusan berikutnya. Teks akhir harus membedakan tindakan yang diusulkan dari operasi yang telah selesai beserta bukti yang dikembalikannya.

Untuk alur yang terfokus, tentukan kolom, batasan, dan kriteria penyelesaian yang diperlukan. Minta penjelasan yang terkait dengan kode atau kesimpulan yang terkait dengan teks yang diberikan, lalu gunakan tindak lanjut untuk menangani satu detail yang belum ada. Artefak akhir yang berguna adalah usulan penyuntingan, perbandingan, ringkasan, atau hasil berstruktur yang spesifik, yang mempertahankan fakta yang diperlukan dan menyebutkan kondisi yang belum terselesaikan.

Ailoot Ultra · Batch POST /v1/batches openai/gpt-oss-20b:batch

openai/gpt-oss-20b:batch

OpenAI /openai/gpt-oss-20b:batch

Mulai

Model gpt-oss serbaguna OpenAI yang lebih kecil menerima dan mengembalikan teks untuk penalaran, pemrograman, dan alur khusus. Model ini mendukung penalaran yang dapat dikonfigurasi, panggilan fungsi, Structured Outputs, serta penyesuaian bobot terbuka yang dipublikasikan.

Masukan yang diterima
Teks
Hasil
Teks

Tersedia di Ailoot · masukan & metode

Ailoot Ultra · Batch POST /v1/batches
Masukan
text
Keluaran
text
Format keluaran
JSON inline pada results[].response.body
KolomJenisPersyaratanNilai & batasanBawaan
KolomendpointJenisstringPersyaratanWajibNilai & batasan
/v1/chat/completions
Bawaan—
KolommodelJenisstringPersyaratanWajibNilai & batasan
openai/gpt-oss-20b:batch
Bawaan—
KolomrequestsJenisbatch_item[]PersyaratanWajibNilai & batasan
Item minimum: 1
Bawaan—
Kolomrequests[].custom_idJenisstringPersyaratanWajibNilai & batasanBawaan—
Kolomrequests[].body.messagesJenismessage[]PersyaratanWajibNilai & batasanBawaan—
Kolomcompletion_windowJenisstringPersyaratanOpsionalNilai & batasan
24h
Bawaan—
KolomproviderJenisobject|nullPersyaratanOpsionalNilai & batasanBawaan—
Kolomrequests[].body.modelJenisstringPersyaratanOpsionalNilai & batasan
openai/gpt-oss-20b:batch, openai/gpt-oss-20b
Bawaan—
Kolomprovider.onlyJenisstring[]PersyaratanOpsionalNilai & batasan
deepinfra/bf16
Bawaan—
Kolomprovider.allow_fallbacksJenisboolean|nullPersyaratanOpsionalNilai & batasan
false, null
Bawaan—
Parameter metode dan siklus hidup
ParameterKontrak
Parametercontent_typeKontrakapplication/json
ParameterrequiredKontrakendpoint, model, requests
Parametermaterial_typesKontraktext
ParameterrepresentationKontrakrequests[] inline; setiap item memiliki custom_id dan body
Parameterrequest_endpoint_profileKontrak/v1/chat/completions
Parameterfile_materialKontrakPemanggil dapat membaca JSONL UTF-8 aktual secara lokal ke dalam requests[]. Tidak menggunakan purpose unggahan, input_file_id, atau referensi file. Materi pelanggan yang tidak ada atau kosong menghentikan persiapan sebelum POST.
Parameterserialization_orderKontrakendpoint, model, provider (jika disertakan), completion_window (jika disertakan), requests paling akhir
Parameteroptional_controlsKontrakprovider.only, provider.allow_fallbacks, completion_window
Parameterschema_scopeKontrakbody teks Chat Completions dalam envelope Batch inline yang didokumentasikan.

Siklus hidup: asynchronous

GET /v1/batches/{operation_id} · response.id aktual dari operasi create awal; user/key/group yang sama

Paket

Referensi tarif tidak menambah opsi permintaan. Parameter yang didukung tercantum pada metode yang dipilih.

Mode Fast
Tidak ditentukan Saat mode fast dipilih
Mode Flex
Tidak ditentukan Saat mode flex dipilih
Upaya penalaran maksimum
Tidak ditentukan Saat upaya penalaran maksimum menggunakan penyesuaian default
Harga cache eksplisit
Tidak diaktifkan Saat cache eksplisit diminta

Tarif Ailoot

Harga menurut konfigurasi

Cocokkan setiap biaya dengan kondisi yang ditampilkan. Gunakan satu tarif untuk setiap kelompok konfigurasi alternatif.

KonfigurasiJadwal tarifToken konteks, lebih dariToken konteks, hingga dan termasukBiaya
KonfigurasiTarif dasar tokenJadwal tarifTarif dasarToken konteks, lebih dari—Token konteks, hingga dan termasukTanpa batas atasBiaya
Masukan · Token masukan $0.000048 / 1K token
Keluaran · Token keluaran $0.000224 / 1K token
Masukan · Pembacaan cache — / 1K token
Masukan · Penulisan cache — / 1K token
Masukan · Penulisan cache, 1 jam — / 1K token
KonfigurasiPanjang permintaan · tingkat 1Jadwal tarif—Token konteks, lebih dari0Token konteks, hingga dan termasukTanpa batas atasBiaya
Masukan · Token masukan $0.000048 / 1K token
Keluaran · Token keluaran $0.000224 / 1K token
Masukan · Pembacaan cache — / 1K token
Masukan · Penulisan cache — / 1K token
Masukan · Penulisan cache, 1 jam — / 1K token

Ailoot mencadangkan perkiraan dana sebelum permintaan. Setelah hasil diterima, tagihan akhir diselesaikan berdasarkan penggunaan yang terukur. Penyelesaian tagihan streaming menggunakan catatan penggunaan akhir. Cara kerja cadangan dan penyelesaian tagihan →

Contoh permintaan

Ailoot Ultra · Batch

curl · fixture yang disimpanPython HTTP · JSONL pelanggan yang sebenarnyaPython · simpan setiap hasil yang telah selesai
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":"openai/gpt-oss-20b: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 ['openai/gpt-oss-20b:batch', 'openai/gpt-oss-20b']: raise ValueError("body.model must be an exact documented caller or wire ID")
    return {"endpoint":"/v1/chat/completions", "model":"openai/gpt-oss-20b: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.

Terima dan simpan hasil

Ailoot Ultra · Batch

JSON inline pada results[].response.body

  • GET /v1/batches/{operation_id}
Periksa status tugas
curl · status operasi asli
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, berkas, dan bagian konten yang dikembalikan.

Pertahankan JSON status asli secara lengkap, setiap result/custom_id, serta body response atau error yang lengkap. Simpan results[] yang telah selesai sebagai JSONL tanpa penyaringan.

Jika respons asli perlu diperiksa

Pertahankan ID operasi asli. 503 result_pending_check memiliki X-Should-Retry:false; jangan pernah kirim ulang batch asli yang statusnya tidak diketahui.

Kolom respons
KolomJenis
Kolomresults[].custom_idJenisstring
Kolomresults[].response.body.choices[].message.contentJenisstring|null
Kolomresults[].errorJenisobject|null
KolomusageJenisobject|null
KolomidJenisstring
KolommodelJenisstring
KolomendpointJenisstring
KolomstatusJenisstring
Kolomrequest_countsJenisobject
Kolomresults[].idJenisstring
Kolomresults[].response.status_codeJenisinteger
Kolomresults[].response.request_idJenisstring
Kesalahan dan langkah berikutnya
ResponsKondisiLangkah berikutnya
Respons400 · invalid_request_errorKondisiEnvelope inline yang didokumentasikan tidak valid, ada kunci duplikat, atau terdapat konflik pada identitas item atau kemampuan model yang dikonfigurasi.Langkah berikutnyaPerbaiki kolom yang ditunjukkan sebelum pengiriman baru apa pun.
Respons401 · authentication_errorKondisiKunci API tidak valid.Langkah berikutnyaGunakan kunci Ailoot yang berizin.
Respons403 · permission_errorKondisiGrup Batch tidak tersedia.Langkah berikutnyaPeriksa hak akses key/group.
Respons422 · invalid_request_errorKondisiBatch menggunakan penagihan dari saldo; pembuatan dengan langganan ditolak.Langkah berikutnyaGunakan grup berizin yang ditagih dari saldo.
Respons422 · price_unavailableKondisiPenawaran harga untuk input Batch tidak dapat dibuat.Langkah berikutnyaSimpan respons; gunakan input keluarga API yang didokumentasikan.
Respons402 · billing_errorKondisiCadangan Batch tidak tersedia.Langkah berikutnyaSelesaikan kendala penerimaan sebelum mengirim permintaan baru.
Respons503 · price_unavailableKondisiHarga metode Batch/tarif native tidak tersedia.Langkah berikutnyaSimpan respons; jangan mengganti harga.
Respons503 · api_errorKondisiRute pemasok yang tepat tidak tersedia.Langkah berikutnyaSimpan respons untuk perbaikan rute.
Respons503 · result_pending_checkKondisiHasil asli perlu diperiksa; X-Should-Retry:false.Langkah berikutnyaSimpan operation_id/id asli dan baca statusnya; jangan pernah mengulangi POST asli.
Respons404 · not_foundKondisiOperasi status Batch tidak ada atau dimiliki oleh identitas lain.Langkah berikutnyaGunakan id asli yang persis sama dan user/key/group yang sama.

Alias

Alias model

Ailoot Ultra openai/gpt-oss-20b:batch

Alias jalur metode

Gunakan jalur metode yang ditampilkan di atas.

ID pemanggil terkait

openai/gpt-oss-20b:batch

FAQ · OpenAI: gpt-oss-20b (batch)
Input dan hasil apa yang tersedia?

POST /v1/batches · openai/gpt-oss-20b:batch: text → text

Kolom apa yang digunakan permintaan?

POST /v1/batches · openai/gpt-oss-20b:batch: endpoint, model, requests, completion_window, provider

Batasan apa yang berlaku?

POST /v1/batches · openai/gpt-oss-20b:batch: requests.min_items: 1

Rincian selengkapnya

Hubungkan Ailoot ke Claude Code, OpenCode, Hermes, atau aplikasi Anda.

Perusahaan dan portofolio proyeknya

Perusahaan dan portofolio proyeknya: jutaan pelanggan; penjualan miliaran setiap bulan.

Beli token dengan diskon.

Diskon langganan untuk pekerjaan rutin. Kode promo — hingga 50% untuk pembelian token.

Langganan
Pilih paket dengan diskon untuk permintaan rutin Anda.
Kode promo hingga 50%
Masukkan kode saat membeli. Harga dihitung ulang sesuai promosi aktif.
Biaya dalam riwayat
Model, token, dan jumlah tagihan disimpan untuk setiap permintaan.

Pilih langganan · Lihat harga model

Hubungkan API ke produk yang Anda jual.

SaaS, aplikasi, dan bot — sesuai penawaran dan perjanjian lisensi Ailoot. Untuk penjualan kembali, mintalah lisensi reseller.

Aplikasi komersial
Integrasikan pembuatan teks, gambar, video, dan suara dalam fitur berbayar layanan Anda.
Lisensi reseller
Kirim deskripsi proyek dan skema akses. Mintalah ketentuan penggunaan dan penjualan kembali secara tertulis.
Dokumen di situs
Penawaran, perjanjian lisensi, dan kebijakan pemrosesan data tersedia sebelum koneksi.

Minta lisensi reseller · Penawaran dan perjanjian lisensi