{
  "aboutHtml": "<p>Το CogVideoX 2 είναι το μοντέλο δημιουργίας βίντεο της Zhipu AI για γραπτή περιγραφή σκηνής ή εικόνα που παρέχεται. Το κείμενο καθορίζει το θέμα, το περιβάλλον και τη δράση· μια εικόνα μπορεί να προσφέρει την οπτική βάση για την παραγόμενη ακολουθία. Χρησιμοποιήστε την είσοδο που αντιπροσωπεύει καλύτερα το υλικό που είναι ήδη διαθέσιμο για το πλάνο και περιγράψτε την ορατή κίνηση που πρέπει να περιέχει το ολοκληρωμένο βίντεο.</p><p>Για δημιουργία από κείμενο, ορίστε ένα συνεκτικό γεγονός. Ένα άτομο που ανοίγει την πόρτα ενός εργαστηρίου, μια μικρή βάρκα που περνά δίπλα από μια προβλήτα ή ένα αντικείμενο που περιστρέφεται υπό σταθερό φωτισμό δίνουν στο πλάνο έναν ευδιάκριτο σκοπό. Δηλώστε τα σημαντικά χαρακτηριστικά του θέματος, την οπτική γωνία και την κατεύθυνση της κίνησης. Επιλέξτε ένα τέλος που μπορεί να χρησιμοποιηθεί στο επιθυμητό μοντάζ, αντί να αφήνετε ακαθόριστη την τελική σύνθεση της σκηνής.</p><p>Για δημιουργία από εικόνα, προετοιμάστε μια καθαρή όψη του θέματος και περιγράψτε πώς πρέπει να κινηθεί η σκηνή ξεκινώντας από αυτή. Ο κατασκευαστής δέχεται αναφορές PNG, JPEG και JPG έως 5 MB, οι οποίες παρέχονται μέσω URL εικόνας ή κωδικοποιημένων δεδομένων εικόνας. Διατηρήστε ορατά στην αναφορά τα σημαντικά περιγράμματα, τα χαρακτηριστικά του προσώπου και τις λεπτομέρειες των αντικειμένων, αφήνοντας χώρο στη σύνθεση για τη ζητούμενη δράση.</p><p>Ο κατασκευαστής περιορίζει τη γραπτή προτροπή σε 512 χαρακτήρες. Χρησιμοποιήστε αυτόν τον χώρο για τις καθοριστικές λεπτομέρειες: θέμα, δράση, περιβάλλον και οπτική γωνία. Μια σύντομη περιγραφή που εξηγεί ποιο αντικείμενο κινείται και τι παραμένει σταθερό αξιολογείται ευκολότερα από μια λίστα γενικών επιθέτων ύφους. Αν το αποτέλεσμα δεν πετυχαίνει τον στόχο, αναθεωρήστε την οδηγία που συνδέεται με το παρατηρούμενο πρόβλημα κίνησης ή καδραρίσματος.</p><p>Οι δημοσιευμένες διαστάσεις εξόδου περιλαμβάνουν τετράγωνες, οριζόντιες και κατακόρυφες μορφές, με επιλογές από 720×480 έως 3840×2160 pixel. Ο κατασκευαστής τεκμηριώνει επίσης 30 ή 60 καρέ ανά δευτερόλεπτο. Επιλέξτε τη μορφή και τον ρυθμό καρέ για τον προορισμό πριν από τη δημιουργία και εξετάστε το πραγματικό απόσπασμα για να δείτε αν το θέμα και οι σημαντικές λεπτομέρειές του παραμένουν ευδιάκριτα σε αυτό το κάδρο.</p><p>Η ποιότητα και η ταχύτητα είναι ονομασμένες λειτουργίες εξόδου στη ροή εργασίας του κατασκευαστή. Τα προαιρετικά ηχητικά εφέ που δημιουργούνται με AI ελέγχονται χωριστά από την οπτική περιγραφή. Διατηρήστε την επιλεγμένη λειτουργία και τη ρύθμιση ηχητικών εφέ μαζί με την προτροπή και τυχόν εικόνα αναφοράς, ώστε τα διαφορετικά υποψήφια αποσπάσματα να συγκρίνονται με βάση τις πραγματικές ρυθμίσεις δημιουργίας τους.</p><p>Η δημιουργία είναι ασύγχρονη: επιστρέφεται μια ταυτότητα εργασίας πριν γίνει διαθέσιμο το ολοκληρωμένο βίντεο. Διατηρήστε αυτή την ταυτότητα σε όλη τη διάρκεια του ελέγχου του αποτελέσματος και κρατήστε όλα τα ολοκληρωμένα αρχεία βίντεο που συνδέονται με τη λειτουργία. Αποθηκεύστε το ίδιο το απόσπασμα για επεξεργασία, μαζί με την εικόνα προέλευσης όταν χρησιμοποιείται, αντί να εξαρτάστε από μια προσωρινή θέση αποτελέσματος ή ένα καρέ προεπισκόπησης.</p><p>Ελέγξτε ολόκληρη την ακολουθία ως προς τη συνέχεια, τον χρονισμό και τη ζητούμενη δράση. Ένα πλάνο προϊόντος χρειάζεται σταθερό σχήμα και λεπτομέρειες υλικού κατά την κίνηση· ένα πλάνο χαρακτήρα χρειάζεται συνεπή εμφάνιση και χειρονομίες. Ελέγξτε την τελική σύνθεση και τυχόν παραγόμενο ήχο ως προς τον σκοπό του πλάνου. Διατηρήστε τα επιτυχημένα στοιχεία της σκηνής όταν διορθώνετε μια συγκεκριμένη ασυμφωνία και χρησιμοποιήστε τις ίδιες συνθήκες θέασης για να συγκρίνετε το αρχικό και το αναθεωρημένο βίντεο.</p>",
  "aboutText": "Το CogVideoX 2 είναι το μοντέλο δημιουργίας βίντεο της Zhipu AI για γραπτή περιγραφή σκηνής ή εικόνα που παρέχεται. Το κείμενο καθορίζει το θέμα, το περιβάλλον και τη δράση· μια εικόνα μπορεί να προσφέρει την οπτική βάση για την παραγόμενη ακολουθία. Χρησιμοποιήστε την είσοδο που αντιπροσωπεύει καλύτερα το υλικό που είναι ήδη διαθέσιμο για το πλάνο και περιγράψτε την ορατή κίνηση που πρέπει να περιέχει το ολοκληρωμένο βίντεο.\n\nΓια δημιουργία από κείμενο, ορίστε ένα συνεκτικό γεγονός. Ένα άτομο που ανοίγει την πόρτα ενός εργαστηρίου, μια μικρή βάρκα που περνά δίπλα από μια προβλήτα ή ένα αντικείμενο που περιστρέφεται υπό σταθερό φωτισμό δίνουν στο πλάνο έναν ευδιάκριτο σκοπό. Δηλώστε τα σημαντικά χαρακτηριστικά του θέματος, την οπτική γωνία και την κατεύθυνση της κίνησης. Επιλέξτε ένα τέλος που μπορεί να χρησιμοποιηθεί στο επιθυμητό μοντάζ, αντί να αφήνετε ακαθόριστη την τελική σύνθεση της σκηνής.\n\nΓια δημιουργία από εικόνα, προετοιμάστε μια καθαρή όψη του θέματος και περιγράψτε πώς πρέπει να κινηθεί η σκηνή ξεκινώντας από αυτή. Ο κατασκευαστής δέχεται αναφορές PNG, JPEG και JPG έως 5 MB, οι οποίες παρέχονται μέσω URL εικόνας ή κωδικοποιημένων δεδομένων εικόνας. Διατηρήστε ορατά στην αναφορά τα σημαντικά περιγράμματα, τα χαρακτηριστικά του προσώπου και τις λεπτομέρειες των αντικειμένων, αφήνοντας χώρο στη σύνθεση για τη ζητούμενη δράση.\n\nΟ κατασκευαστής περιορίζει τη γραπτή προτροπή σε 512 χαρακτήρες. Χρησιμοποιήστε αυτόν τον χώρο για τις καθοριστικές λεπτομέρειες: θέμα, δράση, περιβάλλον και οπτική γωνία. Μια σύντομη περιγραφή που εξηγεί ποιο αντικείμενο κινείται και τι παραμένει σταθερό αξιολογείται ευκολότερα από μια λίστα γενικών επιθέτων ύφους. Αν το αποτέλεσμα δεν πετυχαίνει τον στόχο, αναθεωρήστε την οδηγία που συνδέεται με το παρατηρούμενο πρόβλημα κίνησης ή καδραρίσματος.\n\nΟι δημοσιευμένες διαστάσεις εξόδου περιλαμβάνουν τετράγωνες, οριζόντιες και κατακόρυφες μορφές, με επιλογές από 720×480 έως 3840×2160 pixel. Ο κατασκευαστής τεκμηριώνει επίσης 30 ή 60 καρέ ανά δευτερόλεπτο. Επιλέξτε τη μορφή και τον ρυθμό καρέ για τον προορισμό πριν από τη δημιουργία και εξετάστε το πραγματικό απόσπασμα για να δείτε αν το θέμα και οι σημαντικές λεπτομέρειές του παραμένουν ευδιάκριτα σε αυτό το κάδρο.\n\nΗ ποιότητα και η ταχύτητα είναι ονομασμένες λειτουργίες εξόδου στη ροή εργασίας του κατασκευαστή. Τα προαιρετικά ηχητικά εφέ που δημιουργούνται με AI ελέγχονται χωριστά από την οπτική περιγραφή. Διατηρήστε την επιλεγμένη λειτουργία και τη ρύθμιση ηχητικών εφέ μαζί με την προτροπή και τυχόν εικόνα αναφοράς, ώστε τα διαφορετικά υποψήφια αποσπάσματα να συγκρίνονται με βάση τις πραγματικές ρυθμίσεις δημιουργίας τους.\n\nΗ δημιουργία είναι ασύγχρονη: επιστρέφεται μια ταυτότητα εργασίας πριν γίνει διαθέσιμο το ολοκληρωμένο βίντεο. Διατηρήστε αυτή την ταυτότητα σε όλη τη διάρκεια του ελέγχου του αποτελέσματος και κρατήστε όλα τα ολοκληρωμένα αρχεία βίντεο που συνδέονται με τη λειτουργία. Αποθηκεύστε το ίδιο το απόσπασμα για επεξεργασία, μαζί με την εικόνα προέλευσης όταν χρησιμοποιείται, αντί να εξαρτάστε από μια προσωρινή θέση αποτελέσματος ή ένα καρέ προεπισκόπησης.\n\nΕλέγξτε ολόκληρη την ακολουθία ως προς τη συνέχεια, τον χρονισμό και τη ζητούμενη δράση. Ένα πλάνο προϊόντος χρειάζεται σταθερό σχήμα και λεπτομέρειες υλικού κατά την κίνηση· ένα πλάνο χαρακτήρα χρειάζεται συνεπή εμφάνιση και χειρονομίες. Ελέγξτε την τελική σύνθεση και τυχόν παραγόμενο ήχο ως προς τον σκοπό του πλάνου. Διατηρήστε τα επιτυχημένα στοιχεία της σκηνής όταν διορθώνετε μια συγκεκριμένη ασυμφωνία και χρησιμοποιήστε τις ίδιες συνθήκες θέασης για να συγκρίνετε το αρχικό και το αναθεωρημένο βίντεο.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "891071793f2fdc38b00fb509ca0aff4139b8393f9d253867aae832fa9473bc65",
    "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\">•</span><h2 id=\"sheet-title\">Zhipu AI: CogVideoX 2</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Κλείσιμο\">×</button></div><div class=\"idline\"><span>Zhipu AI /</span><code>cogvideox-2</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|videos|/v1/videos|cogvideox-2\">Βίντεο</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\">Το CogVideoX 2 δημιουργεί βίντεο από περιγραφή κειμένου ή από εικόνα που παρέχεται. Ο κατασκευαστής τεκμηριώνει επιλέξιμες διαστάσεις καρέ, 30 ή 60 fps, λειτουργίες ποιότητας ή ταχύτητας και προαιρετικά παραγόμενα ηχητικά εφέ για τη διαμόρφωση μιας σύντομης οπτικής σκηνής.</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>Το CogVideoX 2 είναι το μοντέλο δημιουργίας βίντεο της Zhipu AI για γραπτή περιγραφή σκηνής ή εικόνα που παρέχεται. Το κείμενο καθορίζει το θέμα, το περιβάλλον και τη δράση· μια εικόνα μπορεί να προσφέρει την οπτική βάση για την παραγόμενη ακολουθία. Χρησιμοποιήστε την είσοδο που αντιπροσωπεύει καλύτερα το υλικό που είναι ήδη διαθέσιμο για το πλάνο και περιγράψτε την ορατή κίνηση που πρέπει να περιέχει το ολοκληρωμένο βίντεο.</p><p>Για δημιουργία από κείμενο, ορίστε ένα συνεκτικό γεγονός. Ένα άτομο που ανοίγει την πόρτα ενός εργαστηρίου, μια μικρή βάρκα που περνά δίπλα από μια προβλήτα ή ένα αντικείμενο που περιστρέφεται υπό σταθερό φωτισμό δίνουν στο πλάνο έναν ευδιάκριτο σκοπό. Δηλώστε τα σημαντικά χαρακτηριστικά του θέματος, την οπτική γωνία και την κατεύθυνση της κίνησης. Επιλέξτε ένα τέλος που μπορεί να χρησιμοποιηθεί στο επιθυμητό μοντάζ, αντί να αφήνετε ακαθόριστη την τελική σύνθεση της σκηνής.</p><p>Για δημιουργία από εικόνα, προετοιμάστε μια καθαρή όψη του θέματος και περιγράψτε πώς πρέπει να κινηθεί η σκηνή ξεκινώντας από αυτή. Ο κατασκευαστής δέχεται αναφορές PNG, JPEG και JPG έως 5 MB, οι οποίες παρέχονται μέσω URL εικόνας ή κωδικοποιημένων δεδομένων εικόνας. Διατηρήστε ορατά στην αναφορά τα σημαντικά περιγράμματα, τα χαρακτηριστικά του προσώπου και τις λεπτομέρειες των αντικειμένων, αφήνοντας χώρο στη σύνθεση για τη ζητούμενη δράση.</p><p>Ο κατασκευαστής περιορίζει τη γραπτή προτροπή σε 512 χαρακτήρες. Χρησιμοποιήστε αυτόν τον χώρο για τις καθοριστικές λεπτομέρειες: θέμα, δράση, περιβάλλον και οπτική γωνία. Μια σύντομη περιγραφή που εξηγεί ποιο αντικείμενο κινείται και τι παραμένει σταθερό αξιολογείται ευκολότερα από μια λίστα γενικών επιθέτων ύφους. Αν το αποτέλεσμα δεν πετυχαίνει τον στόχο, αναθεωρήστε την οδηγία που συνδέεται με το παρατηρούμενο πρόβλημα κίνησης ή καδραρίσματος.</p><p>Οι δημοσιευμένες διαστάσεις εξόδου περιλαμβάνουν τετράγωνες, οριζόντιες και κατακόρυφες μορφές, με επιλογές από 720×480 έως 3840×2160 pixel. Ο κατασκευαστής τεκμηριώνει επίσης 30 ή 60 καρέ ανά δευτερόλεπτο. Επιλέξτε τη μορφή και τον ρυθμό καρέ για τον προορισμό πριν από τη δημιουργία και εξετάστε το πραγματικό απόσπασμα για να δείτε αν το θέμα και οι σημαντικές λεπτομέρειές του παραμένουν ευδιάκριτα σε αυτό το κάδρο.</p><p>Η ποιότητα και η ταχύτητα είναι ονομασμένες λειτουργίες εξόδου στη ροή εργασίας του κατασκευαστή. Τα προαιρετικά ηχητικά εφέ που δημιουργούνται με AI ελέγχονται χωριστά από την οπτική περιγραφή. Διατηρήστε την επιλεγμένη λειτουργία και τη ρύθμιση ηχητικών εφέ μαζί με την προτροπή και τυχόν εικόνα αναφοράς, ώστε τα διαφορετικά υποψήφια αποσπάσματα να συγκρίνονται με βάση τις πραγματικές ρυθμίσεις δημιουργίας τους.</p><p>Η δημιουργία είναι ασύγχρονη: επιστρέφεται μια ταυτότητα εργασίας πριν γίνει διαθέσιμο το ολοκληρωμένο βίντεο. Διατηρήστε αυτή την ταυτότητα σε όλη τη διάρκεια του ελέγχου του αποτελέσματος και κρατήστε όλα τα ολοκληρωμένα αρχεία βίντεο που συνδέονται με τη λειτουργία. Αποθηκεύστε το ίδιο το απόσπασμα για επεξεργασία, μαζί με την εικόνα προέλευσης όταν χρησιμοποιείται, αντί να εξαρτάστε από μια προσωρινή θέση αποτελέσματος ή ένα καρέ προεπισκόπησης.</p><p>Ελέγξτε ολόκληρη την ακολουθία ως προς τη συνέχεια, τον χρονισμό και τη ζητούμενη δράση. Ένα πλάνο προϊόντος χρειάζεται σταθερό σχήμα και λεπτομέρειες υλικού κατά την κίνηση· ένα πλάνο χαρακτήρα χρειάζεται συνεπή εμφάνιση και χειρονομίες. Ελέγξτε την τελική σύνθεση και τυχόν παραγόμενο ήχο ως προς τον σκοπό του πλάνου. Διατηρήστε τα επιτυχημένα στοιχεία της σκηνής όταν διορθώνετε μια συγκεκριμένη ασυμφωνία και χρησιμοποιήστε τις ίδιες συνθήκες θέασης για να συγκρίνετε το αρχικό και το αναθεωρημένο βίντεο.</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/videos</code></summary><dl class=\"method-capabilities\"><div><dt>Είσοδος</dt><dd><code>text</code></dd></div><div><dt>Έξοδος</dt><dd><code>video</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>cogvideox-2</div><div>Συνθήκες: Χρησιμοποιήστε τον ακριβή επιλογέα μοντέλου Ailoot.</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>Συνθήκες: Περιγράψτε τη σκηνή και την κίνηση.</div></td><td data-cell-label=\"Προεπιλογή\" data-default=\"unspecified\"><span class=\"card-cell-label\">Προεπιλογή</span>—</td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">quality</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span><code>boolean</code></td><td data-cell-label=\"Απαίτηση\"><span class=\"card-cell-label\">Απαίτηση</span>Προαιρετικό</td><td data-cell-label=\"Τιμές και όρια\"><span class=\"card-cell-label\">Τιμές και όρια</span><div>Συνθήκες: Προαιρετική σημαία ποιότητας· αυτό το επιλεγμένο σχήμα δεν παρέχει συμβατή απαρίθμηση τιμών ή προεπιλογή.</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\">with_audio</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span><code>boolean</code></td><td data-cell-label=\"Απαίτηση\"><span class=\"card-cell-label\">Απαίτηση</span>Προαιρετικό</td><td data-cell-label=\"Τιμές και όρια\"><span class=\"card-cell-label\">Τιμές και όρια</span><div>Συνθήκες: Δημιουργεί ηχητικά εφέ με τεχνητή νοημοσύνη όταν είναι ενεργοποιημένο.</div></td><td data-cell-label=\"Προεπιλογή\" data-default=\"known\"><span class=\"card-cell-label\">Προεπιλογή</span>false</td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">size</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>Συνθήκες: Δώστε την τεκμηριωμένη συμβολοσειρά μεγέθους όταν επιλέγετε ρητές διαστάσεις.</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\">fps</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>30, 60</div><div>Συνθήκες: Ο ρυθμός καρέ αναπαρίσταται ως συμβολοσειρά σε αυτή την επιλεγμένη εγγενή μέθοδο.</div></td><td data-cell-label=\"Προεπιλογή\" data-default=\"known\"><span class=\"card-cell-label\">Προεπιλογή</span>30</td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">duration</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>5, 10</div><div>Συνθήκες: Η διάρκεια σε δευτερόλεπτα αναπαρίσταται ως συμβολοσειρά σε αυτή την επιλεγμένη εγγενή μέθοδο.</div></td><td data-cell-label=\"Προεπιλογή\" data-default=\"known\"><span class=\"card-cell-label\">Προεπιλογή</span>5</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>optional</code></th><td data-cell-label=\"Σύμβαση\"><span class=\"card-cell-label\">Σύμβαση</span>quality, with_audio, size, fps, duration</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</td></tr><tr><th data-cell-label=\"Παράμετρος\" scope=\"row\"><span class=\"card-cell-label\">Παράμετρος</span><code>conditions</code></th><td data-cell-label=\"Σύμβαση\"><span class=\"card-cell-label\">Σύμβαση</span>Χρησιμοποιήστε τον ακριβή επιλογέα μοντέλου Ailoot., Περιγράψτε τη σκηνή και την κίνηση., Προαιρετική σημαία ποιότητας· αυτό το επιλεγμένο σχήμα δεν παρέχει συμβατή απαρίθμηση τιμών ή προεπιλογή., Δημιουργεί ηχητικά εφέ με τεχνητή νοημοσύνη όταν είναι ενεργοποιημένο., Δώστε την τεκμηριωμένη συμβολοσειρά μεγέθους όταν επιλέγετε ρητές διαστάσεις., Ο ρυθμός καρέ αναπαρίσταται ως συμβολοσειρά σε αυτή την επιλεγμένη εγγενή μέθοδο., Η διάρκεια σε δευτερόλεπτα αναπαρίσταται ως συμβολοσειρά σε αυτή την επιλεγμένη εγγενή μέθοδο.</td></tr></tbody></table></div><p>Εναλλακτικά ονόματα μεθόδου: <code>/v1/videos/generations</code></p><p>Κύκλος ζωής: <code>submit_once_poll_original</code></p><p class=\"note-s\"><code>GET /v1/videos/{request_id}</code></p><p class=\"note-s\"><code>GET /v1/videos/generations/{request_id}</code></p><p class=\"note-s\"><code>GET /v1/videos/{request_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.2</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.2</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-2794-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2794-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · δημιουργήστε μία φορά και διατηρήστε το αποδεικτικό</button><button class=\"cg-tab\" id=\"model-code-2794-tab-1\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2794-panel-1\" aria-selected=\"false\" tabindex=\"-1\">Διαβάστε την αρχική εργασία</button><button class=\"cg-tab\" id=\"model-code-2794-tab-2\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2794-panel-2\" aria-selected=\"false\" tabindex=\"-1\">Αποθηκεύστε κάθε ολοκληρωμένο ψηφιακό στοιχείο που σας ανήκει</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-2794-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-2794-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\ncat &gt; request.json &lt;&lt;&#39;JSON&#39;\n{\n  &quot;model&quot;: &quot;cogvideox-2&quot;,\n  &quot;prompt&quot;: &quot;A cat is walking on grass.&quot;\n}\nJSON\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \\\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\n# Create once; retain id, polling_url, original task identifiers and every header.\n</code></pre></div><div class=\"cg-pane\" id=\"model-code-2794-panel-1\" role=\"tabpanel\" aria-labelledby=\"model-code-2794-tab-1\" hidden><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_STATUS&#39;\nimport json,os,subprocess\nfrom pathlib import Path\nfrom urllib.parse import urljoin,urlsplit\nr=json.loads(Path(&quot;result.json&quot;).read_text())\nu=urljoin(&quot;https://api.ailoot.ai&quot;,r[&quot;polling_url&quot;])\np=urlsplit(u)\nif p.scheme!=&quot;https&quot; or p.netloc!=&quot;api.ailoot.ai&quot; or p.username or p.password:\n    raise SystemExit(&quot;Unexpected returned polling URL; preserve the response&quot;)\nsubprocess.run([&quot;curl&quot;,&quot;--fail-with-body&quot;,&quot;--silent&quot;,&quot;--show-error&quot;,u,&quot;-H&quot;,&quot;Authorization: Bearer &quot;+os.environ[&quot;AILOOT_API_KEY&quot;],&quot;-D&quot;,&quot;status-headers.txt&quot;,&quot;-o&quot;,&quot;status.json&quot;],check=True)\n# Read this same original polling_url again while pending.\n# Preserve unknown/result_pending_check; do not repeat creation.\nPY_STATUS\n</code></pre></div><div class=\"cg-pane\" id=\"model-code-2794-panel-2\" role=\"tabpanel\" aria-labelledby=\"model-code-2794-tab-2\" hidden><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_ASSETS&#39;\nimport json,os,subprocess\nfrom pathlib import Path\nfrom urllib.parse import urljoin,urlsplit\nr=json.loads(Path(&quot;status.json&quot;).read_text())\nroles={}\ndef visit(v,path=&quot;&quot;):\n    if isinstance(v,dict):\n        for k,x in v.items(): visit(x,path+&quot;/&quot;+k)\n    elif isinstance(v,list):\n        for i,x in enumerate(v): visit(x,path+&quot;/&quot;+str(i))\n    elif isinstance(v,str):\n        u=urljoin(&quot;https://api.ailoot.ai&quot;,v); p=urlsplit(u)\n        if p.scheme==&quot;https&quot; and p.netloc==&quot;api.ailoot.ai&quot; and not p.username and not p.password and p.path.startswith(&quot;/v1/media/assets/&quot;) and p.path.endswith(&quot;/content&quot;):\n            roles.setdefault(u,[]).append(path)\nvisit(r)\nif not roles: raise SystemExit(&quot;No completed owned assets; retain the original status&quot;)\nmanifest=[]\nfor i,(u,paths) in enumerate(roles.items()):\n    target=Path(f&quot;asset-{i}.bin&quot;)\n    subprocess.run([&quot;curl&quot;,&quot;--fail-with-body&quot;,&quot;--silent&quot;,&quot;--show-error&quot;,u,&quot;-H&quot;,&quot;Authorization: Bearer &quot;+os.environ[&quot;AILOOT_API_KEY&quot;],&quot;-o&quot;,str(target)],check=True)\n    raw=target.read_bytes()\n    if not raw: raise SystemExit(&quot;Empty asset; retain original status and metadata&quot;)\n    ext=&quot;glb&quot; if raw[:4]==b&quot;glTF&quot; else &quot;png&quot; if raw[:8]==b&quot;\\x89PNG\\r\\n\\x1a\\n&quot; else &quot;jpg&quot; if raw[:3]==b&quot;\\xff\\xd8\\xff&quot; else &quot;webp&quot; if raw[:4]==b&quot;RIFF&quot; and raw[8:12]==b&quot;WEBP&quot; else &quot;mp4&quot; if raw[4:8]==b&quot;ftyp&quot; else &quot;bin&quot;\n    name=f&quot;asset-{i}.{ext}&quot;\n    if target.name!=name: target.rename(name)\n    manifest.append({&quot;file&quot;:name,&quot;response_paths&quot;:paths,&quot;bytes&quot;:len(raw)})\nPath(&quot;asset-manifest.json&quot;).write_text(json.dumps(manifest,indent=2))\nprint(&quot;Saved&quot;,len(manifest),&quot;unique owned assets; every response role retained&quot;)\nPY_ASSETS\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Λήψη και αποθήκευση αποτελεσμάτων</h3><h4>Ailoot Ultra · Βίντεο</h4><ul class=\"card-result-paths\"><li><code>GET /v1/videos/{request_id}</code></li><li><code>GET /v1/videos/generations/{request_id}</code></li><li><code>GET /v1/videos/{request_id}/content</code></li><li><code>GET /v1/media/assets</code></li><li><code>GET /v1/media/assets/{asset_id}</code></li></ul><div class=\"card-result-process\" data-all-results><h5>Διατηρήστε όλα τα ολοκληρωμένα αποτελέσματα</h5><p class=\"note-s\">Αποθηκεύστε κάθε ολοκληρωμένο βίντεο ή αρχείο που επιστρέφεται· ανακτήστε κάθε πραγματικό URL αρχείου που επιστρέφεται.</p><p class=\"note-s\">Διατηρήστε ολόκληρη την απόκριση και τις κεφαλίδες, τα αρχικά αναγνωριστικά, κάθε πραγματική έξοδο και όλα τα πεδία χρήσης και λογιστικής καταγραφής. Αποθηκεύστε κάθε μοναδικό αρχείο πολυμέσων που σας ανήκει και διατηρήστε κάθε ρόλο που παραπέμπει σε αυτό.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Αν χρειάζεται έλεγχος της αρχικής απάντησης</h5><p class=\"note-s\">Διατηρήστε το δημόσιο id εργασίας ή λειτουργίας που επιστρέφεται και όλες τις κεφαλίδες. Διαβάστε μόνο την αρχική εργασία· τα unknown ή result_pending_check δεν επιτρέπουν άλλη δημιουργία.</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\">id</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span>string</td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">polling_url</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span>string</td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">provider_task_id</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span>string</td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">id</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span>string</td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">task_status</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span>string</td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">video_result[].url</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span>string</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=cogvideox-2&amp;route=Ultra&amp;caller=cogvideox-2&amp;fmt=videos\"><code>cogvideox-2</code></a></span></p><h4>Εναλλακτικές διαδρομές μεθόδων</h4><p class=\"note-s\"><code>/v1/videos/generations</code></p><h4>Σχετικά ID μοντέλων</h4><p class=\"note-s\"><a href=\"#m=cogvideox-2&amp;route=Ultra&amp;caller=cogvideox-2&amp;fmt=videos\"><code>cogvideox-2</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "cogvideox-2",
        "fmt": "videos",
        "http": "POST",
        "path": "/v1/videos",
        "request_model_id": "cogvideox-2",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|videos|/v1/videos|cogvideox-2",
      "ordinal": 0,
      "rawMethod": {
        "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, original identifiers, every actual output and all usage/accounting fields. Save each unique owned asset and retain every role pointing to it.",
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "cancel_endpoint": null,
              "completed_states": [
                "SUCCESS"
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{request_id}/content",
                  "query": {
                    "index": "actual output index; default 0"
                  }
                }
              ],
              "create": {
                "http": "POST",
                "path": "/v1/videos"
              },
              "failed_states": [
                "FAIL"
              ],
              "id_source": "Use returned polling_url and id. Keep provider_task_id and X-Ailoot-Task-Id as separate original identifiers.",
              "mode": "submit_once_poll_original",
              "owned_content": {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "Use the exact returned signed URL; never construct a token."
              },
              "pending_states": [
                "PROCESSING"
              ],
              "state_field": "task_status",
              "status": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{request_id}"
                },
                {
                  "http": "GET",
                  "path": "/v1/videos/generations/{request_id}"
                }
              ],
              "unknown": "Διατηρήστε το δημόσιο id εργασίας ή λειτουργίας που επιστρέφεται και όλες τις κεφαλίδες. Διαβάστε μόνο την αρχική εργασία· τα unknown ή result_pending_check δεν επιτρέπουν άλλη δημιουργία.",
              "unknown_no_replay": true
            },
            "outputs": {
              "all_results": "Διατηρήστε ολόκληρη την απόκριση και τις κεφαλίδες, τα αρχικά αναγνωριστικά, κάθε πραγματική έξοδο και όλα τα πεδία χρήσης και λογιστικής καταγραφής. Αποθηκεύστε κάθε μοναδικό αρχείο πολυμέσων που σας ανήκει και διατηρήστε κάθε ρόλο που παραπέμπει σε αυτό.",
              "every_actual_output": true,
              "family": "video",
              "fields": [
                {
                  "name": "id",
                  "type": "string"
                },
                {
                  "name": "polling_url",
                  "type": "string"
                },
                {
                  "name": "provider_task_id",
                  "type": "string"
                },
                {
                  "name": "id",
                  "type": "string"
                },
                {
                  "name": "task_status",
                  "type": "string"
                },
                {
                  "name": "video_result[].url",
                  "type": "string"
                }
              ],
              "maximum_outputs": null
            },
            "parameters": [
              {
                "conditions": "Χρησιμοποιήστε τον ακριβή επιλογέα μοντέλου Ailoot.",
                "default_known": false,
                "enum": [
                  "cogvideox-2"
                ],
                "enum_known": true,
                "maximum_length": null,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "conditions": "Περιγράψτε τη σκηνή και την κίνηση.",
                "default_known": false,
                "enum_known": false,
                "maximum_length": null,
                "name": "prompt",
                "required": true,
                "type": "string"
              },
              {
                "conditions": "Προαιρετική σημαία ποιότητας· αυτό το επιλεγμένο σχήμα δεν παρέχει συμβατή απαρίθμηση τιμών ή προεπιλογή.",
                "default_known": false,
                "enum_known": false,
                "maximum_length": null,
                "name": "quality",
                "required": false,
                "type": "boolean"
              },
              {
                "conditions": "Δημιουργεί ηχητικά εφέ με τεχνητή νοημοσύνη όταν είναι ενεργοποιημένο.",
                "default": false,
                "default_known": true,
                "enum_known": false,
                "maximum_length": null,
                "name": "with_audio",
                "required": false,
                "type": "boolean"
              },
              {
                "conditions": "Δώστε την τεκμηριωμένη συμβολοσειρά μεγέθους όταν επιλέγετε ρητές διαστάσεις.",
                "default_known": false,
                "enum_known": false,
                "maximum_length": null,
                "name": "size",
                "required": false,
                "type": "string"
              },
              {
                "conditions": "Ο ρυθμός καρέ αναπαρίσταται ως συμβολοσειρά σε αυτή την επιλεγμένη εγγενή μέθοδο.",
                "default": "30",
                "default_known": true,
                "enum": [
                  "30",
                  "60"
                ],
                "enum_known": true,
                "maximum_length": null,
                "name": "fps",
                "required": false,
                "type": "string"
              },
              {
                "conditions": "Η διάρκεια σε δευτερόλεπτα αναπαρίσταται ως συμβολοσειρά σε αυτή την επιλεγμένη εγγενή μέθοδο.",
                "default": "5",
                "default_known": true,
                "enum": [
                  "5",
                  "10"
                ],
                "enum_known": true,
                "maximum_length": null,
                "name": "duration",
                "required": false,
                "type": "string"
              }
            ],
            "request_schema": {
              "additionalProperties": true,
              "properties": {
                "duration": {
                  "default": "5",
                  "enum": [
                    "5",
                    "10"
                  ],
                  "type": "string"
                },
                "fps": {
                  "default": "30",
                  "enum": [
                    "30",
                    "60"
                  ],
                  "type": "string"
                },
                "model": {
                  "enum": [
                    "cogvideox-2"
                  ],
                  "type": "string"
                },
                "prompt": {
                  "type": "string"
                },
                "quality": {
                  "type": "boolean"
                },
                "size": {
                  "type": "string"
                },
                "with_audio": {
                  "default": false,
                  "type": "boolean"
                }
              },
              "required": [
                "model",
                "prompt"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "model": "cogvideox-2",
                "prompt": "A cat is walking on grass."
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "conditions": [
              "Χρησιμοποιήστε τον ακριβή επιλογέα μοντέλου Ailoot.",
              "Περιγράψτε τη σκηνή και την κίνηση.",
              "Προαιρετική σημαία ποιότητας· αυτό το επιλεγμένο σχήμα δεν παρέχει συμβατή απαρίθμηση τιμών ή προεπιλογή.",
              "Δημιουργεί ηχητικά εφέ με τεχνητή νοημοσύνη όταν είναι ενεργοποιημένο.",
              "Δώστε την τεκμηριωμένη συμβολοσειρά μεγέθους όταν επιλέγετε ρητές διαστάσεις.",
              "Ο ρυθμός καρέ αναπαρίσταται ως συμβολοσειρά σε αυτή την επιλεγμένη εγγενή μέθοδο.",
              "Η διάρκεια σε δευτερόλεπτα αναπαρίσταται ως συμβολοσειρά σε αυτή την επιλεγμένη εγγενή μέθοδο."
            ],
            "content_type": "application/json",
            "material_types": [
              "text"
            ],
            "optional": [
              "quality",
              "with_audio",
              "size",
              "fps",
              "duration"
            ],
            "required": [
              "model",
              "prompt"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "cancel_endpoint": null,
            "completed_states": [
              "SUCCESS"
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/videos/{request_id}/content",
                "query": {
                  "index": "actual output index; default 0"
                }
              }
            ],
            "create": {
              "http": "POST",
              "path": "/v1/videos"
            },
            "failed_states": [
              "FAIL"
            ],
            "id_source": "Use returned polling_url and id. Keep provider_task_id and X-Ailoot-Task-Id as separate original identifiers.",
            "mode": "submit_once_poll_original",
            "owned_content": {
              "http": "GET",
              "path": "/v1/media/assets/{asset_id}/content",
              "url_source": "Use the exact returned signed URL; never construct a token."
            },
            "pending_states": [
              "PROCESSING"
            ],
            "state_field": "task_status",
            "status": [
              {
                "http": "GET",
                "path": "/v1/videos/{request_id}"
              },
              {
                "http": "GET",
                "path": "/v1/videos/generations/{request_id}"
              }
            ],
            "unknown": "Keep the returned public task or operation id and all headers. Read only the original task; unknown or result_pending_check does not authorize another creation.",
            "unknown_no_replay": true
          },
          "method": {
            "http": "POST",
            "path": "/v1/videos"
          },
          "method_aliases": [
            "/v1/videos/generations"
          ],
          "output": {
            "all_results": "Retain the complete response and headers, original identifiers, every actual output and all usage/accounting fields. Save each unique owned asset and retain every role pointing to it.",
            "every_actual_output": true,
            "family": "video",
            "fields": [
              {
                "name": "id",
                "type": "string"
              },
              {
                "name": "polling_url",
                "type": "string"
              },
              {
                "name": "provider_task_id",
                "type": "string"
              },
              {
                "name": "id",
                "type": "string"
              },
              {
                "name": "task_status",
                "type": "string"
              },
              {
                "name": "video_result[].url",
                "type": "string"
              }
            ],
            "maximum_outputs": 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": {
              "billing_quantity": "one request"
            },
            "label": "Per request",
            "units": [
              {
                "amount": "0.2",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "per_request",
                "label": "per request",
                "native_amount_usd_per_unit": "0.2",
                "native_quantity": 1,
                "public_unit_label": "per request",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "per_request"
              }
            ]
          },
          {
            "basis": "Αυτή η εκτίμηση δεν αποτελεί πρόσθετη χρέωση ούτε σταθερή τιμή για την ολοκληρωμένη παραγωγή.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Εκτιμώμενο κόστος δημιουργίας",
            "units": [
              {
                "amount": "0.2",
                "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.2",
                "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}\"\ncat > request.json <<'JSON'\n{\n  \"model\": \"cogvideox-2\",\n  \"prompt\": \"A cat is walking on grass.\"\n}\nJSON\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\n# Create once; retain id, polling_url, original task identifiers and every header.\n",
            "label": "curl · create once and retain receipt",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_STATUS'\nimport json,os,subprocess\nfrom pathlib import Path\nfrom urllib.parse import urljoin,urlsplit\nr=json.loads(Path(\"result.json\").read_text())\nu=urljoin(\"https://api.ailoot.ai\",r[\"polling_url\"])\np=urlsplit(u)\nif p.scheme!=\"https\" or p.netloc!=\"api.ailoot.ai\" or p.username or p.password:\n    raise SystemExit(\"Unexpected returned polling URL; preserve the response\")\nsubprocess.run([\"curl\",\"--fail-with-body\",\"--silent\",\"--show-error\",u,\"-H\",\"Authorization: Bearer \"+os.environ[\"AILOOT_API_KEY\"],\"-D\",\"status-headers.txt\",\"-o\",\"status.json\"],check=True)\n# Read this same original polling_url again while pending.\n# Preserve unknown/result_pending_check; do not repeat creation.\nPY_STATUS\n",
            "label": "Read the original task",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_ASSETS'\nimport json,os,subprocess\nfrom pathlib import Path\nfrom urllib.parse import urljoin,urlsplit\nr=json.loads(Path(\"status.json\").read_text())\nroles={}\ndef visit(v,path=\"\"):\n    if isinstance(v,dict):\n        for k,x in v.items(): visit(x,path+\"/\"+k)\n    elif isinstance(v,list):\n        for i,x in enumerate(v): visit(x,path+\"/\"+str(i))\n    elif isinstance(v,str):\n        u=urljoin(\"https://api.ailoot.ai\",v); p=urlsplit(u)\n        if p.scheme==\"https\" and p.netloc==\"api.ailoot.ai\" and not p.username and not p.password and p.path.startswith(\"/v1/media/assets/\") and p.path.endswith(\"/content\"):\n            roles.setdefault(u,[]).append(path)\nvisit(r)\nif not roles: raise SystemExit(\"No completed owned assets; retain the original status\")\nmanifest=[]\nfor i,(u,paths) in enumerate(roles.items()):\n    target=Path(f\"asset-{i}.bin\")\n    subprocess.run([\"curl\",\"--fail-with-body\",\"--silent\",\"--show-error\",u,\"-H\",\"Authorization: Bearer \"+os.environ[\"AILOOT_API_KEY\"],\"-o\",str(target)],check=True)\n    raw=target.read_bytes()\n    if not raw: raise SystemExit(\"Empty asset; retain original status and metadata\")\n    ext=\"glb\" if raw[:4]==b\"glTF\" else \"png\" if raw[:8]==b\"\\x89PNG\\r\\n\\x1a\\n\" else \"jpg\" if raw[:3]==b\"\\xff\\xd8\\xff\" else \"webp\" if raw[:4]==b\"RIFF\" and raw[8:12]==b\"WEBP\" else \"mp4\" if raw[4:8]==b\"ftyp\" else \"bin\"\n    name=f\"asset-{i}.{ext}\"\n    if target.name!=name: target.rename(name)\n    manifest.append({\"file\":name,\"response_paths\":paths,\"bytes\":len(raw)})\nPath(\"asset-manifest.json\").write_text(json.dumps(manifest,indent=2))\nprint(\"Saved\",len(manifest),\"unique owned assets; every response role retained\")\nPY_ASSETS\n",
            "label": "Save every completed owned asset",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "videos",
        "http": "POST",
        "in": null,
        "input": [
          "text"
        ],
        "label": "Βίντεο",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "out": null,
        "output": [
          "video"
        ],
        "path": "/v1/videos",
        "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": {
              "billing_quantity": "one request"
            },
            "label": "Per request",
            "units": [
              {
                "amount": "0.2",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "per_request",
                "label": "per request",
                "native_amount_usd_per_unit": "0.2",
                "native_quantity": 1,
                "public_unit_label": "per request",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "per_request"
              }
            ]
          },
          {
            "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.2",
                "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.2",
                "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": "cogvideox-2",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/videos/{request_id}",
          "GET /v1/videos/generations/{request_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.2",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "per_request",
            "label": "per request",
            "native_amount_usd_per_unit": "0.2",
            "native_quantity": 1,
            "public_unit_label": "per request",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "per_request"
          },
          {
            "amount": "0.2",
            "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.2",
            "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": "cogvideox-2",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "ac1db186a5e37b8e2470f1da80649f4d4ad6199f98e28e13f3695d04f2087248",
    "input_html_sha256": "806224c337d9e70cfe5245f3aec0bca03afaeb23af012ad7d2742891e8afc383",
    "private_audit_sha256": "e190d9bd6dfc5ea952c41d661b19b71b5c1f634cab58bcce2ae7967827fc2cc7",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/el/cogvideox-2/",
    "description": "Το CogVideoX 2 δημιουργεί βίντεο από περιγραφή κειμένου ή από εικόνα που παρέχεται. Ο κατασκευαστής τεκμηριώνει επιλέξιμες διαστάσεις καρέ, 30 ή 60 fps, λειτουργίες ποιότητας ή ταχύτητας και προαιρετικά παραγόμενα ηχητικά εφέ για τη διαμόρφωση μιας σύντομης οπτικής σκηνής.",
    "locale": "el",
    "md_url": "https://ailoot.ai/models/el/cogvideox-2/index.md",
    "title": "Zhipu AI: CogVideoX 2 — Ailoot",
    "url": "https://ailoot.ai/models/el/cogvideox-2/"
  },
  "rawModel": {
    "about": "Το CogVideoX 2 είναι το μοντέλο δημιουργίας βίντεο της Zhipu AI για γραπτή περιγραφή σκηνής ή εικόνα που παρέχεται. Το κείμενο καθορίζει το θέμα, το περιβάλλον και τη δράση· μια εικόνα μπορεί να προσφέρει την οπτική βάση για την παραγόμενη ακολουθία. Χρησιμοποιήστε την είσοδο που αντιπροσωπεύει καλύτερα το υλικό που είναι ήδη διαθέσιμο για το πλάνο και περιγράψτε την ορατή κίνηση που πρέπει να περιέχει το ολοκληρωμένο βίντεο.\n\nΓια δημιουργία από κείμενο, ορίστε ένα συνεκτικό γεγονός. Ένα άτομο που ανοίγει την πόρτα ενός εργαστηρίου, μια μικρή βάρκα που περνά δίπλα από μια προβλήτα ή ένα αντικείμενο που περιστρέφεται υπό σταθερό φωτισμό δίνουν στο πλάνο έναν ευδιάκριτο σκοπό. Δηλώστε τα σημαντικά χαρακτηριστικά του θέματος, την οπτική γωνία και την κατεύθυνση της κίνησης. Επιλέξτε ένα τέλος που μπορεί να χρησιμοποιηθεί στο επιθυμητό μοντάζ, αντί να αφήνετε ακαθόριστη την τελική σύνθεση της σκηνής.\n\nΓια δημιουργία από εικόνα, προετοιμάστε μια καθαρή όψη του θέματος και περιγράψτε πώς πρέπει να κινηθεί η σκηνή ξεκινώντας από αυτή. Ο κατασκευαστής δέχεται αναφορές PNG, JPEG και JPG έως 5 MB, οι οποίες παρέχονται μέσω URL εικόνας ή κωδικοποιημένων δεδομένων εικόνας. Διατηρήστε ορατά στην αναφορά τα σημαντικά περιγράμματα, τα χαρακτηριστικά του προσώπου και τις λεπτομέρειες των αντικειμένων, αφήνοντας χώρο στη σύνθεση για τη ζητούμενη δράση.\n\nΟ κατασκευαστής περιορίζει τη γραπτή προτροπή σε 512 χαρακτήρες. Χρησιμοποιήστε αυτόν τον χώρο για τις καθοριστικές λεπτομέρειες: θέμα, δράση, περιβάλλον και οπτική γωνία. Μια σύντομη περιγραφή που εξηγεί ποιο αντικείμενο κινείται και τι παραμένει σταθερό αξιολογείται ευκολότερα από μια λίστα γενικών επιθέτων ύφους. Αν το αποτέλεσμα δεν πετυχαίνει τον στόχο, αναθεωρήστε την οδηγία που συνδέεται με το παρατηρούμενο πρόβλημα κίνησης ή καδραρίσματος.\n\nΟι δημοσιευμένες διαστάσεις εξόδου περιλαμβάνουν τετράγωνες, οριζόντιες και κατακόρυφες μορφές, με επιλογές από 720×480 έως 3840×2160 pixel. Ο κατασκευαστής τεκμηριώνει επίσης 30 ή 60 καρέ ανά δευτερόλεπτο. Επιλέξτε τη μορφή και τον ρυθμό καρέ για τον προορισμό πριν από τη δημιουργία και εξετάστε το πραγματικό απόσπασμα για να δείτε αν το θέμα και οι σημαντικές λεπτομέρειές του παραμένουν ευδιάκριτα σε αυτό το κάδρο.\n\nΗ ποιότητα και η ταχύτητα είναι ονομασμένες λειτουργίες εξόδου στη ροή εργασίας του κατασκευαστή. Τα προαιρετικά ηχητικά εφέ που δημιουργούνται με AI ελέγχονται χωριστά από την οπτική περιγραφή. Διατηρήστε την επιλεγμένη λειτουργία και τη ρύθμιση ηχητικών εφέ μαζί με την προτροπή και τυχόν εικόνα αναφοράς, ώστε τα διαφορετικά υποψήφια αποσπάσματα να συγκρίνονται με βάση τις πραγματικές ρυθμίσεις δημιουργίας τους.\n\nΗ δημιουργία είναι ασύγχρονη: επιστρέφεται μια ταυτότητα εργασίας πριν γίνει διαθέσιμο το ολοκληρωμένο βίντεο. Διατηρήστε αυτή την ταυτότητα σε όλη τη διάρκεια του ελέγχου του αποτελέσματος και κρατήστε όλα τα ολοκληρωμένα αρχεία βίντεο που συνδέονται με τη λειτουργία. Αποθηκεύστε το ίδιο το απόσπασμα για επεξεργασία, μαζί με την εικόνα προέλευσης όταν χρησιμοποιείται, αντί να εξαρτάστε από μια προσωρινή θέση αποτελέσματος ή ένα καρέ προεπισκόπησης.\n\nΕλέγξτε ολόκληρη την ακολουθία ως προς τη συνέχεια, τον χρονισμό και τη ζητούμενη δράση. Ένα πλάνο προϊόντος χρειάζεται σταθερό σχήμα και λεπτομέρειες υλικού κατά την κίνηση· ένα πλάνο χαρακτήρα χρειάζεται συνεπή εμφάνιση και χειρονομίες. Ελέγξτε την τελική σύνθεση και τυχόν παραγόμενο ήχο ως προς τον σκοπό του πλάνου. Διατηρήστε τα επιτυχημένα στοιχεία της σκηνής όταν διορθώνετε μια συγκεκριμένη ασυμφωνία και χρησιμοποιήστε τις ίδιες συνθήκες θέασης για να συγκρίνετε το αρχικό και το αναθεωρημένο βίντεο.",
    "about_sha256": "9ce83c7633c4f9ef06ae23e93c17ee8e3c7f47713ec2e9c5af9c39d9307348fc",
    "alias_of": null,
    "aliases": [],
    "author": "Zhipu AI",
    "capabilities": {
      "context_length": 0,
      "manufacturer_input": [
        "text",
        "image"
      ],
      "manufacturer_output": [
        "video"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.2",
            "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.2",
            "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,
    "display_name": "Zhipu AI: CogVideoX 2",
    "formats": [
      "videos"
    ],
    "id": "cogvideox-2",
    "input": [
      "text"
    ],
    "kind": "video",
    "locale": "en",
    "max_out": null,
    "methods": [
      {
        "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, original identifiers, every actual output and all usage/accounting fields. Save each unique owned asset and retain every role pointing to it.",
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "cancel_endpoint": null,
              "completed_states": [
                "SUCCESS"
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{request_id}/content",
                  "query": {
                    "index": "actual output index; default 0"
                  }
                }
              ],
              "create": {
                "http": "POST",
                "path": "/v1/videos"
              },
              "failed_states": [
                "FAIL"
              ],
              "id_source": "Use returned polling_url and id. Keep provider_task_id and X-Ailoot-Task-Id as separate original identifiers.",
              "mode": "submit_once_poll_original",
              "owned_content": {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "Use the exact returned signed URL; never construct a token."
              },
              "pending_states": [
                "PROCESSING"
              ],
              "state_field": "task_status",
              "status": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{request_id}"
                },
                {
                  "http": "GET",
                  "path": "/v1/videos/generations/{request_id}"
                }
              ],
              "unknown": "Διατηρήστε το δημόσιο id εργασίας ή λειτουργίας που επιστρέφεται και όλες τις κεφαλίδες. Διαβάστε μόνο την αρχική εργασία· τα unknown ή result_pending_check δεν επιτρέπουν άλλη δημιουργία.",
              "unknown_no_replay": true
            },
            "outputs": {
              "all_results": "Διατηρήστε ολόκληρη την απόκριση και τις κεφαλίδες, τα αρχικά αναγνωριστικά, κάθε πραγματική έξοδο και όλα τα πεδία χρήσης και λογιστικής καταγραφής. Αποθηκεύστε κάθε μοναδικό αρχείο πολυμέσων που σας ανήκει και διατηρήστε κάθε ρόλο που παραπέμπει σε αυτό.",
              "every_actual_output": true,
              "family": "video",
              "fields": [
                {
                  "name": "id",
                  "type": "string"
                },
                {
                  "name": "polling_url",
                  "type": "string"
                },
                {
                  "name": "provider_task_id",
                  "type": "string"
                },
                {
                  "name": "id",
                  "type": "string"
                },
                {
                  "name": "task_status",
                  "type": "string"
                },
                {
                  "name": "video_result[].url",
                  "type": "string"
                }
              ],
              "maximum_outputs": null
            },
            "parameters": [
              {
                "conditions": "Χρησιμοποιήστε τον ακριβή επιλογέα μοντέλου Ailoot.",
                "default_known": false,
                "enum": [
                  "cogvideox-2"
                ],
                "enum_known": true,
                "maximum_length": null,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "conditions": "Περιγράψτε τη σκηνή και την κίνηση.",
                "default_known": false,
                "enum_known": false,
                "maximum_length": null,
                "name": "prompt",
                "required": true,
                "type": "string"
              },
              {
                "conditions": "Προαιρετική σημαία ποιότητας· αυτό το επιλεγμένο σχήμα δεν παρέχει συμβατή απαρίθμηση τιμών ή προεπιλογή.",
                "default_known": false,
                "enum_known": false,
                "maximum_length": null,
                "name": "quality",
                "required": false,
                "type": "boolean"
              },
              {
                "conditions": "Δημιουργεί ηχητικά εφέ με τεχνητή νοημοσύνη όταν είναι ενεργοποιημένο.",
                "default": false,
                "default_known": true,
                "enum_known": false,
                "maximum_length": null,
                "name": "with_audio",
                "required": false,
                "type": "boolean"
              },
              {
                "conditions": "Δώστε την τεκμηριωμένη συμβολοσειρά μεγέθους όταν επιλέγετε ρητές διαστάσεις.",
                "default_known": false,
                "enum_known": false,
                "maximum_length": null,
                "name": "size",
                "required": false,
                "type": "string"
              },
              {
                "conditions": "Ο ρυθμός καρέ αναπαρίσταται ως συμβολοσειρά σε αυτή την επιλεγμένη εγγενή μέθοδο.",
                "default": "30",
                "default_known": true,
                "enum": [
                  "30",
                  "60"
                ],
                "enum_known": true,
                "maximum_length": null,
                "name": "fps",
                "required": false,
                "type": "string"
              },
              {
                "conditions": "Η διάρκεια σε δευτερόλεπτα αναπαρίσταται ως συμβολοσειρά σε αυτή την επιλεγμένη εγγενή μέθοδο.",
                "default": "5",
                "default_known": true,
                "enum": [
                  "5",
                  "10"
                ],
                "enum_known": true,
                "maximum_length": null,
                "name": "duration",
                "required": false,
                "type": "string"
              }
            ],
            "request_schema": {
              "additionalProperties": true,
              "properties": {
                "duration": {
                  "default": "5",
                  "enum": [
                    "5",
                    "10"
                  ],
                  "type": "string"
                },
                "fps": {
                  "default": "30",
                  "enum": [
                    "30",
                    "60"
                  ],
                  "type": "string"
                },
                "model": {
                  "enum": [
                    "cogvideox-2"
                  ],
                  "type": "string"
                },
                "prompt": {
                  "type": "string"
                },
                "quality": {
                  "type": "boolean"
                },
                "size": {
                  "type": "string"
                },
                "with_audio": {
                  "default": false,
                  "type": "boolean"
                }
              },
              "required": [
                "model",
                "prompt"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "model": "cogvideox-2",
                "prompt": "A cat is walking on grass."
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "conditions": [
              "Χρησιμοποιήστε τον ακριβή επιλογέα μοντέλου Ailoot.",
              "Περιγράψτε τη σκηνή και την κίνηση.",
              "Προαιρετική σημαία ποιότητας· αυτό το επιλεγμένο σχήμα δεν παρέχει συμβατή απαρίθμηση τιμών ή προεπιλογή.",
              "Δημιουργεί ηχητικά εφέ με τεχνητή νοημοσύνη όταν είναι ενεργοποιημένο.",
              "Δώστε την τεκμηριωμένη συμβολοσειρά μεγέθους όταν επιλέγετε ρητές διαστάσεις.",
              "Ο ρυθμός καρέ αναπαρίσταται ως συμβολοσειρά σε αυτή την επιλεγμένη εγγενή μέθοδο.",
              "Η διάρκεια σε δευτερόλεπτα αναπαρίσταται ως συμβολοσειρά σε αυτή την επιλεγμένη εγγενή μέθοδο."
            ],
            "content_type": "application/json",
            "material_types": [
              "text"
            ],
            "optional": [
              "quality",
              "with_audio",
              "size",
              "fps",
              "duration"
            ],
            "required": [
              "model",
              "prompt"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "cancel_endpoint": null,
            "completed_states": [
              "SUCCESS"
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/videos/{request_id}/content",
                "query": {
                  "index": "actual output index; default 0"
                }
              }
            ],
            "create": {
              "http": "POST",
              "path": "/v1/videos"
            },
            "failed_states": [
              "FAIL"
            ],
            "id_source": "Use returned polling_url and id. Keep provider_task_id and X-Ailoot-Task-Id as separate original identifiers.",
            "mode": "submit_once_poll_original",
            "owned_content": {
              "http": "GET",
              "path": "/v1/media/assets/{asset_id}/content",
              "url_source": "Use the exact returned signed URL; never construct a token."
            },
            "pending_states": [
              "PROCESSING"
            ],
            "state_field": "task_status",
            "status": [
              {
                "http": "GET",
                "path": "/v1/videos/{request_id}"
              },
              {
                "http": "GET",
                "path": "/v1/videos/generations/{request_id}"
              }
            ],
            "unknown": "Keep the returned public task or operation id and all headers. Read only the original task; unknown or result_pending_check does not authorize another creation.",
            "unknown_no_replay": true
          },
          "method": {
            "http": "POST",
            "path": "/v1/videos"
          },
          "method_aliases": [
            "/v1/videos/generations"
          ],
          "output": {
            "all_results": "Retain the complete response and headers, original identifiers, every actual output and all usage/accounting fields. Save each unique owned asset and retain every role pointing to it.",
            "every_actual_output": true,
            "family": "video",
            "fields": [
              {
                "name": "id",
                "type": "string"
              },
              {
                "name": "polling_url",
                "type": "string"
              },
              {
                "name": "provider_task_id",
                "type": "string"
              },
              {
                "name": "id",
                "type": "string"
              },
              {
                "name": "task_status",
                "type": "string"
              },
              {
                "name": "video_result[].url",
                "type": "string"
              }
            ],
            "maximum_outputs": 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": {
              "billing_quantity": "one request"
            },
            "label": "Per request",
            "units": [
              {
                "amount": "0.2",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "per_request",
                "label": "per request",
                "native_amount_usd_per_unit": "0.2",
                "native_quantity": 1,
                "public_unit_label": "per request",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "per_request"
              }
            ]
          },
          {
            "basis": "Αυτή η εκτίμηση δεν αποτελεί πρόσθετη χρέωση ούτε σταθερή τιμή για την ολοκληρωμένη παραγωγή.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Εκτιμώμενο κόστος δημιουργίας",
            "units": [
              {
                "amount": "0.2",
                "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.2",
                "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}\"\ncat > request.json <<'JSON'\n{\n  \"model\": \"cogvideox-2\",\n  \"prompt\": \"A cat is walking on grass.\"\n}\nJSON\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\n# Create once; retain id, polling_url, original task identifiers and every header.\n",
            "label": "curl · create once and retain receipt",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_STATUS'\nimport json,os,subprocess\nfrom pathlib import Path\nfrom urllib.parse import urljoin,urlsplit\nr=json.loads(Path(\"result.json\").read_text())\nu=urljoin(\"https://api.ailoot.ai\",r[\"polling_url\"])\np=urlsplit(u)\nif p.scheme!=\"https\" or p.netloc!=\"api.ailoot.ai\" or p.username or p.password:\n    raise SystemExit(\"Unexpected returned polling URL; preserve the response\")\nsubprocess.run([\"curl\",\"--fail-with-body\",\"--silent\",\"--show-error\",u,\"-H\",\"Authorization: Bearer \"+os.environ[\"AILOOT_API_KEY\"],\"-D\",\"status-headers.txt\",\"-o\",\"status.json\"],check=True)\n# Read this same original polling_url again while pending.\n# Preserve unknown/result_pending_check; do not repeat creation.\nPY_STATUS\n",
            "label": "Read the original task",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_ASSETS'\nimport json,os,subprocess\nfrom pathlib import Path\nfrom urllib.parse import urljoin,urlsplit\nr=json.loads(Path(\"status.json\").read_text())\nroles={}\ndef visit(v,path=\"\"):\n    if isinstance(v,dict):\n        for k,x in v.items(): visit(x,path+\"/\"+k)\n    elif isinstance(v,list):\n        for i,x in enumerate(v): visit(x,path+\"/\"+str(i))\n    elif isinstance(v,str):\n        u=urljoin(\"https://api.ailoot.ai\",v); p=urlsplit(u)\n        if p.scheme==\"https\" and p.netloc==\"api.ailoot.ai\" and not p.username and not p.password and p.path.startswith(\"/v1/media/assets/\") and p.path.endswith(\"/content\"):\n            roles.setdefault(u,[]).append(path)\nvisit(r)\nif not roles: raise SystemExit(\"No completed owned assets; retain the original status\")\nmanifest=[]\nfor i,(u,paths) in enumerate(roles.items()):\n    target=Path(f\"asset-{i}.bin\")\n    subprocess.run([\"curl\",\"--fail-with-body\",\"--silent\",\"--show-error\",u,\"-H\",\"Authorization: Bearer \"+os.environ[\"AILOOT_API_KEY\"],\"-o\",str(target)],check=True)\n    raw=target.read_bytes()\n    if not raw: raise SystemExit(\"Empty asset; retain original status and metadata\")\n    ext=\"glb\" if raw[:4]==b\"glTF\" else \"png\" if raw[:8]==b\"\\x89PNG\\r\\n\\x1a\\n\" else \"jpg\" if raw[:3]==b\"\\xff\\xd8\\xff\" else \"webp\" if raw[:4]==b\"RIFF\" and raw[8:12]==b\"WEBP\" else \"mp4\" if raw[4:8]==b\"ftyp\" else \"bin\"\n    name=f\"asset-{i}.{ext}\"\n    if target.name!=name: target.rename(name)\n    manifest.append({\"file\":name,\"response_paths\":paths,\"bytes\":len(raw)})\nPath(\"asset-manifest.json\").write_text(json.dumps(manifest,indent=2))\nprint(\"Saved\",len(manifest),\"unique owned assets; every response role retained\")\nPY_ASSETS\n",
            "label": "Save every completed owned asset",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "videos",
        "http": "POST",
        "in": null,
        "input": [
          "text"
        ],
        "label": "Βίντεο",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "out": null,
        "output": [
          "video"
        ],
        "path": "/v1/videos",
        "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": {
              "billing_quantity": "one request"
            },
            "label": "Per request",
            "units": [
              {
                "amount": "0.2",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "per_request",
                "label": "per request",
                "native_amount_usd_per_unit": "0.2",
                "native_quantity": 1,
                "public_unit_label": "per request",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "per_request"
              }
            ]
          },
          {
            "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.2",
                "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.2",
                "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": "cogvideox-2",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/videos/{request_id}",
          "GET /v1/videos/generations/{request_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.2",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "per_request",
            "label": "per request",
            "native_amount_usd_per_unit": "0.2",
            "native_quantity": 1,
            "public_unit_label": "per request",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "per_request"
          },
          {
            "amount": "0.2",
            "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.2",
            "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": "cogvideox-2",
        "request_model_id": "cogvideox-2",
        "route_label": "Ultra"
      }
    ],
    "name": "Zhipu AI: CogVideoX 2",
    "price": {
      "estimate_only": true,
      "in": null,
      "in_label": null,
      "out": 0.2,
      "out_label": "estimate before generation",
      "scope_label": "Estimated generation cost",
      "sort_in": null,
      "sort_out": 0.2,
      "varies": false
    },
    "short": "Το CogVideoX 2 δημιουργεί βίντεο από περιγραφή κειμένου ή από εικόνα που παρέχεται. Ο κατασκευαστής τεκμηριώνει επιλέξιμες διαστάσεις καρέ, 30 ή 60 fps, λειτουργίες ποιότητας ή ταχύτητας και προαιρετικά παραγόμενα ηχητικά εφέ για τη διαμόρφωση μιας σύντομης οπτικής σκηνής.",
    "short_sha256": "d24d7cfba46379f8e0a7f6276d5185935777bfdfd3952e80d3f2b12f4904303c"
  },
  "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": "Το CogVideoX 2 δημιουργεί βίντεο από περιγραφή κειμένου ή από εικόνα που παρέχεται. Ο κατασκευαστής τεκμηριώνει επιλέξιμες διαστάσεις καρέ, 30 ή 60 fps, λειτουργίες ποιότητας ή ταχύτητας και προαιρετικά παραγόμενα ηχητικά εφέ για τη διαμόρφωση μιας σύντομης οπτικής σκηνής.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "7ed1332bd0791557f69e254c1a7a8160e9cf6524ede146ce4ebb67fd65f3e781",
    "renderer_sha256": "3ed36f7af4f78822bafbd174fdcaed7b698a18a86efe254253d37f1b098a7566"
  },
  "sourceRevision": "b7a91eaf92b8d1a29606f27058e18f246c2d94d96ae3779815d00d3fbce7640a"
}
