{
  "aboutHtml": "<p>Το GPT Image 2.5 Sunburst είναι το μοντέλο της OpenAI για δημιουργία και επεξεργασία εικόνων με προσανατολισμό στην ακρίβεια. Δέχεται εισόδους κειμένου και εικόνας και παράγει εικόνες εξόδου. Χρησιμοποιήστε το όταν μια δημιουργική εργασία εξαρτάται από την προσεκτική τροποποίηση υπάρχοντος υλικού, την εργασία με οπτικές αναφορές ή τη βελτίωση μιας σύνθεσης σε πολλά βήματα. Η περιγραφή μπορεί να δημιουργεί μια νέα σκηνή, να μεταμορφώνει μια υπάρχουσα εικόνα ή να καθοδηγεί επεξεργασία επιλεγμένης περιοχής. Τα Sunburst και Flare είναι ξεχωριστές εκδόσεις: το Sunburst δίνει έμφαση στην ακρίβεια επεξεργασίας, ενώ το Flare προορίζεται για γρήγορη καθημερινή δημιουργία.</p><p>Για νέα εικόνα, περιγράψτε το θέμα, το περιβάλλον, τη σύνθεση, τον φωτισμό και το ύφος και κατόπιν δηλώστε το επιθυμητό σχήμα και τη χρήση. Για μια ιδέα προϊόντος, ζητήστε ένα γυάλινο φωτιστικό πάνω σε πέτρινη επιφάνεια με απαλό πλευρικό φωτισμό, σαφώς ορατή σιλουέτα και ελεύθερο χώρο για επικεφαλίδα. Για επεξεργασία, ονομάστε την αλλαγή και τα στοιχεία που πρέπει να παραμείνουν αναγνωρίσιμα: αντικαταστήστε το φόντο, προσαρμόστε το φως ή αλλάξτε ένα υλικό διατηρώντας την επιλεγμένη σύνθεση. Οι άμεσες ροές δημιουργίας και επεξεργασίας του δημιουργού επιτρέπουν προτροπή έως 32 000 χαρακτήρες και ένα έως δέκα αποτελέσματα.</p><p>Η επεξεργασία με αναφορές μπορεί να χρησιμοποιεί έως δεκαέξι εικόνες εισόδου. Αναθέστε σε κάθε εικόνα έναν ρόλο ώστε η οδηγία να διακρίνει το θέμα που πρέπει να διατηρηθεί, το περιβάλλον που πρέπει να χρησιμοποιηθεί και το ύφος που πρέπει να εφαρμοστεί. Το μοντέλο μπορεί επίσης να εργαστεί με μάσκα που υποδεικνύει μια περιοχή προς αλλαγή. Η εικόνα προέλευσης και η μάσκα χρειάζονται ίδια μορφή και διαστάσεις και η μάσκα πρέπει να διαθέτει κανάλι άλφα· ο οδηγός ορίζει απαίτηση μεγέθους κάτω από 50 MB. Με πολλές εικόνες προέλευσης, η μάσκα εφαρμόζεται στην πρώτη. Καθοδηγεί τη ζητούμενη αλλαγή αντί να εγγυάται αυστηρό όριο, επομένως συμπεριλάβετε οδηγίες διατήρησης στην περιγραφή και εξετάστε τη γύρω περιοχή στο αποτέλεσμα.</p><p>Οι ρυθμίσεις ποιότητας είναι low, medium, high, xhigh, max και auto, με προεπιλογή το auto. Το low μπορεί να υποστηρίζει ένα γρήγορο οπτικό προσχέδιο, ενώ οι υψηλότερες ρυθμίσεις είναι χρήσιμες για σύγκριση όταν έχουν σημασία οι λεπτές λεπτομέρειες. Η ποιότητα είναι ξεχωριστή από τις διαστάσεις εξόδου και τη συμπίεση αρχείου. Τα τυπικά μεγέθη περιλαμβάνουν 1024 × 1024, 1536 × 1024 και 1024 × 1536 pixel, ενώ διατίθενται επίσης αυτόματες ή προσαρμοσμένες διαστάσεις. Επιλέξτε το σχήμα με βάση την τελική διάταξη πριν αποφασίσετε πόση λεπτομέρεια χρειάζεται η εικόνα.</p><p>Οι προσαρμοσμένες διαστάσεις πρέπει να είναι πολλαπλάσια των δεκαέξι pixel, καμία πλευρά δεν μπορεί να υπερβαίνει τα 3840 pixel, η αναλογία διαστάσεων πρέπει να παραμένει μεταξύ 1:3 και 3:1 και το συνολικό εμβαδόν πρέπει να βρίσκεται μεταξύ 655 360 και 8 294 400 pixel. Αυτές οι συνθήκες ισχύουν μαζί. Ένα οριζόντιο κάδρο 3840 × 2160 χωρά στο ανώτατο όριο εμβαδού, ενώ μια μεγάλη πλευρά από μόνη της δεν καθιστά έγκυρο ένα αυθαίρετο ζεύγος διαστάσεων. Οι αναλύσεις πάνω από 2560 × 1440 περιγράφονται ως πειραματικές. Κρατήστε τα σημαντικά αντικείμενα, το κείμενο και τον χρήσιμο κενό χώρο μέσα στην επιθυμητή περικοπή αντί να βασίζεστε σε περισσότερα pixel για να επιλύσουν τη σύνθεση.</p><p>Το PNG είναι η προεπιλεγμένη μορφή εξόδου· υποστηρίζονται επίσης JPEG και WebP. Για JPEG και WebP μπορεί να επιλεγεί συμπίεση από 0 έως 100. Τα διαφανή, αδιαφανή και αυτόματα φόντα εξυπηρετούν διαφορετικές ανάγκες διάταξης. Για διαφάνεια, επιλέξτε PNG ή WebP ώστε το αποτέλεσμα να μπορεί να διατηρεί κανάλι άλφα. Ένα διαφανές στοιχείο μπορεί κατόπιν να τοποθετηθεί σε άλλη σύνθεση, ενώ μια αδιαφανής εικόνα παρέχει το δικό της φόντο. Κρατήστε το πραγματικό ολοκληρωμένο αρχείο μαζί με την περιγραφή και τις επιλεγμένες ρυθμίσεις εξόδου.</p><p>Η OpenAI τεκμηριώνει άμεση δημιουργία και επεξεργασία, καθώς και ένα εργαλείο δημιουργίας εικόνων μέσω συνομιλίας που μπορεί να διατηρεί προηγούμενα αποτελέσματα και να εφαρμόζει επόμενες οδηγίες. Σε αυτή τη ροή συνομιλίας, η ενέργεια μπορεί να είναι αυτόματη, υποχρεωτική δημιουργία ή υποχρεωτική επεξεργασία όταν υπάρχει εικόνα στο πλαίσιο. Χρησιμοποιήστε την επιλεγμένη εικόνα ως αφετηρία για την επόμενη αλλαγή αντί να αλλάζετε σιωπηρά σε άλλη παραλλαγή. Η τεκμηριωμένη ροή συνεχούς μετάδοσης μπορεί να παραδώσει έως τρεις μερικές εικόνες πριν από το τελικό αποτέλεσμα· μια μερική προεπισκόπηση βοηθά να φαίνεται η πρόοδος αλλά δεν είναι το ολοκληρωμένο υλικό. Η διεπαφή του κατασκευαστή υποστηρίζει επίσης μαζική επεξεργασία.</p><p>Ελέγξτε το επεξεργασμένο θέμα, τα γράμματα, την τοποθέτηση αντικειμένων και το όριο μιας αλλαγής με μάσκα στο επιθυμητό μέγεθος προβολής. Το GPT Image μπορεί ακόμη να δυσκολεύεται με την ακριβή τοποθέτηση κειμένου, τις δομημένες διατάξεις ή τη συνέπεια μεταξύ επαναλαμβανόμενων θεμάτων και στοιχείων επωνυμίας. Μια στοχευμένη επόμενη οδηγία πρέπει να προσδιορίζει το ορατό πρόβλημα και τα στοιχεία που πρέπει να διατηρηθούν. Το Sunburst είναι χρήσιμο για μια ακριβή δημιουργική ροή που καθοδηγείται από αναφορές και της οποίας το τελικό παραδοτέο μπορεί να αξιολογηθεί ως προς μια συγκεκριμένη οπτική περιγραφή, με υψηλότερη ποιότητα, διαστάσεις και διαφάνεια επιλεγμένες για αυτό το παραδοτέο.</p>",
  "aboutText": "Το GPT Image 2.5 Sunburst είναι το μοντέλο της OpenAI για δημιουργία και επεξεργασία εικόνων με προσανατολισμό στην ακρίβεια. Δέχεται εισόδους κειμένου και εικόνας και παράγει εικόνες εξόδου. Χρησιμοποιήστε το όταν μια δημιουργική εργασία εξαρτάται από την προσεκτική τροποποίηση υπάρχοντος υλικού, την εργασία με οπτικές αναφορές ή τη βελτίωση μιας σύνθεσης σε πολλά βήματα. Η περιγραφή μπορεί να δημιουργεί μια νέα σκηνή, να μεταμορφώνει μια υπάρχουσα εικόνα ή να καθοδηγεί επεξεργασία επιλεγμένης περιοχής. Τα Sunburst και Flare είναι ξεχωριστές εκδόσεις: το Sunburst δίνει έμφαση στην ακρίβεια επεξεργασίας, ενώ το Flare προορίζεται για γρήγορη καθημερινή δημιουργία.\n\nΓια νέα εικόνα, περιγράψτε το θέμα, το περιβάλλον, τη σύνθεση, τον φωτισμό και το ύφος και κατόπιν δηλώστε το επιθυμητό σχήμα και τη χρήση. Για μια ιδέα προϊόντος, ζητήστε ένα γυάλινο φωτιστικό πάνω σε πέτρινη επιφάνεια με απαλό πλευρικό φωτισμό, σαφώς ορατή σιλουέτα και ελεύθερο χώρο για επικεφαλίδα. Για επεξεργασία, ονομάστε την αλλαγή και τα στοιχεία που πρέπει να παραμείνουν αναγνωρίσιμα: αντικαταστήστε το φόντο, προσαρμόστε το φως ή αλλάξτε ένα υλικό διατηρώντας την επιλεγμένη σύνθεση. Οι άμεσες ροές δημιουργίας και επεξεργασίας του δημιουργού επιτρέπουν προτροπή έως 32 000 χαρακτήρες και ένα έως δέκα αποτελέσματα.\n\nΗ επεξεργασία με αναφορές μπορεί να χρησιμοποιεί έως δεκαέξι εικόνες εισόδου. Αναθέστε σε κάθε εικόνα έναν ρόλο ώστε η οδηγία να διακρίνει το θέμα που πρέπει να διατηρηθεί, το περιβάλλον που πρέπει να χρησιμοποιηθεί και το ύφος που πρέπει να εφαρμοστεί. Το μοντέλο μπορεί επίσης να εργαστεί με μάσκα που υποδεικνύει μια περιοχή προς αλλαγή. Η εικόνα προέλευσης και η μάσκα χρειάζονται ίδια μορφή και διαστάσεις και η μάσκα πρέπει να διαθέτει κανάλι άλφα· ο οδηγός ορίζει απαίτηση μεγέθους κάτω από 50 MB. Με πολλές εικόνες προέλευσης, η μάσκα εφαρμόζεται στην πρώτη. Καθοδηγεί τη ζητούμενη αλλαγή αντί να εγγυάται αυστηρό όριο, επομένως συμπεριλάβετε οδηγίες διατήρησης στην περιγραφή και εξετάστε τη γύρω περιοχή στο αποτέλεσμα.\n\nΟι ρυθμίσεις ποιότητας είναι low, medium, high, xhigh, max και auto, με προεπιλογή το auto. Το low μπορεί να υποστηρίζει ένα γρήγορο οπτικό προσχέδιο, ενώ οι υψηλότερες ρυθμίσεις είναι χρήσιμες για σύγκριση όταν έχουν σημασία οι λεπτές λεπτομέρειες. Η ποιότητα είναι ξεχωριστή από τις διαστάσεις εξόδου και τη συμπίεση αρχείου. Τα τυπικά μεγέθη περιλαμβάνουν 1024 × 1024, 1536 × 1024 και 1024 × 1536 pixel, ενώ διατίθενται επίσης αυτόματες ή προσαρμοσμένες διαστάσεις. Επιλέξτε το σχήμα με βάση την τελική διάταξη πριν αποφασίσετε πόση λεπτομέρεια χρειάζεται η εικόνα.\n\nΟι προσαρμοσμένες διαστάσεις πρέπει να είναι πολλαπλάσια των δεκαέξι pixel, καμία πλευρά δεν μπορεί να υπερβαίνει τα 3840 pixel, η αναλογία διαστάσεων πρέπει να παραμένει μεταξύ 1:3 και 3:1 και το συνολικό εμβαδόν πρέπει να βρίσκεται μεταξύ 655 360 και 8 294 400 pixel. Αυτές οι συνθήκες ισχύουν μαζί. Ένα οριζόντιο κάδρο 3840 × 2160 χωρά στο ανώτατο όριο εμβαδού, ενώ μια μεγάλη πλευρά από μόνη της δεν καθιστά έγκυρο ένα αυθαίρετο ζεύγος διαστάσεων. Οι αναλύσεις πάνω από 2560 × 1440 περιγράφονται ως πειραματικές. Κρατήστε τα σημαντικά αντικείμενα, το κείμενο και τον χρήσιμο κενό χώρο μέσα στην επιθυμητή περικοπή αντί να βασίζεστε σε περισσότερα pixel για να επιλύσουν τη σύνθεση.\n\nΤο PNG είναι η προεπιλεγμένη μορφή εξόδου· υποστηρίζονται επίσης JPEG και WebP. Για JPEG και WebP μπορεί να επιλεγεί συμπίεση από 0 έως 100. Τα διαφανή, αδιαφανή και αυτόματα φόντα εξυπηρετούν διαφορετικές ανάγκες διάταξης. Για διαφάνεια, επιλέξτε PNG ή WebP ώστε το αποτέλεσμα να μπορεί να διατηρεί κανάλι άλφα. Ένα διαφανές στοιχείο μπορεί κατόπιν να τοποθετηθεί σε άλλη σύνθεση, ενώ μια αδιαφανής εικόνα παρέχει το δικό της φόντο. Κρατήστε το πραγματικό ολοκληρωμένο αρχείο μαζί με την περιγραφή και τις επιλεγμένες ρυθμίσεις εξόδου.\n\nΗ OpenAI τεκμηριώνει άμεση δημιουργία και επεξεργασία, καθώς και ένα εργαλείο δημιουργίας εικόνων μέσω συνομιλίας που μπορεί να διατηρεί προηγούμενα αποτελέσματα και να εφαρμόζει επόμενες οδηγίες. Σε αυτή τη ροή συνομιλίας, η ενέργεια μπορεί να είναι αυτόματη, υποχρεωτική δημιουργία ή υποχρεωτική επεξεργασία όταν υπάρχει εικόνα στο πλαίσιο. Χρησιμοποιήστε την επιλεγμένη εικόνα ως αφετηρία για την επόμενη αλλαγή αντί να αλλάζετε σιωπηρά σε άλλη παραλλαγή. Η τεκμηριωμένη ροή συνεχούς μετάδοσης μπορεί να παραδώσει έως τρεις μερικές εικόνες πριν από το τελικό αποτέλεσμα· μια μερική προεπισκόπηση βοηθά να φαίνεται η πρόοδος αλλά δεν είναι το ολοκληρωμένο υλικό. Η διεπαφή του κατασκευαστή υποστηρίζει επίσης μαζική επεξεργασία.\n\nΕλέγξτε το επεξεργασμένο θέμα, τα γράμματα, την τοποθέτηση αντικειμένων και το όριο μιας αλλαγής με μάσκα στο επιθυμητό μέγεθος προβολής. Το GPT Image μπορεί ακόμη να δυσκολεύεται με την ακριβή τοποθέτηση κειμένου, τις δομημένες διατάξεις ή τη συνέπεια μεταξύ επαναλαμβανόμενων θεμάτων και στοιχείων επωνυμίας. Μια στοχευμένη επόμενη οδηγία πρέπει να προσδιορίζει το ορατό πρόβλημα και τα στοιχεία που πρέπει να διατηρηθούν. Το Sunburst είναι χρήσιμο για μια ακριβή δημιουργική ροή που καθοδηγείται από αναφορές και της οποίας το τελικό παραδοτέο μπορεί να αξιολογηθεί ως προς μια συγκεκριμένη οπτική περιγραφή, με υψηλότερη ποιότητα, διαστάσεις και διαφάνεια επιλεγμένες για αυτό το παραδοτέο.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "dd62dbf897f18ab9979891951306d9e8cdbd7a9429b328ca7eabbdd9571b5fef",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "el",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">O</span><h2 id=\"sheet-title\">OpenAI: GPT Image 2.5 Sunburst</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Κλείσιμο\">×</button></div><div class=\"idline\"><span>OpenAI /</span><code>openai/gpt-image-2.5-sunburst</code><button type=\"button\" id=\"copy-id\">Αντιγραφή ID</button></div><nav class=\"card-jump-nav\" aria-label=\"Ενότητες κάρτας μοντέλου\"><button type=\"button\" data-card-jump=\"overview\">Εισαγωγή</button><button type=\"button\" data-card-jump=\"methods\">Είσοδοι και μέθοδοι</button><button type=\"button\" data-card-jump=\"pricing\">Τιμολόγηση</button><button type=\"button\" data-card-jump=\"examples\">Παραδείγματα</button><button type=\"button\" data-card-jump=\"results\">Αποτελέσματα</button><button type=\"button\" data-card-jump=\"aliases\">Εναλλακτικά ονόματα</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"Μέθοδοι API\"><button type=\"button\" role=\"tab\" tabindex=\"0\" aria-controls=\"card-method-content\" aria-selected=\"true\" id=\"card-method-tab-0\" data-card-method=\"Ultra|images|/v1/images/generations|openai%2Fgpt-image-2.5-sunburst\">Εικόνες</button></div><div id=\"card-method-content\" role=\"tabpanel\" aria-labelledby=\"card-method-tab-0\"><section class=\"card-section\" data-card-section=\"overview\"><h3 tabindex=\"-1\">Εισαγωγή</h3><p class=\"mdesc-full\">Το GPT Image 2.5 Sunburst δημιουργεί και επεξεργάζεται εικόνες από κείμενο και οπτικές αναφορές, με έμφαση στην ακρίβεια επεξεργασίας. Υποστηρίζει μάσκες, διαδοχικές βελτιώσεις, προσαρμοσμένα μεγέθη κάδρου, διαφανή φόντα και επίπεδα ποιότητας από low έως max.</p><dl class=\"card-io\" data-card-io><div><dt>Αποδεκτές είσοδοι</dt><dd>Κείμενο · Εικόνες</dd></div><div><dt>Αποτελέσματα</dt><dd>Εικόνες</dd></div></dl><details class=\"card-about\"><summary>Σχετικά με το μοντέλο</summary><p class=\"note-s\" data-model-method-boundary>Αυτή η περιγραφή καλύπτει τις δυνατότητες του μοντέλου. Οι είσοδοι, έξοδοι και επιλογές που διατίθενται στο Ailoot παρατίθενται παρακάτω για την επιλεγμένη μέθοδο.</p><div class=\"mabout\" id=\"m-about\"><p>Το GPT Image 2.5 Sunburst είναι το μοντέλο της OpenAI για δημιουργία και επεξεργασία εικόνων με προσανατολισμό στην ακρίβεια. Δέχεται εισόδους κειμένου και εικόνας και παράγει εικόνες εξόδου. Χρησιμοποιήστε το όταν μια δημιουργική εργασία εξαρτάται από την προσεκτική τροποποίηση υπάρχοντος υλικού, την εργασία με οπτικές αναφορές ή τη βελτίωση μιας σύνθεσης σε πολλά βήματα. Η περιγραφή μπορεί να δημιουργεί μια νέα σκηνή, να μεταμορφώνει μια υπάρχουσα εικόνα ή να καθοδηγεί επεξεργασία επιλεγμένης περιοχής. Τα Sunburst και Flare είναι ξεχωριστές εκδόσεις: το Sunburst δίνει έμφαση στην ακρίβεια επεξεργασίας, ενώ το Flare προορίζεται για γρήγορη καθημερινή δημιουργία.</p><p>Για νέα εικόνα, περιγράψτε το θέμα, το περιβάλλον, τη σύνθεση, τον φωτισμό και το ύφος και κατόπιν δηλώστε το επιθυμητό σχήμα και τη χρήση. Για μια ιδέα προϊόντος, ζητήστε ένα γυάλινο φωτιστικό πάνω σε πέτρινη επιφάνεια με απαλό πλευρικό φωτισμό, σαφώς ορατή σιλουέτα και ελεύθερο χώρο για επικεφαλίδα. Για επεξεργασία, ονομάστε την αλλαγή και τα στοιχεία που πρέπει να παραμείνουν αναγνωρίσιμα: αντικαταστήστε το φόντο, προσαρμόστε το φως ή αλλάξτε ένα υλικό διατηρώντας την επιλεγμένη σύνθεση. Οι άμεσες ροές δημιουργίας και επεξεργασίας του δημιουργού επιτρέπουν προτροπή έως 32 000 χαρακτήρες και ένα έως δέκα αποτελέσματα.</p><p>Η επεξεργασία με αναφορές μπορεί να χρησιμοποιεί έως δεκαέξι εικόνες εισόδου. Αναθέστε σε κάθε εικόνα έναν ρόλο ώστε η οδηγία να διακρίνει το θέμα που πρέπει να διατηρηθεί, το περιβάλλον που πρέπει να χρησιμοποιηθεί και το ύφος που πρέπει να εφαρμοστεί. Το μοντέλο μπορεί επίσης να εργαστεί με μάσκα που υποδεικνύει μια περιοχή προς αλλαγή. Η εικόνα προέλευσης και η μάσκα χρειάζονται ίδια μορφή και διαστάσεις και η μάσκα πρέπει να διαθέτει κανάλι άλφα· ο οδηγός ορίζει απαίτηση μεγέθους κάτω από 50 MB. Με πολλές εικόνες προέλευσης, η μάσκα εφαρμόζεται στην πρώτη. Καθοδηγεί τη ζητούμενη αλλαγή αντί να εγγυάται αυστηρό όριο, επομένως συμπεριλάβετε οδηγίες διατήρησης στην περιγραφή και εξετάστε τη γύρω περιοχή στο αποτέλεσμα.</p><p>Οι ρυθμίσεις ποιότητας είναι low, medium, high, xhigh, max και auto, με προεπιλογή το auto. Το low μπορεί να υποστηρίζει ένα γρήγορο οπτικό προσχέδιο, ενώ οι υψηλότερες ρυθμίσεις είναι χρήσιμες για σύγκριση όταν έχουν σημασία οι λεπτές λεπτομέρειες. Η ποιότητα είναι ξεχωριστή από τις διαστάσεις εξόδου και τη συμπίεση αρχείου. Τα τυπικά μεγέθη περιλαμβάνουν 1024 × 1024, 1536 × 1024 και 1024 × 1536 pixel, ενώ διατίθενται επίσης αυτόματες ή προσαρμοσμένες διαστάσεις. Επιλέξτε το σχήμα με βάση την τελική διάταξη πριν αποφασίσετε πόση λεπτομέρεια χρειάζεται η εικόνα.</p><p>Οι προσαρμοσμένες διαστάσεις πρέπει να είναι πολλαπλάσια των δεκαέξι pixel, καμία πλευρά δεν μπορεί να υπερβαίνει τα 3840 pixel, η αναλογία διαστάσεων πρέπει να παραμένει μεταξύ 1:3 και 3:1 και το συνολικό εμβαδόν πρέπει να βρίσκεται μεταξύ 655 360 και 8 294 400 pixel. Αυτές οι συνθήκες ισχύουν μαζί. Ένα οριζόντιο κάδρο 3840 × 2160 χωρά στο ανώτατο όριο εμβαδού, ενώ μια μεγάλη πλευρά από μόνη της δεν καθιστά έγκυρο ένα αυθαίρετο ζεύγος διαστάσεων. Οι αναλύσεις πάνω από 2560 × 1440 περιγράφονται ως πειραματικές. Κρατήστε τα σημαντικά αντικείμενα, το κείμενο και τον χρήσιμο κενό χώρο μέσα στην επιθυμητή περικοπή αντί να βασίζεστε σε περισσότερα pixel για να επιλύσουν τη σύνθεση.</p><p>Το PNG είναι η προεπιλεγμένη μορφή εξόδου· υποστηρίζονται επίσης JPEG και WebP. Για JPEG και WebP μπορεί να επιλεγεί συμπίεση από 0 έως 100. Τα διαφανή, αδιαφανή και αυτόματα φόντα εξυπηρετούν διαφορετικές ανάγκες διάταξης. Για διαφάνεια, επιλέξτε PNG ή WebP ώστε το αποτέλεσμα να μπορεί να διατηρεί κανάλι άλφα. Ένα διαφανές στοιχείο μπορεί κατόπιν να τοποθετηθεί σε άλλη σύνθεση, ενώ μια αδιαφανής εικόνα παρέχει το δικό της φόντο. Κρατήστε το πραγματικό ολοκληρωμένο αρχείο μαζί με την περιγραφή και τις επιλεγμένες ρυθμίσεις εξόδου.</p><p>Η OpenAI τεκμηριώνει άμεση δημιουργία και επεξεργασία, καθώς και ένα εργαλείο δημιουργίας εικόνων μέσω συνομιλίας που μπορεί να διατηρεί προηγούμενα αποτελέσματα και να εφαρμόζει επόμενες οδηγίες. Σε αυτή τη ροή συνομιλίας, η ενέργεια μπορεί να είναι αυτόματη, υποχρεωτική δημιουργία ή υποχρεωτική επεξεργασία όταν υπάρχει εικόνα στο πλαίσιο. Χρησιμοποιήστε την επιλεγμένη εικόνα ως αφετηρία για την επόμενη αλλαγή αντί να αλλάζετε σιωπηρά σε άλλη παραλλαγή. Η τεκμηριωμένη ροή συνεχούς μετάδοσης μπορεί να παραδώσει έως τρεις μερικές εικόνες πριν από το τελικό αποτέλεσμα· μια μερική προεπισκόπηση βοηθά να φαίνεται η πρόοδος αλλά δεν είναι το ολοκληρωμένο υλικό. Η διεπαφή του κατασκευαστή υποστηρίζει επίσης μαζική επεξεργασία.</p><p>Ελέγξτε το επεξεργασμένο θέμα, τα γράμματα, την τοποθέτηση αντικειμένων και το όριο μιας αλλαγής με μάσκα στο επιθυμητό μέγεθος προβολής. Το GPT Image μπορεί ακόμη να δυσκολεύεται με την ακριβή τοποθέτηση κειμένου, τις δομημένες διατάξεις ή τη συνέπεια μεταξύ επαναλαμβανόμενων θεμάτων και στοιχείων επωνυμίας. Μια στοχευμένη επόμενη οδηγία πρέπει να προσδιορίζει το ορατό πρόβλημα και τα στοιχεία που πρέπει να διατηρηθούν. Το Sunburst είναι χρήσιμο για μια ακριβή δημιουργική ροή που καθοδηγείται από αναφορές και της οποίας το τελικό παραδοτέο μπορεί να αξιολογηθεί ως προς μια συγκεκριμένη οπτική περιγραφή, με υψηλότερη ποιότητα, διαστάσεις και διαφάνεια επιλεγμένες για αυτό το παραδοτέο.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Διαθέσιμα στο Ailoot · είσοδοι και μέθοδοι</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Εικόνες</b> <code>POST /v1/images/generations</code></summary><dl class=\"method-capabilities\"><div><dt>Είσοδος</dt><dd><code>text</code>, <code>image</code></dd></div><div><dt>Έξοδος</dt><dd><code>image</code></dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Πεδίο</th><th>Τύπος</th><th>Απαίτηση</th><th>Τιμές και όρια</th><th>Προεπιλογή</th></tr></thead><tbody><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span><code>string</code></td><td data-cell-label=\"Απαίτηση\"><span class=\"card-cell-label\">Απαίτηση</span>Υποχρεωτικό</td><td data-cell-label=\"Τιμές και όρια\"><span class=\"card-cell-label\">Τιμές και όρια</span><div>openai/gpt-image-2.5-sunburst</div></td><td data-cell-label=\"Προεπιλογή\" data-default=\"unspecified\"><span class=\"card-cell-label\">Προεπιλογή</span>—</td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">prompt</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span><code>string</code></td><td data-cell-label=\"Απαίτηση\"><span class=\"card-cell-label\">Απαίτηση</span>Υποχρεωτικό</td><td data-cell-label=\"Τιμές και όρια\"><span class=\"card-cell-label\">Τιμές και όρια</span><div>Ελάχιστο μήκος: 1</div></td><td data-cell-label=\"Προεπιλογή\" data-default=\"unspecified\"><span class=\"card-cell-label\">Προεπιλογή</span>—</td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">aspect_ratio</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span><code>string</code></td><td data-cell-label=\"Απαίτηση\"><span class=\"card-cell-label\">Απαίτηση</span>Προαιρετικό</td><td data-cell-label=\"Τιμές και όρια\"><span class=\"card-cell-label\">Τιμές και όρια</span><div>1:1, 3:2, 2:3, 4:3, 3:4, 16:9, 9:16, 21:9, auto</div></td><td data-cell-label=\"Προεπιλογή\" data-default=\"unspecified\"><span class=\"card-cell-label\">Προεπιλογή</span>—</td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">quality</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span><code>string</code></td><td data-cell-label=\"Απαίτηση\"><span class=\"card-cell-label\">Απαίτηση</span>Προαιρετικό</td><td data-cell-label=\"Τιμές και όρια\"><span class=\"card-cell-label\">Τιμές και όρια</span><div>auto, low, medium, high, xhigh, max</div></td><td data-cell-label=\"Προεπιλογή\" data-default=\"unspecified\"><span class=\"card-cell-label\">Προεπιλογή</span>—</td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">background</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span><code>string</code></td><td data-cell-label=\"Απαίτηση\"><span class=\"card-cell-label\">Απαίτηση</span>Προαιρετικό</td><td data-cell-label=\"Τιμές και όρια\"><span class=\"card-cell-label\">Τιμές και όρια</span><div>auto, transparent, opaque</div></td><td data-cell-label=\"Προεπιλογή\" data-default=\"unspecified\"><span class=\"card-cell-label\">Προεπιλογή</span>—</td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">n</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span><code>integer</code></td><td data-cell-label=\"Απαίτηση\"><span class=\"card-cell-label\">Απαίτηση</span>Προαιρετικό</td><td data-cell-label=\"Τιμές και όρια\"><span class=\"card-cell-label\">Τιμές και όρια</span><div>Ελάχιστο: 1</div><div>Μέγιστο: 10</div></td><td data-cell-label=\"Προεπιλογή\" data-default=\"unspecified\"><span class=\"card-cell-label\">Προεπιλογή</span>—</td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">input_references</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span><code>array</code></td><td data-cell-label=\"Απαίτηση\"><span class=\"card-cell-label\">Απαίτηση</span>Προαιρετικό</td><td data-cell-label=\"Τιμές και όρια\"><span class=\"card-cell-label\">Τιμές και όρια</span><div>Ελάχιστο πλήθος στοιχείων: 0</div><div>Μέγιστο πλήθος στοιχείων: 16</div></td><td data-cell-label=\"Προεπιλογή\" data-default=\"unspecified\"><span class=\"card-cell-label\">Προεπιλογή</span>—</td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">output_compression</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span><code>integer</code></td><td data-cell-label=\"Απαίτηση\"><span class=\"card-cell-label\">Απαίτηση</span>Προαιρετικό</td><td data-cell-label=\"Τιμές και όρια\"><span class=\"card-cell-label\">Τιμές και όρια</span><div>Ελάχιστο: 0</div><div>Μέγιστο: 100</div></td><td data-cell-label=\"Προεπιλογή\" data-default=\"unspecified\"><span class=\"card-cell-label\">Προεπιλογή</span>—</td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">provider</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span><code>object</code></td><td data-cell-label=\"Απαίτηση\"><span class=\"card-cell-label\">Απαίτηση</span>Προαιρετικό</td><td data-cell-label=\"Τιμές και όρια\"><span class=\"card-cell-label\">Τιμές και όρια</span></td><td data-cell-label=\"Προεπιλογή\" data-default=\"unspecified\"><span class=\"card-cell-label\">Προεπιλογή</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>Παράμετροι και κύκλος ζωής μεθόδου</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Παράμετρος</th><th>Σύμβαση</th></tr></thead><tbody><tr><th data-cell-label=\"Παράμετρος\" scope=\"row\"><span class=\"card-cell-label\">Παράμετρος</span><code>content_type</code></th><td data-cell-label=\"Σύμβαση\"><span class=\"card-cell-label\">Σύμβαση</span>application/json</td></tr><tr><th data-cell-label=\"Παράμετρος\" scope=\"row\"><span class=\"card-cell-label\">Παράμετρος</span><code>required</code></th><td data-cell-label=\"Σύμβαση\"><span class=\"card-cell-label\">Σύμβαση</span>model, prompt</td></tr><tr><th data-cell-label=\"Παράμετρος\" scope=\"row\"><span class=\"card-cell-label\">Παράμετρος</span><code>material_types</code></th><td data-cell-label=\"Σύμβαση\"><span class=\"card-cell-label\">Σύμβαση</span>text, image</td></tr></tbody></table></div><p>Κύκλος ζωής: <code>synchronous_result_then_owned_library</code></p><p class=\"note-s\"><code>GET /v1/media/tasks/{task_id}</code> · Το πραγματικό task_id που επιστράφηκε ή μια εγγραφή στη βιβλιοθήκη πολυμέσων</p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}/content</code></p><p class=\"note-s\"><code>GET /v1/media/assets</code></p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}</code></p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Τιμολόγηση</h3><div class=\"card-result-process\" data-billing-basis><h5>Πώς υπολογίζεται η τελική χρέωση</h5><p class=\"note-s\">Οι εμφανιζόμενες τιμές χρησιμοποιούνται για την εκτίμηση του κόστους πριν από την παραγωγή. Η τελική χρέωση υπολογίζεται από το κόστος που καταγράφηκε για την αρχική παραγωγή. Η μετρημένη διάρκεια της εξόδου και οι προβλεπόμενες ποσότητες δεν αποτελούν την τελική χρεώσιμη ποσότητα.</p></div><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Οι τιμολογιακές αναφορές δεν προσθέτουν επιλογές αιτήματος. Οι υποστηριζόμενες παράμετροι αναφέρονται στην επιλεγμένη μέθοδο.</p><dl data-price-conditions><dt>Γρήγορη λειτουργία</dt><dd>Δεν έχει οριστεί <span class=\"note-s\">Όταν επιλέγεται η γρήγορη λειτουργία</span></dd><dt>Λειτουργία flex</dt><dd>Δεν έχει οριστεί <span class=\"note-s\">Όταν επιλέγεται η λειτουργία flex</span></dd><dt>Μέγιστη προσπάθεια συλλογισμού</dt><dd>Δεν έχει οριστεί <span class=\"note-s\">Όταν η μέγιστη προσπάθεια συλλογισμού χρησιμοποιεί την προσαρμογή default</span></dd></dl></div><div data-declared-tariff-pricing><h4>Εκτιμώμενες χρεώσεις για σύγκριση</h4><h4>Τιμές ανά διαμόρφωση</h4><p class=\"note-s\">Αντιστοιχίστε κάθε χρέωση στις συνθήκες που εμφανίζονται. Χρησιμοποιήστε μία χρέωση ανά σύνολο εναλλακτικών διαμορφώσεων.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Διαμόρφωση</th><th>Πίνακας χρεώσεων</th><th>Προβλεπόμενη ποσότητα</th><th>Χρέωση</th></tr></thead><tbody><tr><th data-cell-label=\"Διαμόρφωση\" scope=\"row\"><span class=\"card-cell-label\">Διαμόρφωση</span>Βασικές χρεώσεις token</th><td data-cell-label=\"Πίνακας χρεώσεων\"><span class=\"card-cell-label\">Πίνακας χρεώσεων</span>Βασική χρέωση</td><td data-cell-label=\"Προβλεπόμενη ποσότητα\"><span class=\"card-cell-label\">Προβλεπόμενη ποσότητα</span>—</td><td data-cell-label=\"Χρέωση\"><span class=\"card-cell-label\">Χρέωση</span><div><span>Είσοδος · Token εισόδου · Εκτίμηση μόνο για σύγκριση</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Έξοδος · Token εξόδου · Εκτίμηση μόνο για σύγκριση</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Είσοδος · Ανάγνωση από την κρυφή μνήμη · Εκτίμηση μόνο για σύγκριση</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Είσοδος · Εγγραφή στην κρυφή μνήμη · Εκτίμηση μόνο για σύγκριση</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Είσοδος · Εγγραφή στην κρυφή μνήμη, 1 ώρα · Εκτίμηση μόνο για σύγκριση</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div></td></tr><tr><th data-cell-label=\"Διαμόρφωση\" scope=\"row\"><span class=\"card-cell-label\">Διαμόρφωση</span>Εκτιμώμενο κόστος δημιουργίας</th><td data-cell-label=\"Πίνακας χρεώσεων\"><span class=\"card-cell-label\">Πίνακας χρεώσεων</span>—</td><td data-cell-label=\"Προβλεπόμενη ποσότητα\"><span class=\"card-cell-label\">Προβλεπόμενη ποσότητα</span>εκτίμηση για μία δημιουργία</td><td data-cell-label=\"Χρέωση\"><span class=\"card-cell-label\">Χρέωση</span><div><span>Έξοδος · Εκτιμώμενο κόστος δημιουργίας · Εκτίμηση μόνο για σύγκριση</span> <b>$0.24576</b> <span class=\"price-unit\">εκτίμηση πριν από τη δημιουργία</span></div><p class=\"note-s\">Αυτή η εκτίμηση δεν αποτελεί πρόσθετη χρέωση ούτε σταθερή τιμή για την ολοκληρωμένη παραγωγή.</p></td></tr></tbody></table></div></div><p class=\"note-s\">Το Ailoot δεσμεύει ένα εκτιμώμενο ποσό πριν από το αίτημα. Μετά το αποτέλεσμα, εκκαθαρίζει την τελική χρέωση βάσει της μετρημένης χρήσης. Η εκκαθάριση ροής χρησιμοποιεί την τελική καταγραφή χρήσης. <a href=\"/docs/el/billing/reserve/\">Πώς λειτουργούν η δέσμευση και η εκκαθάριση →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Παραδείγματα αιτημάτων</h3><h4>Ailoot Ultra · Εικόνες</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Παραλλαγές κώδικα\"><button class=\"cg-tab\" id=\"model-code-2150-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2150-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Αντιγραφή κώδικα\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-2150-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-2150-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\nexport AILOOT_API_KEY\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport json,os\nfrom pathlib import Path\np={&#39;model&#39;: &#39;openai/gpt-image-2.5-sunburst&#39;, &#39;prompt&#39;: &#39;a red panda astronaut floating in space, studio lighting&#39;}\n\nPath(&quot;request.json&quot;).write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -H &#39;Content-Type: application/json&#39; \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - &lt;&lt;&#39;PY_RESULT&#39;\nimport base64, json, os, subprocess\nfrom pathlib import Path\nfrom urllib.parse import urlsplit, urljoin\n\ndef save_images(items):\n    if not items: raise SystemExit(&quot;No completed images; retain the full response&quot;)\n    for index, item in enumerate(items):\n        encoded=item.get(&quot;b64_json&quot;)\n        uri=item.get(&quot;url&quot;, &quot;&quot;)\n        if not encoded and uri.startswith(&quot;data:image/&quot;):\n            header, separator, encoded=uri.partition(&quot;,&quot;)\n            if not separator or &quot;;base64&quot; not in header: raise SystemExit(&quot;Unsupported image data URI&quot;)\n        if encoded:\n            raw=base64.b64decode(encoded,validate=True)\n        elif uri:\n            uri=urljoin(&quot;https://api.ailoot.ai&quot;,uri)\n            parsed=urlsplit(uri)\n            if parsed.scheme!=&quot;https&quot; or not parsed.netloc or parsed.username or parsed.password:\n                raise SystemExit(&quot;Invalid returned image URL&quot;)\n            owned=parsed.netloc==&quot;api.ailoot.ai&quot; and parsed.path.startswith(&quot;/v1/media/assets/&quot;) and parsed.path.endswith(&quot;/content&quot;)\n            args=[&quot;curl&quot;,&quot;--fail-with-body&quot;,&quot;--silent&quot;,&quot;--show-error&quot;,uri]\n            if owned: args += [&quot;-H&quot;,&quot;Authorization: Bearer &quot;+os.environ[&quot;AILOOT_API_KEY&quot;]]\n            temporary=Path(f&quot;image-{index}.bin&quot;)\n            subprocess.run(args+[&quot;-o&quot;,str(temporary)],check=True)\n            raw=temporary.read_bytes()\n            temporary.unlink()\n        else: raise SystemExit(&quot;Image has neither bytes nor URL&quot;)\n        if not raw: raise SystemExit(&quot;Empty image result&quot;)\n        ext=&quot;png&quot; if raw.startswith(b&quot;\\x89PNG&quot;) else &quot;jpg&quot; if raw.startswith(b&quot;\\xff\\xd8&quot;) else &quot;webp&quot; if raw[:4]==b&quot;RIFF&quot; and raw[8:12]==b&quot;WEBP&quot; else &quot;svg&quot; if raw.lstrip().startswith((b&quot;&lt;svg&quot;,b&quot;&lt;?xml&quot;)) else &quot;bin&quot;\n        Path(f&quot;image-{index}.{ext}&quot;).write_bytes(raw)\n    print(&quot;Every returned image saved; complete response metadata retained&quot;)\nsave_images(json.loads(Path(&quot;result.json&quot;).read_text())[&quot;data&quot;])\nPY_RESULT\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Λήψη και αποθήκευση αποτελεσμάτων</h3><h4>Ailoot Ultra · Εικόνες</h4><p class=\"note-s\">Κατεβάστε κάθε εικόνα που επιστρέφεται ή αποθηκεύστε το περιεχόμενο Base64</p><ul class=\"card-result-paths\"><li><code>GET /v1/media/tasks/{task_id}</code></li><li><code>GET /v1/media/assets/{asset_id}/content</code></li><li><code>GET /v1/media/assets</code></li><li><code>GET /v1/media/assets/{asset_id}</code></li></ul><details class=\"card-about\"><summary>Άλλες ανακτήσεις περιεχομένου</summary><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Παραλλαγές κώδικα\"><button class=\"cg-tab\" id=\"model-code-2151-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2151-panel-0\" aria-selected=\"true\" tabindex=\"0\">Ανάκτηση υπαρχόντων αρχείων που σας ανήκουν</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Αντιγραφή κώδικα\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-2151-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-2151-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -o owned-assets.json\n# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.\n</code></pre></div></div></div></details><div class=\"card-result-process\" data-all-results><h5>Διατηρήστε όλα τα ολοκληρωμένα αποτελέσματα</h5><p class=\"note-s\">Αποθηκεύστε κάθε ολοκληρωμένη εικόνα· ανακτήστε κάθε URL που επιστρέφεται ή αποκωδικοποιήστε το περιεχόμενο Base64.</p><p class=\"note-s\">Διατηρήστε ολόκληρη την απόκριση και τις κεφαλίδες, κάθε πραγματικό αποτέλεσμα εξόδου, τα αρχικά αναγνωριστικά που επιστράφηκαν και όλα τα πεδία χρήσης. Ανακτήστε την αρχική λειτουργία χωρίς να υποβάλετε ξανά αίτημα δημιουργίας.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Αν χρειάζεται έλεγχος της αρχικής απάντησης</h5><p class=\"note-s\">Διατηρήστε το X-Client-Request-ID που επιστράφηκε για τη συμφωνία των εγγραφών. Διαβάστε μόνο πραγματικές τιμές task_id/asset_id που επιστράφηκαν ή τη βιβλιοθήκη πολυμέσων που σας ανήκει· μην κατασκευάσετε ποτέ URL εργασίας από το ID της λειτουργίας και μην υποβάλετε ποτέ ξανά αίτημα δημιουργίας.</p></div><details class=\"card-about\" data-output-fields><summary>Πεδία απάντησης</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>Πεδίο</th><th>Τύπος</th></tr></thead><tbody><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">created</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span></td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">data[].url</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span></td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">data[].b64_json</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span></td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">usage</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span></td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Εναλλακτικά ονόματα</h3><h4>Εναλλακτικά ονόματα μοντέλου</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=openai%2Fgpt-image-2.5-sunburst&amp;route=Ultra&amp;caller=openai%2Fgpt-image-2.5-sunburst&amp;fmt=images\"><code>openai/gpt-image-2.5-sunburst</code></a></span></p><h4>Εναλλακτικές διαδρομές μεθόδων</h4><p class=\"note-s\"><code>/v1/images</code></p><h4>Σχετικά ID μοντέλων</h4><p class=\"note-s\"><a href=\"#m=openai%2Fgpt-image-2.5-sunburst&amp;route=Ultra&amp;caller=openai%2Fgpt-image-2.5-sunburst&amp;fmt=images\"><code>openai/gpt-image-2.5-sunburst</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "openai/gpt-image-2.5-sunburst",
        "fmt": "images",
        "http": "POST",
        "path": "/v1/images/generations",
        "request_model_id": "openai/gpt-image-2.5-sunburst",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|images|/v1/images/generations|openai%2Fgpt-image-2.5-sunburst",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "billing_basis": {
          "basis": "original_invoice_usd",
          "description": "Οι εμφανιζόμενες τιμές χρησιμοποιούνται για την εκτίμηση του κόστους πριν από την παραγωγή. Η τελική χρέωση υπολογίζεται από το κόστος που καταγράφηκε για την αρχική παραγωγή. Η μετρημένη διάρκεια της εξόδου και οι προβλεπόμενες ποσότητες δεν αποτελούν την τελική χρεώσιμη ποσότητα.",
          "forecast_quantity_is_estimate": true,
          "physical_output_is_billable_quantity": false,
          "version": "original_invoice_usd_v1"
        },
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed URL; never construct token"
                }
              ],
              "mode": "synchronous_result_then_owned_library",
              "operation_id_is_not_task_id": true,
              "status": [
                {
                  "http": "GET",
                  "id_source": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Διατηρήστε το X-Client-Request-ID που επιστράφηκε για τη συμφωνία των εγγραφών. Διαβάστε μόνο πραγματικές τιμές task_id/asset_id που επιστράφηκαν ή τη βιβλιοθήκη πολυμέσων που σας ανήκει· μην κατασκευάσετε ποτέ URL εργασίας από το ID της λειτουργίας και μην υποβάλετε ποτέ ξανά αίτημα δημιουργίας."
            },
            "outputs": {
              "all_results": "Διατηρήστε ολόκληρη την απόκριση και τις κεφαλίδες, κάθε πραγματικό αποτέλεσμα εξόδου, τα αρχικά αναγνωριστικά που επιστράφηκαν και όλα τα πεδία χρήσης. Ανακτήστε την αρχική λειτουργία χωρίς να υποβάλετε ξανά αίτημα δημιουργίας.",
              "family": "image",
              "fields": [
                {
                  "description": null,
                  "name": "created",
                  "type": null
                },
                {
                  "description": null,
                  "name": "data[].url",
                  "type": null
                },
                {
                  "description": null,
                  "name": "data[].b64_json",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage",
                  "type": null
                }
              ]
            },
            "parameters": [
              {
                "enum": [
                  "openai/gpt-image-2.5-sunburst"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "min_length": 1,
                "name": "prompt",
                "required": true,
                "type": "string"
              },
              {
                "enum": [
                  "1:1",
                  "3:2",
                  "2:3",
                  "4:3",
                  "3:4",
                  "16:9",
                  "9:16",
                  "21:9",
                  "auto"
                ],
                "enum_known": true,
                "name": "aspect_ratio",
                "required": false,
                "type": "string"
              },
              {
                "enum": [
                  "auto",
                  "low",
                  "medium",
                  "high",
                  "xhigh",
                  "max"
                ],
                "enum_known": true,
                "name": "quality",
                "required": false,
                "type": "string"
              },
              {
                "enum": [
                  "auto",
                  "transparent",
                  "opaque"
                ],
                "enum_known": true,
                "name": "background",
                "required": false,
                "type": "string"
              },
              {
                "maximum": 10,
                "minimum": 1,
                "name": "n",
                "required": false,
                "type": "integer"
              },
              {
                "items": {
                  "properties": {
                    "image_url": {
                      "properties": {
                        "url": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "url"
                      ],
                      "type": "object"
                    },
                    "type": {
                      "const": "image_url"
                    }
                  },
                  "required": [
                    "type",
                    "image_url"
                  ],
                  "type": "object"
                },
                "maximum_items": 16,
                "minimum_items": 0,
                "name": "input_references",
                "required": false,
                "type": "array"
              },
              {
                "maximum": 100,
                "minimum": 0,
                "name": "output_compression",
                "required": false,
                "type": "integer"
              },
              {
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "aspect_ratio": {
                  "enum": [
                    "1:1",
                    "3:2",
                    "2:3",
                    "4:3",
                    "3:4",
                    "16:9",
                    "9:16",
                    "21:9",
                    "auto"
                  ],
                  "type": "string"
                },
                "background": {
                  "enum": [
                    "auto",
                    "transparent",
                    "opaque"
                  ],
                  "type": "string"
                },
                "input_references": {
                  "items": {
                    "properties": {
                      "image_url": {
                        "properties": {
                          "url": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "url"
                        ],
                        "type": "object"
                      },
                      "type": {
                        "const": "image_url"
                      }
                    },
                    "required": [
                      "type",
                      "image_url"
                    ],
                    "type": "object"
                  },
                  "maxItems": 16,
                  "minItems": 0,
                  "type": "array"
                },
                "model": {
                  "enum": [
                    "openai/gpt-image-2.5-sunburst"
                  ],
                  "type": "string"
                },
                "n": {
                  "maximum": 10,
                  "minimum": 1,
                  "type": "integer"
                },
                "output_compression": {
                  "maximum": 100,
                  "minimum": 0,
                  "type": "integer"
                },
                "prompt": {
                  "minLength": 1,
                  "type": "string"
                },
                "provider": {
                  "description": "Exact image provider preferences from the documented image request schema.",
                  "type": "object"
                },
                "quality": {
                  "enum": [
                    "auto",
                    "low",
                    "medium",
                    "high",
                    "xhigh",
                    "max"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "prompt"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "model": "openai/gpt-image-2.5-sunburst",
                "prompt": "a red panda astronaut floating in space, studio lighting"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_types": [
              "text",
              "image"
            ],
            "required": [
              "model",
              "prompt"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed URL; never construct token"
              }
            ],
            "mode": "synchronous_result_then_owned_library",
            "operation_id_is_not_task_id": true,
            "status": [
              {
                "http": "GET",
                "id_source": "Το πραγματικό task_id που επιστράφηκε ή μια εγγραφή στη βιβλιοθήκη πολυμέσων",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Keep the returned X-Client-Request-ID for reconciliation. Read only actual returned task_id/asset_id values or the owned media library; never build a task URL from the operation ID and never resubmit creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/images/generations"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "image",
            "fields": [
              {
                "description": null,
                "name": "created",
                "type": null
              },
              {
                "description": null,
                "name": "data[].url",
                "type": null
              },
              {
                "description": null,
                "name": "data[].b64_json",
                "type": null
              },
              {
                "description": null,
                "name": "usage",
                "type": null
              }
            ]
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "basis": "Αυτή η εκτίμηση δεν αποτελεί πρόσθετη χρέωση ούτε σταθερή τιμή για την ολοκληρωμένη παραγωγή.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Εκτιμώμενο κόστος δημιουργίας",
            "units": [
              {
                "amount": "0.24576",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.24576",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np={'model': 'openai/gpt-image-2.5-sunburst', 'prompt': 'a red panda astronaut floating in space, studio lighting'}\n\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - <<'PY_RESULT'\nimport base64, json, os, subprocess\nfrom pathlib import Path\nfrom urllib.parse import urlsplit, urljoin\n\ndef save_images(items):\n    if not items: raise SystemExit(\"No completed images; retain the full response\")\n    for index, item in enumerate(items):\n        encoded=item.get(\"b64_json\")\n        uri=item.get(\"url\", \"\")\n        if not encoded and uri.startswith(\"data:image/\"):\n            header, separator, encoded=uri.partition(\",\")\n            if not separator or \";base64\" not in header: raise SystemExit(\"Unsupported image data URI\")\n        if encoded:\n            raw=base64.b64decode(encoded,validate=True)\n        elif uri:\n            uri=urljoin(\"https://api.ailoot.ai\",uri)\n            parsed=urlsplit(uri)\n            if parsed.scheme!=\"https\" or not parsed.netloc or parsed.username or parsed.password:\n                raise SystemExit(\"Invalid returned image URL\")\n            owned=parsed.netloc==\"api.ailoot.ai\" and parsed.path.startswith(\"/v1/media/assets/\") and parsed.path.endswith(\"/content\")\n            args=[\"curl\",\"--fail-with-body\",\"--silent\",\"--show-error\",uri]\n            if owned: args += [\"-H\",\"Authorization: Bearer \"+os.environ[\"AILOOT_API_KEY\"]]\n            temporary=Path(f\"image-{index}.bin\")\n            subprocess.run(args+[\"-o\",str(temporary)],check=True)\n            raw=temporary.read_bytes()\n            temporary.unlink()\n        else: raise SystemExit(\"Image has neither bytes nor URL\")\n        if not raw: raise SystemExit(\"Empty image result\")\n        ext=\"png\" if raw.startswith(b\"\\x89PNG\") else \"jpg\" if raw.startswith(b\"\\xff\\xd8\") else \"webp\" if raw[:4]==b\"RIFF\" and raw[8:12]==b\"WEBP\" else \"svg\" if raw.lstrip().startswith((b\"<svg\",b\"<?xml\")) else \"bin\"\n        Path(f\"image-{index}.{ext}\").write_bytes(raw)\n    print(\"Every returned image saved; complete response metadata retained\")\nsave_images(json.loads(Path(\"result.json\").read_text())[\"data\"])\nPY_RESULT\n",
            "label": "curl · exact creation/save all outputs",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o owned-assets.json\n# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.\n",
            "label": "Read existing owned assets",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "images",
        "hints": [
          "Use the exact caller model ID and documented input representation.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "text",
          "image"
        ],
        "label": "Εικόνες",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [
          "/v1/images"
        ],
        "native_endpoint": "images",
        "out": null,
        "output": [
          "image"
        ],
        "path": "/v1/images/generations",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "original_invoice_usd",
          "image_input_price": null,
          "image_output_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "basis": "This estimate is not an additional charge or a fixed rate for the completed generation.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Estimated generation cost",
            "units": [
              {
                "amount": "0.24576",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.24576",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "request_model_id": "openai/gpt-image-2.5-sunburst",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.24576",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "forecast_usd",
            "label": "Estimated generation cost",
            "native_amount_usd_per_unit": "0.24576",
            "native_quantity": 1,
            "public_unit_label": "estimate before generation",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "request_estimate"
          }
        ]
      }
    }
  ],
  "model_id": "openai/gpt-image-2.5-sunburst",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "6bb8ff80f4412bd176801f042ce0f8c061abad42c99f9e6ddba1830a84ae2441",
    "input_html_sha256": "c5c2de3ae867a5f24f463943a8c30b115f144bf34f1e1d42c9bb179a1983724c",
    "private_audit_sha256": "3f21775430f6dceeac849685328d73f07ff8ca8bade6b0c618f4f141e7b116a4",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/el/openai-gpt-image-2-5-sunburst/",
    "description": "Το GPT Image 2.5 Sunburst δημιουργεί και επεξεργάζεται εικόνες από κείμενο και οπτικές αναφορές, με έμφαση στην ακρίβεια επεξεργασίας. Υποστηρίζει μάσκες, διαδοχικές βελτιώσεις, προσαρμοσμένα μεγέθη κάδρου, διαφανή φόντα και επίπεδα ποιότητας από low έως max.",
    "locale": "el",
    "md_url": "https://ailoot.ai/models/el/openai-gpt-image-2-5-sunburst/index.md",
    "title": "OpenAI: GPT Image 2.5 Sunburst — Ailoot",
    "url": "https://ailoot.ai/models/el/openai-gpt-image-2-5-sunburst/"
  },
  "rawModel": {
    "about": "Το GPT Image 2.5 Sunburst είναι το μοντέλο της OpenAI για δημιουργία και επεξεργασία εικόνων με προσανατολισμό στην ακρίβεια. Δέχεται εισόδους κειμένου και εικόνας και παράγει εικόνες εξόδου. Χρησιμοποιήστε το όταν μια δημιουργική εργασία εξαρτάται από την προσεκτική τροποποίηση υπάρχοντος υλικού, την εργασία με οπτικές αναφορές ή τη βελτίωση μιας σύνθεσης σε πολλά βήματα. Η περιγραφή μπορεί να δημιουργεί μια νέα σκηνή, να μεταμορφώνει μια υπάρχουσα εικόνα ή να καθοδηγεί επεξεργασία επιλεγμένης περιοχής. Τα Sunburst και Flare είναι ξεχωριστές εκδόσεις: το Sunburst δίνει έμφαση στην ακρίβεια επεξεργασίας, ενώ το Flare προορίζεται για γρήγορη καθημερινή δημιουργία.\n\nΓια νέα εικόνα, περιγράψτε το θέμα, το περιβάλλον, τη σύνθεση, τον φωτισμό και το ύφος και κατόπιν δηλώστε το επιθυμητό σχήμα και τη χρήση. Για μια ιδέα προϊόντος, ζητήστε ένα γυάλινο φωτιστικό πάνω σε πέτρινη επιφάνεια με απαλό πλευρικό φωτισμό, σαφώς ορατή σιλουέτα και ελεύθερο χώρο για επικεφαλίδα. Για επεξεργασία, ονομάστε την αλλαγή και τα στοιχεία που πρέπει να παραμείνουν αναγνωρίσιμα: αντικαταστήστε το φόντο, προσαρμόστε το φως ή αλλάξτε ένα υλικό διατηρώντας την επιλεγμένη σύνθεση. Οι άμεσες ροές δημιουργίας και επεξεργασίας του δημιουργού επιτρέπουν προτροπή έως 32 000 χαρακτήρες και ένα έως δέκα αποτελέσματα.\n\nΗ επεξεργασία με αναφορές μπορεί να χρησιμοποιεί έως δεκαέξι εικόνες εισόδου. Αναθέστε σε κάθε εικόνα έναν ρόλο ώστε η οδηγία να διακρίνει το θέμα που πρέπει να διατηρηθεί, το περιβάλλον που πρέπει να χρησιμοποιηθεί και το ύφος που πρέπει να εφαρμοστεί. Το μοντέλο μπορεί επίσης να εργαστεί με μάσκα που υποδεικνύει μια περιοχή προς αλλαγή. Η εικόνα προέλευσης και η μάσκα χρειάζονται ίδια μορφή και διαστάσεις και η μάσκα πρέπει να διαθέτει κανάλι άλφα· ο οδηγός ορίζει απαίτηση μεγέθους κάτω από 50 MB. Με πολλές εικόνες προέλευσης, η μάσκα εφαρμόζεται στην πρώτη. Καθοδηγεί τη ζητούμενη αλλαγή αντί να εγγυάται αυστηρό όριο, επομένως συμπεριλάβετε οδηγίες διατήρησης στην περιγραφή και εξετάστε τη γύρω περιοχή στο αποτέλεσμα.\n\nΟι ρυθμίσεις ποιότητας είναι low, medium, high, xhigh, max και auto, με προεπιλογή το auto. Το low μπορεί να υποστηρίζει ένα γρήγορο οπτικό προσχέδιο, ενώ οι υψηλότερες ρυθμίσεις είναι χρήσιμες για σύγκριση όταν έχουν σημασία οι λεπτές λεπτομέρειες. Η ποιότητα είναι ξεχωριστή από τις διαστάσεις εξόδου και τη συμπίεση αρχείου. Τα τυπικά μεγέθη περιλαμβάνουν 1024 × 1024, 1536 × 1024 και 1024 × 1536 pixel, ενώ διατίθενται επίσης αυτόματες ή προσαρμοσμένες διαστάσεις. Επιλέξτε το σχήμα με βάση την τελική διάταξη πριν αποφασίσετε πόση λεπτομέρεια χρειάζεται η εικόνα.\n\nΟι προσαρμοσμένες διαστάσεις πρέπει να είναι πολλαπλάσια των δεκαέξι pixel, καμία πλευρά δεν μπορεί να υπερβαίνει τα 3840 pixel, η αναλογία διαστάσεων πρέπει να παραμένει μεταξύ 1:3 και 3:1 και το συνολικό εμβαδόν πρέπει να βρίσκεται μεταξύ 655 360 και 8 294 400 pixel. Αυτές οι συνθήκες ισχύουν μαζί. Ένα οριζόντιο κάδρο 3840 × 2160 χωρά στο ανώτατο όριο εμβαδού, ενώ μια μεγάλη πλευρά από μόνη της δεν καθιστά έγκυρο ένα αυθαίρετο ζεύγος διαστάσεων. Οι αναλύσεις πάνω από 2560 × 1440 περιγράφονται ως πειραματικές. Κρατήστε τα σημαντικά αντικείμενα, το κείμενο και τον χρήσιμο κενό χώρο μέσα στην επιθυμητή περικοπή αντί να βασίζεστε σε περισσότερα pixel για να επιλύσουν τη σύνθεση.\n\nΤο PNG είναι η προεπιλεγμένη μορφή εξόδου· υποστηρίζονται επίσης JPEG και WebP. Για JPEG και WebP μπορεί να επιλεγεί συμπίεση από 0 έως 100. Τα διαφανή, αδιαφανή και αυτόματα φόντα εξυπηρετούν διαφορετικές ανάγκες διάταξης. Για διαφάνεια, επιλέξτε PNG ή WebP ώστε το αποτέλεσμα να μπορεί να διατηρεί κανάλι άλφα. Ένα διαφανές στοιχείο μπορεί κατόπιν να τοποθετηθεί σε άλλη σύνθεση, ενώ μια αδιαφανής εικόνα παρέχει το δικό της φόντο. Κρατήστε το πραγματικό ολοκληρωμένο αρχείο μαζί με την περιγραφή και τις επιλεγμένες ρυθμίσεις εξόδου.\n\nΗ OpenAI τεκμηριώνει άμεση δημιουργία και επεξεργασία, καθώς και ένα εργαλείο δημιουργίας εικόνων μέσω συνομιλίας που μπορεί να διατηρεί προηγούμενα αποτελέσματα και να εφαρμόζει επόμενες οδηγίες. Σε αυτή τη ροή συνομιλίας, η ενέργεια μπορεί να είναι αυτόματη, υποχρεωτική δημιουργία ή υποχρεωτική επεξεργασία όταν υπάρχει εικόνα στο πλαίσιο. Χρησιμοποιήστε την επιλεγμένη εικόνα ως αφετηρία για την επόμενη αλλαγή αντί να αλλάζετε σιωπηρά σε άλλη παραλλαγή. Η τεκμηριωμένη ροή συνεχούς μετάδοσης μπορεί να παραδώσει έως τρεις μερικές εικόνες πριν από το τελικό αποτέλεσμα· μια μερική προεπισκόπηση βοηθά να φαίνεται η πρόοδος αλλά δεν είναι το ολοκληρωμένο υλικό. Η διεπαφή του κατασκευαστή υποστηρίζει επίσης μαζική επεξεργασία.\n\nΕλέγξτε το επεξεργασμένο θέμα, τα γράμματα, την τοποθέτηση αντικειμένων και το όριο μιας αλλαγής με μάσκα στο επιθυμητό μέγεθος προβολής. Το GPT Image μπορεί ακόμη να δυσκολεύεται με την ακριβή τοποθέτηση κειμένου, τις δομημένες διατάξεις ή τη συνέπεια μεταξύ επαναλαμβανόμενων θεμάτων και στοιχείων επωνυμίας. Μια στοχευμένη επόμενη οδηγία πρέπει να προσδιορίζει το ορατό πρόβλημα και τα στοιχεία που πρέπει να διατηρηθούν. Το Sunburst είναι χρήσιμο για μια ακριβή δημιουργική ροή που καθοδηγείται από αναφορές και της οποίας το τελικό παραδοτέο μπορεί να αξιολογηθεί ως προς μια συγκεκριμένη οπτική περιγραφή, με υψηλότερη ποιότητα, διαστάσεις και διαφάνεια επιλεγμένες για αυτό το παραδοτέο.",
    "alias_of": null,
    "aliases": [],
    "author": "OpenAI",
    "capabilities": {
      "context_length": 400000,
      "manufacturer_input": [
        "text",
        "image"
      ],
      "manufacturer_output": [
        "image"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.24576",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "forecast_usd",
            "label": "Estimated generation cost",
            "native_amount_usd_per_unit": "0.24576",
            "native_quantity": 1,
            "public_unit_label": "estimate before generation",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "request_estimate"
          }
        ],
        "summary": "Πλήρης τιμολόγηση της διαμόρφωσης στις λεπτομέρειες."
      }
    ],
    "ctx": null,
    "formats": [
      "images"
    ],
    "id": "openai/gpt-image-2.5-sunburst",
    "input": [
      "text",
      "image"
    ],
    "kind": "image",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "billing_basis": {
          "basis": "original_invoice_usd",
          "description": "Οι εμφανιζόμενες τιμές χρησιμοποιούνται για την εκτίμηση του κόστους πριν από την παραγωγή. Η τελική χρέωση υπολογίζεται από το κόστος που καταγράφηκε για την αρχική παραγωγή. Η μετρημένη διάρκεια της εξόδου και οι προβλεπόμενες ποσότητες δεν αποτελούν την τελική χρεώσιμη ποσότητα.",
          "forecast_quantity_is_estimate": true,
          "physical_output_is_billable_quantity": false,
          "version": "original_invoice_usd_v1"
        },
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed URL; never construct token"
                }
              ],
              "mode": "synchronous_result_then_owned_library",
              "operation_id_is_not_task_id": true,
              "status": [
                {
                  "http": "GET",
                  "id_source": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Διατηρήστε το X-Client-Request-ID που επιστράφηκε για τη συμφωνία των εγγραφών. Διαβάστε μόνο πραγματικές τιμές task_id/asset_id που επιστράφηκαν ή τη βιβλιοθήκη πολυμέσων που σας ανήκει· μην κατασκευάσετε ποτέ URL εργασίας από το ID της λειτουργίας και μην υποβάλετε ποτέ ξανά αίτημα δημιουργίας."
            },
            "outputs": {
              "all_results": "Διατηρήστε ολόκληρη την απόκριση και τις κεφαλίδες, κάθε πραγματικό αποτέλεσμα εξόδου, τα αρχικά αναγνωριστικά που επιστράφηκαν και όλα τα πεδία χρήσης. Ανακτήστε την αρχική λειτουργία χωρίς να υποβάλετε ξανά αίτημα δημιουργίας.",
              "family": "image",
              "fields": [
                {
                  "description": null,
                  "name": "created",
                  "type": null
                },
                {
                  "description": null,
                  "name": "data[].url",
                  "type": null
                },
                {
                  "description": null,
                  "name": "data[].b64_json",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage",
                  "type": null
                }
              ]
            },
            "parameters": [
              {
                "enum": [
                  "openai/gpt-image-2.5-sunburst"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "min_length": 1,
                "name": "prompt",
                "required": true,
                "type": "string"
              },
              {
                "enum": [
                  "1:1",
                  "3:2",
                  "2:3",
                  "4:3",
                  "3:4",
                  "16:9",
                  "9:16",
                  "21:9",
                  "auto"
                ],
                "enum_known": true,
                "name": "aspect_ratio",
                "required": false,
                "type": "string"
              },
              {
                "enum": [
                  "auto",
                  "low",
                  "medium",
                  "high",
                  "xhigh",
                  "max"
                ],
                "enum_known": true,
                "name": "quality",
                "required": false,
                "type": "string"
              },
              {
                "enum": [
                  "auto",
                  "transparent",
                  "opaque"
                ],
                "enum_known": true,
                "name": "background",
                "required": false,
                "type": "string"
              },
              {
                "maximum": 10,
                "minimum": 1,
                "name": "n",
                "required": false,
                "type": "integer"
              },
              {
                "items": {
                  "properties": {
                    "image_url": {
                      "properties": {
                        "url": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "url"
                      ],
                      "type": "object"
                    },
                    "type": {
                      "const": "image_url"
                    }
                  },
                  "required": [
                    "type",
                    "image_url"
                  ],
                  "type": "object"
                },
                "maximum_items": 16,
                "minimum_items": 0,
                "name": "input_references",
                "required": false,
                "type": "array"
              },
              {
                "maximum": 100,
                "minimum": 0,
                "name": "output_compression",
                "required": false,
                "type": "integer"
              },
              {
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "aspect_ratio": {
                  "enum": [
                    "1:1",
                    "3:2",
                    "2:3",
                    "4:3",
                    "3:4",
                    "16:9",
                    "9:16",
                    "21:9",
                    "auto"
                  ],
                  "type": "string"
                },
                "background": {
                  "enum": [
                    "auto",
                    "transparent",
                    "opaque"
                  ],
                  "type": "string"
                },
                "input_references": {
                  "items": {
                    "properties": {
                      "image_url": {
                        "properties": {
                          "url": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "url"
                        ],
                        "type": "object"
                      },
                      "type": {
                        "const": "image_url"
                      }
                    },
                    "required": [
                      "type",
                      "image_url"
                    ],
                    "type": "object"
                  },
                  "maxItems": 16,
                  "minItems": 0,
                  "type": "array"
                },
                "model": {
                  "enum": [
                    "openai/gpt-image-2.5-sunburst"
                  ],
                  "type": "string"
                },
                "n": {
                  "maximum": 10,
                  "minimum": 1,
                  "type": "integer"
                },
                "output_compression": {
                  "maximum": 100,
                  "minimum": 0,
                  "type": "integer"
                },
                "prompt": {
                  "minLength": 1,
                  "type": "string"
                },
                "provider": {
                  "description": "Exact image provider preferences from the documented image request schema.",
                  "type": "object"
                },
                "quality": {
                  "enum": [
                    "auto",
                    "low",
                    "medium",
                    "high",
                    "xhigh",
                    "max"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "prompt"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "model": "openai/gpt-image-2.5-sunburst",
                "prompt": "a red panda astronaut floating in space, studio lighting"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_types": [
              "text",
              "image"
            ],
            "required": [
              "model",
              "prompt"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed URL; never construct token"
              }
            ],
            "mode": "synchronous_result_then_owned_library",
            "operation_id_is_not_task_id": true,
            "status": [
              {
                "http": "GET",
                "id_source": "Το πραγματικό task_id που επιστράφηκε ή μια εγγραφή στη βιβλιοθήκη πολυμέσων",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Keep the returned X-Client-Request-ID for reconciliation. Read only actual returned task_id/asset_id values or the owned media library; never build a task URL from the operation ID and never resubmit creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/images/generations"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "image",
            "fields": [
              {
                "description": null,
                "name": "created",
                "type": null
              },
              {
                "description": null,
                "name": "data[].url",
                "type": null
              },
              {
                "description": null,
                "name": "data[].b64_json",
                "type": null
              },
              {
                "description": null,
                "name": "usage",
                "type": null
              }
            ]
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "basis": "Αυτή η εκτίμηση δεν αποτελεί πρόσθετη χρέωση ούτε σταθερή τιμή για την ολοκληρωμένη παραγωγή.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Εκτιμώμενο κόστος δημιουργίας",
            "units": [
              {
                "amount": "0.24576",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.24576",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np={'model': 'openai/gpt-image-2.5-sunburst', 'prompt': 'a red panda astronaut floating in space, studio lighting'}\n\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - <<'PY_RESULT'\nimport base64, json, os, subprocess\nfrom pathlib import Path\nfrom urllib.parse import urlsplit, urljoin\n\ndef save_images(items):\n    if not items: raise SystemExit(\"No completed images; retain the full response\")\n    for index, item in enumerate(items):\n        encoded=item.get(\"b64_json\")\n        uri=item.get(\"url\", \"\")\n        if not encoded and uri.startswith(\"data:image/\"):\n            header, separator, encoded=uri.partition(\",\")\n            if not separator or \";base64\" not in header: raise SystemExit(\"Unsupported image data URI\")\n        if encoded:\n            raw=base64.b64decode(encoded,validate=True)\n        elif uri:\n            uri=urljoin(\"https://api.ailoot.ai\",uri)\n            parsed=urlsplit(uri)\n            if parsed.scheme!=\"https\" or not parsed.netloc or parsed.username or parsed.password:\n                raise SystemExit(\"Invalid returned image URL\")\n            owned=parsed.netloc==\"api.ailoot.ai\" and parsed.path.startswith(\"/v1/media/assets/\") and parsed.path.endswith(\"/content\")\n            args=[\"curl\",\"--fail-with-body\",\"--silent\",\"--show-error\",uri]\n            if owned: args += [\"-H\",\"Authorization: Bearer \"+os.environ[\"AILOOT_API_KEY\"]]\n            temporary=Path(f\"image-{index}.bin\")\n            subprocess.run(args+[\"-o\",str(temporary)],check=True)\n            raw=temporary.read_bytes()\n            temporary.unlink()\n        else: raise SystemExit(\"Image has neither bytes nor URL\")\n        if not raw: raise SystemExit(\"Empty image result\")\n        ext=\"png\" if raw.startswith(b\"\\x89PNG\") else \"jpg\" if raw.startswith(b\"\\xff\\xd8\") else \"webp\" if raw[:4]==b\"RIFF\" and raw[8:12]==b\"WEBP\" else \"svg\" if raw.lstrip().startswith((b\"<svg\",b\"<?xml\")) else \"bin\"\n        Path(f\"image-{index}.{ext}\").write_bytes(raw)\n    print(\"Every returned image saved; complete response metadata retained\")\nsave_images(json.loads(Path(\"result.json\").read_text())[\"data\"])\nPY_RESULT\n",
            "label": "curl · exact creation/save all outputs",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o owned-assets.json\n# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.\n",
            "label": "Read existing owned assets",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "images",
        "hints": [
          "Use the exact caller model ID and documented input representation.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "text",
          "image"
        ],
        "label": "Εικόνες",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [
          "/v1/images"
        ],
        "native_endpoint": "images",
        "out": null,
        "output": [
          "image"
        ],
        "path": "/v1/images/generations",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "original_invoice_usd",
          "image_input_price": null,
          "image_output_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "basis": "This estimate is not an additional charge or a fixed rate for the completed generation.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Estimated generation cost",
            "units": [
              {
                "amount": "0.24576",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.24576",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "request_model_id": "openai/gpt-image-2.5-sunburst",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.24576",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "forecast_usd",
            "label": "Estimated generation cost",
            "native_amount_usd_per_unit": "0.24576",
            "native_quantity": 1,
            "public_unit_label": "estimate before generation",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "request_estimate"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "openai/gpt-image-2.5-sunburst",
        "request_model_id": "openai/gpt-image-2.5-sunburst",
        "route_label": "Ultra"
      }
    ],
    "name": "OpenAI: GPT Image 2.5 Sunburst",
    "price": {
      "estimate_only": true,
      "in": null,
      "in_label": null,
      "out": 0.24576,
      "out_label": "estimate before generation",
      "scope_label": "Estimated generation cost",
      "sort_in": null,
      "sort_out": 0.24576,
      "varies": false
    },
    "short": "Το GPT Image 2.5 Sunburst δημιουργεί και επεξεργάζεται εικόνες από κείμενο και οπτικές αναφορές, με έμφαση στην ακρίβεια επεξεργασίας. Υποστηρίζει μάσκες, διαδοχικές βελτιώσεις, προσαρμοσμένα μεγέθη κάδρου, διαφανή φόντα και επίπεδα ποιότητας από low έως max."
  },
  "renderer_schema": {
    "method_order": "Original DTO methods order; every exact route/format/path/caller survives.",
    "prices": "Original public DTO fields and original native display HTML; no flattened or normalized offers."
  },
  "representation": "exact-public-dto-and-native-renderer-html",
  "representationNotes": {
    "current_reference": {
      "about_json_pointer": "/aboutHtml",
      "methods": [
        {
          "contract_json_pointer": "/methods/0/rawMethod/contract",
          "html_json_pointer": "/methods/0/html",
          "method_ordinal": 0
        }
      ],
      "role": "current-semantic-reference"
    },
    "raw_input": {
      "examples_role": "historical-input-not-current-ready-examples",
      "json_pointers": [
        "/rawModel",
        "/methods/0/rawMethod"
      ],
      "role": "historical-owner-input"
    },
    "schema": "ailoot-native-model-representations-v1"
  },
  "schema": "ailoot-static-model-facts-v1",
  "schema_version": 1,
  "shortText": "Το GPT Image 2.5 Sunburst δημιουργεί και επεξεργάζεται εικόνες από κείμενο και οπτικές αναφορές, με έμφαση στην ακρίβεια επεξεργασίας. Υποστηρίζει μάσκες, διαδοχικές βελτιώσεις, προσαρμοσμένα μεγέθη κάδρου, διαφανή φόντα και επίπεδα ποιότητας από low έως max.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "87bceed69d2a14d2430f8b9bc4348370a9f646b82fd45187f0473b7f998c04a0",
    "renderer_sha256": "3ed36f7af4f78822bafbd174fdcaed7b698a18a86efe254253d37f1b098a7566"
  },
  "sourceRevision": "5a8f36190c2b507137ce9e04208a58a46f6239d48372d5e9b2a20dd5c0316ae0"
}
