{
  "aboutHtml": "<p>Το Qwen-Image-3.0 είναι το μοντέλο εικόνας τρίτης γενιάς της Qwen και συνδυάζει δημιουργία εικόνων από κείμενο και επεξεργασία βάσει αναφορών σε ένα μοντέλο. Η βασική έκδοση ισορροπεί ποιότητα εικόνας και ταχύτητα απόκρισης, ενώ το Qwen-Image-3.0 Pro είναι η κορυφαία συγγενική έκδοση με έμφαση στην ποιότητα. Ένα αίτημα παράγει εικόνα: αφίσα, εικονογραφημένη εξήγηση, σκηνή προϊόντος, storyboard ή τροποποιημένη φωτογραφία, αντί για επεξεργάσιμο έγγραφο ή λειτουργική διεπαφή.</p><p>Οι δυνατότητες πλούσιου περιεχομένου του ταιριάζουν σε έναν καμβά με πολλές σχετικές ενότητες ή ένθετη οπτική διάταξη. Προετοιμάστε τους τίτλους, την ακριβή διατύπωση, την ιεραρχία και τη σχέση μεταξύ των πλαισίων πριν προσθέσετε λεπτομέρειες ύφους. Για σύγκριση προϊόντων, ένα χρήσιμο αίτημα προσδιορίζει την κύρια απεικόνιση του προϊόντος, τα χαρακτηριστικά που θα επισημανθούν και τη σειρά ανάγνωσης των υποστηρικτικών πλαισίων. Για storyboard, περιγράψτε χωριστά το θέμα, τη δράση και τη λεζάντα κάθε πλαισίου. Το συνιστώμενο μέγιστο μήκος του prompt είναι 4.500 tokens· αφιερώστε αυτόν τον χώρο στο περιεχόμενο και τη διάταξη που πραγματικά χρειάζεται η εικόνα.</p><p>Το μοντέλο υποστηρίζει λεπτομερείς υφές, τυπογραφία με μικρό κείμενο που έχει επιδειχθεί στα 10 pixel και εγγενή απόδοση σε 12 γλώσσες, με πολλές γραμματοσειρές και καλλιτεχνικά ύφη. Αυτές οι δυνατότητες μπορούν να συνδυάσουν ένα ρεαλιστικό αντικείμενο με ένα γραφικό πλούσιο σε πληροφορίες, χωρίς να επιβάλλουν επιλογή ανάμεσα σε φωτογραφία και διάταξη με πολύ κείμενο. Δώστε τις ακριβείς λέξεις και τους ακριβείς αριθμούς που θα αποδοθούν, τη γλώσσα τους και τη θέση τους. Αντιμετωπίστε μια παραγόμενη διεπαφή ως οπτική μακέτα: τα κουμπιά, τα γραφήματα και οι ετικέτες στην εικόνα δεν υλοποιούν τη συμπεριφορά μιας εφαρμογής.</p><p>Η επεξεργασία μπορεί να αλλάξει κείμενο, να προσθέσει ή να αφαιρέσει αντικείμενα, να μετακινήσει στοιχεία, να προσαρμόσει τη δράση ενός θέματος, να μεταφέρει ένα ύφος ή να βελτιώσει τις λεπτομέρειες μιας φθαρμένης εικόνας. Δώστε μία έως τρεις εικόνες και μία σαφή οδηγία επεξεργασίας. Η αρίθμηση των εικόνων ακολουθεί τη σειρά υποβολής, οπότε προσδιορίστε ποια εικόνα παρέχει το θέμα, ποια ένα ένδυμα ή αντικείμενο και ποια το σκηνικό. Για μια σκηνή προϊόντος, ζητήστε να τοποθετηθεί το αντικείμενο της εικόνας 1 στο περιβάλλον της εικόνας 2, διατηρώντας τα χαρακτηριστικά που ξεχωρίζουν το προϊόν. Διατυπώστε ρητά τόσο τις αλλαγές όσο και τις απαιτήσεις διατήρησης.</p><p>Η συγκεκριμένη ροή εισαγωγής εικόνων δέχεται JPG, JPEG, PNG, BMP, TIFF, WebP και GIF· από ένα κινούμενο GIF επεξεργάζεται μόνο το πρώτο καρέ. Κάθε εικόνα μπορεί να έχει μέγεθος έως 10 MB. Το τρέχον API δέχεται διαστάσεις από 1 έως 8.000 pixel, με αναλογία μεγάλης προς μικρή πλευρά που δεν ξεπερνά το 10:1, και συνιστά 384–2.048 pixel για καλά αποτελέσματα. Επιλέξτε εικόνα εισόδου που δείχνει καθαρά τις λεπτομέρειες που μεταφέρονται ή τροποποιούνται. Μια πολύ στενά περικομμένη αναφορά μπορεί να κρύψει τη γύρω δομή που χρειάζεται για φυσική τοποθέτηση ενός αντικειμένου.</p><p>Η έξοδος είναι PNG, με μία έως έξι εικόνες ανά αίτημα και προεπιλογή τη μία. Το εμβαδόν σε pixel κυμαίνεται από 512 × 512 έως 2.048 × 2.048, με αναλογίες πλευρών από 1:8 έως 8:1· αυτά είναι όρια εμβαδού, όχι κανόνας ότι κάθε πλευρά πρέπει να έχει το πολύ 2.048 pixel. Αν δεν δοθεί μέγεθος, το μοντέλο προτείνει ανάλυση βάσει του prompt. Επιλέξτε οριζόντια, τετράγωνη ή κατακόρυφη σύνθεση για την προβλεπόμενη χρήση και κατόπιν εξετάστε την επιστρεφόμενη εικόνα στο πραγματικό της μέγεθος, ώστε να αξιολογήσετε τις μικρές ετικέτες και τις λεπτές λεπτομέρειες όπως θα εμφανίζονται.</p><p>Η αναδιατύπωση του prompt είναι ενεργοποιημένη από προεπιλογή στη ροή του κατασκευαστή. Η άμεση βελτίωση λειτουργεί τόσο για παραγωγή όσο και για επεξεργασία· η βελτίωση μέσω agent είναι πιο σύνθετη λειτουργία αναδιατύπωσης μόνο για παραγωγή εικόνας από κείμενο και απορρίπτεται για επεξεργασία εικόνας με βάση εικόνα. Η λειτουργία συλλογισμού είναι ενεργοποιημένη από προεπιλογή, απαιτεί αναδιατύπωση του prompt και αυξάνει τον χρόνο παραγωγής. Τα αρνητικά prompts μπορούν να περιγράφουν ανεπιθύμητα στοιχεία, ενώ μια σταθερή τιμή seed βοηθά στη σύγκριση παραλλαγών. Δηλώστε καθαρά τους αποκλεισμούς και τις ακριβείς απαιτήσεις διατήρησης, αντί να περιμένετε ότι ένα seed θα δώσει πανομοιότυπη εικόνα όταν αλλάζει το αίτημα.</p><p>Για ένα χρήσιμο τελικό παραδοτέο, ελέγξτε τις αποδοθείσες λέξεις, τις μονάδες, τη σειρά των πλαισίων και τις λεπτομέρειες που ταυτοποιούν το θέμα και έπειτα τροποποιήστε το συγκεκριμένο μέρος που δεν ακολούθησε το αίτημα. Μια απάντηση με πολλές εικόνες παρέχει εναλλακτικές για σύγκριση· κρατήστε κάθε επιστρεφόμενη εικόνα συνδεδεμένη με το prompt και τις αναφορές που την παρήγαγαν. Οι διευθύνσεις εικόνων του κατασκευαστή λήγουν μετά από 24 ώρες, οπότε αποθηκεύστε το ίδιο το αρχείο εικόνας όταν το αποτέλεσμα γίνεται μέρος ενός έργου. Η βασική έκδοση 3.0 παραμένει διακριτή από την Pro και από τα μοντέλα Qwen 2.1, τα οποία έχουν διαφορετικό αριθμό αναφορών και δυνατότητες διαφάνειας.</p>",
  "aboutText": "Το Qwen-Image-3.0 είναι το μοντέλο εικόνας τρίτης γενιάς της Qwen και συνδυάζει δημιουργία εικόνων από κείμενο και επεξεργασία βάσει αναφορών σε ένα μοντέλο. Η βασική έκδοση ισορροπεί ποιότητα εικόνας και ταχύτητα απόκρισης, ενώ το Qwen-Image-3.0 Pro είναι η κορυφαία συγγενική έκδοση με έμφαση στην ποιότητα. Ένα αίτημα παράγει εικόνα: αφίσα, εικονογραφημένη εξήγηση, σκηνή προϊόντος, storyboard ή τροποποιημένη φωτογραφία, αντί για επεξεργάσιμο έγγραφο ή λειτουργική διεπαφή.\n\nΟι δυνατότητες πλούσιου περιεχομένου του ταιριάζουν σε έναν καμβά με πολλές σχετικές ενότητες ή ένθετη οπτική διάταξη. Προετοιμάστε τους τίτλους, την ακριβή διατύπωση, την ιεραρχία και τη σχέση μεταξύ των πλαισίων πριν προσθέσετε λεπτομέρειες ύφους. Για σύγκριση προϊόντων, ένα χρήσιμο αίτημα προσδιορίζει την κύρια απεικόνιση του προϊόντος, τα χαρακτηριστικά που θα επισημανθούν και τη σειρά ανάγνωσης των υποστηρικτικών πλαισίων. Για storyboard, περιγράψτε χωριστά το θέμα, τη δράση και τη λεζάντα κάθε πλαισίου. Το συνιστώμενο μέγιστο μήκος του prompt είναι 4.500 tokens· αφιερώστε αυτόν τον χώρο στο περιεχόμενο και τη διάταξη που πραγματικά χρειάζεται η εικόνα.\n\nΤο μοντέλο υποστηρίζει λεπτομερείς υφές, τυπογραφία με μικρό κείμενο που έχει επιδειχθεί στα 10 pixel και εγγενή απόδοση σε 12 γλώσσες, με πολλές γραμματοσειρές και καλλιτεχνικά ύφη. Αυτές οι δυνατότητες μπορούν να συνδυάσουν ένα ρεαλιστικό αντικείμενο με ένα γραφικό πλούσιο σε πληροφορίες, χωρίς να επιβάλλουν επιλογή ανάμεσα σε φωτογραφία και διάταξη με πολύ κείμενο. Δώστε τις ακριβείς λέξεις και τους ακριβείς αριθμούς που θα αποδοθούν, τη γλώσσα τους και τη θέση τους. Αντιμετωπίστε μια παραγόμενη διεπαφή ως οπτική μακέτα: τα κουμπιά, τα γραφήματα και οι ετικέτες στην εικόνα δεν υλοποιούν τη συμπεριφορά μιας εφαρμογής.\n\nΗ επεξεργασία μπορεί να αλλάξει κείμενο, να προσθέσει ή να αφαιρέσει αντικείμενα, να μετακινήσει στοιχεία, να προσαρμόσει τη δράση ενός θέματος, να μεταφέρει ένα ύφος ή να βελτιώσει τις λεπτομέρειες μιας φθαρμένης εικόνας. Δώστε μία έως τρεις εικόνες και μία σαφή οδηγία επεξεργασίας. Η αρίθμηση των εικόνων ακολουθεί τη σειρά υποβολής, οπότε προσδιορίστε ποια εικόνα παρέχει το θέμα, ποια ένα ένδυμα ή αντικείμενο και ποια το σκηνικό. Για μια σκηνή προϊόντος, ζητήστε να τοποθετηθεί το αντικείμενο της εικόνας 1 στο περιβάλλον της εικόνας 2, διατηρώντας τα χαρακτηριστικά που ξεχωρίζουν το προϊόν. Διατυπώστε ρητά τόσο τις αλλαγές όσο και τις απαιτήσεις διατήρησης.\n\nΗ συγκεκριμένη ροή εισαγωγής εικόνων δέχεται JPG, JPEG, PNG, BMP, TIFF, WebP και GIF· από ένα κινούμενο GIF επεξεργάζεται μόνο το πρώτο καρέ. Κάθε εικόνα μπορεί να έχει μέγεθος έως 10 MB. Το τρέχον API δέχεται διαστάσεις από 1 έως 8.000 pixel, με αναλογία μεγάλης προς μικρή πλευρά που δεν ξεπερνά το 10:1, και συνιστά 384–2.048 pixel για καλά αποτελέσματα. Επιλέξτε εικόνα εισόδου που δείχνει καθαρά τις λεπτομέρειες που μεταφέρονται ή τροποποιούνται. Μια πολύ στενά περικομμένη αναφορά μπορεί να κρύψει τη γύρω δομή που χρειάζεται για φυσική τοποθέτηση ενός αντικειμένου.\n\nΗ έξοδος είναι PNG, με μία έως έξι εικόνες ανά αίτημα και προεπιλογή τη μία. Το εμβαδόν σε pixel κυμαίνεται από 512 × 512 έως 2.048 × 2.048, με αναλογίες πλευρών από 1:8 έως 8:1· αυτά είναι όρια εμβαδού, όχι κανόνας ότι κάθε πλευρά πρέπει να έχει το πολύ 2.048 pixel. Αν δεν δοθεί μέγεθος, το μοντέλο προτείνει ανάλυση βάσει του prompt. Επιλέξτε οριζόντια, τετράγωνη ή κατακόρυφη σύνθεση για την προβλεπόμενη χρήση και κατόπιν εξετάστε την επιστρεφόμενη εικόνα στο πραγματικό της μέγεθος, ώστε να αξιολογήσετε τις μικρές ετικέτες και τις λεπτές λεπτομέρειες όπως θα εμφανίζονται.\n\nΗ αναδιατύπωση του prompt είναι ενεργοποιημένη από προεπιλογή στη ροή του κατασκευαστή. Η άμεση βελτίωση λειτουργεί τόσο για παραγωγή όσο και για επεξεργασία· η βελτίωση μέσω agent είναι πιο σύνθετη λειτουργία αναδιατύπωσης μόνο για παραγωγή εικόνας από κείμενο και απορρίπτεται για επεξεργασία εικόνας με βάση εικόνα. Η λειτουργία συλλογισμού είναι ενεργοποιημένη από προεπιλογή, απαιτεί αναδιατύπωση του prompt και αυξάνει τον χρόνο παραγωγής. Τα αρνητικά prompts μπορούν να περιγράφουν ανεπιθύμητα στοιχεία, ενώ μια σταθερή τιμή seed βοηθά στη σύγκριση παραλλαγών. Δηλώστε καθαρά τους αποκλεισμούς και τις ακριβείς απαιτήσεις διατήρησης, αντί να περιμένετε ότι ένα seed θα δώσει πανομοιότυπη εικόνα όταν αλλάζει το αίτημα.\n\nΓια ένα χρήσιμο τελικό παραδοτέο, ελέγξτε τις αποδοθείσες λέξεις, τις μονάδες, τη σειρά των πλαισίων και τις λεπτομέρειες που ταυτοποιούν το θέμα και έπειτα τροποποιήστε το συγκεκριμένο μέρος που δεν ακολούθησε το αίτημα. Μια απάντηση με πολλές εικόνες παρέχει εναλλακτικές για σύγκριση· κρατήστε κάθε επιστρεφόμενη εικόνα συνδεδεμένη με το prompt και τις αναφορές που την παρήγαγαν. Οι διευθύνσεις εικόνων του κατασκευαστή λήγουν μετά από 24 ώρες, οπότε αποθηκεύστε το ίδιο το αρχείο εικόνας όταν το αποτέλεσμα γίνεται μέρος ενός έργου. Η βασική έκδοση 3.0 παραμένει διακριτή από την Pro και από τα μοντέλα Qwen 2.1, τα οποία έχουν διαφορετικό αριθμό αναφορών και δυνατότητες διαφάνειας.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "36ea7c035fedbe840b490bd53dc7a3f28732244d183c61d4c82e86a762902b7d",
    "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\">Al</span><h2 id=\"sheet-title\">Qwen: Qwen Image 3</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Κλείσιμο\">×</button></div><div class=\"idline\"><span>Alibaba /</span><code>qwen/qwen-image-3</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|qwen%2Fqwen-image-3\">Εικόνες</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\">Το Qwen-Image-3.0 συνδυάζει παραγωγή και επεξεργασία εικόνων για διατάξεις πλούσιες σε πληροφορίες, λεπτομερείς σκηνές και πολύγλωσση τυπογραφία. Η βασική έκδοση ισορροπεί ποιότητα και ταχύτητα, δεχόμενη μια περιγραφή σε κείμενο ή έως τρεις εικόνες μαζί με οδηγία επεξεργασίας.</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>Το Qwen-Image-3.0 είναι το μοντέλο εικόνας τρίτης γενιάς της Qwen και συνδυάζει δημιουργία εικόνων από κείμενο και επεξεργασία βάσει αναφορών σε ένα μοντέλο. Η βασική έκδοση ισορροπεί ποιότητα εικόνας και ταχύτητα απόκρισης, ενώ το Qwen-Image-3.0 Pro είναι η κορυφαία συγγενική έκδοση με έμφαση στην ποιότητα. Ένα αίτημα παράγει εικόνα: αφίσα, εικονογραφημένη εξήγηση, σκηνή προϊόντος, storyboard ή τροποποιημένη φωτογραφία, αντί για επεξεργάσιμο έγγραφο ή λειτουργική διεπαφή.</p><p>Οι δυνατότητες πλούσιου περιεχομένου του ταιριάζουν σε έναν καμβά με πολλές σχετικές ενότητες ή ένθετη οπτική διάταξη. Προετοιμάστε τους τίτλους, την ακριβή διατύπωση, την ιεραρχία και τη σχέση μεταξύ των πλαισίων πριν προσθέσετε λεπτομέρειες ύφους. Για σύγκριση προϊόντων, ένα χρήσιμο αίτημα προσδιορίζει την κύρια απεικόνιση του προϊόντος, τα χαρακτηριστικά που θα επισημανθούν και τη σειρά ανάγνωσης των υποστηρικτικών πλαισίων. Για storyboard, περιγράψτε χωριστά το θέμα, τη δράση και τη λεζάντα κάθε πλαισίου. Το συνιστώμενο μέγιστο μήκος του prompt είναι 4.500 tokens· αφιερώστε αυτόν τον χώρο στο περιεχόμενο και τη διάταξη που πραγματικά χρειάζεται η εικόνα.</p><p>Το μοντέλο υποστηρίζει λεπτομερείς υφές, τυπογραφία με μικρό κείμενο που έχει επιδειχθεί στα 10 pixel και εγγενή απόδοση σε 12 γλώσσες, με πολλές γραμματοσειρές και καλλιτεχνικά ύφη. Αυτές οι δυνατότητες μπορούν να συνδυάσουν ένα ρεαλιστικό αντικείμενο με ένα γραφικό πλούσιο σε πληροφορίες, χωρίς να επιβάλλουν επιλογή ανάμεσα σε φωτογραφία και διάταξη με πολύ κείμενο. Δώστε τις ακριβείς λέξεις και τους ακριβείς αριθμούς που θα αποδοθούν, τη γλώσσα τους και τη θέση τους. Αντιμετωπίστε μια παραγόμενη διεπαφή ως οπτική μακέτα: τα κουμπιά, τα γραφήματα και οι ετικέτες στην εικόνα δεν υλοποιούν τη συμπεριφορά μιας εφαρμογής.</p><p>Η επεξεργασία μπορεί να αλλάξει κείμενο, να προσθέσει ή να αφαιρέσει αντικείμενα, να μετακινήσει στοιχεία, να προσαρμόσει τη δράση ενός θέματος, να μεταφέρει ένα ύφος ή να βελτιώσει τις λεπτομέρειες μιας φθαρμένης εικόνας. Δώστε μία έως τρεις εικόνες και μία σαφή οδηγία επεξεργασίας. Η αρίθμηση των εικόνων ακολουθεί τη σειρά υποβολής, οπότε προσδιορίστε ποια εικόνα παρέχει το θέμα, ποια ένα ένδυμα ή αντικείμενο και ποια το σκηνικό. Για μια σκηνή προϊόντος, ζητήστε να τοποθετηθεί το αντικείμενο της εικόνας 1 στο περιβάλλον της εικόνας 2, διατηρώντας τα χαρακτηριστικά που ξεχωρίζουν το προϊόν. Διατυπώστε ρητά τόσο τις αλλαγές όσο και τις απαιτήσεις διατήρησης.</p><p>Η συγκεκριμένη ροή εισαγωγής εικόνων δέχεται JPG, JPEG, PNG, BMP, TIFF, WebP και GIF· από ένα κινούμενο GIF επεξεργάζεται μόνο το πρώτο καρέ. Κάθε εικόνα μπορεί να έχει μέγεθος έως 10 MB. Το τρέχον API δέχεται διαστάσεις από 1 έως 8.000 pixel, με αναλογία μεγάλης προς μικρή πλευρά που δεν ξεπερνά το 10:1, και συνιστά 384–2.048 pixel για καλά αποτελέσματα. Επιλέξτε εικόνα εισόδου που δείχνει καθαρά τις λεπτομέρειες που μεταφέρονται ή τροποποιούνται. Μια πολύ στενά περικομμένη αναφορά μπορεί να κρύψει τη γύρω δομή που χρειάζεται για φυσική τοποθέτηση ενός αντικειμένου.</p><p>Η έξοδος είναι PNG, με μία έως έξι εικόνες ανά αίτημα και προεπιλογή τη μία. Το εμβαδόν σε pixel κυμαίνεται από 512 × 512 έως 2.048 × 2.048, με αναλογίες πλευρών από 1:8 έως 8:1· αυτά είναι όρια εμβαδού, όχι κανόνας ότι κάθε πλευρά πρέπει να έχει το πολύ 2.048 pixel. Αν δεν δοθεί μέγεθος, το μοντέλο προτείνει ανάλυση βάσει του prompt. Επιλέξτε οριζόντια, τετράγωνη ή κατακόρυφη σύνθεση για την προβλεπόμενη χρήση και κατόπιν εξετάστε την επιστρεφόμενη εικόνα στο πραγματικό της μέγεθος, ώστε να αξιολογήσετε τις μικρές ετικέτες και τις λεπτές λεπτομέρειες όπως θα εμφανίζονται.</p><p>Η αναδιατύπωση του prompt είναι ενεργοποιημένη από προεπιλογή στη ροή του κατασκευαστή. Η άμεση βελτίωση λειτουργεί τόσο για παραγωγή όσο και για επεξεργασία· η βελτίωση μέσω agent είναι πιο σύνθετη λειτουργία αναδιατύπωσης μόνο για παραγωγή εικόνας από κείμενο και απορρίπτεται για επεξεργασία εικόνας με βάση εικόνα. Η λειτουργία συλλογισμού είναι ενεργοποιημένη από προεπιλογή, απαιτεί αναδιατύπωση του prompt και αυξάνει τον χρόνο παραγωγής. Τα αρνητικά prompts μπορούν να περιγράφουν ανεπιθύμητα στοιχεία, ενώ μια σταθερή τιμή seed βοηθά στη σύγκριση παραλλαγών. Δηλώστε καθαρά τους αποκλεισμούς και τις ακριβείς απαιτήσεις διατήρησης, αντί να περιμένετε ότι ένα seed θα δώσει πανομοιότυπη εικόνα όταν αλλάζει το αίτημα.</p><p>Για ένα χρήσιμο τελικό παραδοτέο, ελέγξτε τις αποδοθείσες λέξεις, τις μονάδες, τη σειρά των πλαισίων και τις λεπτομέρειες που ταυτοποιούν το θέμα και έπειτα τροποποιήστε το συγκεκριμένο μέρος που δεν ακολούθησε το αίτημα. Μια απάντηση με πολλές εικόνες παρέχει εναλλακτικές για σύγκριση· κρατήστε κάθε επιστρεφόμενη εικόνα συνδεδεμένη με το prompt και τις αναφορές που την παρήγαγαν. Οι διευθύνσεις εικόνων του κατασκευαστή λήγουν μετά από 24 ώρες, οπότε αποθηκεύστε το ίδιο το αρχείο εικόνας όταν το αποτέλεσμα γίνεται μέρος ενός έργου. Η βασική έκδοση 3.0 παραμένει διακριτή από την Pro και από τα μοντέλα Qwen 2.1, τα οποία έχουν διαφορετικό αριθμό αναφορών και δυνατότητες διαφάνειας.</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>qwen/qwen-image-3</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\">resolution</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>1K, 2K</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, 1:2, 1:4, 2:1, 2:3, 3:2, 3:4, 4:1, 4:3, 4:5, 5:4, 9:16, 16:9</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>Μέγιστο: 6</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>Μέγιστο πλήθος στοιχείων: 4</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><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>—</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>ανά εικόνα εισόδου</td><td data-cell-label=\"Χρέωση\"><span class=\"card-cell-label\">Χρέωση</span><div><span>Είσοδος · εικόνα εισόδου · Εκτίμηση μόνο για σύγκριση</span> <b>$0.006</b> <span class=\"price-unit\">ανά εικόνα εισόδου</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>—</td><td data-cell-label=\"Χρέωση\"><span class=\"card-cell-label\">Χρέωση</span><div><span>Έξοδος · Εκτιμώμενο κόστος δημιουργίας · Εκτίμηση μόνο για σύγκριση</span> <b>$0.06</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-2364-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2364-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-2364-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-2364-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;qwen/qwen-image-3&#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-2365-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2365-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-2365-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-2365-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=qwen%2Fqwen-image-3&amp;route=Ultra&amp;caller=qwen%2Fqwen-image-3&amp;fmt=images\"><code>qwen/qwen-image-3</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=qwen%2Fqwen-image-3&amp;route=Ultra&amp;caller=qwen%2Fqwen-image-3&amp;fmt=images\"><code>qwen/qwen-image-3</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "qwen/qwen-image-3",
        "fmt": "images",
        "http": "POST",
        "path": "/v1/images/generations",
        "request_model_id": "qwen/qwen-image-3",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|images|/v1/images/generations|qwen%2Fqwen-image-3",
      "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": [
                  "qwen/qwen-image-3"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "min_length": 1,
                "name": "prompt",
                "required": true,
                "type": "string"
              },
              {
                "enum": [
                  "1K",
                  "2K"
                ],
                "enum_known": true,
                "name": "resolution",
                "required": false,
                "type": "string"
              },
              {
                "enum": [
                  "1:1",
                  "1:2",
                  "1:4",
                  "2:1",
                  "2:3",
                  "3:2",
                  "3:4",
                  "4:1",
                  "4:3",
                  "4:5",
                  "5:4",
                  "9:16",
                  "16:9"
                ],
                "enum_known": true,
                "name": "aspect_ratio",
                "required": false,
                "type": "string"
              },
              {
                "maximum": 6,
                "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": 4,
                "minimum_items": 0,
                "name": "input_references",
                "required": false,
                "type": "array"
              },
              {
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "aspect_ratio": {
                  "enum": [
                    "1:1",
                    "1:2",
                    "1:4",
                    "2:1",
                    "2:3",
                    "3:2",
                    "3:4",
                    "4:1",
                    "4:3",
                    "4:5",
                    "5:4",
                    "9:16",
                    "16:9"
                  ],
                  "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": 4,
                  "minItems": 0,
                  "type": "array"
                },
                "model": {
                  "enum": [
                    "qwen/qwen-image-3"
                  ],
                  "type": "string"
                },
                "n": {
                  "maximum": 6,
                  "minimum": 1,
                  "type": "integer"
                },
                "prompt": {
                  "minLength": 1,
                  "type": "string"
                },
                "provider": {
                  "description": "Exact image provider preferences from the documented image request schema.",
                  "type": "object"
                },
                "resolution": {
                  "enum": [
                    "1K",
                    "2K"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "prompt"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "model": "qwen/qwen-image-3",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input image"
            },
            "label": "input image",
            "units": [
              {
                "amount": "0.006",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "image_input",
                "label": "input image",
                "native_amount_usd_per_unit": "0.006",
                "native_quantity": 1,
                "public_unit_label": "per input image",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "image_input"
              }
            ]
          },
          {
            "basis": "Αυτή η εκτίμηση δεν αποτελεί πρόσθετη χρέωση ούτε σταθερή τιμή για την ολοκληρωμένη παραγωγή.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Εκτιμώμενο κόστος δημιουργίας",
            "units": [
              {
                "amount": "0.06",
                "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.06",
                "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': 'qwen/qwen-image-3', '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"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input image"
            },
            "label": "input image",
            "units": [
              {
                "amount": "0.006",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "image_input",
                "label": "input image",
                "native_amount_usd_per_unit": "0.006",
                "native_quantity": 1,
                "public_unit_label": "per input image",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "image_input"
              }
            ]
          },
          {
            "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.06",
                "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.06",
                "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": "qwen/qwen-image-3",
        "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.006",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "image_input",
            "label": "input image",
            "native_amount_usd_per_unit": "0.006",
            "native_quantity": 1,
            "public_unit_label": "per input image",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "image_input"
          },
          {
            "amount": "0.06",
            "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.06",
            "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": "qwen/qwen-image-3",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "938fb062d321d9da8c16ccea7c00ababcde284dfac7f0a76683c725dd9dfec75",
    "input_html_sha256": "9cf0ae9e577ee96a0cc94973dbd73779f01033923702c33cf457aa148edd304b",
    "private_audit_sha256": "700951fc10d1a49b33454dc0747c6ee6ef5cec0a0d8ae09478c01f8f1f8a618e",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/el/qwen-qwen-image-3/",
    "description": "Το Qwen-Image-3.0 συνδυάζει παραγωγή και επεξεργασία εικόνων για διατάξεις πλούσιες σε πληροφορίες, λεπτομερείς σκηνές και πολύγλωσση τυπογραφία. Η βασική έκδοση ισορροπεί ποιότητα και ταχύτητα, δεχόμενη μια περιγραφή σε κείμενο ή έως τρεις εικόνες μαζί με οδηγία επεξεργασίας.",
    "locale": "el",
    "md_url": "https://ailoot.ai/models/el/qwen-qwen-image-3/index.md",
    "title": "Qwen: Qwen Image 3 — Ailoot",
    "url": "https://ailoot.ai/models/el/qwen-qwen-image-3/"
  },
  "rawModel": {
    "about": "Το Qwen-Image-3.0 είναι το μοντέλο εικόνας τρίτης γενιάς της Qwen και συνδυάζει δημιουργία εικόνων από κείμενο και επεξεργασία βάσει αναφορών σε ένα μοντέλο. Η βασική έκδοση ισορροπεί ποιότητα εικόνας και ταχύτητα απόκρισης, ενώ το Qwen-Image-3.0 Pro είναι η κορυφαία συγγενική έκδοση με έμφαση στην ποιότητα. Ένα αίτημα παράγει εικόνα: αφίσα, εικονογραφημένη εξήγηση, σκηνή προϊόντος, storyboard ή τροποποιημένη φωτογραφία, αντί για επεξεργάσιμο έγγραφο ή λειτουργική διεπαφή.\n\nΟι δυνατότητες πλούσιου περιεχομένου του ταιριάζουν σε έναν καμβά με πολλές σχετικές ενότητες ή ένθετη οπτική διάταξη. Προετοιμάστε τους τίτλους, την ακριβή διατύπωση, την ιεραρχία και τη σχέση μεταξύ των πλαισίων πριν προσθέσετε λεπτομέρειες ύφους. Για σύγκριση προϊόντων, ένα χρήσιμο αίτημα προσδιορίζει την κύρια απεικόνιση του προϊόντος, τα χαρακτηριστικά που θα επισημανθούν και τη σειρά ανάγνωσης των υποστηρικτικών πλαισίων. Για storyboard, περιγράψτε χωριστά το θέμα, τη δράση και τη λεζάντα κάθε πλαισίου. Το συνιστώμενο μέγιστο μήκος του prompt είναι 4.500 tokens· αφιερώστε αυτόν τον χώρο στο περιεχόμενο και τη διάταξη που πραγματικά χρειάζεται η εικόνα.\n\nΤο μοντέλο υποστηρίζει λεπτομερείς υφές, τυπογραφία με μικρό κείμενο που έχει επιδειχθεί στα 10 pixel και εγγενή απόδοση σε 12 γλώσσες, με πολλές γραμματοσειρές και καλλιτεχνικά ύφη. Αυτές οι δυνατότητες μπορούν να συνδυάσουν ένα ρεαλιστικό αντικείμενο με ένα γραφικό πλούσιο σε πληροφορίες, χωρίς να επιβάλλουν επιλογή ανάμεσα σε φωτογραφία και διάταξη με πολύ κείμενο. Δώστε τις ακριβείς λέξεις και τους ακριβείς αριθμούς που θα αποδοθούν, τη γλώσσα τους και τη θέση τους. Αντιμετωπίστε μια παραγόμενη διεπαφή ως οπτική μακέτα: τα κουμπιά, τα γραφήματα και οι ετικέτες στην εικόνα δεν υλοποιούν τη συμπεριφορά μιας εφαρμογής.\n\nΗ επεξεργασία μπορεί να αλλάξει κείμενο, να προσθέσει ή να αφαιρέσει αντικείμενα, να μετακινήσει στοιχεία, να προσαρμόσει τη δράση ενός θέματος, να μεταφέρει ένα ύφος ή να βελτιώσει τις λεπτομέρειες μιας φθαρμένης εικόνας. Δώστε μία έως τρεις εικόνες και μία σαφή οδηγία επεξεργασίας. Η αρίθμηση των εικόνων ακολουθεί τη σειρά υποβολής, οπότε προσδιορίστε ποια εικόνα παρέχει το θέμα, ποια ένα ένδυμα ή αντικείμενο και ποια το σκηνικό. Για μια σκηνή προϊόντος, ζητήστε να τοποθετηθεί το αντικείμενο της εικόνας 1 στο περιβάλλον της εικόνας 2, διατηρώντας τα χαρακτηριστικά που ξεχωρίζουν το προϊόν. Διατυπώστε ρητά τόσο τις αλλαγές όσο και τις απαιτήσεις διατήρησης.\n\nΗ συγκεκριμένη ροή εισαγωγής εικόνων δέχεται JPG, JPEG, PNG, BMP, TIFF, WebP και GIF· από ένα κινούμενο GIF επεξεργάζεται μόνο το πρώτο καρέ. Κάθε εικόνα μπορεί να έχει μέγεθος έως 10 MB. Το τρέχον API δέχεται διαστάσεις από 1 έως 8.000 pixel, με αναλογία μεγάλης προς μικρή πλευρά που δεν ξεπερνά το 10:1, και συνιστά 384–2.048 pixel για καλά αποτελέσματα. Επιλέξτε εικόνα εισόδου που δείχνει καθαρά τις λεπτομέρειες που μεταφέρονται ή τροποποιούνται. Μια πολύ στενά περικομμένη αναφορά μπορεί να κρύψει τη γύρω δομή που χρειάζεται για φυσική τοποθέτηση ενός αντικειμένου.\n\nΗ έξοδος είναι PNG, με μία έως έξι εικόνες ανά αίτημα και προεπιλογή τη μία. Το εμβαδόν σε pixel κυμαίνεται από 512 × 512 έως 2.048 × 2.048, με αναλογίες πλευρών από 1:8 έως 8:1· αυτά είναι όρια εμβαδού, όχι κανόνας ότι κάθε πλευρά πρέπει να έχει το πολύ 2.048 pixel. Αν δεν δοθεί μέγεθος, το μοντέλο προτείνει ανάλυση βάσει του prompt. Επιλέξτε οριζόντια, τετράγωνη ή κατακόρυφη σύνθεση για την προβλεπόμενη χρήση και κατόπιν εξετάστε την επιστρεφόμενη εικόνα στο πραγματικό της μέγεθος, ώστε να αξιολογήσετε τις μικρές ετικέτες και τις λεπτές λεπτομέρειες όπως θα εμφανίζονται.\n\nΗ αναδιατύπωση του prompt είναι ενεργοποιημένη από προεπιλογή στη ροή του κατασκευαστή. Η άμεση βελτίωση λειτουργεί τόσο για παραγωγή όσο και για επεξεργασία· η βελτίωση μέσω agent είναι πιο σύνθετη λειτουργία αναδιατύπωσης μόνο για παραγωγή εικόνας από κείμενο και απορρίπτεται για επεξεργασία εικόνας με βάση εικόνα. Η λειτουργία συλλογισμού είναι ενεργοποιημένη από προεπιλογή, απαιτεί αναδιατύπωση του prompt και αυξάνει τον χρόνο παραγωγής. Τα αρνητικά prompts μπορούν να περιγράφουν ανεπιθύμητα στοιχεία, ενώ μια σταθερή τιμή seed βοηθά στη σύγκριση παραλλαγών. Δηλώστε καθαρά τους αποκλεισμούς και τις ακριβείς απαιτήσεις διατήρησης, αντί να περιμένετε ότι ένα seed θα δώσει πανομοιότυπη εικόνα όταν αλλάζει το αίτημα.\n\nΓια ένα χρήσιμο τελικό παραδοτέο, ελέγξτε τις αποδοθείσες λέξεις, τις μονάδες, τη σειρά των πλαισίων και τις λεπτομέρειες που ταυτοποιούν το θέμα και έπειτα τροποποιήστε το συγκεκριμένο μέρος που δεν ακολούθησε το αίτημα. Μια απάντηση με πολλές εικόνες παρέχει εναλλακτικές για σύγκριση· κρατήστε κάθε επιστρεφόμενη εικόνα συνδεδεμένη με το prompt και τις αναφορές που την παρήγαγαν. Οι διευθύνσεις εικόνων του κατασκευαστή λήγουν μετά από 24 ώρες, οπότε αποθηκεύστε το ίδιο το αρχείο εικόνας όταν το αποτέλεσμα γίνεται μέρος ενός έργου. Η βασική έκδοση 3.0 παραμένει διακριτή από την Pro και από τα μοντέλα Qwen 2.1, τα οποία έχουν διαφορετικό αριθμό αναφορών και δυνατότητες διαφάνειας.",
    "alias_of": null,
    "aliases": [],
    "author": "Alibaba",
    "capabilities": {
      "context_length": 65536,
      "manufacturer_input": [
        "text",
        "image"
      ],
      "manufacturer_output": [
        "image"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.06",
            "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.06",
            "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": "qwen/qwen-image-3",
    "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": [
                  "qwen/qwen-image-3"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "min_length": 1,
                "name": "prompt",
                "required": true,
                "type": "string"
              },
              {
                "enum": [
                  "1K",
                  "2K"
                ],
                "enum_known": true,
                "name": "resolution",
                "required": false,
                "type": "string"
              },
              {
                "enum": [
                  "1:1",
                  "1:2",
                  "1:4",
                  "2:1",
                  "2:3",
                  "3:2",
                  "3:4",
                  "4:1",
                  "4:3",
                  "4:5",
                  "5:4",
                  "9:16",
                  "16:9"
                ],
                "enum_known": true,
                "name": "aspect_ratio",
                "required": false,
                "type": "string"
              },
              {
                "maximum": 6,
                "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": 4,
                "minimum_items": 0,
                "name": "input_references",
                "required": false,
                "type": "array"
              },
              {
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "aspect_ratio": {
                  "enum": [
                    "1:1",
                    "1:2",
                    "1:4",
                    "2:1",
                    "2:3",
                    "3:2",
                    "3:4",
                    "4:1",
                    "4:3",
                    "4:5",
                    "5:4",
                    "9:16",
                    "16:9"
                  ],
                  "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": 4,
                  "minItems": 0,
                  "type": "array"
                },
                "model": {
                  "enum": [
                    "qwen/qwen-image-3"
                  ],
                  "type": "string"
                },
                "n": {
                  "maximum": 6,
                  "minimum": 1,
                  "type": "integer"
                },
                "prompt": {
                  "minLength": 1,
                  "type": "string"
                },
                "provider": {
                  "description": "Exact image provider preferences from the documented image request schema.",
                  "type": "object"
                },
                "resolution": {
                  "enum": [
                    "1K",
                    "2K"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "prompt"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "model": "qwen/qwen-image-3",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input image"
            },
            "label": "input image",
            "units": [
              {
                "amount": "0.006",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "image_input",
                "label": "input image",
                "native_amount_usd_per_unit": "0.006",
                "native_quantity": 1,
                "public_unit_label": "per input image",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "image_input"
              }
            ]
          },
          {
            "basis": "Αυτή η εκτίμηση δεν αποτελεί πρόσθετη χρέωση ούτε σταθερή τιμή για την ολοκληρωμένη παραγωγή.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Εκτιμώμενο κόστος δημιουργίας",
            "units": [
              {
                "amount": "0.06",
                "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.06",
                "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': 'qwen/qwen-image-3', '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"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input image"
            },
            "label": "input image",
            "units": [
              {
                "amount": "0.006",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "image_input",
                "label": "input image",
                "native_amount_usd_per_unit": "0.006",
                "native_quantity": 1,
                "public_unit_label": "per input image",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "image_input"
              }
            ]
          },
          {
            "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.06",
                "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.06",
                "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": "qwen/qwen-image-3",
        "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.006",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "image_input",
            "label": "input image",
            "native_amount_usd_per_unit": "0.006",
            "native_quantity": 1,
            "public_unit_label": "per input image",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "image_input"
          },
          {
            "amount": "0.06",
            "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.06",
            "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": "qwen/qwen-image-3",
        "request_model_id": "qwen/qwen-image-3",
        "route_label": "Ultra"
      }
    ],
    "name": "Qwen: Qwen Image 3",
    "price": {
      "estimate_only": true,
      "in": null,
      "in_label": null,
      "out": 0.06,
      "out_label": "estimate before generation",
      "scope_label": "Estimated generation cost",
      "sort_in": null,
      "sort_out": 0.06,
      "varies": false
    },
    "short": "Το Qwen-Image-3.0 συνδυάζει παραγωγή και επεξεργασία εικόνων για διατάξεις πλούσιες σε πληροφορίες, λεπτομερείς σκηνές και πολύγλωσση τυπογραφία. Η βασική έκδοση ισορροπεί ποιότητα και ταχύτητα, δεχόμενη μια περιγραφή σε κείμενο ή έως τρεις εικόνες μαζί με οδηγία επεξεργασίας."
  },
  "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": "Το Qwen-Image-3.0 συνδυάζει παραγωγή και επεξεργασία εικόνων για διατάξεις πλούσιες σε πληροφορίες, λεπτομερείς σκηνές και πολύγλωσση τυπογραφία. Η βασική έκδοση ισορροπεί ποιότητα και ταχύτητα, δεχόμενη μια περιγραφή σε κείμενο ή έως τρεις εικόνες μαζί με οδηγία επεξεργασίας.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "1fda7af888ccc06e64b1ce8a73c779c8004a96bd45da554d840597dc6615f8ff",
    "renderer_sha256": "3ed36f7af4f78822bafbd174fdcaed7b698a18a86efe254253d37f1b098a7566"
  },
  "sourceRevision": "881ace9d81fd310adbe80f5544d981b393863759f5dc018d5f3e7623a2ab46ea"
}
