{
  "aboutHtml": "<p>Το GPT Transcribe είναι το μοντέλο μετατροπής ομιλίας σε κείμενο της OpenAI για ολοκληρωμένα αρχεία ήχου, μεταγραφές αρχείων με σταδιακή ροή και οριστικοποιημένους ηχητικούς γύρους σε συνεδρίες Realtime. Δέχεται ήχο με προαιρετικό κειμενικό πλαίσιο και επιστρέφει αναγνωρισμένο κείμενο. Ο παραγωγός το προορίζει για ακριβή μεταγραφή ηχογραφημένης ομιλίας στην αρχική της γλώσσα, συμπεριλαμβανομένων ειδικής ορολογίας, πολυγλωσσικών ηχογραφήσεων και εναλλαγής γλωσσών. Η χρήσιμη έξοδός του είναι μεταγραφή που παραμένει συνδεδεμένη με την ηχογράφηση, μαζί με μεταδεδομένα ανιχνευμένης γλώσσας όταν το μοντέλο μπορεί να κάνει αξιόπιστη πρόβλεψη.</p><h4>Προετοιμασία ολοκληρωμένης ηχογράφησης</h4><p>Η ροή μεταγραφής αρχείων της OpenAI δέχεται ανεβάσματα έως 25 MB. Η τρέχουσα αναφορά τεκμηρίωσης του τελικού σημείου αναφέρει μορφές εισόδου FLAC, MP3, MP4, MPEG, MPGA, M4A, OGG, WAV και WebM και συνιστά επαρκή μεταδεδομένα αρχείου για αναγνώριση της μορφής, μαζί με κατάλληλη επέκταση ονόματος αρχείου και τύπο περιεχομένου. Για μεγαλύτερη ηχογράφηση, ο οδηγός συνιστά συμπίεση ή διαίρεση σε αρχεία έως 25 MB. Απόφυγε να κόβεις στη μέση πρότασης, επειδή η αφαίρεση της γύρω ομιλίας μπορεί να μειώσει την ακρίβεια αναγνώρισης. Κράτησε τα κομμάτια με τη σειρά και διατήρησε τις θέσεις τους στην αρχική ηχογράφηση.</p><p>Για συνάντηση, συνέντευξη ή ηχογραφημένη παρουσίαση, δώσε τον πραγματικό ήχο και προσδιόρισε το θέμα και κάθε ορολογία που είναι πιθανό να ακουστεί. Χρήσιμο αποτέλεσμα είναι η αναγνωρισμένη διατύπωση, αντί για συμπέρασμα που συνοψίζει τη συζήτηση. Διατήρησε το αναγνωριστικό ηχογράφησης μαζί με το επιστρεφόμενο κείμενο, ώστε όποιος ελέγχει όνομα, αριθμό ή αβέβαιη φράση να μπορεί να επιστρέψει στη σωστή πηγή. Η μεταγραφή μπορεί κατόπιν να αποτελέσει υλικό για ξεχωριστή ροή σύνοψης, μετάφρασης ή επιμέλειας.</p><h4>Συμφραζόμενα, υποδείξεις λέξεων-κλειδιών και αναμενόμενες γλώσσες</h4><p>Ο παραγωγός διακρίνει τρία είδη καθοδήγησης. Οι οδηγίες δίνουν ελεύθερο πλαίσιο για το θέμα ή το περιβάλλον της ηχογράφησης. Οι λέξεις-κλειδιά δίνουν κυριολεκτικές λέξεις ή φράσεις που αναμένεται να ακουστούν. Μια λίστα languages προσδιορίζει τις αναμενόμενες γλώσσες ομιλίας. Για δίγλωσση συζήτηση προϊόντος, περιέγραψε το περιβάλλον στις οδηγίες, παράθεσε τα σχετικά ονόματα προϊόντων ως λέξεις-κλειδιά και δώσε τις αναμενόμενες γλώσσες. Πρόκειται για υποδείξεις αναγνώρισης· δεν είναι οδηγίες εισαγωγής λεξιλογίου που δεν είπε κανείς.</p><p>Το GPT Transcribe χρησιμοποιεί το πεδίο languages στον πληθυντικό αντί για το παλαιότερο πεδίο language στον ενικό· η OpenAI αναφέρει να μην αποστέλλονται και τα δύο. Ο οδηγός του δέχεται υποστηριζόμενους κωδικούς ISO 639-1, επιλεγμένους κωδικούς ISO 639-3 και τοπικούς κωδικούς κινεζικών, απορρίπτοντας μη υποστηριζόμενες ή κακοσχηματισμένες τιμές. Κάθε λέξη-κλειδί πρέπει να παραμένει σε μία γραμμή και να μην περιέχει γωνιακή αγκύλη, χαρακτήρα επιστροφής στην αρχή της γραμμής ή αλλαγής γραμμής. Μη έγκυρη λέξη-κλειδί ή υπερβολικά μεγάλες οδηγίες μπορούν να απορρίψουν ολόκληρο το αίτημα. Κράτησε το πλαίσιο σχετικό και έλεγξε αν τα υποδεικνυόμενα ονόματα εμφανίζονται πραγματικά στον ήχο, αντί να αντιμετωπίζεις τη λίστα υποδείξεων ως μεταγραφή.</p><h4>Έξοδος JSON και προβλέψεις ανιχνευμένης γλώσσας</h4><p>Το τεκμηριωμένο αποτέλεσμα αρχείου είναι JSON που περιέχει τη μεταγραφή και τις ανιχνευμένες γλώσσες. Αυτές οι προβλέψεις γλώσσας είναι έξοδος του μοντέλου, όχι αντίγραφο των παρεχόμενων γλωσσικών υποδείξεων. Μια κενή λίστα γλωσσών είναι έγκυρο αποτέλεσμα όταν το μοντέλο δεν μπορεί να κάνει αξιόπιστη πρόβλεψη· δεν τεκμηριώνει ότι η ηχογράφηση ήταν σιωπηλή ή ότι απέτυχε η μεταγραφή. Κράτησε το αναγνωρισμένο κείμενο και τα γλωσσικά μεταδεδομένα ξεχωριστά, ώστε η επόμενη επεξεργασία να χρησιμοποιεί το καθένα σύμφωνα με τη σημασία του.</p><h4>Σταδιακή ροή μεταγραφής αρχείου</h4><p>Ένα ολοκληρωμένο αρχείο μπορεί να παράγει κείμενο μεταγραφής σταδιακά όσο επεξεργάζεται. Η OpenAI τεκμηριώνει συμβάντα transcript.text.delta για μερικό κείμενο και transcript.text.done για την πλήρη μεταγραφή αρχείου· το τελικό συμβάν περιλαμβάνει επίσης ανιχνευμένες γλώσσες. Αυτό μεταδίδει σταδιακά την έξοδο μιας ήδη παρεχόμενης ηχογράφησης. Χρησιμεύει για εμφάνιση προόδου σε μεγάλο ανέβασμα, ενώ το τελικό συμβάν ορίζει το κείμενο που πρέπει να διατηρηθεί ως ολοκληρωμένο αποτέλεσμα.</p><h4>Οριστικοποιημένοι γύροι σε συνεδρίες Realtime</h4><p>Το GPT Transcribe έχει επίσης ειδική ροή Realtime μέσω WebSocket. Ο ήχος προστίθεται στην προσωρινή μνήμη εισόδου και μετά η εφαρμογή οριστικοποιεί ρητά έναν ηχητικό γύρο. Η μεταγραφή αρχίζει για αυτό το οριστικοποιημένο τμήμα και μπορεί να εκπέμπει σταδιακές ενημερώσεις πριν από το συμβάν ολοκλήρωσής του, μαζί με πληροφορίες ανιχνευμένης γλώσσας. Το μοντέλο χρησιμοποιεί αυτόματα προηγούμενους μεταγραμμένους γύρους ως συμφραζόμενα σε αυτή τη ροή συνεδρίας του παραγωγού. Αυτό διαφέρει από τη συνεχή εκπομπή ζωντανού κειμένου υποτίτλων καθώς φτάνει ήχος μικροφώνου· η OpenAI ονομάζει το GPT Live Transcribe για αυτή τη συνεχή ροή.</p><p>Για πολλούς γύρους, διατήρησε το αναγνωριστικό στοιχείου εισόδου μαζί με την αντίστοιχη μεταγραφή. Η OpenAI προειδοποιεί ότι τα συμβάντα ολοκλήρωσης διαφορετικών γύρων δεν χρειάζεται να φτάνουν με τη σειρά της ομιλίας, οπότε αντιστοίχισε κάθε τελικό αποτέλεσμα με την οριστικοποιημένη είσοδό του, αντί να οργανώνεις μια συνομιλία μόνο βάσει χρόνου ολοκλήρωσης. Το χρήσιμο παραδοτέο είναι ταξινομημένη μεταγραφή συναρμολογημένη από τα σωστά τελικά στοιχεία, με το προσωρινό κείμενο ως πρόοδο και όχι ως ξεχωριστή ολοκληρωμένη εκφώνηση.</p><h4>Ειδικές έξοδοι και ουσιαστικοί περιορισμοί</h4><p>Αυτό το προφίλ δεν παρέχει καθολικές προδιαγραφές υποτίτλων, χρονικών σημάνσεων, μετάφρασης ή ετικετών ομιλητών. Ο οδηγός μετάβασης της OpenAI διακρίνει αυτές τις ειδικές δυνατότητες: οι εγγενείς μορφές υποτίτλων και ο χρονισμός λέξεων απαιτούν συμβατό μοντέλο και μορφή, ενώ οι ετικέτες ομιλητών χρησιμοποιούν το GPT-4o Transcribe Diarize. Το αποτέλεσμα αρχείου του GPT Transcribe είναι JSON και όχι άμεσα εναλλάξιμη απόκριση SRT, VTT ή αναλυτικών χρονικών σημάνσεων. Η συγκεκριμένη κάρτα μοντέλου του δεν δημοσιεύει αριθμητικό όριο συμφραζομένων ή μέγιστης εξόδου, οπότε δεν πρέπει να υποτίθεται παράθυρο token μοντέλου συνομιλίας για μεταγραφή ήχου.</p><p>Έλεγξε δύσκολο λεξιλόγιο, αριθμούς, προφορές, θόρυβο περιβάλλοντος και αλλαγές γλώσσας έναντι της ηχογράφησης. Έλεγξε ότι οι σχετικές υποδείξεις βελτίωσαν την αναγνώριση χωρίς να εισάγουν όρους που δεν ειπώθηκαν και ότι η τελική μεταγραφή περιλαμβάνει το τέλος του ήχου. Για πολυγλωσσικό αποτέλεσμα, διατήρησε τη διατύπωση που ακούστηκε πριν ετοιμάσεις μεταφρασμένη έκδοση. Αυτοί οι έλεγχοι κάνουν τη μεταγραφή χρήσιμη ως αρχικό υλικό, κρατώντας σαφώς διακριτά τις υποδείξεις συμφραζομένων, τις ανιχνευμένες γλώσσες και την αναγνωρισμένη ομιλία.</p>",
  "aboutText": "Το GPT Transcribe είναι το μοντέλο μετατροπής ομιλίας σε κείμενο της OpenAI για ολοκληρωμένα αρχεία ήχου, μεταγραφές αρχείων με σταδιακή ροή και οριστικοποιημένους ηχητικούς γύρους σε συνεδρίες Realtime. Δέχεται ήχο με προαιρετικό κειμενικό πλαίσιο και επιστρέφει αναγνωρισμένο κείμενο. Ο παραγωγός το προορίζει για ακριβή μεταγραφή ηχογραφημένης ομιλίας στην αρχική της γλώσσα, συμπεριλαμβανομένων ειδικής ορολογίας, πολυγλωσσικών ηχογραφήσεων και εναλλαγής γλωσσών. Η χρήσιμη έξοδός του είναι μεταγραφή που παραμένει συνδεδεμένη με την ηχογράφηση, μαζί με μεταδεδομένα ανιχνευμένης γλώσσας όταν το μοντέλο μπορεί να κάνει αξιόπιστη πρόβλεψη.\n\n### Προετοιμασία ολοκληρωμένης ηχογράφησης\n\nΗ ροή μεταγραφής αρχείων της OpenAI δέχεται ανεβάσματα έως 25 MB. Η τρέχουσα αναφορά τεκμηρίωσης του τελικού σημείου αναφέρει μορφές εισόδου FLAC, MP3, MP4, MPEG, MPGA, M4A, OGG, WAV και WebM και συνιστά επαρκή μεταδεδομένα αρχείου για αναγνώριση της μορφής, μαζί με κατάλληλη επέκταση ονόματος αρχείου και τύπο περιεχομένου. Για μεγαλύτερη ηχογράφηση, ο οδηγός συνιστά συμπίεση ή διαίρεση σε αρχεία έως 25 MB. Απόφυγε να κόβεις στη μέση πρότασης, επειδή η αφαίρεση της γύρω ομιλίας μπορεί να μειώσει την ακρίβεια αναγνώρισης. Κράτησε τα κομμάτια με τη σειρά και διατήρησε τις θέσεις τους στην αρχική ηχογράφηση.\n\nΓια συνάντηση, συνέντευξη ή ηχογραφημένη παρουσίαση, δώσε τον πραγματικό ήχο και προσδιόρισε το θέμα και κάθε ορολογία που είναι πιθανό να ακουστεί. Χρήσιμο αποτέλεσμα είναι η αναγνωρισμένη διατύπωση, αντί για συμπέρασμα που συνοψίζει τη συζήτηση. Διατήρησε το αναγνωριστικό ηχογράφησης μαζί με το επιστρεφόμενο κείμενο, ώστε όποιος ελέγχει όνομα, αριθμό ή αβέβαιη φράση να μπορεί να επιστρέψει στη σωστή πηγή. Η μεταγραφή μπορεί κατόπιν να αποτελέσει υλικό για ξεχωριστή ροή σύνοψης, μετάφρασης ή επιμέλειας.\n\n### Συμφραζόμενα, υποδείξεις λέξεων-κλειδιών και αναμενόμενες γλώσσες\n\nΟ παραγωγός διακρίνει τρία είδη καθοδήγησης. Οι οδηγίες δίνουν ελεύθερο πλαίσιο για το θέμα ή το περιβάλλον της ηχογράφησης. Οι λέξεις-κλειδιά δίνουν κυριολεκτικές λέξεις ή φράσεις που αναμένεται να ακουστούν. Μια λίστα languages προσδιορίζει τις αναμενόμενες γλώσσες ομιλίας. Για δίγλωσση συζήτηση προϊόντος, περιέγραψε το περιβάλλον στις οδηγίες, παράθεσε τα σχετικά ονόματα προϊόντων ως λέξεις-κλειδιά και δώσε τις αναμενόμενες γλώσσες. Πρόκειται για υποδείξεις αναγνώρισης· δεν είναι οδηγίες εισαγωγής λεξιλογίου που δεν είπε κανείς.\n\nΤο GPT Transcribe χρησιμοποιεί το πεδίο languages στον πληθυντικό αντί για το παλαιότερο πεδίο language στον ενικό· η OpenAI αναφέρει να μην αποστέλλονται και τα δύο. Ο οδηγός του δέχεται υποστηριζόμενους κωδικούς ISO 639-1, επιλεγμένους κωδικούς ISO 639-3 και τοπικούς κωδικούς κινεζικών, απορρίπτοντας μη υποστηριζόμενες ή κακοσχηματισμένες τιμές. Κάθε λέξη-κλειδί πρέπει να παραμένει σε μία γραμμή και να μην περιέχει γωνιακή αγκύλη, χαρακτήρα επιστροφής στην αρχή της γραμμής ή αλλαγής γραμμής. Μη έγκυρη λέξη-κλειδί ή υπερβολικά μεγάλες οδηγίες μπορούν να απορρίψουν ολόκληρο το αίτημα. Κράτησε το πλαίσιο σχετικό και έλεγξε αν τα υποδεικνυόμενα ονόματα εμφανίζονται πραγματικά στον ήχο, αντί να αντιμετωπίζεις τη λίστα υποδείξεων ως μεταγραφή.\n\n### Έξοδος JSON και προβλέψεις ανιχνευμένης γλώσσας\n\nΤο τεκμηριωμένο αποτέλεσμα αρχείου είναι JSON που περιέχει τη μεταγραφή και τις ανιχνευμένες γλώσσες. Αυτές οι προβλέψεις γλώσσας είναι έξοδος του μοντέλου, όχι αντίγραφο των παρεχόμενων γλωσσικών υποδείξεων. Μια κενή λίστα γλωσσών είναι έγκυρο αποτέλεσμα όταν το μοντέλο δεν μπορεί να κάνει αξιόπιστη πρόβλεψη· δεν τεκμηριώνει ότι η ηχογράφηση ήταν σιωπηλή ή ότι απέτυχε η μεταγραφή. Κράτησε το αναγνωρισμένο κείμενο και τα γλωσσικά μεταδεδομένα ξεχωριστά, ώστε η επόμενη επεξεργασία να χρησιμοποιεί το καθένα σύμφωνα με τη σημασία του.\n\n### Σταδιακή ροή μεταγραφής αρχείου\n\nΈνα ολοκληρωμένο αρχείο μπορεί να παράγει κείμενο μεταγραφής σταδιακά όσο επεξεργάζεται. Η OpenAI τεκμηριώνει συμβάντα transcript.text.delta για μερικό κείμενο και transcript.text.done για την πλήρη μεταγραφή αρχείου· το τελικό συμβάν περιλαμβάνει επίσης ανιχνευμένες γλώσσες. Αυτό μεταδίδει σταδιακά την έξοδο μιας ήδη παρεχόμενης ηχογράφησης. Χρησιμεύει για εμφάνιση προόδου σε μεγάλο ανέβασμα, ενώ το τελικό συμβάν ορίζει το κείμενο που πρέπει να διατηρηθεί ως ολοκληρωμένο αποτέλεσμα.\n\n### Οριστικοποιημένοι γύροι σε συνεδρίες Realtime\n\nΤο GPT Transcribe έχει επίσης ειδική ροή Realtime μέσω WebSocket. Ο ήχος προστίθεται στην προσωρινή μνήμη εισόδου και μετά η εφαρμογή οριστικοποιεί ρητά έναν ηχητικό γύρο. Η μεταγραφή αρχίζει για αυτό το οριστικοποιημένο τμήμα και μπορεί να εκπέμπει σταδιακές ενημερώσεις πριν από το συμβάν ολοκλήρωσής του, μαζί με πληροφορίες ανιχνευμένης γλώσσας. Το μοντέλο χρησιμοποιεί αυτόματα προηγούμενους μεταγραμμένους γύρους ως συμφραζόμενα σε αυτή τη ροή συνεδρίας του παραγωγού. Αυτό διαφέρει από τη συνεχή εκπομπή ζωντανού κειμένου υποτίτλων καθώς φτάνει ήχος μικροφώνου· η OpenAI ονομάζει το GPT Live Transcribe για αυτή τη συνεχή ροή.\n\nΓια πολλούς γύρους, διατήρησε το αναγνωριστικό στοιχείου εισόδου μαζί με την αντίστοιχη μεταγραφή. Η OpenAI προειδοποιεί ότι τα συμβάντα ολοκλήρωσης διαφορετικών γύρων δεν χρειάζεται να φτάνουν με τη σειρά της ομιλίας, οπότε αντιστοίχισε κάθε τελικό αποτέλεσμα με την οριστικοποιημένη είσοδό του, αντί να οργανώνεις μια συνομιλία μόνο βάσει χρόνου ολοκλήρωσης. Το χρήσιμο παραδοτέο είναι ταξινομημένη μεταγραφή συναρμολογημένη από τα σωστά τελικά στοιχεία, με το προσωρινό κείμενο ως πρόοδο και όχι ως ξεχωριστή ολοκληρωμένη εκφώνηση.\n\n### Ειδικές έξοδοι και ουσιαστικοί περιορισμοί\n\nΑυτό το προφίλ δεν παρέχει καθολικές προδιαγραφές υποτίτλων, χρονικών σημάνσεων, μετάφρασης ή ετικετών ομιλητών. Ο οδηγός μετάβασης της OpenAI διακρίνει αυτές τις ειδικές δυνατότητες: οι εγγενείς μορφές υποτίτλων και ο χρονισμός λέξεων απαιτούν συμβατό μοντέλο και μορφή, ενώ οι ετικέτες ομιλητών χρησιμοποιούν το GPT-4o Transcribe Diarize. Το αποτέλεσμα αρχείου του GPT Transcribe είναι JSON και όχι άμεσα εναλλάξιμη απόκριση SRT, VTT ή αναλυτικών χρονικών σημάνσεων. Η συγκεκριμένη κάρτα μοντέλου του δεν δημοσιεύει αριθμητικό όριο συμφραζομένων ή μέγιστης εξόδου, οπότε δεν πρέπει να υποτίθεται παράθυρο token μοντέλου συνομιλίας για μεταγραφή ήχου.\n\nΈλεγξε δύσκολο λεξιλόγιο, αριθμούς, προφορές, θόρυβο περιβάλλοντος και αλλαγές γλώσσας έναντι της ηχογράφησης. Έλεγξε ότι οι σχετικές υποδείξεις βελτίωσαν την αναγνώριση χωρίς να εισάγουν όρους που δεν ειπώθηκαν και ότι η τελική μεταγραφή περιλαμβάνει το τέλος του ήχου. Για πολυγλωσσικό αποτέλεσμα, διατήρησε τη διατύπωση που ακούστηκε πριν ετοιμάσεις μεταφρασμένη έκδοση. Αυτοί οι έλεγχοι κάνουν τη μεταγραφή χρήσιμη ως αρχικό υλικό, κρατώντας σαφώς διακριτά τις υποδείξεις συμφραζομένων, τις ανιχνευμένες γλώσσες και την αναγνωρισμένη ομιλία.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "50d8be7d77a4479471d1ef4ab9874f2934a00e9aa3321500e70d034c16c66fc3",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "el",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">O</span><h2 id=\"sheet-title\">OpenAI: GPT Transcribe</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Κλείσιμο\">×</button></div><div class=\"idline\"><span>OpenAI /</span><code>openai/gpt-transcribe</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|transcriptions|/v1/audio/transcriptions|openai%2Fgpt-transcribe\">Αναγνώριση</button></div><div id=\"card-method-content\" role=\"tabpanel\" aria-labelledby=\"card-method-tab-0\"><section class=\"card-section\" data-card-section=\"overview\"><h3 tabindex=\"-1\">Εισαγωγή</h3><p class=\"mdesc-full\">Το GPT Transcribe μετατρέπει ηχογραφημένη ομιλία σε κείμενο στην αρχική της γλώσσα, με οδηγίες συμφραζομένων, υποδείξεις κυριολεκτικών λέξεων-κλειδιών και υποδείξεις πολλών γλωσσών. Η OpenAI τεκμηριώνει μεταγραφή ολοκληρωμένου αρχείου, σταδιακή ροή αποτελεσμάτων αρχείου και μεταγραφή μετά την οριστικοποίηση ηχητικών γύρων στο Realtime.</p><dl class=\"card-io\" data-card-io><div><dt>Αποδεκτές είσοδοι</dt><dd>Ήχος</dd></div><div><dt>Αποτελέσματα</dt><dd>Κείμενο</dd></div></dl><details class=\"card-about\"><summary>Σχετικά με το μοντέλο</summary><p class=\"note-s\" data-model-method-boundary>Αυτή η περιγραφή καλύπτει τις δυνατότητες του μοντέλου. Οι είσοδοι, έξοδοι και επιλογές που διατίθενται στο Ailoot παρατίθενται παρακάτω για την επιλεγμένη μέθοδο.</p><div class=\"mabout\" id=\"m-about\"><p>Το GPT Transcribe είναι το μοντέλο μετατροπής ομιλίας σε κείμενο της OpenAI για ολοκληρωμένα αρχεία ήχου, μεταγραφές αρχείων με σταδιακή ροή και οριστικοποιημένους ηχητικούς γύρους σε συνεδρίες Realtime. Δέχεται ήχο με προαιρετικό κειμενικό πλαίσιο και επιστρέφει αναγνωρισμένο κείμενο. Ο παραγωγός το προορίζει για ακριβή μεταγραφή ηχογραφημένης ομιλίας στην αρχική της γλώσσα, συμπεριλαμβανομένων ειδικής ορολογίας, πολυγλωσσικών ηχογραφήσεων και εναλλαγής γλωσσών. Η χρήσιμη έξοδός του είναι μεταγραφή που παραμένει συνδεδεμένη με την ηχογράφηση, μαζί με μεταδεδομένα ανιχνευμένης γλώσσας όταν το μοντέλο μπορεί να κάνει αξιόπιστη πρόβλεψη.</p><h4>Προετοιμασία ολοκληρωμένης ηχογράφησης</h4><p>Η ροή μεταγραφής αρχείων της OpenAI δέχεται ανεβάσματα έως 25 MB. Η τρέχουσα αναφορά τεκμηρίωσης του τελικού σημείου αναφέρει μορφές εισόδου FLAC, MP3, MP4, MPEG, MPGA, M4A, OGG, WAV και WebM και συνιστά επαρκή μεταδεδομένα αρχείου για αναγνώριση της μορφής, μαζί με κατάλληλη επέκταση ονόματος αρχείου και τύπο περιεχομένου. Για μεγαλύτερη ηχογράφηση, ο οδηγός συνιστά συμπίεση ή διαίρεση σε αρχεία έως 25 MB. Απόφυγε να κόβεις στη μέση πρότασης, επειδή η αφαίρεση της γύρω ομιλίας μπορεί να μειώσει την ακρίβεια αναγνώρισης. Κράτησε τα κομμάτια με τη σειρά και διατήρησε τις θέσεις τους στην αρχική ηχογράφηση.</p><p>Για συνάντηση, συνέντευξη ή ηχογραφημένη παρουσίαση, δώσε τον πραγματικό ήχο και προσδιόρισε το θέμα και κάθε ορολογία που είναι πιθανό να ακουστεί. Χρήσιμο αποτέλεσμα είναι η αναγνωρισμένη διατύπωση, αντί για συμπέρασμα που συνοψίζει τη συζήτηση. Διατήρησε το αναγνωριστικό ηχογράφησης μαζί με το επιστρεφόμενο κείμενο, ώστε όποιος ελέγχει όνομα, αριθμό ή αβέβαιη φράση να μπορεί να επιστρέψει στη σωστή πηγή. Η μεταγραφή μπορεί κατόπιν να αποτελέσει υλικό για ξεχωριστή ροή σύνοψης, μετάφρασης ή επιμέλειας.</p><h4>Συμφραζόμενα, υποδείξεις λέξεων-κλειδιών και αναμενόμενες γλώσσες</h4><p>Ο παραγωγός διακρίνει τρία είδη καθοδήγησης. Οι οδηγίες δίνουν ελεύθερο πλαίσιο για το θέμα ή το περιβάλλον της ηχογράφησης. Οι λέξεις-κλειδιά δίνουν κυριολεκτικές λέξεις ή φράσεις που αναμένεται να ακουστούν. Μια λίστα languages προσδιορίζει τις αναμενόμενες γλώσσες ομιλίας. Για δίγλωσση συζήτηση προϊόντος, περιέγραψε το περιβάλλον στις οδηγίες, παράθεσε τα σχετικά ονόματα προϊόντων ως λέξεις-κλειδιά και δώσε τις αναμενόμενες γλώσσες. Πρόκειται για υποδείξεις αναγνώρισης· δεν είναι οδηγίες εισαγωγής λεξιλογίου που δεν είπε κανείς.</p><p>Το GPT Transcribe χρησιμοποιεί το πεδίο languages στον πληθυντικό αντί για το παλαιότερο πεδίο language στον ενικό· η OpenAI αναφέρει να μην αποστέλλονται και τα δύο. Ο οδηγός του δέχεται υποστηριζόμενους κωδικούς ISO 639-1, επιλεγμένους κωδικούς ISO 639-3 και τοπικούς κωδικούς κινεζικών, απορρίπτοντας μη υποστηριζόμενες ή κακοσχηματισμένες τιμές. Κάθε λέξη-κλειδί πρέπει να παραμένει σε μία γραμμή και να μην περιέχει γωνιακή αγκύλη, χαρακτήρα επιστροφής στην αρχή της γραμμής ή αλλαγής γραμμής. Μη έγκυρη λέξη-κλειδί ή υπερβολικά μεγάλες οδηγίες μπορούν να απορρίψουν ολόκληρο το αίτημα. Κράτησε το πλαίσιο σχετικό και έλεγξε αν τα υποδεικνυόμενα ονόματα εμφανίζονται πραγματικά στον ήχο, αντί να αντιμετωπίζεις τη λίστα υποδείξεων ως μεταγραφή.</p><h4>Έξοδος JSON και προβλέψεις ανιχνευμένης γλώσσας</h4><p>Το τεκμηριωμένο αποτέλεσμα αρχείου είναι JSON που περιέχει τη μεταγραφή και τις ανιχνευμένες γλώσσες. Αυτές οι προβλέψεις γλώσσας είναι έξοδος του μοντέλου, όχι αντίγραφο των παρεχόμενων γλωσσικών υποδείξεων. Μια κενή λίστα γλωσσών είναι έγκυρο αποτέλεσμα όταν το μοντέλο δεν μπορεί να κάνει αξιόπιστη πρόβλεψη· δεν τεκμηριώνει ότι η ηχογράφηση ήταν σιωπηλή ή ότι απέτυχε η μεταγραφή. Κράτησε το αναγνωρισμένο κείμενο και τα γλωσσικά μεταδεδομένα ξεχωριστά, ώστε η επόμενη επεξεργασία να χρησιμοποιεί το καθένα σύμφωνα με τη σημασία του.</p><h4>Σταδιακή ροή μεταγραφής αρχείου</h4><p>Ένα ολοκληρωμένο αρχείο μπορεί να παράγει κείμενο μεταγραφής σταδιακά όσο επεξεργάζεται. Η OpenAI τεκμηριώνει συμβάντα transcript.text.delta για μερικό κείμενο και transcript.text.done για την πλήρη μεταγραφή αρχείου· το τελικό συμβάν περιλαμβάνει επίσης ανιχνευμένες γλώσσες. Αυτό μεταδίδει σταδιακά την έξοδο μιας ήδη παρεχόμενης ηχογράφησης. Χρησιμεύει για εμφάνιση προόδου σε μεγάλο ανέβασμα, ενώ το τελικό συμβάν ορίζει το κείμενο που πρέπει να διατηρηθεί ως ολοκληρωμένο αποτέλεσμα.</p><h4>Οριστικοποιημένοι γύροι σε συνεδρίες Realtime</h4><p>Το GPT Transcribe έχει επίσης ειδική ροή Realtime μέσω WebSocket. Ο ήχος προστίθεται στην προσωρινή μνήμη εισόδου και μετά η εφαρμογή οριστικοποιεί ρητά έναν ηχητικό γύρο. Η μεταγραφή αρχίζει για αυτό το οριστικοποιημένο τμήμα και μπορεί να εκπέμπει σταδιακές ενημερώσεις πριν από το συμβάν ολοκλήρωσής του, μαζί με πληροφορίες ανιχνευμένης γλώσσας. Το μοντέλο χρησιμοποιεί αυτόματα προηγούμενους μεταγραμμένους γύρους ως συμφραζόμενα σε αυτή τη ροή συνεδρίας του παραγωγού. Αυτό διαφέρει από τη συνεχή εκπομπή ζωντανού κειμένου υποτίτλων καθώς φτάνει ήχος μικροφώνου· η OpenAI ονομάζει το GPT Live Transcribe για αυτή τη συνεχή ροή.</p><p>Για πολλούς γύρους, διατήρησε το αναγνωριστικό στοιχείου εισόδου μαζί με την αντίστοιχη μεταγραφή. Η OpenAI προειδοποιεί ότι τα συμβάντα ολοκλήρωσης διαφορετικών γύρων δεν χρειάζεται να φτάνουν με τη σειρά της ομιλίας, οπότε αντιστοίχισε κάθε τελικό αποτέλεσμα με την οριστικοποιημένη είσοδό του, αντί να οργανώνεις μια συνομιλία μόνο βάσει χρόνου ολοκλήρωσης. Το χρήσιμο παραδοτέο είναι ταξινομημένη μεταγραφή συναρμολογημένη από τα σωστά τελικά στοιχεία, με το προσωρινό κείμενο ως πρόοδο και όχι ως ξεχωριστή ολοκληρωμένη εκφώνηση.</p><h4>Ειδικές έξοδοι και ουσιαστικοί περιορισμοί</h4><p>Αυτό το προφίλ δεν παρέχει καθολικές προδιαγραφές υποτίτλων, χρονικών σημάνσεων, μετάφρασης ή ετικετών ομιλητών. Ο οδηγός μετάβασης της OpenAI διακρίνει αυτές τις ειδικές δυνατότητες: οι εγγενείς μορφές υποτίτλων και ο χρονισμός λέξεων απαιτούν συμβατό μοντέλο και μορφή, ενώ οι ετικέτες ομιλητών χρησιμοποιούν το GPT-4o Transcribe Diarize. Το αποτέλεσμα αρχείου του GPT Transcribe είναι JSON και όχι άμεσα εναλλάξιμη απόκριση SRT, VTT ή αναλυτικών χρονικών σημάνσεων. Η συγκεκριμένη κάρτα μοντέλου του δεν δημοσιεύει αριθμητικό όριο συμφραζομένων ή μέγιστης εξόδου, οπότε δεν πρέπει να υποτίθεται παράθυρο token μοντέλου συνομιλίας για μεταγραφή ήχου.</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/audio/transcriptions</code></summary><dl class=\"method-capabilities\"><div><dt>Είσοδος</dt><dd><code>audio</code></dd></div><div><dt>Έξοδος</dt><dd><code>text</code></dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Πεδίο</th><th>Τύπος</th><th>Απαίτηση</th><th>Τιμές και όρια</th><th>Προεπιλογή</th></tr></thead><tbody><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span><code>string</code></td><td data-cell-label=\"Απαίτηση\"><span class=\"card-cell-label\">Απαίτηση</span>Υποχρεωτικό</td><td data-cell-label=\"Τιμές και όρια\"><span class=\"card-cell-label\">Τιμές και όρια</span><div>openai/gpt-transcribe</div></td><td data-cell-label=\"Προεπιλογή\" data-default=\"unspecified\"><span class=\"card-cell-label\">Προεπιλογή</span>—</td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">input_audio</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span><code>object</code></td><td data-cell-label=\"Απαίτηση\"><span class=\"card-cell-label\">Απαίτηση</span>Υποχρεωτικό</td><td data-cell-label=\"Τιμές και όρια\"><span class=\"card-cell-label\">Τιμές και όρια</span></td><td data-cell-label=\"Προεπιλογή\" data-default=\"unspecified\"><span class=\"card-cell-label\">Προεπιλογή</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>Παράμετροι και κύκλος ζωής μεθόδου</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Παράμετρος</th><th>Σύμβαση</th></tr></thead><tbody><tr><th data-cell-label=\"Παράμετρος\" scope=\"row\"><span class=\"card-cell-label\">Παράμετρος</span><code>content_type</code></th><td data-cell-label=\"Σύμβαση\"><span class=\"card-cell-label\">Σύμβαση</span>application/json</td></tr><tr><th data-cell-label=\"Παράμετρος\" scope=\"row\"><span class=\"card-cell-label\">Παράμετρος</span><code>required</code></th><td data-cell-label=\"Σύμβαση\"><span class=\"card-cell-label\">Σύμβαση</span>model, input_audio</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>audio</td></tr><tr><th data-cell-label=\"Παράμετρος\" scope=\"row\"><span class=\"card-cell-label\">Παράμετρος</span><code>material_conditions</code></th><td data-cell-label=\"Σύμβαση\"><span class=\"card-cell-label\">Σύμβαση</span>Το παράδειγμα διαβάζει το πραγματικό, μη κενό αρχείο PCM WAV σας, κωδικοποιεί όλα τα byte του αρχείου σε base64 και στέλνει το input_audio.format ως wav.</td></tr></tbody></table></div><p>Κύκλος ζωής: <code>synchronous_result_then_owned_library</code></p><p class=\"note-s\"><code>GET /v1/media/tasks/{task_id}</code> · ακριβές task_id από υπάρχουσα εγγραφή πολυμέσων που σας ανήκουν</p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}/content</code></p><p class=\"note-s\"><code>GET /v1/media/assets</code></p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}</code></p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Τιμολόγηση</h3><div 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>Χρεώσεις Ailoot</h4><h4>Τιμές ανά διαμόρφωση</h4><p class=\"note-s\">Αντιστοιχίστε κάθε χρέωση στις συνθήκες που εμφανίζονται. Χρησιμοποιήστε μία χρέωση ανά σύνολο εναλλακτικών διαμορφώσεων.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Διαμόρφωση</th><th>Πίνακας χρεώσεων</th><th>Μονάδα τιμολόγησης</th><th>Χρέωση</th></tr></thead><tbody><tr><th data-cell-label=\"Διαμόρφωση\" scope=\"row\"><span class=\"card-cell-label\">Διαμόρφωση</span>Βασικές χρεώσεις token</th><td data-cell-label=\"Πίνακας χρεώσεων\"><span class=\"card-cell-label\">Πίνακας χρεώσεων</span>Βασική χρέωση</td><td data-cell-label=\"Μονάδα τιμολόγησης\"><span class=\"card-cell-label\">Μονάδα τιμολόγησης</span>—</td><td data-cell-label=\"Χρέωση\"><span class=\"card-cell-label\">Χρέωση</span><div><span>Είσοδος · Token εισόδου</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Έξοδος · Token εξόδου</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Είσοδος · Ανάγνωση από την κρυφή μνήμη</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Είσοδος · Εγγραφή στην κρυφή μνήμη</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Είσοδος · Εγγραφή στην κρυφή μνήμη, 1 ώρα</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div></td></tr><tr><th data-cell-label=\"Διαμόρφωση\" scope=\"row\"><span class=\"card-cell-label\">Διαμόρφωση</span>δευτερόλεπτο ήχου εισόδου</th><td data-cell-label=\"Πίνακας χρεώσεων\"><span class=\"card-cell-label\">Πίνακας χρεώσεων</span>—</td><td data-cell-label=\"Μονάδα τιμολόγησης\"><span class=\"card-cell-label\">Μονάδα τιμολόγησης</span>ανά δευτερόλεπτο ήχου εισόδου</td><td data-cell-label=\"Χρέωση\"><span class=\"card-cell-label\">Χρέωση</span><div><span>Είσοδος · δευτερόλεπτο ήχου εισόδου</span> <b>$0.00015</b> <span class=\"price-unit\">ανά δευτερόλεπτο ήχου εισόδου</span></div></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-2158-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2158-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · πραγματικό αρχείο WAV και πλήρες αρχικό αποτέλεσμα</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-2158-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-2158-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\n: &quot;${AILOOT_AUDIO_FILE:?Set the path to your actual PCM WAV recording}&quot;\nexport AILOOT_AUDIO_FILE\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport base64, io, json, os, wave\nfrom pathlib import Path\naudio = Path(os.environ[&#39;AILOOT_AUDIO_FILE&#39;]).read_bytes()\nif not (audio[:4] == b&#39;RIFF&#39; and audio[8:12] == b&#39;WAVE&#39;):\n    raise SystemExit(&#39;Supply your actual PCM WAV audio file&#39;)\nwith wave.open(io.BytesIO(audio), &#39;rb&#39;) as recording:\n    if recording.getcomptype() != &#39;NONE&#39; or recording.getnframes() &lt;= 0:\n        raise SystemExit(&#39;Supply a nonempty PCM WAV recording&#39;)\nrequest = {&#39;model&#39;: &#39;openai/gpt-transcribe&#39;, &#39;input_audio&#39;: {&#39;data&#39;: base64.b64encode(audio).decode(&#39;ascii&#39;), &#39;format&#39;: &#39;wav&#39;}}\nPath(&#39;request.json&#39;).write_text(json.dumps(request, ensure_ascii=False), encoding=&#39;utf-8&#39;)\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \\\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 response.bin\n# Retain the complete original response, headers and actual X-Client-Request-ID.\n# Read existing owned records for recovery; do not resubmit an uncertain operation.\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Λήψη και αποθήκευση αποτελεσμάτων</h3><h4>Ailoot Ultra · Απομαγνητοφώνηση</h4><p class=\"note-s\">Ολόκληρο το αρχικό σώμα απόκρισης, η κατάσταση και οι προωθημένες κεφαλίδες. Αυτός ο χειριστής δεν προσθέτει καθολική δομή JSON, πεδίο κειμένου ή περίβλημα εργασίας.</p><ul class=\"card-result-paths\"><li><code>GET /v1/media/tasks/{task_id}</code></li><li><code>GET /v1/media/assets/{asset_id}/content</code></li><li><code>GET /v1/media/assets</code></li><li><code>GET /v1/media/assets/{asset_id}</code></li></ul><div class=\"card-result-process\" data-all-results><h5>Διατηρήστε όλα τα ολοκληρωμένα αποτελέσματα</h5><p class=\"note-s\">Διατηρήστε κάθε πλήρη απάντηση, αρχείο και τμήμα περιεχομένου που επιστρέφεται.</p><p class=\"note-s\">Διατηρήστε ολόκληρη την απόκριση και τις κεφαλίδες, κάθε πραγματικό αποτέλεσμα εξόδου, τα αρχικά αναγνωριστικά που επιστράφηκαν και όλα τα πεδία χρήσης. Ανακτήστε την αρχική λειτουργία χωρίς να υποβάλετε ξανά αίτημα δημιουργίας.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Αν χρειάζεται έλεγχος της αρχικής απάντησης</h5><p class=\"note-s\">Διατηρήστε το πραγματικό X-Client-Request-ID και ολόκληρη την απόκριση. Διαβάστε τα αρχικά αρχεία πολυμέσων που σας ανήκουν και τα ακριβή υπογεγραμμένα URL περιεχομένου τους· μην επανυποβάλετε ποτέ αίτημα δημιουργίας με αβέβαιο αποτέλεσμα.</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\">text (when present)</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span></td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">usage (when present)</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span></td></tr></tbody></table></div></details><details class=\"card-about\" data-method-errors><summary>Σφάλματα και επόμενα βήματα</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>Απάντηση</th><th>Συνθήκη</th><th>Επόμενο βήμα</th></tr></thead><tbody><tr><th data-cell-label=\"Απάντηση\" scope=\"row\"><span class=\"card-cell-label\">Απάντηση</span>400 · <code>invalid_request_error</code></th><td data-cell-label=\"Συνθήκη\"><span class=\"card-cell-label\">Συνθήκη</span>Το σώμα JSON ή το ρητό κανονικό ID μοντέλου δεν είναι έγκυρο.</td><td data-cell-label=\"Επόμενο βήμα\"><span class=\"card-cell-label\">Επόμενο βήμα</span>Διατηρήστε την απόκριση και διορθώστε το υποδεικνυόμενο πεδίο του αιτήματος.</td></tr><tr><th data-cell-label=\"Απάντηση\" scope=\"row\"><span class=\"card-cell-label\">Απάντηση</span>401 · <code>authentication_error</code></th><td data-cell-label=\"Συνθήκη\"><span class=\"card-cell-label\">Συνθήκη</span>Το κλειδί API του Ailoot δεν είναι έγκυρο.</td><td data-cell-label=\"Επόμενο βήμα\"><span class=\"card-cell-label\">Επόμενο βήμα</span>Χρησιμοποιήστε το εξουσιοδοτημένο κλειδί API του Ailoot σας.</td></tr><tr><th data-cell-label=\"Απάντηση\" scope=\"row\"><span class=\"card-cell-label\">Απάντηση</span>403 · <code>permission_error</code></th><td data-cell-label=\"Συνθήκη\"><span class=\"card-cell-label\">Συνθήκη</span>Η ομάδα του κλειδιού δεν επιτρέπει πρόσβαση σε αυτή τη μέθοδο.</td><td data-cell-label=\"Επόμενο βήμα\"><span class=\"card-cell-label\">Επόμενο βήμα</span>Διατηρήστε τις λεπτομέρειες σφάλματος που επιστρέφονται.</td></tr><tr><th data-cell-label=\"Απάντηση\" scope=\"row\"><span class=\"card-cell-label\">Απάντηση</span>404 · <code>not_found_error</code></th><td data-cell-label=\"Συνθήκη\"><span class=\"card-cell-label\">Συνθήκη</span>Η επιλεγμένη μέθοδος δεν έχει διαδρομή με άδεια πρόσβασης.</td><td data-cell-label=\"Επόμενο βήμα\"><span class=\"card-cell-label\">Επόμενο βήμα</span>Διατηρήστε τις λεπτομέρειες σφάλματος που επιστρέφονται.</td></tr><tr><th data-cell-label=\"Απάντηση\" scope=\"row\"><span class=\"card-cell-label\">Απάντηση</span>422 · <code>price_unavailable</code></th><td data-cell-label=\"Συνθήκη\"><span class=\"card-cell-label\">Συνθήκη</span>Το αποδεκτό τιμολόγιο δεν μπορεί να λάβει την απαιτούμενη ποσότητα εισόδου ή το όριό της.</td><td data-cell-label=\"Επόμενο βήμα\"><span class=\"card-cell-label\">Επόμενο βήμα</span>Διατηρήστε την απόκριση· χρησιμοποιήστε την αναπαράσταση εισόδου που απαιτεί το αποδεκτό τιμολόγιο.</td></tr><tr><th data-cell-label=\"Απάντηση\" scope=\"row\"><span class=\"card-cell-label\">Απάντηση</span>503 · <code></code></th><td data-cell-label=\"Συνθήκη\"><span class=\"card-cell-label\">Συνθήκη</span>Ο απαιτούμενος χώρος αποθήκευσης, η διαδρομή, η τιμή μεθόδου ή η δέσμευση ποσού δεν είναι διαθέσιμα.</td><td data-cell-label=\"Επόμενο βήμα\"><span class=\"card-cell-label\">Επόμενο βήμα</span>Διατηρήστε ολόκληρη την αρχική απόκριση. Μια αβέβαιη δέσμευση ποσού δεν αποτελεί άδεια επανυποβολής.</td></tr><tr><th data-cell-label=\"Απάντηση\" scope=\"row\"><span class=\"card-cell-label\">Απάντηση</span>502 · <code>server_error</code></th><td data-cell-label=\"Συνθήκη\"><span class=\"card-cell-label\">Συνθήκη</span>Το αρχικό αποτέλεσμα, η χρήση ή η εκκαθάριση απαιτεί έλεγχο.</td><td data-cell-label=\"Επόμενο βήμα\"><span class=\"card-cell-label\">Επόμενο βήμα</span>Διατηρήστε το πραγματικό ID αιτήματος και την αρχική απόκριση. Διαβάστε την υπάρχουσα εγγραφή που σας ανήκει· μην επανυποβάλετε αίτημα δημιουργίας.</td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Εναλλακτικά ονόματα</h3><h4>Εναλλακτικά ονόματα μοντέλου</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=openai%2Fgpt-transcribe&amp;route=Ultra&amp;caller=openai%2Fgpt-transcribe&amp;fmt=transcriptions\"><code>openai/gpt-transcribe</code></a></span></p><h4>Εναλλακτικές διαδρομές μεθόδων</h4><p class=\"note-s\">Χρησιμοποιήστε τις διαδρομές μεθόδων που εμφανίζονται παραπάνω.</p><h4>Σχετικά ID μοντέλων</h4><p class=\"note-s\"><a href=\"#m=openai%2Fgpt-transcribe&amp;route=Ultra&amp;caller=openai%2Fgpt-transcribe&amp;fmt=transcriptions\"><code>openai/gpt-transcribe</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "openai/gpt-transcribe",
        "fmt": "transcriptions",
        "http": "POST",
        "path": "/v1/audio/transcriptions",
        "request_model_id": "openai/gpt-transcribe",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|transcriptions|/v1/audio/transcriptions|openai%2Fgpt-transcribe",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "errors": [
              {
                "code": null,
                "condition": "Το σώμα JSON ή το ρητό κανονικό ID μοντέλου δεν είναι έγκυρο.",
                "http_status": 400,
                "recovery": "Διατηρήστε την απόκριση και διορθώστε το υποδεικνυόμενο πεδίο του αιτήματος.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Το κλειδί API του Ailoot δεν είναι έγκυρο.",
                "http_status": 401,
                "recovery": "Χρησιμοποιήστε το εξουσιοδοτημένο κλειδί API του Ailoot σας.",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "Η ομάδα του κλειδιού δεν επιτρέπει πρόσβαση σε αυτή τη μέθοδο.",
                "http_status": 403,
                "recovery": "Διατηρήστε τις λεπτομέρειες σφάλματος που επιστρέφονται.",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "Η επιλεγμένη μέθοδος δεν έχει διαδρομή με άδεια πρόσβασης.",
                "http_status": 404,
                "recovery": "Διατηρήστε τις λεπτομέρειες σφάλματος που επιστρέφονται.",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "Το αποδεκτό τιμολόγιο δεν μπορεί να λάβει την απαιτούμενη ποσότητα εισόδου ή το όριό της.",
                "http_status": 422,
                "recovery": "Διατηρήστε την απόκριση· χρησιμοποιήστε την αναπαράσταση εισόδου που απαιτεί το αποδεκτό τιμολόγιο.",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "Ο απαιτούμενος χώρος αποθήκευσης, η διαδρομή, η τιμή μεθόδου ή η δέσμευση ποσού δεν είναι διαθέσιμα.",
                "http_status": 503,
                "recovery": "Διατηρήστε ολόκληρη την αρχική απόκριση. Μια αβέβαιη δέσμευση ποσού δεν αποτελεί άδεια επανυποβολής.",
                "type": null
              },
              {
                "code": null,
                "condition": "Το αρχικό αποτέλεσμα, η χρήση ή η εκκαθάριση απαιτεί έλεγχο.",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "Διατηρήστε το πραγματικό ID αιτήματος και την αρχική απόκριση. Διαβάστε την υπάρχουσα εγγραφή που σας ανήκει· μην επανυποβάλετε αίτημα δημιουργίας.",
                "response_headers": {
                  "x-should-retry": "false"
                },
                "type": "server_error"
              }
            ],
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed content URL"
                }
              ],
              "dedicated_method_polling_or_cancel": false,
              "mode": "synchronous_result_then_owned_library",
              "original_POST_adds_task_envelope": false,
              "status": [
                {
                  "http": "GET",
                  "id_source": "exact task_id from an existing owned media record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Διατηρήστε το πραγματικό X-Client-Request-ID και ολόκληρη την απόκριση. Διαβάστε τα αρχικά αρχεία πολυμέσων που σας ανήκουν και τα ακριβή υπογεγραμμένα URL περιεχομένου τους· μην επανυποβάλετε ποτέ αίτημα δημιουργίας με αβέβαιο αποτέλεσμα."
            },
            "outputs": {
              "all_results": "Διατηρήστε ολόκληρη την απόκριση και τις κεφαλίδες, κάθε πραγματικό αποτέλεσμα εξόδου, τα αρχικά αναγνωριστικά που επιστράφηκαν και όλα τα πεδία χρήσης. Ανακτήστε την αρχική λειτουργία χωρίς να υποβάλετε ξανά αίτημα δημιουργίας.",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "Ολόκληρο το αρχικό σώμα απόκρισης, η κατάσταση και οι προωθημένες κεφαλίδες. Αυτός ο χειριστής δεν προσθέτει καθολική δομή JSON, πεδίο κειμένου ή περίβλημα εργασίας."
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "openai/gpt-transcribe"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "input_audio",
                "required": true,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "input_audio": {
                  "properties": {
                    "data": {
                      "contentEncoding": "base64",
                      "type": "string"
                    },
                    "format": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "data",
                    "format"
                  ],
                  "type": "object"
                },
                "model": {
                  "enum": [
                    "openai/gpt-transcribe"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input_audio"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": true,
              "body": {
                "input_audio": {
                  "data": "${BASE64_ACTUAL_WAV_BYTES}",
                  "format": "wav"
                },
                "model": "openai/gpt-transcribe"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_conditions": [
              "Το παράδειγμα διαβάζει το πραγματικό, μη κενό αρχείο PCM WAV σας, κωδικοποιεί όλα τα byte του αρχείου σε base64 και στέλνει το input_audio.format ως wav."
            ],
            "material_types": [
              "audio"
            ],
            "required": [
              "model",
              "input_audio"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed content URL"
              }
            ],
            "dedicated_method_polling_or_cancel": false,
            "mode": "synchronous_result_then_owned_library",
            "original_POST_adds_task_envelope": false,
            "status": [
              {
                "http": "GET",
                "id_source": "ακριβές task_id από υπάρχουσα εγγραφή πολυμέσων που σας ανήκουν",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Retain the actual X-Client-Request-ID and complete response. Read the original owned assets and their exact signed content URLs; never resubmit an uncertain creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/transcriptions"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "text",
            "fields": [
              {
                "description": null,
                "name": "text (when present)",
                "type": null
              },
              {
                "description": null,
                "name": "usage (when present)",
                "type": null
              }
            ],
            "result": "Complete original response body, status and forwarded headers. No universal JSON shape, text field or task envelope is added by this handler."
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "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": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "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": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "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": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "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": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "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": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.00015",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.00015",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_AUDIO_FILE:?Set the path to your actual PCM WAV recording}\"\nexport AILOOT_AUDIO_FILE\npython3 - <<'PY_REQUEST'\nimport base64, io, json, os, wave\nfrom pathlib import Path\naudio = Path(os.environ['AILOOT_AUDIO_FILE']).read_bytes()\nif not (audio[:4] == b'RIFF' and audio[8:12] == b'WAVE'):\n    raise SystemExit('Supply your actual PCM WAV audio file')\nwith wave.open(io.BytesIO(audio), 'rb') as recording:\n    if recording.getcomptype() != 'NONE' or recording.getnframes() <= 0:\n        raise SystemExit('Supply a nonempty PCM WAV recording')\nrequest = {'model': 'openai/gpt-transcribe', 'input_audio': {'data': base64.b64encode(audio).decode('ascii'), 'format': 'wav'}}\nPath('request.json').write_text(json.dumps(request, ensure_ascii=False), encoding='utf-8')\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o response.bin\n# Retain the complete original response, headers and actual X-Client-Request-ID.\n# Read existing owned records for recovery; do not resubmit an uncertain operation.\n",
            "label": "curl · actual WAV file and complete original result",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "transcriptions",
        "hints": [
          "The example reads your actual nonempty PCM WAV file, encodes the complete file bytes as base64 and sends input_audio.format as wav.",
          "The format value in the example is the documented recipe; no model-specific format list, limit or default is asserted.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "audio"
        ],
        "label": "Απομαγνητοφώνηση",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "audio_transcriptions",
        "out": null,
        "output": [
          "text"
        ],
        "path": "/v1/audio/transcriptions",
        "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": "per_request",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null,
          "unit_prices": {
            "audio_input_second": 0.00015
          }
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "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": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "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": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "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": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "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": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "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": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.00015",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.00015",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "request_model_id": "openai/gpt-transcribe",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "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": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "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": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "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": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "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": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "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": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.00015",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_second",
            "label": "input audio second",
            "native_amount_usd_per_unit": "0.00015",
            "native_quantity": 1,
            "public_unit_label": "per input audio second",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_second"
          }
        ]
      }
    }
  ],
  "model_id": "openai/gpt-transcribe",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "28619ae1001fb89ad8d81dee0659cf7e53be2d6c883ee7a7e780971ec977a6fd",
    "input_html_sha256": "a6ea0fb92d6d0c3ca36078f364f18c281ee66d4d547d5bae329cd14895e2e0af",
    "private_audit_sha256": "ddd3e09cd3f9026918a76997d4ffd45a4fdefa2e4817b261bec2e8272d94789d",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/el/openai-gpt-transcribe/",
    "description": "Το GPT Transcribe μετατρέπει ηχογραφημένη ομιλία σε κείμενο στην αρχική της γλώσσα, με οδηγίες συμφραζομένων, υποδείξεις κυριολεκτικών λέξεων-κλειδιών και υποδείξεις πολλών γλωσσών. Η OpenAI τεκμηριώνει μεταγραφή ολοκληρωμένου αρχείου, σταδιακή ροή αποτελεσμάτων αρχείου και μεταγραφή μετά την οριστικοποίηση ηχητικών γύρων στο Realtime.",
    "locale": "el",
    "md_url": "https://ailoot.ai/models/el/openai-gpt-transcribe/index.md",
    "title": "OpenAI: GPT Transcribe — Ailoot",
    "url": "https://ailoot.ai/models/el/openai-gpt-transcribe/"
  },
  "rawModel": {
    "about": "Το GPT Transcribe είναι το μοντέλο μετατροπής ομιλίας σε κείμενο της OpenAI για ολοκληρωμένα αρχεία ήχου, μεταγραφές αρχείων με σταδιακή ροή και οριστικοποιημένους ηχητικούς γύρους σε συνεδρίες Realtime. Δέχεται ήχο με προαιρετικό κειμενικό πλαίσιο και επιστρέφει αναγνωρισμένο κείμενο. Ο παραγωγός το προορίζει για ακριβή μεταγραφή ηχογραφημένης ομιλίας στην αρχική της γλώσσα, συμπεριλαμβανομένων ειδικής ορολογίας, πολυγλωσσικών ηχογραφήσεων και εναλλαγής γλωσσών. Η χρήσιμη έξοδός του είναι μεταγραφή που παραμένει συνδεδεμένη με την ηχογράφηση, μαζί με μεταδεδομένα ανιχνευμένης γλώσσας όταν το μοντέλο μπορεί να κάνει αξιόπιστη πρόβλεψη.\n\n### Προετοιμασία ολοκληρωμένης ηχογράφησης\n\nΗ ροή μεταγραφής αρχείων της OpenAI δέχεται ανεβάσματα έως 25 MB. Η τρέχουσα αναφορά τεκμηρίωσης του τελικού σημείου αναφέρει μορφές εισόδου FLAC, MP3, MP4, MPEG, MPGA, M4A, OGG, WAV και WebM και συνιστά επαρκή μεταδεδομένα αρχείου για αναγνώριση της μορφής, μαζί με κατάλληλη επέκταση ονόματος αρχείου και τύπο περιεχομένου. Για μεγαλύτερη ηχογράφηση, ο οδηγός συνιστά συμπίεση ή διαίρεση σε αρχεία έως 25 MB. Απόφυγε να κόβεις στη μέση πρότασης, επειδή η αφαίρεση της γύρω ομιλίας μπορεί να μειώσει την ακρίβεια αναγνώρισης. Κράτησε τα κομμάτια με τη σειρά και διατήρησε τις θέσεις τους στην αρχική ηχογράφηση.\n\nΓια συνάντηση, συνέντευξη ή ηχογραφημένη παρουσίαση, δώσε τον πραγματικό ήχο και προσδιόρισε το θέμα και κάθε ορολογία που είναι πιθανό να ακουστεί. Χρήσιμο αποτέλεσμα είναι η αναγνωρισμένη διατύπωση, αντί για συμπέρασμα που συνοψίζει τη συζήτηση. Διατήρησε το αναγνωριστικό ηχογράφησης μαζί με το επιστρεφόμενο κείμενο, ώστε όποιος ελέγχει όνομα, αριθμό ή αβέβαιη φράση να μπορεί να επιστρέψει στη σωστή πηγή. Η μεταγραφή μπορεί κατόπιν να αποτελέσει υλικό για ξεχωριστή ροή σύνοψης, μετάφρασης ή επιμέλειας.\n\n### Συμφραζόμενα, υποδείξεις λέξεων-κλειδιών και αναμενόμενες γλώσσες\n\nΟ παραγωγός διακρίνει τρία είδη καθοδήγησης. Οι οδηγίες δίνουν ελεύθερο πλαίσιο για το θέμα ή το περιβάλλον της ηχογράφησης. Οι λέξεις-κλειδιά δίνουν κυριολεκτικές λέξεις ή φράσεις που αναμένεται να ακουστούν. Μια λίστα languages προσδιορίζει τις αναμενόμενες γλώσσες ομιλίας. Για δίγλωσση συζήτηση προϊόντος, περιέγραψε το περιβάλλον στις οδηγίες, παράθεσε τα σχετικά ονόματα προϊόντων ως λέξεις-κλειδιά και δώσε τις αναμενόμενες γλώσσες. Πρόκειται για υποδείξεις αναγνώρισης· δεν είναι οδηγίες εισαγωγής λεξιλογίου που δεν είπε κανείς.\n\nΤο GPT Transcribe χρησιμοποιεί το πεδίο languages στον πληθυντικό αντί για το παλαιότερο πεδίο language στον ενικό· η OpenAI αναφέρει να μην αποστέλλονται και τα δύο. Ο οδηγός του δέχεται υποστηριζόμενους κωδικούς ISO 639-1, επιλεγμένους κωδικούς ISO 639-3 και τοπικούς κωδικούς κινεζικών, απορρίπτοντας μη υποστηριζόμενες ή κακοσχηματισμένες τιμές. Κάθε λέξη-κλειδί πρέπει να παραμένει σε μία γραμμή και να μην περιέχει γωνιακή αγκύλη, χαρακτήρα επιστροφής στην αρχή της γραμμής ή αλλαγής γραμμής. Μη έγκυρη λέξη-κλειδί ή υπερβολικά μεγάλες οδηγίες μπορούν να απορρίψουν ολόκληρο το αίτημα. Κράτησε το πλαίσιο σχετικό και έλεγξε αν τα υποδεικνυόμενα ονόματα εμφανίζονται πραγματικά στον ήχο, αντί να αντιμετωπίζεις τη λίστα υποδείξεων ως μεταγραφή.\n\n### Έξοδος JSON και προβλέψεις ανιχνευμένης γλώσσας\n\nΤο τεκμηριωμένο αποτέλεσμα αρχείου είναι JSON που περιέχει τη μεταγραφή και τις ανιχνευμένες γλώσσες. Αυτές οι προβλέψεις γλώσσας είναι έξοδος του μοντέλου, όχι αντίγραφο των παρεχόμενων γλωσσικών υποδείξεων. Μια κενή λίστα γλωσσών είναι έγκυρο αποτέλεσμα όταν το μοντέλο δεν μπορεί να κάνει αξιόπιστη πρόβλεψη· δεν τεκμηριώνει ότι η ηχογράφηση ήταν σιωπηλή ή ότι απέτυχε η μεταγραφή. Κράτησε το αναγνωρισμένο κείμενο και τα γλωσσικά μεταδεδομένα ξεχωριστά, ώστε η επόμενη επεξεργασία να χρησιμοποιεί το καθένα σύμφωνα με τη σημασία του.\n\n### Σταδιακή ροή μεταγραφής αρχείου\n\nΈνα ολοκληρωμένο αρχείο μπορεί να παράγει κείμενο μεταγραφής σταδιακά όσο επεξεργάζεται. Η OpenAI τεκμηριώνει συμβάντα transcript.text.delta για μερικό κείμενο και transcript.text.done για την πλήρη μεταγραφή αρχείου· το τελικό συμβάν περιλαμβάνει επίσης ανιχνευμένες γλώσσες. Αυτό μεταδίδει σταδιακά την έξοδο μιας ήδη παρεχόμενης ηχογράφησης. Χρησιμεύει για εμφάνιση προόδου σε μεγάλο ανέβασμα, ενώ το τελικό συμβάν ορίζει το κείμενο που πρέπει να διατηρηθεί ως ολοκληρωμένο αποτέλεσμα.\n\n### Οριστικοποιημένοι γύροι σε συνεδρίες Realtime\n\nΤο GPT Transcribe έχει επίσης ειδική ροή Realtime μέσω WebSocket. Ο ήχος προστίθεται στην προσωρινή μνήμη εισόδου και μετά η εφαρμογή οριστικοποιεί ρητά έναν ηχητικό γύρο. Η μεταγραφή αρχίζει για αυτό το οριστικοποιημένο τμήμα και μπορεί να εκπέμπει σταδιακές ενημερώσεις πριν από το συμβάν ολοκλήρωσής του, μαζί με πληροφορίες ανιχνευμένης γλώσσας. Το μοντέλο χρησιμοποιεί αυτόματα προηγούμενους μεταγραμμένους γύρους ως συμφραζόμενα σε αυτή τη ροή συνεδρίας του παραγωγού. Αυτό διαφέρει από τη συνεχή εκπομπή ζωντανού κειμένου υποτίτλων καθώς φτάνει ήχος μικροφώνου· η OpenAI ονομάζει το GPT Live Transcribe για αυτή τη συνεχή ροή.\n\nΓια πολλούς γύρους, διατήρησε το αναγνωριστικό στοιχείου εισόδου μαζί με την αντίστοιχη μεταγραφή. Η OpenAI προειδοποιεί ότι τα συμβάντα ολοκλήρωσης διαφορετικών γύρων δεν χρειάζεται να φτάνουν με τη σειρά της ομιλίας, οπότε αντιστοίχισε κάθε τελικό αποτέλεσμα με την οριστικοποιημένη είσοδό του, αντί να οργανώνεις μια συνομιλία μόνο βάσει χρόνου ολοκλήρωσης. Το χρήσιμο παραδοτέο είναι ταξινομημένη μεταγραφή συναρμολογημένη από τα σωστά τελικά στοιχεία, με το προσωρινό κείμενο ως πρόοδο και όχι ως ξεχωριστή ολοκληρωμένη εκφώνηση.\n\n### Ειδικές έξοδοι και ουσιαστικοί περιορισμοί\n\nΑυτό το προφίλ δεν παρέχει καθολικές προδιαγραφές υποτίτλων, χρονικών σημάνσεων, μετάφρασης ή ετικετών ομιλητών. Ο οδηγός μετάβασης της OpenAI διακρίνει αυτές τις ειδικές δυνατότητες: οι εγγενείς μορφές υποτίτλων και ο χρονισμός λέξεων απαιτούν συμβατό μοντέλο και μορφή, ενώ οι ετικέτες ομιλητών χρησιμοποιούν το GPT-4o Transcribe Diarize. Το αποτέλεσμα αρχείου του GPT Transcribe είναι JSON και όχι άμεσα εναλλάξιμη απόκριση SRT, VTT ή αναλυτικών χρονικών σημάνσεων. Η συγκεκριμένη κάρτα μοντέλου του δεν δημοσιεύει αριθμητικό όριο συμφραζομένων ή μέγιστης εξόδου, οπότε δεν πρέπει να υποτίθεται παράθυρο token μοντέλου συνομιλίας για μεταγραφή ήχου.\n\nΈλεγξε δύσκολο λεξιλόγιο, αριθμούς, προφορές, θόρυβο περιβάλλοντος και αλλαγές γλώσσας έναντι της ηχογράφησης. Έλεγξε ότι οι σχετικές υποδείξεις βελτίωσαν την αναγνώριση χωρίς να εισάγουν όρους που δεν ειπώθηκαν και ότι η τελική μεταγραφή περιλαμβάνει το τέλος του ήχου. Για πολυγλωσσικό αποτέλεσμα, διατήρησε τη διατύπωση που ακούστηκε πριν ετοιμάσεις μεταφρασμένη έκδοση. Αυτοί οι έλεγχοι κάνουν τη μεταγραφή χρήσιμη ως αρχικό υλικό, κρατώντας σαφώς διακριτά τις υποδείξεις συμφραζομένων, τις ανιχνευμένες γλώσσες και την αναγνωρισμένη ομιλία.",
    "alias_of": null,
    "aliases": [],
    "author": "OpenAI",
    "capabilities": {
      "context_length": 0,
      "manufacturer_input": [
        "audio"
      ],
      "manufacturer_output": [
        "transcription"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.00015",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_second",
            "label": "input audio second",
            "native_amount_usd_per_unit": "0.00015",
            "native_quantity": 1,
            "public_unit_label": "per input audio second",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_second"
          }
        ],
        "summary": "Πλήρης τιμολόγηση της διαμόρφωσης στις λεπτομέρειες."
      }
    ],
    "ctx": null,
    "formats": [
      "transcriptions"
    ],
    "id": "openai/gpt-transcribe",
    "input": [
      "audio"
    ],
    "kind": "audio",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "errors": [
              {
                "code": null,
                "condition": "Το σώμα JSON ή το ρητό κανονικό ID μοντέλου δεν είναι έγκυρο.",
                "http_status": 400,
                "recovery": "Διατηρήστε την απόκριση και διορθώστε το υποδεικνυόμενο πεδίο του αιτήματος.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Το κλειδί API του Ailoot δεν είναι έγκυρο.",
                "http_status": 401,
                "recovery": "Χρησιμοποιήστε το εξουσιοδοτημένο κλειδί API του Ailoot σας.",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "Η ομάδα του κλειδιού δεν επιτρέπει πρόσβαση σε αυτή τη μέθοδο.",
                "http_status": 403,
                "recovery": "Διατηρήστε τις λεπτομέρειες σφάλματος που επιστρέφονται.",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "Η επιλεγμένη μέθοδος δεν έχει διαδρομή με άδεια πρόσβασης.",
                "http_status": 404,
                "recovery": "Διατηρήστε τις λεπτομέρειες σφάλματος που επιστρέφονται.",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "Το αποδεκτό τιμολόγιο δεν μπορεί να λάβει την απαιτούμενη ποσότητα εισόδου ή το όριό της.",
                "http_status": 422,
                "recovery": "Διατηρήστε την απόκριση· χρησιμοποιήστε την αναπαράσταση εισόδου που απαιτεί το αποδεκτό τιμολόγιο.",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "Ο απαιτούμενος χώρος αποθήκευσης, η διαδρομή, η τιμή μεθόδου ή η δέσμευση ποσού δεν είναι διαθέσιμα.",
                "http_status": 503,
                "recovery": "Διατηρήστε ολόκληρη την αρχική απόκριση. Μια αβέβαιη δέσμευση ποσού δεν αποτελεί άδεια επανυποβολής.",
                "type": null
              },
              {
                "code": null,
                "condition": "Το αρχικό αποτέλεσμα, η χρήση ή η εκκαθάριση απαιτεί έλεγχο.",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "Διατηρήστε το πραγματικό ID αιτήματος και την αρχική απόκριση. Διαβάστε την υπάρχουσα εγγραφή που σας ανήκει· μην επανυποβάλετε αίτημα δημιουργίας.",
                "response_headers": {
                  "x-should-retry": "false"
                },
                "type": "server_error"
              }
            ],
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed content URL"
                }
              ],
              "dedicated_method_polling_or_cancel": false,
              "mode": "synchronous_result_then_owned_library",
              "original_POST_adds_task_envelope": false,
              "status": [
                {
                  "http": "GET",
                  "id_source": "exact task_id from an existing owned media record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Διατηρήστε το πραγματικό X-Client-Request-ID και ολόκληρη την απόκριση. Διαβάστε τα αρχικά αρχεία πολυμέσων που σας ανήκουν και τα ακριβή υπογεγραμμένα URL περιεχομένου τους· μην επανυποβάλετε ποτέ αίτημα δημιουργίας με αβέβαιο αποτέλεσμα."
            },
            "outputs": {
              "all_results": "Διατηρήστε ολόκληρη την απόκριση και τις κεφαλίδες, κάθε πραγματικό αποτέλεσμα εξόδου, τα αρχικά αναγνωριστικά που επιστράφηκαν και όλα τα πεδία χρήσης. Ανακτήστε την αρχική λειτουργία χωρίς να υποβάλετε ξανά αίτημα δημιουργίας.",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "Ολόκληρο το αρχικό σώμα απόκρισης, η κατάσταση και οι προωθημένες κεφαλίδες. Αυτός ο χειριστής δεν προσθέτει καθολική δομή JSON, πεδίο κειμένου ή περίβλημα εργασίας."
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "openai/gpt-transcribe"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "input_audio",
                "required": true,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "input_audio": {
                  "properties": {
                    "data": {
                      "contentEncoding": "base64",
                      "type": "string"
                    },
                    "format": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "data",
                    "format"
                  ],
                  "type": "object"
                },
                "model": {
                  "enum": [
                    "openai/gpt-transcribe"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input_audio"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": true,
              "body": {
                "input_audio": {
                  "data": "${BASE64_ACTUAL_WAV_BYTES}",
                  "format": "wav"
                },
                "model": "openai/gpt-transcribe"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_conditions": [
              "Το παράδειγμα διαβάζει το πραγματικό, μη κενό αρχείο PCM WAV σας, κωδικοποιεί όλα τα byte του αρχείου σε base64 και στέλνει το input_audio.format ως wav."
            ],
            "material_types": [
              "audio"
            ],
            "required": [
              "model",
              "input_audio"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed content URL"
              }
            ],
            "dedicated_method_polling_or_cancel": false,
            "mode": "synchronous_result_then_owned_library",
            "original_POST_adds_task_envelope": false,
            "status": [
              {
                "http": "GET",
                "id_source": "ακριβές task_id από υπάρχουσα εγγραφή πολυμέσων που σας ανήκουν",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Retain the actual X-Client-Request-ID and complete response. Read the original owned assets and their exact signed content URLs; never resubmit an uncertain creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/transcriptions"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "text",
            "fields": [
              {
                "description": null,
                "name": "text (when present)",
                "type": null
              },
              {
                "description": null,
                "name": "usage (when present)",
                "type": null
              }
            ],
            "result": "Complete original response body, status and forwarded headers. No universal JSON shape, text field or task envelope is added by this handler."
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "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": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "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": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "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": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "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": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "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": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.00015",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.00015",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_AUDIO_FILE:?Set the path to your actual PCM WAV recording}\"\nexport AILOOT_AUDIO_FILE\npython3 - <<'PY_REQUEST'\nimport base64, io, json, os, wave\nfrom pathlib import Path\naudio = Path(os.environ['AILOOT_AUDIO_FILE']).read_bytes()\nif not (audio[:4] == b'RIFF' and audio[8:12] == b'WAVE'):\n    raise SystemExit('Supply your actual PCM WAV audio file')\nwith wave.open(io.BytesIO(audio), 'rb') as recording:\n    if recording.getcomptype() != 'NONE' or recording.getnframes() <= 0:\n        raise SystemExit('Supply a nonempty PCM WAV recording')\nrequest = {'model': 'openai/gpt-transcribe', 'input_audio': {'data': base64.b64encode(audio).decode('ascii'), 'format': 'wav'}}\nPath('request.json').write_text(json.dumps(request, ensure_ascii=False), encoding='utf-8')\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o response.bin\n# Retain the complete original response, headers and actual X-Client-Request-ID.\n# Read existing owned records for recovery; do not resubmit an uncertain operation.\n",
            "label": "curl · actual WAV file and complete original result",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "transcriptions",
        "hints": [
          "The example reads your actual nonempty PCM WAV file, encodes the complete file bytes as base64 and sends input_audio.format as wav.",
          "The format value in the example is the documented recipe; no model-specific format list, limit or default is asserted.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "audio"
        ],
        "label": "Απομαγνητοφώνηση",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "audio_transcriptions",
        "out": null,
        "output": [
          "text"
        ],
        "path": "/v1/audio/transcriptions",
        "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": "per_request",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null,
          "unit_prices": {
            "audio_input_second": 0.00015
          }
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "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": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "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": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "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": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "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": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "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": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.00015",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.00015",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "request_model_id": "openai/gpt-transcribe",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "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": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "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": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "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": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "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": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "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": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.00015",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_second",
            "label": "input audio second",
            "native_amount_usd_per_unit": "0.00015",
            "native_quantity": 1,
            "public_unit_label": "per input audio second",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_second"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "openai/gpt-transcribe",
        "request_model_id": "openai/gpt-transcribe",
        "route_label": "Ultra"
      }
    ],
    "name": "OpenAI: GPT Transcribe",
    "price": {
      "in": null,
      "in_label": null,
      "out": null,
      "out_label": null,
      "sort_in": null,
      "sort_out": null,
      "varies": true
    },
    "short": "Το GPT Transcribe μετατρέπει ηχογραφημένη ομιλία σε κείμενο στην αρχική της γλώσσα, με οδηγίες συμφραζομένων, υποδείξεις κυριολεκτικών λέξεων-κλειδιών και υποδείξεις πολλών γλωσσών. Η OpenAI τεκμηριώνει μεταγραφή ολοκληρωμένου αρχείου, σταδιακή ροή αποτελεσμάτων αρχείου και μεταγραφή μετά την οριστικοποίηση ηχητικών γύρων στο Realtime."
  },
  "renderer_schema": {
    "method_order": "Original DTO methods order; every exact route/format/path/caller survives.",
    "prices": "Original public DTO fields and original native display HTML; no flattened or normalized offers."
  },
  "representation": "exact-public-dto-and-native-renderer-html",
  "representationNotes": {
    "current_reference": {
      "about_json_pointer": "/aboutHtml",
      "methods": [
        {
          "contract_json_pointer": "/methods/0/rawMethod/contract",
          "html_json_pointer": "/methods/0/html",
          "method_ordinal": 0
        }
      ],
      "role": "current-semantic-reference"
    },
    "raw_input": {
      "examples_role": "historical-input-not-current-ready-examples",
      "json_pointers": [
        "/rawModel",
        "/methods/0/rawMethod"
      ],
      "role": "historical-owner-input"
    },
    "schema": "ailoot-native-model-representations-v1"
  },
  "schema": "ailoot-static-model-facts-v1",
  "schema_version": 1,
  "shortText": "Το GPT Transcribe μετατρέπει ηχογραφημένη ομιλία σε κείμενο στην αρχική της γλώσσα, με οδηγίες συμφραζομένων, υποδείξεις κυριολεκτικών λέξεων-κλειδιών και υποδείξεις πολλών γλωσσών. Η OpenAI τεκμηριώνει μεταγραφή ολοκληρωμένου αρχείου, σταδιακή ροή αποτελεσμάτων αρχείου και μεταγραφή μετά την οριστικοποίηση ηχητικών γύρων στο Realtime.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "077c8406ca4fcacb80887a356f719f4f209d481144bac3376c4437ef19a051d9",
    "renderer_sha256": "3ed36f7af4f78822bafbd174fdcaed7b698a18a86efe254253d37f1b098a7566"
  },
  "sourceRevision": "87739a13144717ddab684d43d33bfd40b2653318700b1f07a4a422854114cc05"
}
