OpenAI: gpt-oss-120b (batch)
Το μεγαλύτερο μοντέλο ανοιχτών βαρών gpt-oss της OpenAI χρησιμοποιεί συλλογισμό μείγματος ειδικών για κείμενο, ανάπτυξη κώδικα και εργασίες πρακτόρων. Υποστηρίζει επίπεδα συλλογισμού low, medium και high, κλήσεις συναρτήσεων και Structured Outputs σε περιβάλλον συνδεδεμένο με εργαλεία.
Σχετικά με το μοντέλο
Αυτή η περιγραφή καλύπτει τις δυνατότητες του μοντέλου. Οι είσοδοι, έξοδοι και επιλογές που διατίθενται στο Ailoot παρατίθενται παρακάτω για την επιλεγμένη μέθοδο.
Το gpt-oss-120b είναι το μεγαλύτερο γλωσσικό μοντέλο ανοιχτών βαρών της OpenAI για συλλογισμό γενικής χρήσης, ανάπτυξη κώδικα και εργασίες πρακτόρων. Λαμβάνει και παράγει κείμενο. Ο κατασκευαστής δημοσιεύει 117 δισεκατομμύρια συνολικές παραμέτρους, με 5,1 δισεκατομμύρια ενεργές παραμέτρους ανά token σε αρχιτεκτονική μείγματος ειδικών. Είναι η έκδοση 120b της οικογένειας, ξεχωριστή από το gpt-oss-20b και τα εξειδικευμένα μοντέλα Safeguard.
Η ανακοίνωση περιγράφει σύνολο εκπαίδευσης κυρίως αγγλικού κειμένου, χωρίς άλλες μορφές δεδομένων, που εστιάζει σε STEM, ανάπτυξη κώδικα και γενικές γνώσεις. Ενδεικτική εργασία είναι η ανάλυση αλγορίθμου από τον κώδικα και τις δηλωμένες συνθήκες του: εξήγησε τις σημαντικές σχέσεις, σύγκρινε πιθανές προσεγγίσεις και παρήγαγε συγκεκριμένη πρόταση υλοποίησης. Για απόφαση σχετική με έγγραφο, δώσε το υλικό και τα κριτήρια και μετά ζήτησε συμπέρασμα συνδεδεμένο με τα στοιχεία που παρείχες.
Η δημοσιευμένη αρχιτεκτονική της OpenAI έχει 36 επίπεδα, 128 ειδικούς και τέσσερις ενεργούς ειδικούς ανά token. Η αρχική έκδοση χρησιμοποιεί MXFP4 για τα βάρη του μείγματος ειδικών και περιγράφει εκτέλεση του μοντέλου σε μία GPU 80 GB. Η OpenAI κυκλοφορεί τα βάρη με άδεια Apache 2.0 και υποστηρίζει πρόσθετη εκπαίδευση για εξειδικευμένες χρήσεις. Πρόκειται για ιδιότητες του δημοσιευμένου μοντέλου και της μορφής του παραγωγού, όχι για περιγραφή της συγκεκριμένης εγκατάστασης μιας εφαρμογής.
Η τεκμηρίωση του μοντέλου αναφέρει παράθυρο συμφραζομένων 131.072 token και μέγιστη παραγόμενη έξοδο 131.072 token, με ημερομηνία αποκοπής γνώσεων την 1η Ιουνίου 2024. Είσοδος, συλλογισμός και έξοδος πρέπει να χωρούν στα διαθέσιμα συμφραζόμενα. Τα υποστηριζόμενα επίπεδα συλλογισμού είναι low, medium και high, επιτρέποντας σε μια εργασία να ζητά σύντομη απόκριση διαλόγου ή βαθύτερη ανάλυση. Η OpenAI απαιτεί τη μορφή Harmony, η οποία διαχωρίζει την εσωτερική ανάλυση από την τελική απόκριση· ο κατασκευαστής αναφέρει ότι η ακατέργαστη ανάλυση προορίζεται για χρήση προγραμματιστών και όχι για απευθείας εμφάνιση στους τελικούς χρήστες.
Ο παραγωγός τεκμηριώνει κλήσεις συναρτήσεων, περιήγηση στον ιστό, εκτέλεση κώδικα Python μέσω εργαλείων και Structured Outputs. Η κάρτα μοντέλου του αναφέρει επίσης σταδιακή ροή απαντήσεων, με συναρτήσεις, διερμηνευτή κώδικα, MCP και δυνατότητες αναζήτησης στο τεκμηριωμένο περιβάλλον εργαλείων. Οι εφαρμογές παρέχουν λειτουργίες, εκτελούν τις ενέργειές τους και επιστρέφουν πραγματικά αποτελέσματα. Ένας υπολογισμός ή αναζήτηση μπορεί κατόπιν να γίνει στοιχείο για άλλο βήμα συλλογισμού, ενώ ένα προτεινόμενο αίτημα εργαλείου παραμένει διακριτό από μια λειτουργία που εκτελέστηκε.
Προετοίμασε σαφή στόχο, ορισμούς και το χρήσιμο τελικό παραδοτέο: εξήγηση, πρόταση κώδικα, τύπο ή δομημένο σύνολο ευρημάτων. Προσδιόρισε ποια γεγονότα πρέπει να παραμείνουν αναλλοίωτα κατά τον μετασχηματισμό και πώς πρέπει να αναπαρίστανται οι πληροφορίες που λείπουν. Μια χρήσιμη τελική απόκριση συνδέει το συμπέρασμά της με τις παρεχόμενες προϋποθέσεις και κάθε πραγματικό αποτέλεσμα εργαλείων. Για συνέχεια, μετέφερε τα σημαντικά στοιχεία και την απόφαση που απομένει στο επόμενο αίτημα.
Ailoot Ultra · Μαζική επεξεργασία POST /v1/batches openai/gpt-oss-120b:batch
openai/gpt-oss-120b:batchΕισαγωγή
Το μεγαλύτερο μοντέλο ανοιχτών βαρών gpt-oss της OpenAI χρησιμοποιεί συλλογισμό μείγματος ειδικών για κείμενο, ανάπτυξη κώδικα και εργασίες πρακτόρων. Υποστηρίζει επίπεδα συλλογισμού low, medium και high, κλήσεις συναρτήσεων και Structured Outputs σε περιβάλλον συνδεδεμένο με εργαλεία.
- Αποδεκτές είσοδοι
- Κείμενο
- Αποτελέσματα
- Κείμενο
Διαθέσιμα στο Ailoot · είσοδοι και μέθοδοι
Ailoot Ultra · Μαζική επεξεργασία POST /v1/batches
- Είσοδος
text- Έξοδος
text- Μορφή εξόδου
- Ενσωματωμένο JSON στο results[].response.body
| Πεδίο | Τύπος | Απαίτηση | Τιμές και όρια | Προεπιλογή |
|---|---|---|---|---|
Πεδίοendpoint | Τύποςstring | ΑπαίτησηΥποχρεωτικό | Τιμές και όρια /v1/chat/completions | Προεπιλογή— |
Πεδίοmodel | Τύποςstring | ΑπαίτησηΥποχρεωτικό | Τιμές και όρια openai/gpt-oss-120b:batch | Προεπιλογή— |
Πεδίοrequests | Τύποςbatch_item[] | ΑπαίτησηΥποχρεωτικό | Τιμές και όρια Ελάχιστο πλήθος στοιχείων: 1 | Προεπιλογή— |
Πεδίοrequests[].custom_id | Τύποςstring | ΑπαίτησηΥποχρεωτικό | Τιμές και όρια | Προεπιλογή— |
Πεδίοrequests[].body.messages | Τύποςmessage[] | ΑπαίτησηΥποχρεωτικό | Τιμές και όρια | Προεπιλογή— |
Πεδίοcompletion_window | Τύποςstring | ΑπαίτησηΠροαιρετικό | Τιμές και όρια 24h | Προεπιλογή— |
Πεδίοprovider | Τύποςobject|null | ΑπαίτησηΠροαιρετικό | Τιμές και όρια | Προεπιλογή— |
Πεδίοrequests[].body.model | Τύποςstring | ΑπαίτησηΠροαιρετικό | Τιμές και όρια openai/gpt-oss-120b:batch, openai/gpt-oss-120b | Προεπιλογή— |
Πεδίοprovider.only | Τύποςstring[] | ΑπαίτησηΠροαιρετικό | Τιμές και όρια deepinfra/bf16 | Προεπιλογή— |
Πεδίοprovider.allow_fallbacks | Τύποςboolean|null | ΑπαίτησηΠροαιρετικό | Τιμές και όρια false, null | Προεπιλογή— |
Παράμετροι και κύκλος ζωής μεθόδου
| Παράμετρος | Σύμβαση |
|---|---|
Παράμετροςcontent_type | Σύμβασηapplication/json |
Παράμετροςrequired | Σύμβασηendpoint, model, requests |
Παράμετροςmaterial_types | Σύμβασηtext |
Παράμετροςrepresentation | ΣύμβασηΕνσωματωμένος πίνακας requests[]· κάθε στοιχείο έχει custom_id και body |
Παράμετροςrequest_endpoint_profile | Σύμβαση/v1/chat/completions |
Παράμετροςfile_material | ΣύμβασηΟ καλών μπορεί να διαβάσει το πραγματικό υλικό UTF-8 JSONL τοπικά στον πίνακα requests[]. Δεν χρησιμοποιείται παράμετρος purpose για μεταφόρτωση, input_file_id ή αναφορά σε αρχείο. Αν το υλικό του πελάτη λείπει ή είναι κενό, η προετοιμασία σταματά πριν από το POST. |
Παράμετροςserialization_order | Σύμβασηendpoint, model, provider (αν παρέχεται), completion_window (αν παρέχεται), requests στο τέλος |
Παράμετροςoptional_controls | Σύμβασηprovider.only, provider.allow_fallbacks, completion_window |
Παράμετροςschema_scope | ΣύμβασηΣώματα αιτημάτων Text Chat Completions στον τεκμηριωμένο ενσωματωμένο φάκελο Batch. |
Κύκλος ζωής: asynchronous
GET /v1/batches/{operation_id} · Το πραγματικό response.id της αρχικής απόκρισης δημιουργίας· ο ίδιος χρήστης, το ίδιο κλειδί και η ίδια ομάδα
Τιμολόγηση
Οι τιμολογιακές αναφορές δεν προσθέτουν επιλογές αιτήματος. Οι υποστηριζόμενες παράμετροι αναφέρονται στην επιλεγμένη μέθοδο.
- Γρήγορη λειτουργία
- Δεν έχει οριστεί Όταν επιλέγεται η γρήγορη λειτουργία
- Λειτουργία flex
- Δεν έχει οριστεί Όταν επιλέγεται η λειτουργία flex
- Μέγιστη προσπάθεια συλλογισμού
- Δεν έχει οριστεί Όταν η μέγιστη προσπάθεια συλλογισμού χρησιμοποιεί την προσαρμογή default
- Τιμολόγηση ρητής αποθήκευσης στην κρυφή μνήμη
- Δεν είναι ενεργοποιημένο Όταν ζητείται ρητή αποθήκευση στην κρυφή μνήμη
Χρεώσεις Ailoot
Τιμές ανά διαμόρφωση
Αντιστοιχίστε κάθε χρέωση στις συνθήκες που εμφανίζονται. Χρησιμοποιήστε μία χρέωση ανά σύνολο εναλλακτικών διαμορφώσεων.
| Διαμόρφωση | Πίνακας χρεώσεων | Token συμφραζομένων, πάνω από | Token συμφραζομένων, έως και | Χρέωση |
|---|---|---|---|---|
| ΔιαμόρφωσηΒασικές χρεώσεις ανά token | Πίνακας χρεώσεωνΒασική χρέωση | Token συμφραζομένων, πάνω από— | Token συμφραζομένων, έως καιΧωρίς ανώτατο όριο | Χρέωση Είσοδος · Token εισόδου $0.0000592 / 1K token Έξοδος · Token εξόδου $0.000272 / 1K token Είσοδος · Ανάγνωση από την κρυφή μνήμη — / 1K token Είσοδος · Εγγραφή στην κρυφή μνήμη — / 1K token Είσοδος · Εγγραφή στην κρυφή μνήμη, 1 ώρα — / 1K token |
| ΔιαμόρφωσηΕπίπεδο 1 βάσει μήκους αιτήματος | Πίνακας χρεώσεων— | Token συμφραζομένων, πάνω από0 | Token συμφραζομένων, έως καιΧωρίς ανώτατο όριο | Χρέωση Είσοδος · Token εισόδου $0.0000592 / 1K token Έξοδος · Token εξόδου $0.000272 / 1K token Είσοδος · Ανάγνωση από την κρυφή μνήμη — / 1K token Είσοδος · Εγγραφή στην κρυφή μνήμη — / 1K token Είσοδος · Εγγραφή στην κρυφή μνήμη, 1 ώρα — / 1K token |
Το Ailoot δεσμεύει ένα εκτιμώμενο ποσό πριν από το αίτημα. Μετά το αποτέλεσμα, εκκαθαρίζει την τελική χρέωση βάσει της μετρημένης χρήσης. Η εκκαθάριση ροής χρησιμοποιεί την τελική καταγραφή χρήσης. Πώς λειτουργούν η δέσμευση και η εκκαθάριση →
Παραδείγματα αιτημάτων
Ailoot Ultra · Μαζική επεξεργασία
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-120b: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-120b:batch', 'openai/gpt-oss-120b']: raise ValueError("body.model must be an exact documented caller or wire ID")
return {"endpoint":"/v1/chat/completions", "model":"openai/gpt-oss-120b: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.
Λήψη και αποθήκευση αποτελεσμάτων
Ailoot Ultra · Μαζική επεξεργασία
Ενσωματωμένο JSON στο results[].response.body
GET /v1/batches/{operation_id}
Έλεγχος κατάστασης εργασίας
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
Διατηρήστε όλα τα ολοκληρωμένα αποτελέσματα
Διατηρήστε κάθε πλήρη απάντηση, αρχείο και τμήμα περιεχομένου που επιστρέφεται.
Διατηρήστε ολόκληρο το αρχικό JSON κατάστασης, κάθε result/custom_id και ολόκληρο το σώμα της απόκρισης ή του σφάλματος. Αποθηκεύστε τα ολοκληρωμένα results[] ως JSONL χωρίς φιλτράρισμα.
Αν χρειάζεται έλεγχος της αρχικής απάντησης
Διατηρήστε το αρχικό ID της λειτουργίας. Η απόκριση 503 result_pending_check περιέχει X-Should-Retry:false· μην υποβάλετε ποτέ ξανά μια αρχική μαζική εργασία με άγνωστη έκβαση.
Πεδία απάντησης
| Πεδίο | Τύπος |
|---|---|
Πεδίοresults[].custom_id | Τύποςstring |
Πεδίοresults[].response.body.choices[].message.content | Τύποςstring|null |
Πεδίοresults[].error | Τύποςobject|null |
Πεδίοusage | Τύποςobject|null |
Πεδίοid | Τύποςstring |
Πεδίοmodel | Τύποςstring |
Πεδίοendpoint | Τύποςstring |
Πεδίοstatus | Τύποςstring |
Πεδίοrequest_counts | Τύποςobject |
Πεδίοresults[].id | Τύποςstring |
Πεδίοresults[].response.status_code | Τύποςinteger |
Πεδίοresults[].response.request_id | Τύποςstring |
Σφάλματα και επόμενα βήματα
| Απάντηση | Συνθήκη | Επόμενο βήμα |
|---|---|---|
Απάντηση400 · invalid_request_error | ΣυνθήκηΜη έγκυρος τεκμηριωμένος ενσωματωμένος φάκελος, διπλότυπα κλειδιά, ταυτότητα στοιχείου ή σύγκρουση με τις ρυθμισμένες δυνατότητες του μοντέλου. | Επόμενο βήμαΔιορθώστε τα υποδεικνυόμενα πεδία πριν από οποιαδήποτε νέα υποβολή. |
Απάντηση401 · authentication_error | ΣυνθήκηΜη έγκυρο κλειδί API. | Επόμενο βήμαΧρησιμοποιήστε το εξουσιοδοτημένο κλειδί Ailoot. |
Απάντηση403 · permission_error | ΣυνθήκηΗ ομάδα μαζικής επεξεργασίας δεν είναι διαθέσιμη. | Επόμενο βήμαΕλέγξτε τα δικαιώματα πρόσβασης του κλειδιού/της ομάδας. |
Απάντηση422 · invalid_request_error | ΣυνθήκηΗ μαζική επεξεργασία χρεώνεται στο υπόλοιπο· η δημιουργία μέσω συνδρομής απορρίπτεται. | Επόμενο βήμαΧρησιμοποιήστε την εξουσιοδοτημένη ομάδα που χρεώνεται στο υπόλοιπο. |
Απάντηση422 · price_unavailable | ΣυνθήκηΔεν μπορεί να υπολογιστεί προσφορά κόστους για την είσοδο της μαζικής εργασίας. | Επόμενο βήμαΔιατηρήστε την απόκριση· χρησιμοποιήστε την τεκμηριωμένη είσοδο της οικογένειας API. |
Απάντηση402 · billing_error | ΣυνθήκηΤο ποσό δέσμευσης για τη μαζική επεξεργασία δεν είναι διαθέσιμο. | Επόμενο βήμαΕπιλύστε το ζήτημα αποδοχής πριν από ένα νέο αίτημα. |
Απάντηση503 · price_unavailable | ΣυνθήκηΗ τιμή της μεθόδου μαζικής επεξεργασίας/οι εγγενείς τιμές δεν είναι διαθέσιμες. | Επόμενο βήμαΔιατηρήστε την απόκριση· μην αντικαθιστάτε τις τιμές. |
Απάντηση503 · api_error | ΣυνθήκηΗ ακριβής διαδρομή του προμηθευτή δεν είναι διαθέσιμη. | Επόμενο βήμαΔιατηρήστε την απόκριση για τη διόρθωση της διαδρομής. |
Απάντηση503 · result_pending_check | ΣυνθήκηΤο αρχικό αποτέλεσμα χρειάζεται έλεγχο· X-Should-Retry:false. | Επόμενο βήμαΔιατηρήστε το αρχικό operation_id/id και διαβάστε την κατάστασή του· μην επαναλάβετε ποτέ το αρχικό POST. |
Απάντηση404 · not_found | ΣυνθήκηΗ λειτουργία κατάστασης της μαζικής εργασίας δεν υπάρχει ή ανήκει σε άλλη ταυτότητα. | Επόμενο βήμαΧρησιμοποιήστε το ακριβές αρχικό id και τον ίδιο χρήστη, το ίδιο κλειδί και την ίδια ομάδα. |
Εναλλακτικά ονόματα
Εναλλακτικά ονόματα μοντέλου
Ailoot Ultra openai/gpt-oss-120b:batch
Εναλλακτικές διαδρομές μεθόδων
Χρησιμοποιήστε τις διαδρομές μεθόδων που εμφανίζονται παραπάνω.
Σχετικά ID μοντέλων
FAQ · OpenAI: gpt-oss-120b (batch)
- Ποιες είσοδοι και αποτελέσματα διατίθενται;
POST /v1/batches·openai/gpt-oss-120b:batch:text→text- Ποια πεδία χρησιμοποιεί το αίτημα;
POST /v1/batches·openai/gpt-oss-120b:batch:endpoint,model,requests,completion_window,provider- Ποια όρια ισχύουν;
POST /v1/batches·openai/gpt-oss-120b:batch:requests.min_items:1