Source: https://ailoot.ai/models/da/openai-gpt-4o-u003a-batch/
Canonical: https://ailoot.ai/models/da/openai-gpt-4o-u003a-batch/
Language: da

# OpenAI: GPT-4o (batch)

[Markdown](https://ailoot.ai/models/da/openai-gpt-4o-u003a-batch/index.md) · [JSON](https://ailoot.ai/models/da/openai-gpt-4o-u003a-batch/facts.json)

## [OpenAI: GPT-4o (batch)](https://ailoot.ai/models/da/openai-gpt-4o-u003a-batch/)

GPT-4o kombinerer tekst- og billedforståelse med skrivning, programmering, Structured Outputs og applikationsværktøjer. Brug modellen til at udarbejde et svar baseret på kildemateriale, fortolke visuelt materiale eller returnere definerede felter fra en omfattende samling af kilder.

- [**Ailoot Ultra · Batch** `POST /v1/batches` `openai/gpt-4o:batch`](https://ailoot.ai/models/da/openai-gpt-4o-u003a-batch/#method-0)

Om modellen

Denne beskrivelse dækker modellens funktioner. Tilgængelige input, output og indstillinger i Ailoot står nedenfor for den valgte metode.

GPT-4o er OpenAIs alsidige GPT-model til tekst- og billedforståelse, skrivning og arbejde i applikationer. Bogstavet “o” står for “omni”, mens denne dokumenterede model modtager tekst og billeder og returnerer tekst, herunder Structured Outputs. En praktisk anmodning kan kombinere en skriftlig opgavebeskrivelse med fotografier, skærmbilleder eller dokumentsider og bede om en tydelig forklaring, et redigeret resultat eller definerede felter til et andet trin i applikationen.

Til en rapport skal du levere kildedokumenterne og angive den beslutning, rapporten skal understøtte. Angiv de relevante datoer, enheder og kildehenvisninger, og bed derefter om en sammenligning, der adskiller observationer, antagelser og manglende oplysninger. Til en visuel opgave skal du udpege den relevante genstand, det relevante diagram eller den relevante tilstand i grænsefladen og medtage den omgivende kontekst. Til en kodeændring skal du levere den berørte kode, den ønskede adfærd og de begrænsninger, der skal bevares. Det er konkrete måder at bruge modellens tekst- og billedfunktioner på uden at lade hele opgaven være underforstået i prompten.

OpenAIs aktuelle GPT-4o-profil angiver et kontekstvindue på 128.000 tokens, et maksimalt output på 16.384 tokens og en vidensgrænse den 1. oktober 2023. Leverandøren opfører flere daterede GPT-4o-modelversioner separat. Samtalen, inputmaterialet og det genererede svar deler kontekstbudgettet, så en stor dokumentsamling kræver stadig organisering og plads til det endelige resultat. Fakta, som ændrer sig eller kommer fra et privat system, bør leveres direkte eller hentes gennem et udtrykkeligt konfigureret værktøj.

Vejledningen til billedforståelse accepterer PNG, JPEG, WebP og ikke-animerede GIF-filer. GPT-4o understøtter billeddetaljeniveauerne low, high og auto; high og auto følger en behandling baseret på billedfliser. Forstør små etiketter, hold teksten opret, og bevar signaturforklaringen eller det omgivende diagram, når du fortolker en graf. De dokumenterede begrænsninger omfatter præcis rumlig lokalisering, omtrentlige optællinger af genstande, visse ikke-latinske skriftsystemer og panorama- eller fiskeøjevisninger. Modellen kan også beskrive et billede forkert, så gem kilden, og bed om de konkrete observationer, der understøtter en fortolkning. I OpenAIs dokumenterede arbejdsgang til billedforståelse er den samlede anmodnings nyttelast begrænset til 512 MB, og en anmodning kan indeholde op til 1.500 billeder; billederne og teksten skal også passe ind i modellens kontekst.

OpenAIs arbejdsgang til filinput giver en model med billedforståelse både udtrukket tekst og sidebilleder fra PDF-dokumenter. Kontordokumenter, der ikke er PDF-filer, leverer udtrukket tekst frem for deres indlejrede diagrammer, og regneark beriges ud fra op til de første 1.000 rækker pr. ark. Hver fil skal være under 50 MB, og filerne i en anmodning må tilsammen fylde 50 MB. Chat Completions understøtter PDF-fildele; den dokumenterede Responses-arbejdsgang accepterer yderligere filformater. Vælg en PDF-gengivelse, hvor visuel nøjagtighed er vigtig, og hold kildeidentifikatorerne synlige i resultatet.

Streaming kan returnere svaret, mens det genereres. Structured Outputs begrænser et færdigt svar til den understøttede delmængde af JSON Schema og er derfor nyttigt til dokumentudtræk eller et applikationsobjekt med definerede felter. JSON-tilstand vedrører kun gyldigheden af JSON. Definer de forventede typer, tilladte værdier og håndteringen af manglende kildeoplysninger, og håndter derefter udtrykkelige afvisninger eller ufuldstændige svar separat. Et skema fastslår ikke, om en værdi er faktuelt korrekt, så de ønskede felter skal fortsat kunne spores til det leverede materiale.

Leverandøren understøtter funktionskald, websøgning, filsøgning, kodefortolkning og MCP-forbindelser. Egne funktioner kræver meningsfulde beskrivelser og argumentskemaer; applikationen udfører den ønskede handling og returnerer resultatet til modellens næste trin. GPT-4o kan også styre et separat billedgenereringsværktøj i en konfigureret Responses-arbejdsgang. Et billede skabt af et værktøj er et selvstændigt resultat, mens det dokumenterede native svar fra GPT-4o er tekst. En agents afsluttende forklaring bør bruge faktisk hentede eller beregnede observationer frem for at behandle et foreslået værktøjskald som en udført handling.

Predicted Outputs er tilgængeligt for GPT-4o ved gendannelse af stort set kendt tekst eller kode med små ændringer. Lever det eksisterende indhold og en præcis ændring, og undersøg derefter det returnerede resultat. Denne rent tekstbaserede fremgangsmåde kan ikke kombineres med funktionskald og udelukker logprobs, max\_completion\_tokens og flere andre kontroller. En anmodning, der bruger værktøjer, er et separat valg, når svaret afhænger af nye oplysninger fra en ekstern handling.

OpenAI dokumenterer finjustering af GPT-4o, og optimeringsvejledningen navngiver specifikt modelversionen fra den 6. august 2024 til finjustering af billedforståelse med billedeksempler. Denne versionsspecifikke tilpasningsarbejdsgang adskiller sig fra en almindelig anmodning til modelaliaset. Til daglig skrivning, analyse eller udtræk skal du begynde med en nyttig opgavebeskrivelse og et eksempel på det ønskede output. En opfølgning kan afklare én manglende oplysning, revidere et felt eller forbedre samme resultat og samtidig bevare opgavens kildegrundlag og begrænsninger.

**Ailoot Ultra · Batch** `POST /v1/batches` `openai/gpt-4o:batch`

[`openai/gpt-4o:batch`](https://ailoot.ai/models/da/#m=openai%2Fgpt-4o%3Abatch&route=Ultra&caller=openai%2Fgpt-4o%3Abatch&fmt=batches)

OpenAI /`openai/gpt-4o:batch`

### Start

GPT-4o kombinerer tekst- og billedforståelse med skrivning, programmering, Structured Outputs og applikationsværktøjer. Brug modellen til at udarbejde et svar baseret på kildemateriale, fortolke visuelt materiale eller returnere definerede felter fra en omfattende samling af kilder.

Accepterede input

Tekst

Resultater

Tekst

### Tilgængelig i Ailoot · input og metoder

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

Inputtyper

`text`

Outputtyper

`text`

Outputformat

JSON direkte i results\[\].response.body

| Felt | Type | Krav | Værdier og grænser | Standard |
| --- | --- | --- | --- | --- |
| Felt`endpoint` | Type`string` | KravPåkrævet | Værdier og grænser /v1/chat/completions | Standard— |
| Felt`model` | Type`string` | KravPåkrævet | Værdier og grænser openai/gpt-4o:batch | Standard— |
| Felt`requests` | Type`batch_item[]` | KravPåkrævet | Værdier og grænser Minimumsantal elementer: 1 | Standard— |
| Felt`requests[].custom_id` | Type`string` | KravPåkrævet | Værdier og grænser | Standard— |
| Felt`requests[].body.messages` | Type`message[]` | KravPåkrævet | Værdier og grænser | Standard— |
| Felt`completion_window` | Type`string` | KravValgfrit | Værdier og grænser 24h | Standard— |
| Felt`provider` | Type`object\|null` | KravValgfrit | Værdier og grænser | Standard— |
| Felt`requests[].body.model` | Type`string` | KravValgfrit | Værdier og grænser openai/gpt-4o:batch, openai/gpt-4o | Standard— |
| Felt`provider.only` | Type`string[]` | KravValgfrit | Værdier og grænser openai | Standard— |
| Felt`provider.allow_fallbacks` | Type`boolean\|null` | KravValgfrit | Værdier og grænser false, null | Standard— |

Metodeparametre og livscyklus

| Parameter | Kontrakt |
| --- | --- |
| Parameter`content_type` | Kontraktapplication/json |
| Parameter`required` | Kontraktendpoint, model, requests |
| Parameter`material_types` | Kontrakttext |
| Parameter`representation` | Kontraktrequests\[\] direkte i anmodningen; hvert element har custom\_id og body |
| Parameter`request_endpoint_profile` | Kontrakt/v1/chat/completions |
| Parameter`file_material` | KontraktDen kaldende part kan læse det faktiske JSONL-indhold i UTF-8 lokalt ind i requests\[\]. Der angives hverken purpose til upload, input\_file\_id eller en filreference. Hvis kundematerialet mangler eller er tomt, stoppes forberedelsen før POST. |
| Parameter`serialization_order` | Kontraktendpoint, model, provider (hvis angivet), completion\_window (hvis angivet), requests til sidst |
| Parameter`optional_controls` | Kontraktprovider.only, provider.allow\_fallbacks, completion\_window |
| Parameter`schema_scope` | KontraktAnmodningsindhold for Chat Completions med tekst i den dokumenterede inline Batch-struktur. |

Livscyklus: `asynchronous`

`GET /v1/batches/{operation_id}` · det faktiske response.id fra den oprindelige oprettelse; samme bruger/nøgle/gruppe

### Priser

Tarifoplysninger tilføjer ikke anmodningsmuligheder. Understøttede parametre står ved den valgte metode.

Hurtig tilstand

Ikke angivet Når hurtig tilstand er valgt

flex-tilstand

Ikke angivet Når flex-tilstanden er valgt

Maksimal ræsonneringsindsats

Ikke angivet Når default-justeringen anvendes ved maksimal ræsonneringsindsats

Priser for eksplicit caching

Ikke aktiveret Når der anmodes om eksplicit caching

#### Ailoot-takster

#### Priser efter konfiguration

Knyt hver omkostning til de viste betingelser. Brug én takst for hver gruppe af alternative konfigurationer.

| Konfiguration | Takstplan | Konteksttokens, mere end | Konteksttokens, op til og med | Beløb |
| --- | --- | --- | --- | --- |
| KonfigurationGrundtakster for tokens | TakstplanGrundtakst | Konteksttokens, mere end— | Konteksttokens, op til og medIngen øvre grænse | Beløb Input · Inputtokens **$0.0025** / 1K tokens Output · Outputtokens **$0.01** / 1K tokens Input · Cachelæsning **$0.00125** / 1K tokens Input · Cacheskrivning **—** / 1K tokens Input · Cacheskrivning, 1 time **—** / 1K tokens |
| KonfigurationAnmodningslængde · niveau 1 | Takstplan— | Konteksttokens, mere end0 | Konteksttokens, op til og medIngen øvre grænse | Beløb Input · Inputtokens **$0.0025** / 1K tokens Output · Outputtokens **$0.01** / 1K tokens Input · Cachelæsning **$0.00125** / 1K tokens Input · Cacheskrivning **—** / 1K tokens Input · Cacheskrivning, 1 time **—** / 1K tokens |

Ailoot reserverer et estimeret beløb før en anmodning. Efter resultatet afregnes det endelige beløb ud fra det målte forbrug. Ved streaming bruges den endelige forbrugsregistrering til afregningen. [Sådan fungerer reservation og afregning →](https://ailoot.ai/docs/da/billing/reserve/)

### Eksempelanmodninger

#### Ailoot Ultra · Batch

curl · gemte testdataPython HTTP · kundens faktiske JSONLPython · gem hvert færdigt resultat

```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":"openai/gpt-4o: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 ['openai/gpt-4o:batch', 'openai/gpt-4o']: raise ValueError("body.model must be an exact documented caller or wire ID")
    return {"endpoint":"/v1/chat/completions", "model":"openai/gpt-4o: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.
```

### Hent og gem resultater

#### Ailoot Ultra · Batch

JSON direkte i results\[\].response.body

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

##### Kontrollér opgavestatus

curl · Status for den oprindelige handling

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

##### Behold alle færdige resultater

Gem hvert fuldstændigt returneret svar, hver fil og hver indholdsdel.

Gem hele den oprindelige status i JSON, hvert resultat/custom\_id og det fulde svar- eller fejlindhold. Gem færdige results\[\] som JSONL uden filtrering.

##### Hvis det oprindelige svar skal kontrolleres

Gem det oprindelige operations-ID. 503 result\_pending\_check har X-Should-Retry:false; send aldrig en oprindelig batch igen, hvis dens udfald er ukendt.

Svarfelter

| Felt | Type |
| --- | --- |
| Felt`results[].custom_id` | Typestring |
| Felt`results[].response.body.choices[].message.content` | Typestring\|null |
| Felt`results[].error` | Typeobject\|null |
| Felt`usage` | Typeobject\|null |
| Felt`id` | Typestring |
| Felt`model` | Typestring |
| Felt`endpoint` | Typestring |
| Felt`status` | Typestring |
| Felt`request_counts` | Typeobject |
| Felt`results[].id` | Typestring |
| Felt`results[].response.status_code` | Typeinteger |
| Felt`results[].response.request_id` | Typestring |

Fejl og næste trin

| Svar | Betingelse | Næste trin |
| --- | --- | --- |
| Svar400 · `invalid_request_error` | BetingelseUgyldig dokumenteret inline-struktur, dublerede nøgler, ugyldig elementidentitet eller konflikt med modellens konfigurerede funktioner. | Næste trinRet de angivne felter, før du sender en ny anmodning. |
| Svar401 · `authentication_error` | BetingelseUgyldig API-nøgle. | Næste trinBrug den godkendte Ailoot-nøgle. |
| Svar403 · `permission_error` | BetingelseBatch-gruppen er ikke tilgængelig. | Næste trinKontrollér nøglens/gruppens adgangsrettigheder. |
| Svar422 · `invalid_request_error` | BetingelseBatch afregnes via saldoen; oprettelse via et abonnement afvises. | Næste trinBrug den godkendte gruppe med saldoafregning. |
| Svar422 · `price_unavailable` | BetingelseDer kan ikke beregnes en pris for Batch-inputtet. | Næste trinGem svaret; brug det dokumenterede input for API-familien. |
| Svar402 · `billing_error` | BetingelseReservationen til Batch er ikke tilgængelig. | Næste trinAfklar adgangen, før du sender en ny anmodning. |
| Svar503 · `price_unavailable` | BetingelsePrisen for Batch-metoden eller de native satser er ikke tilgængelige. | Næste trinGem svaret; erstat ikke priserne med andre priser. |
| Svar503 · `api_error` | BetingelseDen præcise leverandørrute er ikke tilgængelig. | Næste trinGem svaret, så ruten kan repareres. |
| Svar503 · `result_pending_check` | BetingelseDet oprindelige resultat skal kontrolleres; X-Should-Retry:false. | Næste trinGem det oprindelige operation\_id/id, og læs dets status; gentag aldrig den oprindelige POST. |
| Svar404 · `not_found` | BetingelseOperationen til Batch-status findes ikke eller tilhører en anden identitet. | Næste trinBrug det nøjagtige oprindelige id og samme bruger/nøgle/gruppe. |

### Aliaser

#### Modelaliaser

**Ailoot Ultra** [`openai/gpt-4o:batch`](https://ailoot.ai/models/da/#m=openai%2Fgpt-4o%3Abatch&route=Ultra&caller=openai%2Fgpt-4o%3Abatch&fmt=batches)

#### Aliaser for metodestier

Brug metodestierne vist ovenfor.

#### Relaterede kalder-ID’er

[`openai/gpt-4o:batch`](https://ailoot.ai/models/da/#m=openai%2Fgpt-4o%3Abatch&route=Ultra&caller=openai%2Fgpt-4o%3Abatch&fmt=batches)

FAQ · OpenAI: GPT-4o (batch)

Hvilke input og resultater er tilgængelige?

`POST /v1/batches` · `openai/gpt-4o:batch`: `text` → `text`

Hvilke felter bruger anmodningen?

`POST /v1/batches` · `openai/gpt-4o:batch`: `endpoint`, `model`, `requests`, `completion_window`, `provider`

Hvilke grænser gælder?

`POST /v1/batches` · `openai/gpt-4o:batch`: `requests.min_items`: `1`

Tilslut Ailoot til Claude Code, OpenCode, Hermes eller din egen applikation.

## Virksomheden og dens projektportefølje

Virksomheden og dens projektportefølje: millioner af kunder; månedligt salg for milliarder.

## Køb tokens med rabat.

Abonnementsrabat til regelmæssigt arbejde. Rabatkoder giver op til 50% på tokenkøb.

Abonnement

Vælg et abonnement med rabat til dine regelmæssige anmodninger.

Rabatkode på op til 50%

Indtast koden ved købet. Prisen genberegnes efter den aktuelle kampagne.

Udgifter i historikken

Model, tokens og beløb gemmes for hver anmodning.

[Vælg abonnement](https://ailoot.ai/docs/da/billing/subscriptions/) · [Se modelpriser](https://ailoot.ai/models/da/)

## Tilslut API’et til produktet, du sælger.

SaaS, apps og bots efter Ailoots tilbudsvilkår og licensaftale. Anmod om en forhandlerlicens til videresalg.

Kommerciel applikation

Byg generering af tekst, billeder, video og lyd ind i tjenestens betalte funktioner.

Licens til forhandlere

Send projektbeskrivelse og adgangsmodel. Bed om skriftlige vilkår for anvendelse og videresalg.

Dokumenter på websitet

Tilbudsvilkår, licensaftale og politik for behandling af data kan læses før tilslutning.

[Anmod om forhandlerlicens](mailto:support@ailoot.ai) · [Tilbudsvilkår og licensaftale](https://ailoot.ai/legal/offer?lang=da)

## Ailoot · Virksomheden og dens projektportefølje





Ailoot bygger på solid driftserfaring, en stor kundebase, stabil service og løbende kontrol af KPI.





Virksomheden og dens projektportefølje: millioner af kunder; månedligt salg for milliarder.





Ailoot bruger denne driftserfaring til API-adgang til AI-funktioner i kundernes produkter, agenter, applikationer og automatiseringer.
