Anthropic: Claude Opus 4.7 (batch)
Claude Opus 4.7 is ontworpen voor complex engineeringwerk en analyse van documenten en afbeeldingen met kleine details. Het besteedt bijzondere aandacht aan het nauwkeurig volgen van instructies en het controleren van resultaten.
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.
Zorgvuldig engineeringwerk
Anthropic ontwikkelt Claude Opus 4.7 voor complexe, langdurige ontwikkeltaken. De presentatie legt de nadruk op het stapsgewijs uitvoeren van het werk, aandacht voor instructies en het zoeken naar manieren om het eigen resultaat vóór het eindbericht te controleren. Het model is geschikt om een moeilijk codeprobleem te onderzoeken en professioneel materiaal te maken waarbij zowel een technische oplossing als een heldere presentatie nodig zijn.
Opus 4.7 volgt formuleringen letterlijk. Het is beter de opdracht met expliciete grenzen te geven: welke delen moeten veranderen, wat moet worden gecontroleerd en hoe het resultaat eruit moet zien. Als een voorwaarde voor alle onderdelen van het werk geldt, moet dat ook zo worden beschreven. De fabrikant benadrukt ook notities in bestandsgeheugen voor lange taken, maar het lezen en opslaan daarvan vereist toepassingstools.
Informatierijke schema's en interfacescreenshots bekijken
Het model accepteert tekst en afbeeldingen en geeft tekst terug. Voor visuele invoer wordt een resolutie tot 2576 pixels aan de lange zijde, ongeveer 3,75 megapixel, ondersteund. Dit is nuttig voor informatierijke screenshots, informatie-extractie uit complexe diagrammen en taken met een gedetailleerd visueel voorbeeld.
De gebruikelijke visuele invoerformaten bij de fabrikant zijn JPEG/PNG/GIF/WebP, waarbij van een animatie het eerste frame wordt gebruikt. Bij native analyse is de lange zijde 2576 pixels en zijn er 4784 visuele tokens; grote afbeeldingen worden vóór analyse verkleind. Ondersteuning voor bestanden en parameters hangt af van de methode van de toepassing.
Een hoge resolutie helpt details te behouden, maar maakt visueel begrip niet foutloos. De uitvoer kan een uitleg, gegevensstructuur of code zijn; het maken en bewerken van de afbeelding zelf is geen uitvoermogelijkheid van het model. Voor interfacebesturing zijn hulpmiddelen nodig die het model het scherm tonen en acties in de toepassing uitvoeren.
Diepte en taakomvang
De context is 1 miljoen tokens en het maximale antwoord in de gewone modus 128 duizend tokens. Adaptief redeneren wordt ondersteund; deze versie heeft geen handmatige extended thinking met budget_tokens. Het standaardniveau van effort is high; ook low, medium, xhigh en max zijn beschikbaar. xhigh biedt een afzonderlijke instelling tussen high en max voor langdurig engineering- en agentwerk.
Bij lage inspanningsniveaus beperkt het model zijn werk bijzonder strikt tot wat is gevraagd. Voor complex onderzoek beveelt de fabrikant aan voldoende ruimte voor redeneren en antwoord te voorzien. Deze versie heeft een vernieuwde tokenisatie, waardoor hetzelfde tekstvolume niet altijd de tokenlengte heeft die van eerdere versies bekend is.
Werkomstandigheden
De betrouwbare grens van de ingebouwde kennis is januari 2026. Voor actueel onderzoek, documentwerk en code-uitvoering worden materiaal en tools gebruikt die de toepassing biedt. Opus 4.7 heeft beschermingsmechanismen die verboden verzoeken of verzoeken met een hoog risico in cyberbeveiliging kunnen blokkeren. Zijn aandacht voor resultaatcontrole is nuttig, maar de uiteindelijke wijzigingen en conclusies moeten nog steeds in de concrete omgeving worden gecontroleerd.
Ailoot Ultra · Batch POST /v1/batches anthropic/claude-opus-4.7:batch
anthropic/claude-opus-4.7:batch
anthropic/claude-opus-4.7:batchAan de slag
Claude Opus 4.7 is ontworpen voor complex engineeringwerk en analyse van documenten en afbeeldingen met kleine details. Het besteedt bijzondere aandacht aan het nauwkeurig volgen van instructies en het controleren van resultaten.
- Toegestane invoer
- Tekst
- Resultaten
- Tekst
Beschikbaar in Ailoot · invoer en methoden
Ailoot Ultra · Batch POST /v1/batches
- Invoertypen
text- Uitvoertypen
text- Uitvoerformaat
- inline results[].response.body JSON
| Veld | Type | Vereiste | Waarden en limieten | Standaard |
|---|---|---|---|---|
Veldendpoint | Typestring | VereisteVereist | Waarden en limieten /v1/chat/completions | Standaard— |
Veldmodel | Typestring | VereisteVereist | Waarden en limieten anthropic/claude-opus-4.7: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 anthropic/claude-opus-4.7:batch, anthropic/claude-opus-4.7 | Standaard— |
Veldprovider.only | Typestring[] | VereisteOptioneel | Waarden en limieten anthropic | 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 mag daadwerkelijke JSONL-inhoud in UTF-8 lokaal in requests[] inlezen. Er wordt geen uploaddoel (purpose), 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 | ContractBody’s voor tekstaanvragen via Chat Completions in de gedocumenteerde inline Batch-envelop. |
Levenscyclus: asynchronous
GET /v1/batches/{operation_id} · de daadwerkelijke response.id uit het oorspronkelijke aanmaakantwoord; 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 is geselecteerd
- Flexmodus
- Niet opgegeven Wanneer de modus flex is geselecteerd
- Maximale redeneerinspanning
- Niet opgegeven Wanneer bij maximale redeneerinspanning de default-aanpassing wordt gebruikt
- Tarieven voor expliciete caching
- 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.005 / 1K tokens Uitvoer · Uitvoertokens $0.025 / 1K tokens Invoer · Cache lezen $0.0005 / 1K tokens Invoer · Cache schrijven $0.00625 / 1K tokens Invoer · Cache schrijven, 1 uur $0.01 / 1K tokens |
| ConfiguratieNiveau 1 voor aanvraaglengte | Tariefstaffel— | Contexttokens, meer dan0 | Contexttokens, tot en metGeen bovengrens | Kosten Invoer · Invoertokens $0.005 / 1K tokens Uitvoer · Uitvoertokens $0.025 / 1K tokens Invoer · Cache lezen $0.0005 / 1K tokens Invoer · Cache schrijven $0.00625 / 1K tokens Invoer · Cache schrijven, 1 uur $0.01 / 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 · Batch
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":"anthropic/claude-opus-4.7: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 ['anthropic/claude-opus-4.7:batch', 'anthropic/claude-opus-4.7']: raise ValueError("body.model must be an exact documented caller or wire ID")
return {"endpoint":"/v1/chat/completions", "model":"anthropic/claude-opus-4.7: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 · Batch
inline results[].response.body JSON
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 antwoord- of foutbody. Sla voltooide results[] zonder filtering op als JSONL.
Als het oorspronkelijke antwoord moet worden gecontroleerd
Bewaar de oorspronkelijke bewerkings-ID. Bij 503 result_pending_check hoort X-Should-Retry:false; dien een oorspronkelijke batch met onbekende uitkomst 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 envelop, dubbele sleutels, ongeldige itemidentiteit of een conflict met de geconfigureerde modelmogelijkheden. | Volgende stapCorrigeer de aangegeven velden voordat u een nieuwe aanvraag indient. |
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 | VoorwaardeBij Batch worden kosten van het saldo afgeschreven; aanmaken via een abonnement wordt geweigerd. | Volgende stapGebruik de geautoriseerde groep waarvoor kosten van het saldo worden afgeschreven. |
Antwoord422 · price_unavailable | VoorwaardeVoor de Batch-invoer kan geen prijsopgave worden berekend. | Volgende stapBewaar het antwoord; gebruik de gedocumenteerde invoer voor deze familie. |
Antwoord402 · billing_error | VoorwaardeBatch-reservering niet beschikbaar. | Volgende stapLos het toelatingsprobleem op voordat u een nieuwe aanvraag indient. |
Antwoord503 · price_unavailable | VoorwaardePrijs voor de Batch-methode/native tarieven niet beschikbaar. | Volgende stapBewaar het antwoord; vervang de prijzen niet. |
Antwoord503 · api_error | VoorwaardeDe exacte leveranciersroute is niet beschikbaar. | Volgende stapBewaar het antwoord voor herstel van de route. |
Antwoord503 · result_pending_check | VoorwaardeHet oorspronkelijke resultaat moet worden gecontroleerd; 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 | VoorwaardeDe bewerking voor de Batch-status ontbreekt of is eigendom van een andere identiteit. | Volgende stapGebruik exact de oorspronkelijke id en dezelfde gebruiker/sleutel/groep. |
Aliasnamen
Modelaliasnamen
Ailoot Ultra anthropic/claude-opus-4.7:batch
Aliasnamen voor methodepaden
Gebruik de hierboven getoonde methodepaden.
Gerelateerde aanroeper-ID’s
FAQ · Anthropic: Claude Opus 4.7 (batch)
- Welke invoer en resultaten zijn beschikbaar?
POST /v1/batches·anthropic/claude-opus-4.7:batch:text→text- Welke velden gebruikt het verzoek?
POST /v1/batches·anthropic/claude-opus-4.7:batch:endpoint,model,requests,completion_window,provider- Welke limieten gelden?
POST /v1/batches·anthropic/claude-opus-4.7:batch:requests.min_items:1