OpenAI: GPT-6 Astra (batch)
GPT-6 Astra è il modello di OpenAI per ragionamento impegnativo, ingegneria del software, ricerca e lavoro professionale sui documenti. Combina comprensione di testo e immagini con analisi di contesti lunghi e flussi guidati da strumenti, producendo un risultato testuale in un contesto di 1 050 000 token.
Informazioni sul modello
Questa descrizione illustra le funzionalità del modello. Gli input, gli output e le opzioni disponibili in Ailoot per il metodo selezionato sono elencati di seguito.
GPT-6 Astra è il modello di OpenAI per le attività di ragionamento e professionali più impegnative. Il produttore lo sviluppa per ingegneria del software, uso del computer, ricerca, lavoro scientifico e creazione di documenti. Accetta testo e immagini e genera testo, comprese spiegazioni, codice e risultati strutturati. Questo profilo standard di Astra è distinto dalla modalità di ragionamento Pro e dai profili Sol e Luna.
Lavoro dall’inizio alla fine
Preparate l’incarico intorno al risultato desiderato, alle fonti pertinenti e ai criteri di completamento. Per l’ingegneria del software, includete il codice, l’errore osservato, il comportamento atteso e le interfacce da preservare. Per l’analisi professionale, fornite i documenti, la decisione e le condizioni che una conclusione deve affrontare. Una consegna pratica è: «Confrontate queste alternative con i requisiti, identificate le dipendenze e producete una nota decisionale con prove per ogni conclusione rilevante».
Per un’attività visiva, rendete leggibile la fonte e identificate se mostra uno stato dell’interfaccia, un grafico o un requisito di progettazione. Chiedete il dettaglio visibile che sostiene un’osservazione. Un risultato di codice o documentale deve restare collegato a tali prove, anziché a un’azione esterna presunta.
Istruzioni e prosecuzione del lavoro
Le indicazioni di OpenAI per Astra raccomandano obiettivi chiari, criteri di successo, regole sulle prove e condizioni di arresto. Segnalano una forte sensibilità alle istruzioni dettagliate nel contesto e nei file accessibili: risolvete quindi le indicazioni contrastanti e dichiarate la priorità dell’attività dell’utente. Specificate quando il modello deve usare le informazioni disponibili, formulare un’ipotesi ragionevole o chiedere un dettaglio mancante che cambia il risultato.
Il produttore raccomanda inoltre di calibrare lo stile della risposta e la profondità della validazione. Descrivete il pubblico e la struttura finale di un documento e richiedete una validazione pertinente alla modifica per un’attività ingegneristica. Questo dà al modello un traguardo esplicito senza aggiungere lavoro non correlato.
Ragionamento e contesto
Astra supporta i livelli di impegno nel ragionamento low, medium, high, xhigh e max e non supporta none. L’impegno è distinto dalla modalità di ragionamento standard o Pro del produttore. La scheda indica un contesto di 1 050 000 token, fino a 922 000 token di input e fino a 128 000 token di output. Le conoscenze sono aggiornate al 30 aprile 2026.
Il ragionamento occupa spazio nella risposta anche se i token interni grezzi non vengono esposti come una risposta ordinaria. Riservate spazio per il risultato finale e controllate lo stato di terminazione quando un budget è esaurito. Una finestra ampia richiede comunque etichette delle fonti, confini dell’attività e osservazioni pertinenti.
Strumenti e attività in corso
Il produttore documenta le chiamate di funzioni tramite Responses; Chat Completions non supporta le chiamate di funzioni per Astra. Gli strumenti supportati comprendono ricerca sul web e nei file, generazione di immagini, un interprete di codice, operazioni da riga di comando e di applicazione di modifiche ai file, competenze, uso del computer, connessioni MCP e ricerca di strumenti. Sono elencati anche Structured Outputs e lo streaming. L’output di Astra stesso resta testo, mentre le operazioni degli strumenti producono le rispettive osservazioni o risultati.
Il flusso di lavoro documentato di GPT-6 può proseguire l’analisi mentre viene eseguito uno strumento asincrono, incorporare indicazioni durante un turno, preservare il ragionamento tra le chiamate e compattare una conversazione lunga. L’applicazione esegue i propri strumenti e gestisce i risultati in sospeso. Conservate l’associazione tra la chiamata originale e l’osservazione, affinché l’attività usi prove effettive.
Un risultato finale utile è un lavoro analitico o di codice completato con basi e condizioni residue esplicite. Verificate le affermazioni dipendenti dalle fonti e usate osservazioni effettive della validazione per il lavoro eseguito. Mantenete il profilo denominato Astra e il suo intervallo di impegno supportato, anziché prendere in prestito un’impostazione di risposta diretta o i limiti di un altro modello.
Ailoot Ultra · Batch POST /v1/batches openai/gpt-6-astra:batch
openai/gpt-6-astra:batchIntroduzione
GPT-6 Astra è il modello di OpenAI per ragionamento impegnativo, ingegneria del software, ricerca e lavoro professionale sui documenti. Combina comprensione di testo e immagini con analisi di contesti lunghi e flussi guidati da strumenti, producendo un risultato testuale in un contesto di 1 050 000 token.
- Input accettati
- Testo
- Risultati
- Testo
Disponibile in Ailoot · input e metodi
Ailoot Ultra · Batch POST /v1/batches
- Tipi di input
text- Tipi di output
text- Formato di output
- JSON inline di results[].response.body
| Campo | Tipo | Requisito | Valori e limiti | Predefinito |
|---|---|---|---|---|
Campoendpoint | Tipostring | RequisitoObbligatorio | Valori e limiti /v1/chat/completions | Predefinito— |
Campomodel | Tipostring | RequisitoObbligatorio | Valori e limiti openai/gpt-6-astra:batch | Predefinito— |
Camporequests | Tipobatch_item[] | RequisitoObbligatorio | Valori e limiti Numero minimo di elementi: 1 | Predefinito— |
Camporequests[].custom_id | Tipostring | RequisitoObbligatorio | Valori e limiti | Predefinito— |
Camporequests[].body.messages | Tipomessage[] | RequisitoObbligatorio | Valori e limiti | Predefinito— |
Campocompletion_window | Tipostring | RequisitoFacoltativo | Valori e limiti 24h | Predefinito— |
Campoprovider | Tipoobject|null | RequisitoFacoltativo | Valori e limiti | Predefinito— |
Camporequests[].body.model | Tipostring | RequisitoFacoltativo | Valori e limiti openai/gpt-6-astra:batch, openai/gpt-6-astra | Predefinito— |
Campoprovider.only | Tipostring[] | RequisitoFacoltativo | Valori e limiti openai | Predefinito— |
Campoprovider.allow_fallbacks | Tipoboolean|null | RequisitoFacoltativo | Valori e limiti false, null | Predefinito— |
Parametri e ciclo di vita del metodo
| Parametro | Contratto |
|---|---|
Parametrocontent_type | Contrattoapplication/json |
Parametrorequired | Contrattoendpoint, model, requests |
Parametromaterial_types | Contrattotext |
Parametrorepresentation | Contrattorequests[] inline; ogni elemento contiene custom_id e body |
Parametrorequest_endpoint_profile | Contratto/v1/chat/completions |
Parametrofile_material | ContrattoIl chiamante può leggere localmente i dati JSONL effettivi in UTF-8 e inserirli in requests[]. Non viene usato alcun purpose di caricamento, input_file_id o riferimento a file. Il materiale del cliente mancante o vuoto interrompe la preparazione prima del POST. |
Parametroserialization_order | Contrattoendpoint, model, provider (se fornito), completion_window (se fornito), requests per ultimo |
Parametrooptional_controls | Contrattoprovider.only, provider.allow_fallbacks, completion_window |
Parametroschema_scope | ContrattoCorpi delle richieste Chat Completions per testo nella struttura inline Batch documentata. |
Ciclo di vita: asynchronous
GET /v1/batches/{operation_id} · response.id effettivo della risposta alla creazione originale; stesso utente/chiave/gruppo
Tariffe
Le tariffe non aggiungono opzioni alla richiesta. I parametri supportati sono elencati nel metodo selezionato.
- Modalità rapida
- Non specificato Quando è selezionata la modalità rapida
- Modalità flex
- Non specificato Quando è selezionata la modalità flex
- Sforzo massimo di ragionamento
- Non specificato Quando lo sforzo massimo di ragionamento usa l'adeguamento predefinito (default)
- Tariffe della cache esplicita
- Non abilitato Quando viene richiesta una cache esplicita
Tariffe Ailoot
Prezzi per configurazione
Associa ogni costo alle condizioni indicate. Usa una sola tariffa per ogni insieme di configurazioni alternative.
| Configurazione | Listino delle tariffe | Token di contesto, più di | Token di contesto, fino al limite incluso | Costo |
|---|---|---|---|---|
| ConfigurazioneTariffe di base dei token | Listino delle tariffeTariffa base | Token di contesto, più di— | Token di contesto, fino al limite inclusoNessun limite superiore | Costo Input · Token in input $0.01 / 1K token Output · Token in output $0.05 / 1K token Input · Lettura dalla cache $0.001 / 1K token Input · Scrittura nella cache $0.0125 / 1K token Input · Scrittura nella cache, 1 ora — / 1K token |
| ConfigurazioneFascia 1 di lunghezza della richiesta | Listino delle tariffe— | Token di contesto, più di0 | Token di contesto, fino al limite incluso272.000 | Costo Input · Token in input $0.01 / 1K token Output · Token in output $0.05 / 1K token Input · Lettura dalla cache $0.001 / 1K token Input · Scrittura nella cache $0.0125 / 1K token Input · Scrittura nella cache, 1 ora — / 1K token |
| ConfigurazioneFascia 2 di lunghezza della richiesta | Listino delle tariffe— | Token di contesto, più di272.000 | Token di contesto, fino al limite inclusoNessun limite superiore | Costo Input · Token in input $0.02 / 1K token Output · Token in output $0.075 / 1K token Input · Lettura dalla cache $0.002 / 1K token Input · Scrittura nella cache $0.025 / 1K token Input · Scrittura nella cache, 1 ora — / 1K token |
Ailoot prenota un importo stimato prima di una richiesta. Dopo il risultato, addebita il costo finale in base all’utilizzo misurato. Per lo streaming, l’addebito usa il record finale di utilizzo. Come funzionano la prenotazione e l’addebito finale →
Esempi di richieste
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":"openai/gpt-6-astra: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-6-astra:batch', 'openai/gpt-6-astra']: raise ValueError("body.model must be an exact documented caller or wire ID")
return {"endpoint":"/v1/chat/completions", "model":"openai/gpt-6-astra: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.
Ricevi e salva i risultati
Ailoot Ultra · Batch
JSON inline di results[].response.body
GET /v1/batches/{operation_id}
Verifica lo stato dell’attività
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
Conserva tutti i risultati completati
Conserva ogni risposta, file e parte di contenuto restituiti per intero.
Conserva il JSON completo dello stato originale, ogni result/custom_id e il corpo completo della risposta o dell'errore. Salva i results[] completati come JSONL senza filtrarli.
Se occorre verificare la risposta originale
Conserva l'ID dell'operazione originale. La risposta 503 result_pending_check contiene X-Should-Retry:false; non reinviare mai un batch originale il cui esito è sconosciuto.
Campi della risposta
| Campo | Tipo |
|---|---|
Camporesults[].custom_id | Tipostring |
Camporesults[].response.body.choices[].message.content | Tipostring|null |
Camporesults[].error | Tipoobject|null |
Campousage | Tipoobject|null |
Campoid | Tipostring |
Campomodel | Tipostring |
Campoendpoint | Tipostring |
Campostatus | Tipostring |
Camporequest_counts | Tipoobject |
Camporesults[].id | Tipostring |
Camporesults[].response.status_code | Tipointeger |
Camporesults[].response.request_id | Tipostring |
Errori e passaggi successivi
| Risposta | Condizione | Passaggio successivo |
|---|---|---|
Risposta400 · invalid_request_error | CondizioneStruttura inline documentata non valida, chiavi duplicate, identità degli elementi non valida o conflitto con le capacità configurate del modello. | Passaggio successivoCorreggi i campi indicati prima di qualsiasi nuovo invio. |
Risposta401 · authentication_error | CondizioneChiave API non valida. | Passaggio successivoUsa la chiave Ailoot autorizzata. |
Risposta403 · permission_error | CondizioneGruppo Batch non disponibile. | Passaggio successivoVerifica le autorizzazioni della chiave e del gruppo. |
Risposta422 · invalid_request_error | CondizioneBatch usa l'addebito sul saldo; la creazione tramite abbonamento viene rifiutata. | Passaggio successivoUsa il gruppo autorizzato con addebito sul saldo. |
Risposta422 · price_unavailable | CondizioneNon è possibile formulare un preventivo per l'input Batch. | Passaggio successivoConserva la risposta; usa l'input documentato per la famiglia. |
Risposta402 · billing_error | CondizioneRiserva Batch non disponibile. | Passaggio successivoRisolvi le condizioni di ammissione prima di una nuova richiesta. |
Risposta503 · price_unavailable | CondizionePrezzo del metodo Batch o tariffe native non disponibili. | Passaggio successivoConserva la risposta; non sostituire i prezzi. |
Risposta503 · api_error | CondizioneLa rotta esatta del fornitore non è disponibile. | Passaggio successivoConserva la risposta per la riparazione della rotta. |
Risposta503 · result_pending_check | CondizioneIl risultato originale richiede una verifica; X-Should-Retry:false. | Passaggio successivoConserva operation_id/id originale e leggine lo stato; non ripetere mai il POST originale. |
Risposta404 · not_found | CondizioneL'operazione di stato Batch è assente o appartiene a un'altra identità. | Passaggio successivoUsa l'id originale esatto e lo stesso utente/chiave/gruppo. |
Alias
Alias del modello
Ailoot Ultra openai/gpt-6-astra:batch
Alias dei percorsi dei metodi
Usa i percorsi dei metodi indicati sopra.
ID di chiamata correlati
FAQ · OpenAI: GPT-6 Astra (batch)
- Quali input e risultati sono disponibili?
POST /v1/batches·openai/gpt-6-astra:batch:text→text- Quali campi usa la richiesta?
POST /v1/batches·openai/gpt-6-astra:batch:endpoint,model,requests,completion_window,provider- Quali limiti si applicano?
POST /v1/batches·openai/gpt-6-astra:batch:requests.min_items:1