OpenAI: gpt-oss-20b (batch)
OpenAI:n pienempi yleiskäyttöinen gpt-oss-malli ottaa vastaan ja palauttaa tekstiä päättelyyn, ohjelmointiin ja erikoistuneisiin työnkulkuihin. Se tukee säädettävää päättelyä, funktiokutsuja, Structured Outputs -ominaisuutta ja julkaistujen avoimien painojen hienosäätöä.
Tietoa mallista
Tämä kuvaus kattaa mallin ominaisuudet. Ailootissa saatavilla olevat syötteet, tulosteet ja asetukset luetellaan alla valitulle menetelmälle.
gpt-oss-20b on OpenAI:n pienempi yleiskäyttöinen avoimien painojen malli päättelyyn ja kehittäjien työnkulkuihin. Se ottaa vastaan ja palauttaa tekstiä. Valmistaja julkaisee yhteensä 21 miljardia parametria, joista 3,6 miljardia on aktiivisia tokenia kohti. Se on gpt-oss-perheen 20b-versio, joka on erillinen suuremmasta 120b-versiosta ja käytäntöluokitteluun tarkoitetusta Safeguard-mallista.
Tuottaja kuvaa paikallisia ja erikoistuneita käyttötapauksia sekä vain tekstiä sisältävän koulutusaineiston, joka keskittyy STEM-aiheisiin, ohjelmointiin ja yleistietoon. Esimerkkitehtävä voi selittää koodikatkelman annettujen oletusten perusteella ja ehdottaa kohdennettua muutosta. Tekstianalyysitehtävä voi sen sijaan verrata kuvauksia nimenomaisiin kriteereihin tai muuttaa työmuistiinpanot hyödylliseksi havaintojoukoksi. Anna mallille lähdeaineisto ja lukijan tai seuraavan sovellusvaiheen tarvitsema tulos.
Julkaistussa asiantuntijaseosarkkitehtuurissa on 24 kerrosta, 32 asiantuntijaa ja neljä aktiivista asiantuntijaa tokenia kohti. OpenAI:n alkuperäinen asiantuntijapainojen MXFP4-julkaisu on suunniteltu mahtumaan 16 GB:n muistiin. Painot on julkaistu Apache 2.0 -lisenssillä, ja niitä voi hienosäätää erikoistuneeseen työskentelyyn. Nämä tuottajan ominaisuudet kuvaavat julkaistua mallia ja auttavat kehittäjää erottamaan sen koon ja mukautusroolin olettamatta tietyn sovelluksen kokoonpanoa.
OpenAI:n dokumentaatio ilmoittaa 131072 tokenin konteksti-ikkunan, 131072 tokenin enimmäismäärän luotua tulostetta ja tietojen katkaisupäiväksi 1. kesäkuuta 2024. Käytettävissä olevaan kontekstiin on mahduttava annettu aineisto, analyysi ja lopullinen vastaus. Malli tukee päättelytasoja low, medium ja high. Vaadittu Harmony-muoto pitää sisäisen analyysin ja lopullisen vastauksen eri kanavissa, ja tuottaja toteaa, ettei raakaa analyysia pidä näyttää suoraan loppukäyttäjille.
Valmistaja dokumentoi funktiokutsut, verkkoselaamisen, Python-koodin suorittamisen työkalujen kautta ja Structured Outputs -ominaisuuden. Mallin lueteltuihin ominaisuuksiin kuuluu myös suoratoisto; dokumentoitu työkaluympäristö sisältää funktiot, koodin tulkinnan, MCP-yhteydet ja verkkohaun. Sovellukset tarjoavat ja suorittavat operaationsa ja palauttavat todelliset tulokset seuraavaa päätöstä varten. Lopullisen tekstin tulee erottaa ehdotettu toiminto suoritetusta operaatiosta ja sen palauttamasta näytöstä.
Määritä kohdennetulle työnkululle vaaditut kentät, rajoitukset ja valmistumiskriteeri. Pyydä koodiin sidottua selitystä tai annettuun tekstiin sidottua johtopäätöstä ja käsittele sitten jatkopyynnöllä yksi puuttuva yksityiskohta. Hyödyllinen lopputuotos on täsmällinen muutosehdotus, vertailu, tiivistelmä tai jäsennelty tulos, joka säilyttää tarvittavat tiedot ja nimeää vielä ratkaisemattomat ehdot.
Ailoot Ultra · Eräajo POST /v1/batches openai/gpt-oss-20b:batch
openai/gpt-oss-20b:batchAloitus
OpenAI:n pienempi yleiskäyttöinen gpt-oss-malli ottaa vastaan ja palauttaa tekstiä päättelyyn, ohjelmointiin ja erikoistuneisiin työnkulkuihin. Se tukee säädettävää päättelyä, funktiokutsuja, Structured Outputs -ominaisuutta ja julkaistujen avoimien painojen hienosäätöä.
- Hyväksytyt syötteet
- Teksti
- Tulokset
- Teksti
Saatavilla Ailootissa · syötteet & menetelmät
Ailoot Ultra · Eräajo POST /v1/batches
- Syötetyypit
text- Tulostyypit
text- Tulosteen muoto
- vastaukseen sisältyvä JSON kentässä results[].response.body
| Kenttä | Tyyppi | Vaatimus | Arvot & rajat | Oletus |
|---|---|---|---|---|
Kenttäendpoint | Tyyppistring | VaatimusPakollinen | Arvot & rajat /v1/chat/completions | Oletus— |
Kenttämodel | Tyyppistring | VaatimusPakollinen | Arvot & rajat openai/gpt-oss-20b:batch | Oletus— |
Kenttärequests | Tyyppibatch_item[] | VaatimusPakollinen | Arvot & rajat Kohteiden vähimmäismäärä: 1 | Oletus— |
Kenttärequests[].custom_id | Tyyppistring | VaatimusPakollinen | Arvot & rajat | Oletus— |
Kenttärequests[].body.messages | Tyyppimessage[] | VaatimusPakollinen | Arvot & rajat | Oletus— |
Kenttäcompletion_window | Tyyppistring | VaatimusValinnainen | Arvot & rajat 24h | Oletus— |
Kenttäprovider | Tyyppiobject|null | VaatimusValinnainen | Arvot & rajat | Oletus— |
Kenttärequests[].body.model | Tyyppistring | VaatimusValinnainen | Arvot & rajat openai/gpt-oss-20b:batch, openai/gpt-oss-20b | Oletus— |
Kenttäprovider.only | Tyyppistring[] | VaatimusValinnainen | Arvot & rajat deepinfra/bf16 | Oletus— |
Kenttäprovider.allow_fallbacks | Tyyppiboolean|null | VaatimusValinnainen | Arvot & rajat false, null | Oletus— |
Menetelmän parametrit ja elinkaari
| Parametri | Sopimus |
|---|---|
Parametricontent_type | Sopimusapplication/json |
Parametrirequired | Sopimusendpoint, model, requests |
Parametrimaterial_types | Sopimustext |
Parametrirepresentation | Sopimuspyyntöön sisältyvä requests[]; jokaisella alkiolla on custom_id ja body |
Parametrirequest_endpoint_profile | Sopimus/v1/chat/completions |
Parametrifile_material | SopimusKutsuja voi lukea todellisen UTF-8 JSONL -aineiston paikallisesti requests[]-taulukkoon. Latauksen purpose-arvoa, input_file_id-arvoa tai tiedostoviitettä ei käytetä. Puuttuva tai tyhjä asiakkaan aineisto keskeyttää valmistelun ennen POST-pyyntöä. |
Parametriserialization_order | Sopimusendpoint, model, provider (jos annettu), completion_window (jos annettu), requests viimeisenä |
Parametrioptional_controls | Sopimusprovider.only, provider.allow_fallbacks, completion_window |
Parametrischema_scope | SopimusTekstimuotoiset Chat Completions -pyyntörungot dokumentoidussa pyyntöön sisältyvässä Batch-kääreessä. |
Elinkaari: asynchronous
GET /v1/batches/{operation_id} · alkuperäisen luontivastauksen todellinen response.id; sama käyttäjä, avain ja ryhmä
Hinnoittelu
Hintatiedot eivät lisää pyyntövalintoja. Tuetut parametrit on lueteltu valitulle menetelmälle.
- Nopea tila
- Ei määritetty Kun nopea tila on valittu
- Flex-tila
- Ei määritetty Kun flex-tila on valittu
- Päättelyn enimmäisteho
- Ei määritetty Kun päättelyn enimmäistehoon sovelletaan default-oletussäätöä
- Eksplisiittisen välimuistin hinnoittelu
- Ei käytössä Kun eksplisiittistä välimuistia pyydetään
Ailoot-hinnat
Hinnat asetusten mukaan
Kohdista kukin veloitus näytettyihin ehtoihin. Käytä yhtä hintaa kutakin vaihtoehtoisten asetusten ryhmää kohden.
| Asetukset | Hinnasto | Kontekstin tokenit, enemmän kuin | Kontekstin tokenit, enintään raja-arvo mukaan lukien | Veloitus |
|---|---|---|---|---|
| AsetuksetTokenien perushinnat | HinnastoPerushinta | Kontekstin tokenit, enemmän kuin— | Kontekstin tokenit, enintään raja-arvo mukaan lukienEi ylärajaa | Veloitus Syöte · Syötetokenit $0.000048 / 1K tokenia Tuloste · Tulostokenit $0.000224 / 1K tokenia Syöte · Välimuistin luku — / 1K tokenia Syöte · Välimuistiin kirjoitus — / 1K tokenia Syöte · Välimuistiin kirjoitus, 1 tunti — / 1K tokenia |
| AsetuksetPyynnön pituusluokka 1 | Hinnasto— | Kontekstin tokenit, enemmän kuin0 | Kontekstin tokenit, enintään raja-arvo mukaan lukienEi ylärajaa | Veloitus Syöte · Syötetokenit $0.000048 / 1K tokenia Tuloste · Tulostokenit $0.000224 / 1K tokenia Syöte · Välimuistin luku — / 1K tokenia Syöte · Välimuistiin kirjoitus — / 1K tokenia Syöte · Välimuistiin kirjoitus, 1 tunti — / 1K tokenia |
Ailoot varaa arvioidun summan ennen pyyntöä. Tuloksen jälkeen lopullinen veloitus toteutetaan mitatun käytön perusteella. Suoratoiston veloituksessa käytetään lopullista käyttötietuetta. Varauksen ja lopullisen veloituksen toiminta →
Esimerkkipyynnöt
Ailoot Ultra · Eräajo
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.
Vastaanota ja tallenna tulokset
Ailoot Ultra · Eräajo
vastaukseen sisältyvä JSON kentässä results[].response.body
GET /v1/batches/{operation_id}
Tarkista työn tila
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
Säilytä kaikki valmistuneet tulokset
Säilytä jokainen kokonainen palautettu vastaus, tiedosto ja sisällön osa.
Säilytä koko alkuperäinen tilatiedot sisältävä JSON, jokainen tulos ja custom_id sekä täydellinen vastaus- tai virherunko. Tallenna valmistuneet results[]-tulokset JSONL-muodossa suodattamatta.
Jos alkuperäinen vastaus on tarkistettava
Säilytä alkuperäinen operaation ID. 503 result_pending_check sisältää otsakkeen X-Should-Retry:false; älä koskaan lähetä uudelleen alkuperäistä eräajoa, jonka tila on tuntematon.
Vastauksen kentät
| Kenttä | Tyyppi |
|---|---|
Kenttäresults[].custom_id | Tyyppistring |
Kenttäresults[].response.body.choices[].message.content | Tyyppistring|null |
Kenttäresults[].error | Tyyppiobject|null |
Kenttäusage | Tyyppiobject|null |
Kenttäid | Tyyppistring |
Kenttämodel | Tyyppistring |
Kenttäendpoint | Tyyppistring |
Kenttästatus | Tyyppistring |
Kenttärequest_counts | Tyyppiobject |
Kenttäresults[].id | Tyyppistring |
Kenttäresults[].response.status_code | Tyyppiinteger |
Kenttäresults[].response.request_id | Tyyppistring |
Virheet ja seuraavat vaiheet
| Vastaus | Ehto | Seuraava vaihe |
|---|---|---|
Vastaus400 · invalid_request_error | EhtoDokumentoitu pyyntöön sisältyvä kääre on virheellinen, avaimet ovat päällekkäisiä, alkion identiteetti on virheellinen tai määritetyt mallin ominaisuudet ovat ristiriidassa. | Seuraava vaiheKorjaa ilmoitetut kentät ennen uutta lähetystä. |
Vastaus401 · authentication_error | EhtoVirheellinen API-avain. | Seuraava vaiheKäytä valtuutettua Ailoot-avainta. |
Vastaus403 · permission_error | EhtoEräajoryhmä ei ole käytettävissä. | Seuraava vaiheTarkista avaimen ja ryhmän käyttöoikeudet. |
Vastaus422 · invalid_request_error | EhtoEräajo laskutetaan saldosta; tilauspohjaisella laskutuksella tehty eräajon luontipyyntö hylätään. | Seuraava vaiheKäytä valtuutettua saldosta laskutettavaa ryhmää. |
Vastaus422 · price_unavailable | EhtoEräajon syötteelle ei voida laskea hinta-arviota. | Seuraava vaiheSäilytä vastaus; käytä dokumentoitua API-perheen syötettä. |
Vastaus402 · billing_error | EhtoEräajon varaus ei ole käytettävissä. | Seuraava vaihePoista pyynnön hyväksymisen esteet ennen uutta pyyntöä. |
Vastaus503 · price_unavailable | EhtoEräajomenetelmän hinta tai natiivit hinnat eivät ole käytettävissä. | Seuraava vaiheSäilytä vastaus; älä korvaa hintoja toisilla. |
Vastaus503 · api_error | EhtoTäsmällinen toimittajan reitti ei ole käytettävissä. | Seuraava vaiheSäilytä vastaus reitin korjaamista varten. |
Vastaus503 · result_pending_check | EhtoAlkuperäinen tulos edellyttää tarkistusta; X-Should-Retry:false. | Seuraava vaiheSäilytä alkuperäinen operation_id/id ja lue sen tila; älä koskaan toista alkuperäistä POST-pyyntöä. |
Vastaus404 · not_found | EhtoEräajon tilan operaatiota ei ole tai se kuuluu toiselle identiteetille. | Seuraava vaiheKäytä täsmälleen alkuperäistä id-arvoa sekä samaa käyttäjää, avainta ja ryhmää. |
Aliakset
Mallin aliakset
Ailoot Ultra openai/gpt-oss-20b:batch
Menetelmäpolkujen aliakset
Käytä yllä näytettyjä menetelmäpolkuja.
Liittyvät kutsujan ID:t
FAQ · OpenAI: gpt-oss-20b (batch)
- Mitä syötteitä ja tuloksia on saatavilla?
POST /v1/batches·openai/gpt-oss-20b:batch:text→text- Mitä kenttiä pyyntö käyttää?
POST /v1/batches·openai/gpt-oss-20b:batch:endpoint,model,requests,completion_window,provider- Mitä rajoja sovelletaan?
POST /v1/batches·openai/gpt-oss-20b:batch:requests.min_items:1