{
  "aboutHtml": "<h4>Φωνή για αφήγηση και ανάγνωση μεγάλων κειμένων</h4><p>Το Speech 02 HD δημιουργεί ομιλία με έμφαση στην ποιότητα, στον ρυθμό και στη σταθερότητα του ήχου. Ο κατασκευαστής επισημαίνει την αφήγηση υλικού και τα ηχητικά βιβλία, όπου η φωνή πρέπει να διατηρεί τον χαρακτήρα της και να αποδίδει ομαλά ένα μεγάλο κείμενο. Είναι μοντέλο σύνθεσης: δέχεται κείμενο και το μετατρέπει σε ήχο ομιλίας.</p><h4>Σύνδεση κειμένου και χροιάς</h4><p>Η οικογένεια Speech 02 βασίζεται σε αυτοπαλινδρομική αρχιτεκτονική Transformer και εκπαιδεύσιμο κωδικοποιητή ομιλητή. Η εξαγωγή της χροιάς και η παραγωγή ομιλίας εκπαιδεύτηκαν από κοινού, ώστε τα χαρακτηριστικά της φωνής να συνδέονται με το περιεχόμενο. Οι δυνατότητες της οικογένειας περιλαμβάνουν χρήση ήδη προετοιμασμένων κλωνοποιημένων φωνών και συνδυασμό γλώσσας, προφοράς και τρόπου εκφώνησης.</p><h4>Συναίσθημα και πολύγλωσση ανάγνωση</h4><p>Η συναισθηματική απόδοση μπορεί να καθορίζεται από το νόημα του κειμένου ή να ορίζεται χειροκίνητα. Διατίθενται χαρά, λύπη, θυμός, φόβος, αποστροφή, έκπληξη και ηρεμία. Το μοντέλο εργάζεται με ρωσικά, αγγλικά και άλλες γλώσσες· ο κατασκευαστής περιγράφει διαφορετικές αγγλικές προφορές, κινεζικά και καντονέζικα, ιαπωνικά, κορεατικά, ευρωπαϊκές και άλλες γλώσσες.</p><p>Η τρέχουσα περιγραφή του Speech 02 εξαιρεί ρητά τα περσικά, τα φιλιππινέζικα και τα ταμίλ. Ο γενικός κατάλογος γλωσσών νεότερων γενεών Speech δεν πρέπει να μεταφέρεται αυτόματα σε αυτή την έκδοση.</p><h4>Ρύθμιση φωνής</h4><p>Για τη σύνθεση προβλέπονται επιλογή φωνής, μεταβολή ταχύτητας <strong>0,5–2</strong>, ένταση πάνω από 0 και έως <strong>10</strong> και τονικό ύψος από <strong>−12 έως 12</strong>. Στο λεξικό προφοράς μπορούν να ορίζονται αντικαταστάσεις της γραπτής μορφής με την επιθυμητή εκφώνηση· υποστηρίζονται φωνητικές γραφές και ιαπωνικές παραλλαγές προφοράς. Αυτό βοηθά στον έλεγχο της εκφώνησης ονομάτων και αμφίσημων λέξεων.</p><h4>Παύσεις και ολοκληρωμένος ήχος</h4><p>Ο κατασκευαστής επιτρέπει παύσεις μεταξύ εκφωνούμενων τμημάτων διάρκειας <strong>0,01–99,99 δευτερολέπτων</strong>. Η διάρκεια ορίζεται με ακρίβεια δύο δεκαδικών ψηφίων· οι δείκτες τοποθετούνται μεταξύ εκφωνούμενων τμημάτων και όχι διαδοχικά. Το κείμενο ενός σύγχρονου αιτήματος πρέπει να έχει λιγότερους από <strong>10 000 χαρακτήρες</strong>. Προβλέπεται λήψη του ήχου ολόκληρου ή σταδιακά· για κείμενο πάνω από 3000 χαρακτήρες συνιστάται έξοδος σε ροή.</p><p>Στις μορφές του μοντέλου περιλαμβάνονται MP3, WAV, FLAC και PCM· οι γενικές ρυθμίσεις σύνθεσης περιγράφουν επίσης Opus και παραλλαγές G.711 μ-law. Μπορεί να χρησιμοποιηθεί μονοφωνικός ή στερεοφωνικός ήχος. Σε αυτή την κάρτα διατίθεται μετατροπή κειμένου σε ομιλία, ενώ η χωριστή προετοιμασία φωνής και οι προηγμένες ρυθμίσεις εφαρμόζονται μόνο εντός του υποστηριζόμενου τρόπου πρόσβασης μέσω Ailoot.</p><p>Οι πρόσθετες ρυθμίσεις ήχου περιλαμβάνουν συχνότητες δειγματοληψίας <strong>8, 16, 22,05, 24, 32 και 44,1 kHz</strong>. Για MP3 προβλέπεται ρυθμός μετάδοσης <strong>32, 64, 128 ή 256 kbit/s</strong>. Μπορεί επίσης να αλλάζει η χροιά της φωνής και να εφαρμόζεται ένα εφέ: ηχώ μεγάλου χώρου, ηχώ αίθουσας, τηλεφωνικός ήχος ή ρομποτική φωνή. Τα εφέ μεταβολής φωνής υποστηρίζονται για MP3, WAV και FLAC όταν ο ήχος λαμβάνεται ολόκληρος, ενώ σε έξοδο σε ροή μόνο για MP3. Οι μορφές G.711 μ-law χρησιμοποιούν συχνότητα 8 kHz. Αυτές οι δυνατότητες ανήκουν στις ρυθμίσεις σύνθεσης της MiniMax.</p><p>Ο κατασκευαστής προβλέπει συγχρονισμό ομιλίας και κειμένου: χρονικές σημάνσεις ανά πρόταση, ανά λέξη ή ανά λέξη κατά τη σταδιακή έξοδο. Αυτό βοηθά να συνδυάζεται η εκφώνηση με την εμφάνιση του κειμένου. Η πρόσθετη δυνατότητα απαιτεί υποστήριξη της αντίστοιχης μορφής απάντησης.</p>",
  "aboutText": "### Φωνή για αφήγηση και ανάγνωση μεγάλων κειμένων\n\nΤο Speech 02 HD δημιουργεί ομιλία με έμφαση στην ποιότητα, στον ρυθμό και στη σταθερότητα του ήχου. Ο κατασκευαστής επισημαίνει την αφήγηση υλικού και τα ηχητικά βιβλία, όπου η φωνή πρέπει να διατηρεί τον χαρακτήρα της και να αποδίδει ομαλά ένα μεγάλο κείμενο. Είναι μοντέλο σύνθεσης: δέχεται κείμενο και το μετατρέπει σε ήχο ομιλίας.\n\n### Σύνδεση κειμένου και χροιάς\n\nΗ οικογένεια Speech 02 βασίζεται σε αυτοπαλινδρομική αρχιτεκτονική Transformer και εκπαιδεύσιμο κωδικοποιητή ομιλητή. Η εξαγωγή της χροιάς και η παραγωγή ομιλίας εκπαιδεύτηκαν από κοινού, ώστε τα χαρακτηριστικά της φωνής να συνδέονται με το περιεχόμενο. Οι δυνατότητες της οικογένειας περιλαμβάνουν χρήση ήδη προετοιμασμένων κλωνοποιημένων φωνών και συνδυασμό γλώσσας, προφοράς και τρόπου εκφώνησης.\n\n### Συναίσθημα και πολύγλωσση ανάγνωση\n\nΗ συναισθηματική απόδοση μπορεί να καθορίζεται από το νόημα του κειμένου ή να ορίζεται χειροκίνητα. Διατίθενται χαρά, λύπη, θυμός, φόβος, αποστροφή, έκπληξη και ηρεμία. Το μοντέλο εργάζεται με ρωσικά, αγγλικά και άλλες γλώσσες· ο κατασκευαστής περιγράφει διαφορετικές αγγλικές προφορές, κινεζικά και καντονέζικα, ιαπωνικά, κορεατικά, ευρωπαϊκές και άλλες γλώσσες.\n\nΗ τρέχουσα περιγραφή του Speech 02 εξαιρεί ρητά τα περσικά, τα φιλιππινέζικα και τα ταμίλ. Ο γενικός κατάλογος γλωσσών νεότερων γενεών Speech δεν πρέπει να μεταφέρεται αυτόματα σε αυτή την έκδοση.\n\n### Ρύθμιση φωνής\n\nΓια τη σύνθεση προβλέπονται επιλογή φωνής, μεταβολή ταχύτητας **0,5–2**, ένταση πάνω από 0 και έως **10** και τονικό ύψος από **−12 έως 12**. Στο λεξικό προφοράς μπορούν να ορίζονται αντικαταστάσεις της γραπτής μορφής με την επιθυμητή εκφώνηση· υποστηρίζονται φωνητικές γραφές και ιαπωνικές παραλλαγές προφοράς. Αυτό βοηθά στον έλεγχο της εκφώνησης ονομάτων και αμφίσημων λέξεων.\n\n### Παύσεις και ολοκληρωμένος ήχος\n\nΟ κατασκευαστής επιτρέπει παύσεις μεταξύ εκφωνούμενων τμημάτων διάρκειας **0,01–99,99 δευτερολέπτων**. Η διάρκεια ορίζεται με ακρίβεια δύο δεκαδικών ψηφίων· οι δείκτες τοποθετούνται μεταξύ εκφωνούμενων τμημάτων και όχι διαδοχικά. Το κείμενο ενός σύγχρονου αιτήματος πρέπει να έχει λιγότερους από **10 000 χαρακτήρες**. Προβλέπεται λήψη του ήχου ολόκληρου ή σταδιακά· για κείμενο πάνω από 3000 χαρακτήρες συνιστάται έξοδος σε ροή.\n\nΣτις μορφές του μοντέλου περιλαμβάνονται MP3, WAV, FLAC και PCM· οι γενικές ρυθμίσεις σύνθεσης περιγράφουν επίσης Opus και παραλλαγές G.711 μ-law. Μπορεί να χρησιμοποιηθεί μονοφωνικός ή στερεοφωνικός ήχος. Σε αυτή την κάρτα διατίθεται μετατροπή κειμένου σε ομιλία, ενώ η χωριστή προετοιμασία φωνής και οι προηγμένες ρυθμίσεις εφαρμόζονται μόνο εντός του υποστηριζόμενου τρόπου πρόσβασης μέσω Ailoot.\n\nΟι πρόσθετες ρυθμίσεις ήχου περιλαμβάνουν συχνότητες δειγματοληψίας **8, 16, 22,05, 24, 32 και 44,1 kHz**. Για MP3 προβλέπεται ρυθμός μετάδοσης **32, 64, 128 ή 256 kbit/s**. Μπορεί επίσης να αλλάζει η χροιά της φωνής και να εφαρμόζεται ένα εφέ: ηχώ μεγάλου χώρου, ηχώ αίθουσας, τηλεφωνικός ήχος ή ρομποτική φωνή. Τα εφέ μεταβολής φωνής υποστηρίζονται για MP3, WAV και FLAC όταν ο ήχος λαμβάνεται ολόκληρος, ενώ σε έξοδο σε ροή μόνο για MP3. Οι μορφές G.711 μ-law χρησιμοποιούν συχνότητα 8 kHz. Αυτές οι δυνατότητες ανήκουν στις ρυθμίσεις σύνθεσης της MiniMax.\n\nΟ κατασκευαστής προβλέπει συγχρονισμό ομιλίας και κειμένου: χρονικές σημάνσεις ανά πρόταση, ανά λέξη ή ανά λέξη κατά τη σταδιακή έξοδο. Αυτό βοηθά να συνδυάζεται η εκφώνηση με την εμφάνιση του κειμένου. Η πρόσθετη δυνατότητα απαιτεί υποστήριξη της αντίστοιχης μορφής απάντησης.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "0e10a5ac92ea4702c2471fd5235ca721b7453d6d8089d8b7bfda39832be1a40e",
    "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\">MM</span><h2 id=\"sheet-title\">speech-02-hd</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Κλείσιμο\">×</button></div><div class=\"idline\"><span>MiniMax /</span><code>speech-02-hd</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=\"Core|speech|/v1/audio/speech|speech-02-hd\">Σύνθεση ομιλίας</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\">Το Speech-02 HD είναι μοντέλο σύνθεσης ομιλίας με έμφαση στην ποιότητα του ήχου και στην ομοιότητα της φωνής.</p><dl class=\"card-io\" data-card-io><div><dt>Αποδεκτές είσοδοι</dt><dd>Κείμενο</dd></div><div><dt>Αποτελέσματα</dt><dd>speech</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\"><h4>Φωνή για αφήγηση και ανάγνωση μεγάλων κειμένων</h4><p>Το Speech 02 HD δημιουργεί ομιλία με έμφαση στην ποιότητα, στον ρυθμό και στη σταθερότητα του ήχου. Ο κατασκευαστής επισημαίνει την αφήγηση υλικού και τα ηχητικά βιβλία, όπου η φωνή πρέπει να διατηρεί τον χαρακτήρα της και να αποδίδει ομαλά ένα μεγάλο κείμενο. Είναι μοντέλο σύνθεσης: δέχεται κείμενο και το μετατρέπει σε ήχο ομιλίας.</p><h4>Σύνδεση κειμένου και χροιάς</h4><p>Η οικογένεια Speech 02 βασίζεται σε αυτοπαλινδρομική αρχιτεκτονική Transformer και εκπαιδεύσιμο κωδικοποιητή ομιλητή. Η εξαγωγή της χροιάς και η παραγωγή ομιλίας εκπαιδεύτηκαν από κοινού, ώστε τα χαρακτηριστικά της φωνής να συνδέονται με το περιεχόμενο. Οι δυνατότητες της οικογένειας περιλαμβάνουν χρήση ήδη προετοιμασμένων κλωνοποιημένων φωνών και συνδυασμό γλώσσας, προφοράς και τρόπου εκφώνησης.</p><h4>Συναίσθημα και πολύγλωσση ανάγνωση</h4><p>Η συναισθηματική απόδοση μπορεί να καθορίζεται από το νόημα του κειμένου ή να ορίζεται χειροκίνητα. Διατίθενται χαρά, λύπη, θυμός, φόβος, αποστροφή, έκπληξη και ηρεμία. Το μοντέλο εργάζεται με ρωσικά, αγγλικά και άλλες γλώσσες· ο κατασκευαστής περιγράφει διαφορετικές αγγλικές προφορές, κινεζικά και καντονέζικα, ιαπωνικά, κορεατικά, ευρωπαϊκές και άλλες γλώσσες.</p><p>Η τρέχουσα περιγραφή του Speech 02 εξαιρεί ρητά τα περσικά, τα φιλιππινέζικα και τα ταμίλ. Ο γενικός κατάλογος γλωσσών νεότερων γενεών Speech δεν πρέπει να μεταφέρεται αυτόματα σε αυτή την έκδοση.</p><h4>Ρύθμιση φωνής</h4><p>Για τη σύνθεση προβλέπονται επιλογή φωνής, μεταβολή ταχύτητας <strong>0,5–2</strong>, ένταση πάνω από 0 και έως <strong>10</strong> και τονικό ύψος από <strong>−12 έως 12</strong>. Στο λεξικό προφοράς μπορούν να ορίζονται αντικαταστάσεις της γραπτής μορφής με την επιθυμητή εκφώνηση· υποστηρίζονται φωνητικές γραφές και ιαπωνικές παραλλαγές προφοράς. Αυτό βοηθά στον έλεγχο της εκφώνησης ονομάτων και αμφίσημων λέξεων.</p><h4>Παύσεις και ολοκληρωμένος ήχος</h4><p>Ο κατασκευαστής επιτρέπει παύσεις μεταξύ εκφωνούμενων τμημάτων διάρκειας <strong>0,01–99,99 δευτερολέπτων</strong>. Η διάρκεια ορίζεται με ακρίβεια δύο δεκαδικών ψηφίων· οι δείκτες τοποθετούνται μεταξύ εκφωνούμενων τμημάτων και όχι διαδοχικά. Το κείμενο ενός σύγχρονου αιτήματος πρέπει να έχει λιγότερους από <strong>10 000 χαρακτήρες</strong>. Προβλέπεται λήψη του ήχου ολόκληρου ή σταδιακά· για κείμενο πάνω από 3000 χαρακτήρες συνιστάται έξοδος σε ροή.</p><p>Στις μορφές του μοντέλου περιλαμβάνονται MP3, WAV, FLAC και PCM· οι γενικές ρυθμίσεις σύνθεσης περιγράφουν επίσης Opus και παραλλαγές G.711 μ-law. Μπορεί να χρησιμοποιηθεί μονοφωνικός ή στερεοφωνικός ήχος. Σε αυτή την κάρτα διατίθεται μετατροπή κειμένου σε ομιλία, ενώ η χωριστή προετοιμασία φωνής και οι προηγμένες ρυθμίσεις εφαρμόζονται μόνο εντός του υποστηριζόμενου τρόπου πρόσβασης μέσω Ailoot.</p><p>Οι πρόσθετες ρυθμίσεις ήχου περιλαμβάνουν συχνότητες δειγματοληψίας <strong>8, 16, 22,05, 24, 32 και 44,1 kHz</strong>. Για MP3 προβλέπεται ρυθμός μετάδοσης <strong>32, 64, 128 ή 256 kbit/s</strong>. Μπορεί επίσης να αλλάζει η χροιά της φωνής και να εφαρμόζεται ένα εφέ: ηχώ μεγάλου χώρου, ηχώ αίθουσας, τηλεφωνικός ήχος ή ρομποτική φωνή. Τα εφέ μεταβολής φωνής υποστηρίζονται για MP3, WAV και FLAC όταν ο ήχος λαμβάνεται ολόκληρος, ενώ σε έξοδο σε ροή μόνο για MP3. Οι μορφές G.711 μ-law χρησιμοποιούν συχνότητα 8 kHz. Αυτές οι δυνατότητες ανήκουν στις ρυθμίσεις σύνθεσης της MiniMax.</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 · Σύνθεση ομιλίας</b> <code>POST /v1/audio/speech</code></summary><dl class=\"method-capabilities\"><div><dt>Είσοδος</dt><dd><code>text</code></dd></div><div><dt>Έξοδος</dt><dd><code>speech</code></dd></div><div><dt>Μορφή εξόδου</dt><dd>mp3</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 data-parameter-availability=\"source_interface\"><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>speech-02-hd</div></td><td data-cell-label=\"Προεπιλογή\" data-default=\"unspecified\"><span class=\"card-cell-label\">Προεπιλογή</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">input</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span><code>string</code></td><td data-cell-label=\"Απαίτηση\"><span class=\"card-cell-label\">Απαίτηση</span>Υποχρεωτικό</td><td data-cell-label=\"Τιμές και όρια\"><span class=\"card-cell-label\">Τιμές και όρια</span><div>Ελάχιστο μήκος: 1</div><div>Μέγιστο μήκος (αποκλειστικό): 10.000</div><div>Μονάδα: χαρακτήρες Unicode</div></td><td data-cell-label=\"Προεπιλογή\" data-default=\"unspecified\"><span class=\"card-cell-label\">Προεπιλογή</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">voice</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>Μοτίβο: ^[A-Za-z0-9_-]{1,128}$</div></td><td data-cell-label=\"Προεπιλογή\" data-default=\"unspecified\"><span class=\"card-cell-label\">Προεπιλογή</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">response_format</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>mp3</div></td><td data-cell-label=\"Προεπιλογή\" data-default=\"unspecified\"><span class=\"card-cell-label\">Προεπιλογή</span>—</td></tr></tbody></table></div><details class=\"card-about\" data-material-combinations><summary>Συνδυασμοί υλικών εισόδου</summary><p class=\"note-s\"><b>text_to_speech</b> · Υποχρεωτικό: input</p></details><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>material_types</code></th><td data-cell-label=\"Σύμβαση\"><span class=\"card-cell-label\">Σύμβαση</span>text</td></tr><tr><th data-cell-label=\"Παράμετρος\" scope=\"row\"><span class=\"card-cell-label\">Παράμετρος</span><code>required</code></th><td data-cell-label=\"Σύμβαση\"><span class=\"card-cell-label\">Σύμβαση</span>null</td></tr><tr><th data-cell-label=\"Παράμετρος\" scope=\"row\"><span class=\"card-cell-label\">Παράμετρος</span><code>optional_controls</code></th><td data-cell-label=\"Σύμβαση\"><span class=\"card-cell-label\">Σύμβαση</span>null</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><p class=\"note-s\">Οι δομές και τα ID των μεθόδων είναι ακριβή· η δυνατότητα του προμηθευτή είναι ξεχωριστή από την αποδοχή αιτημάτων.</p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Τιμολόγηση</h3><h4>Χρεώσεις μεθόδων Ailoot</h4><section class=\"meth\" data-route=\"Core\"><header><b><span class=\"alias\">Ailoot</span> Σύνθεση ομιλίας</b><code>POST /v1/audio/speech</code></header><dl><div><dt>Είσοδος</dt><dd>100,00 $ <em>ανά 1 εκατομμύριο χαρακτήρες</em></dd></div></dl></section><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 · Σύνθεση ομιλίας</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Παραλλαγές κώδικα\"><button class=\"cg-tab\" id=\"model-code-467-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-467-panel-0\" aria-selected=\"true\" tabindex=\"0\">Παράδειγμα ομιλίας</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Αντιγραφή κώδικα\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-467-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-467-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\n: &quot;${AILOOT_TEXT_FILE:?Set your actual UTF-8 narration script}&quot;\nexport AILOOT_TEXT_FILE\n: &quot;${AILOOT_VOICE_ID:?Set the actual accepted voice ID for this model}&quot;\nexport AILOOT_VOICE_ID\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport json,os\nfrom pathlib import Path\np=json.loads(&#39;{&quot;model&quot;: &quot;speech-02-hd&quot;, &quot;input&quot;: &quot;&quot;}&#39;)\nf=Path(os.environ[&quot;AILOOT_TEXT_FILE&quot;])\nif not f.is_file():raise SystemExit(&quot;Choose your actual UTF-8 source material&quot;)\ntext=f.read_text(encoding=&quot;utf-8&quot;)\nif not text.strip():raise SystemExit(&quot;Source material must contain text&quot;)\np[&quot;input&quot;]=text\nimport re\nvoice=os.environ[&quot;AILOOT_VOICE_ID&quot;]\nif not re.fullmatch(r&quot;[A-Za-z0-9_-]{1,128}&quot;,voice):raise SystemExit(&quot;Set an actual accepted voice ID&quot;)\np[&quot;voice&quot;]=voice\nPath(&quot;request.json&quot;).write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/speech \\\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 speech.mp3\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Λήψη και αποθήκευση αποτελεσμάτων</h3><h4>Ailoot · Σύνθεση ομιλίας</h4><p class=\"note-s\">mp3</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\">Διατηρήστε ολόκληρο το δυαδικό αποτέλεσμα και τις κεφαλίδες. Αν επιστραφεί JSON ή επιστραφούν πολλαπλές έξοδοι, διατηρήστε κάθε στοιχείο δεδομένων και ανακτήστε κάθε πραγματικό υπογεγραμμένο URL πόρου.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Αν χρειάζεται έλεγχος της αρχικής απάντησης</h5><p class=\"note-s\">Διατηρήστε το αρχικό operation_id/X-Client-Request-ID για τη συμφωνία των εγγραφών χωρίς νέα υποβολή· δεν υπάρχει ειδική διαδρομή περιοδικού ελέγχου για τον ήχο.</p></div><details class=\"card-about\" data-output-fields><summary>Πεδία απάντησης</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>Πεδίο</th><th>Τύπος</th></tr></thead><tbody><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">binary audio</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span>bytes</td></tr><tr><th data-cell-label=\"Πεδίο\" scope=\"row\"><span class=\"card-cell-label\">Πεδίο</span><code class=\"card-field-name\">response headers</code></th><td data-cell-label=\"Τύπος\" data-field-type><span class=\"card-cell-label\">Τύπος</span>headers</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>Μη έγκυρα υποχρεωτικά πεδία, μη έγκυρη αναπαράσταση υλικού ή μη έγκυρη τιμή παραμέτρου</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><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=\"Core\"><b>Ailoot</b> <a href=\"#m=speech-02-hd&amp;route=Core&amp;caller=speech-02-hd&amp;fmt=speech\"><code>speech-02-hd</code></a></span></p><h4>Εναλλακτικές διαδρομές μεθόδων</h4><p class=\"note-s\">Χρησιμοποιήστε τις διαδρομές μεθόδων που εμφανίζονται παραπάνω.</p><h4>Σχετικά ID μοντέλων</h4><p class=\"note-s\"><a href=\"#m=speech-02-hd&amp;route=Core&amp;caller=speech-02-hd&amp;fmt=speech\"><code>speech-02-hd</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "speech-02-hd",
        "fmt": "speech",
        "http": "POST",
        "path": "/v1/audio/speech",
        "request_model_id": "speech-02-hd",
        "route_label": "Core"
      },
      "method_key": "Core|speech|/v1/audio/speech|speech-02-hd",
      "ordinal": 0,
      "rawMethod": {
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "cache_write_5m": null,
        "conditional_meter": null,
        "contract": {
          "data": {
            "all_results": "Keep the complete binary result and headers. If JSON/multiple outputs are returned, retain every data item and fetch each actual signed asset URL.",
            "errors": [
              {
                "code": null,
                "condition": "Μη έγκυρα υποχρεωτικά πεδία, μη έγκυρη αναπαράσταση υλικού ή μη έγκυρη τιμή παραμέτρου",
                "http_status": 400,
                "recovery": "Διορθώστε τα υποδεικνυόμενα πεδία πριν από νέο αίτημα δημιουργίας.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Η απόκριση που επιστράφηκε αναφέρει ότι η λειτουργία ή το αποτέλεσμα χρειάζεται έλεγχο",
                "http_status": null,
                "recovery": "Διατηρήστε το αρχικό ID της λειτουργίας/εργασίας που επιστράφηκε, τις κεφαλίδες του αιτήματος και την απόκριση· συνεχίστε με τις υποστηριζόμενες αναγνώσεις αυτής της αρχικής λειτουργίας. Μην υποβάλετε ξανά το αίτημα δημιουργίας.",
                "type": "server_error"
              }
            ],
            "hints": [
              "MiniMax accepts optionalresponse_formatmp3. Actual voice IDs come from the selected model voice profile.",
              "The facade uses bufferedMP3; provider speed/volume/pitch/sample-rate fields are fixed by the adapter, not callercontrols."
            ],
            "ignored_fields": [],
            "lifecycle": {
              "all_results": "Follow everyactualreturnedoutputandownedasset; no result is discardedbecauseindex0orcontent_urlalreadyexists.",
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed URL; never construct token"
                }
              ],
              "mode": "synchronous_result_then_owned_library",
              "operation_id_is_not_task_id": true,
              "status": [
                {
                  "http": "GET",
                  "id_source": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Διατηρήστε το αρχικό operation_id/X-Client-Request-ID για τη συμφωνία των εγγραφών χωρίς νέα υποβολή· δεν υπάρχει ειδική διαδρομή περιοδικού ελέγχου για τον ήχο."
            },
            "material_combinations": [
              {
                "content_type": "application/json",
                "mode": "text_to_speech",
                "required": [
                  "input"
                ]
              }
            ],
            "media_library": {
              "asset": {
                "fields": [
                  {
                    "description": null,
                    "name": "asset_id",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "task_id",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "output_key",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "family",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "model",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "method",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "status",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "content_type",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "sha256",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "size_bytes",
                    "type": "integer"
                  },
                  {
                    "description": null,
                    "name": "content_url",
                    "type": "string"
                  }
                ],
                "http": "GET",
                "id_source": "actual returned asset_id",
                "path": "/v1/media/assets/{asset_id}"
              },
              "content": {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "range_header_supported": true,
                "url_source": "Use exact returned signed content_url including its token; do not construct a token."
              },
              "expired_link": {
                "code": "link_expired",
                "http_status": 404,
                "recovery": "Read the asset again to obtain its refreshed signed content_url, then fetch that URL. Do not regenerate."
              },
              "list": {
                "all_pages": "Follow every returned next_cursor, then select records by their actual task_id/output_key.",
                "http": "GET",
                "output_fields": [
                  {
                    "description": null,
                    "name": "object",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "data",
                    "type": "asset[]"
                  },
                  {
                    "description": null,
                    "name": "next_cursor",
                    "type": "string|null"
                  }
                ],
                "parameters": [
                  {
                    "availability": "source_interface",
                    "default": null,
                    "default_known": false,
                    "enum": null,
                    "enum_known": false,
                    "name": "family",
                    "required": false,
                    "type": "string"
                  },
                  {
                    "availability": "source_interface",
                    "default": null,
                    "default_known": false,
                    "enum": null,
                    "enum_known": false,
                    "name": "cursor",
                    "required": false,
                    "type": "string"
                  },
                  {
                    "availability": "source_interface",
                    "default": 20,
                    "default_known": true,
                    "enum": null,
                    "enum_known": false,
                    "maximum": 100,
                    "minimum": 1,
                    "name": "limit",
                    "required": false,
                    "type": "integer"
                  }
                ],
                "path": "/v1/media/assets"
              },
              "revoke": {
                "http": "DELETE",
                "meaning": "Revokes/deletes the existing owned file; this is not generation cancellation.",
                "path": "/v1/media/assets/{asset_id}",
                "pending_status": "revoking",
                "success_statuses": [
                  202,
                  204
                ]
              },
              "task": {
                "http": "GET",
                "id_source": "actual returned task_id or media library record; operation_id is not task_id",
                "path": "/v1/media/tasks/{task_id}"
              }
            },
            "operation_modes": [
              "text_to_speech"
            ],
            "outputs": {
              "all_results": "Διατηρήστε ολόκληρο το δυαδικό αποτέλεσμα και τις κεφαλίδες. Αν επιστραφεί JSON ή επιστραφούν πολλαπλές έξοδοι, διατηρήστε κάθε στοιχείο δεδομένων και ανακτήστε κάθε πραγματικό υπογεγραμμένο URL πόρου.",
              "family": "audio",
              "fields": [
                {
                  "description": null,
                  "name": "binary audio",
                  "type": "bytes"
                },
                {
                  "description": null,
                  "name": "response headers",
                  "type": "headers"
                }
              ],
              "format": "mp3"
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "speech-02-hd"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "maximum_length_exclusive": 10000,
                "min_length": 1,
                "name": "input",
                "required": true,
                "type": "string",
                "unit": "χαρακτήρες Unicode"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "voice",
                "pattern": "^[A-Za-z0-9_-]{1,128}$",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "mp3"
                ],
                "enum_known": true,
                "name": "response_format",
                "required": false,
                "type": "string"
              }
            ],
            "profile_binding": "Exact existing Ailoot model and method; interface constraints below do not assert provider qualification.",
            "unsupported": []
          },
          "hints": [
            "Οι δομές και τα ID των μεθόδων είναι ακριβή· η δυνατότητα του προμηθευτή είναι ξεχωριστή από την αποδοχή αιτημάτων."
          ],
          "input": {
            "material_types": [
              "text"
            ],
            "optional_controls": null,
            "required": null
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed URL; never construct token"
              }
            ],
            "mode": "synchronous_result_then_owned_library",
            "operation_id_is_not_task_id": true,
            "status": [
              {
                "http": "GET",
                "id_source": "Το πραγματικό task_id που επιστράφηκε ή μια εγγραφή στη βιβλιοθήκη πολυμέσων",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Retain original operation_id/X-Client-Request-ID for reconciliation without resubmission; no dedicated audio poll route."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/speech"
          },
          "operation_modes": [
            "audio_speech"
          ],
          "output": {
            "family": [
              "speech"
            ],
            "format": null,
            "multioutputs": "retain every actual response output"
          }
        },
        "ctx": null,
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_TEXT_FILE:?Set your actual UTF-8 narration script}\"\nexport AILOOT_TEXT_FILE\n: \"${AILOOT_VOICE_ID:?Set the actual accepted voice ID for this model}\"\nexport AILOOT_VOICE_ID\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"speech-02-hd\", \"input\": \"\"}')\nf=Path(os.environ[\"AILOOT_TEXT_FILE\"])\nif not f.is_file():raise SystemExit(\"Choose your actual UTF-8 source material\")\ntext=f.read_text(encoding=\"utf-8\")\nif not text.strip():raise SystemExit(\"Source material must contain text\")\np[\"input\"]=text\nimport re\nvoice=os.environ[\"AILOOT_VOICE_ID\"]\nif not re.fullmatch(r\"[A-Za-z0-9_-]{1,128}\",voice):raise SystemExit(\"Set an actual accepted voice ID\")\np[\"voice\"]=voice\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/speech \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o speech.mp3\n",
            "label": "Synthesize your actual script",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "speech",
        "http": "POST",
        "img_in": null,
        "img_out": null,
        "in": null,
        "input": [
          "text"
        ],
        "label": "Σύνθεση ομιλίας",
        "max_out": null,
        "max_tool_calls": null,
        "out": null,
        "output": [
          "speech"
        ],
        "path": "/v1/audio/speech",
        "pricing_profiles": [
          {
            "dimensions": {},
            "label": "Core",
            "units": [
              {
                "amount": 100,
                "amount_unit": "usd_per_display_unit",
                "key": "tts_million_chars",
                "label": "per 1 million characters",
                "side": "in"
              }
            ]
          }
        ],
        "request_model_id": "speech-02-hd",
        "route_label": "Core",
        "status_reads": [],
        "tiers": [],
        "tool_prices": null,
        "unit": "tts_million_chars",
        "units": [
          {
            "key": "tts_million_chars",
            "label": "per 1 million characters",
            "side": "in",
            "usd": 100
          }
        ]
      }
    }
  ],
  "model_id": "speech-02-hd",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "20860ec6ee0bdad7ce919c378ea876aa5dad800701a6475f464a6b93a4d55c79",
    "input_html_sha256": "b1e198ed7546abc46067f0b938b22c54b168eedd3722d023daeb67655db19a0d",
    "private_audit_sha256": "117af2486b3779dcc14a8494bf8b37cee011166478584bc728c399c68e5ef9f7",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/el/speech-02-hd/",
    "description": "Το Speech-02 HD είναι μοντέλο σύνθεσης ομιλίας με έμφαση στην ποιότητα του ήχου και στην ομοιότητα της φωνής.",
    "locale": "el",
    "md_url": "https://ailoot.ai/models/el/speech-02-hd/index.md",
    "title": "speech-02-hd — Ailoot",
    "url": "https://ailoot.ai/models/el/speech-02-hd/"
  },
  "rawModel": {
    "about": "### Φωνή για αφήγηση και ανάγνωση μεγάλων κειμένων\n\nΤο Speech 02 HD δημιουργεί ομιλία με έμφαση στην ποιότητα, στον ρυθμό και στη σταθερότητα του ήχου. Ο κατασκευαστής επισημαίνει την αφήγηση υλικού και τα ηχητικά βιβλία, όπου η φωνή πρέπει να διατηρεί τον χαρακτήρα της και να αποδίδει ομαλά ένα μεγάλο κείμενο. Είναι μοντέλο σύνθεσης: δέχεται κείμενο και το μετατρέπει σε ήχο ομιλίας.\n\n### Σύνδεση κειμένου και χροιάς\n\nΗ οικογένεια Speech 02 βασίζεται σε αυτοπαλινδρομική αρχιτεκτονική Transformer και εκπαιδεύσιμο κωδικοποιητή ομιλητή. Η εξαγωγή της χροιάς και η παραγωγή ομιλίας εκπαιδεύτηκαν από κοινού, ώστε τα χαρακτηριστικά της φωνής να συνδέονται με το περιεχόμενο. Οι δυνατότητες της οικογένειας περιλαμβάνουν χρήση ήδη προετοιμασμένων κλωνοποιημένων φωνών και συνδυασμό γλώσσας, προφοράς και τρόπου εκφώνησης.\n\n### Συναίσθημα και πολύγλωσση ανάγνωση\n\nΗ συναισθηματική απόδοση μπορεί να καθορίζεται από το νόημα του κειμένου ή να ορίζεται χειροκίνητα. Διατίθενται χαρά, λύπη, θυμός, φόβος, αποστροφή, έκπληξη και ηρεμία. Το μοντέλο εργάζεται με ρωσικά, αγγλικά και άλλες γλώσσες· ο κατασκευαστής περιγράφει διαφορετικές αγγλικές προφορές, κινεζικά και καντονέζικα, ιαπωνικά, κορεατικά, ευρωπαϊκές και άλλες γλώσσες.\n\nΗ τρέχουσα περιγραφή του Speech 02 εξαιρεί ρητά τα περσικά, τα φιλιππινέζικα και τα ταμίλ. Ο γενικός κατάλογος γλωσσών νεότερων γενεών Speech δεν πρέπει να μεταφέρεται αυτόματα σε αυτή την έκδοση.\n\n### Ρύθμιση φωνής\n\nΓια τη σύνθεση προβλέπονται επιλογή φωνής, μεταβολή ταχύτητας **0,5–2**, ένταση πάνω από 0 και έως **10** και τονικό ύψος από **−12 έως 12**. Στο λεξικό προφοράς μπορούν να ορίζονται αντικαταστάσεις της γραπτής μορφής με την επιθυμητή εκφώνηση· υποστηρίζονται φωνητικές γραφές και ιαπωνικές παραλλαγές προφοράς. Αυτό βοηθά στον έλεγχο της εκφώνησης ονομάτων και αμφίσημων λέξεων.\n\n### Παύσεις και ολοκληρωμένος ήχος\n\nΟ κατασκευαστής επιτρέπει παύσεις μεταξύ εκφωνούμενων τμημάτων διάρκειας **0,01–99,99 δευτερολέπτων**. Η διάρκεια ορίζεται με ακρίβεια δύο δεκαδικών ψηφίων· οι δείκτες τοποθετούνται μεταξύ εκφωνούμενων τμημάτων και όχι διαδοχικά. Το κείμενο ενός σύγχρονου αιτήματος πρέπει να έχει λιγότερους από **10 000 χαρακτήρες**. Προβλέπεται λήψη του ήχου ολόκληρου ή σταδιακά· για κείμενο πάνω από 3000 χαρακτήρες συνιστάται έξοδος σε ροή.\n\nΣτις μορφές του μοντέλου περιλαμβάνονται MP3, WAV, FLAC και PCM· οι γενικές ρυθμίσεις σύνθεσης περιγράφουν επίσης Opus και παραλλαγές G.711 μ-law. Μπορεί να χρησιμοποιηθεί μονοφωνικός ή στερεοφωνικός ήχος. Σε αυτή την κάρτα διατίθεται μετατροπή κειμένου σε ομιλία, ενώ η χωριστή προετοιμασία φωνής και οι προηγμένες ρυθμίσεις εφαρμόζονται μόνο εντός του υποστηριζόμενου τρόπου πρόσβασης μέσω Ailoot.\n\nΟι πρόσθετες ρυθμίσεις ήχου περιλαμβάνουν συχνότητες δειγματοληψίας **8, 16, 22,05, 24, 32 και 44,1 kHz**. Για MP3 προβλέπεται ρυθμός μετάδοσης **32, 64, 128 ή 256 kbit/s**. Μπορεί επίσης να αλλάζει η χροιά της φωνής και να εφαρμόζεται ένα εφέ: ηχώ μεγάλου χώρου, ηχώ αίθουσας, τηλεφωνικός ήχος ή ρομποτική φωνή. Τα εφέ μεταβολής φωνής υποστηρίζονται για MP3, WAV και FLAC όταν ο ήχος λαμβάνεται ολόκληρος, ενώ σε έξοδο σε ροή μόνο για MP3. Οι μορφές G.711 μ-law χρησιμοποιούν συχνότητα 8 kHz. Αυτές οι δυνατότητες ανήκουν στις ρυθμίσεις σύνθεσης της MiniMax.\n\nΟ κατασκευαστής προβλέπει συγχρονισμό ομιλίας και κειμένου: χρονικές σημάνσεις ανά πρόταση, ανά λέξη ή ανά λέξη κατά τη σταδιακή έξοδο. Αυτό βοηθά να συνδυάζεται η εκφώνηση με την εμφάνιση του κειμένου. Η πρόσθετη δυνατότητα απαιτεί υποστήριξη της αντίστοιχης μορφής απάντησης.",
    "alias_of": null,
    "aliases": [],
    "author": "MiniMax",
    "ctx": null,
    "formats": [
      "speech"
    ],
    "id": "speech-02-hd",
    "input": [
      "text"
    ],
    "kind": "speech",
    "max_out": null,
    "methods": [
      {
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "cache_write_5m": null,
        "conditional_meter": null,
        "contract": {
          "data": {
            "all_results": "Keep the complete binary result and headers. If JSON/multiple outputs are returned, retain every data item and fetch each actual signed asset URL.",
            "errors": [
              {
                "code": null,
                "condition": "Μη έγκυρα υποχρεωτικά πεδία, μη έγκυρη αναπαράσταση υλικού ή μη έγκυρη τιμή παραμέτρου",
                "http_status": 400,
                "recovery": "Διορθώστε τα υποδεικνυόμενα πεδία πριν από νέο αίτημα δημιουργίας.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Η απόκριση που επιστράφηκε αναφέρει ότι η λειτουργία ή το αποτέλεσμα χρειάζεται έλεγχο",
                "http_status": null,
                "recovery": "Διατηρήστε το αρχικό ID της λειτουργίας/εργασίας που επιστράφηκε, τις κεφαλίδες του αιτήματος και την απόκριση· συνεχίστε με τις υποστηριζόμενες αναγνώσεις αυτής της αρχικής λειτουργίας. Μην υποβάλετε ξανά το αίτημα δημιουργίας.",
                "type": "server_error"
              }
            ],
            "hints": [
              "MiniMax accepts optionalresponse_formatmp3. Actual voice IDs come from the selected model voice profile.",
              "The facade uses bufferedMP3; provider speed/volume/pitch/sample-rate fields are fixed by the adapter, not callercontrols."
            ],
            "ignored_fields": [],
            "lifecycle": {
              "all_results": "Follow everyactualreturnedoutputandownedasset; no result is discardedbecauseindex0orcontent_urlalreadyexists.",
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed URL; never construct token"
                }
              ],
              "mode": "synchronous_result_then_owned_library",
              "operation_id_is_not_task_id": true,
              "status": [
                {
                  "http": "GET",
                  "id_source": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Διατηρήστε το αρχικό operation_id/X-Client-Request-ID για τη συμφωνία των εγγραφών χωρίς νέα υποβολή· δεν υπάρχει ειδική διαδρομή περιοδικού ελέγχου για τον ήχο."
            },
            "material_combinations": [
              {
                "content_type": "application/json",
                "mode": "text_to_speech",
                "required": [
                  "input"
                ]
              }
            ],
            "media_library": {
              "asset": {
                "fields": [
                  {
                    "description": null,
                    "name": "asset_id",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "task_id",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "output_key",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "family",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "model",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "method",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "status",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "content_type",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "sha256",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "size_bytes",
                    "type": "integer"
                  },
                  {
                    "description": null,
                    "name": "content_url",
                    "type": "string"
                  }
                ],
                "http": "GET",
                "id_source": "actual returned asset_id",
                "path": "/v1/media/assets/{asset_id}"
              },
              "content": {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "range_header_supported": true,
                "url_source": "Use exact returned signed content_url including its token; do not construct a token."
              },
              "expired_link": {
                "code": "link_expired",
                "http_status": 404,
                "recovery": "Read the asset again to obtain its refreshed signed content_url, then fetch that URL. Do not regenerate."
              },
              "list": {
                "all_pages": "Follow every returned next_cursor, then select records by their actual task_id/output_key.",
                "http": "GET",
                "output_fields": [
                  {
                    "description": null,
                    "name": "object",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "data",
                    "type": "asset[]"
                  },
                  {
                    "description": null,
                    "name": "next_cursor",
                    "type": "string|null"
                  }
                ],
                "parameters": [
                  {
                    "availability": "source_interface",
                    "default": null,
                    "default_known": false,
                    "enum": null,
                    "enum_known": false,
                    "name": "family",
                    "required": false,
                    "type": "string"
                  },
                  {
                    "availability": "source_interface",
                    "default": null,
                    "default_known": false,
                    "enum": null,
                    "enum_known": false,
                    "name": "cursor",
                    "required": false,
                    "type": "string"
                  },
                  {
                    "availability": "source_interface",
                    "default": 20,
                    "default_known": true,
                    "enum": null,
                    "enum_known": false,
                    "maximum": 100,
                    "minimum": 1,
                    "name": "limit",
                    "required": false,
                    "type": "integer"
                  }
                ],
                "path": "/v1/media/assets"
              },
              "revoke": {
                "http": "DELETE",
                "meaning": "Revokes/deletes the existing owned file; this is not generation cancellation.",
                "path": "/v1/media/assets/{asset_id}",
                "pending_status": "revoking",
                "success_statuses": [
                  202,
                  204
                ]
              },
              "task": {
                "http": "GET",
                "id_source": "actual returned task_id or media library record; operation_id is not task_id",
                "path": "/v1/media/tasks/{task_id}"
              }
            },
            "operation_modes": [
              "text_to_speech"
            ],
            "outputs": {
              "all_results": "Διατηρήστε ολόκληρο το δυαδικό αποτέλεσμα και τις κεφαλίδες. Αν επιστραφεί JSON ή επιστραφούν πολλαπλές έξοδοι, διατηρήστε κάθε στοιχείο δεδομένων και ανακτήστε κάθε πραγματικό υπογεγραμμένο URL πόρου.",
              "family": "audio",
              "fields": [
                {
                  "description": null,
                  "name": "binary audio",
                  "type": "bytes"
                },
                {
                  "description": null,
                  "name": "response headers",
                  "type": "headers"
                }
              ],
              "format": "mp3"
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "speech-02-hd"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "maximum_length_exclusive": 10000,
                "min_length": 1,
                "name": "input",
                "required": true,
                "type": "string",
                "unit": "χαρακτήρες Unicode"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "voice",
                "pattern": "^[A-Za-z0-9_-]{1,128}$",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "mp3"
                ],
                "enum_known": true,
                "name": "response_format",
                "required": false,
                "type": "string"
              }
            ],
            "profile_binding": "Exact existing Ailoot model and method; interface constraints below do not assert provider qualification.",
            "unsupported": []
          },
          "hints": [
            "Οι δομές και τα ID των μεθόδων είναι ακριβή· η δυνατότητα του προμηθευτή είναι ξεχωριστή από την αποδοχή αιτημάτων."
          ],
          "input": {
            "material_types": [
              "text"
            ],
            "optional_controls": null,
            "required": null
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed URL; never construct token"
              }
            ],
            "mode": "synchronous_result_then_owned_library",
            "operation_id_is_not_task_id": true,
            "status": [
              {
                "http": "GET",
                "id_source": "Το πραγματικό task_id που επιστράφηκε ή μια εγγραφή στη βιβλιοθήκη πολυμέσων",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Retain original operation_id/X-Client-Request-ID for reconciliation without resubmission; no dedicated audio poll route."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/speech"
          },
          "operation_modes": [
            "audio_speech"
          ],
          "output": {
            "family": [
              "speech"
            ],
            "format": null,
            "multioutputs": "retain every actual response output"
          }
        },
        "ctx": null,
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_TEXT_FILE:?Set your actual UTF-8 narration script}\"\nexport AILOOT_TEXT_FILE\n: \"${AILOOT_VOICE_ID:?Set the actual accepted voice ID for this model}\"\nexport AILOOT_VOICE_ID\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"speech-02-hd\", \"input\": \"\"}')\nf=Path(os.environ[\"AILOOT_TEXT_FILE\"])\nif not f.is_file():raise SystemExit(\"Choose your actual UTF-8 source material\")\ntext=f.read_text(encoding=\"utf-8\")\nif not text.strip():raise SystemExit(\"Source material must contain text\")\np[\"input\"]=text\nimport re\nvoice=os.environ[\"AILOOT_VOICE_ID\"]\nif not re.fullmatch(r\"[A-Za-z0-9_-]{1,128}\",voice):raise SystemExit(\"Set an actual accepted voice ID\")\np[\"voice\"]=voice\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/speech \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o speech.mp3\n",
            "label": "Synthesize your actual script",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "speech",
        "http": "POST",
        "img_in": null,
        "img_out": null,
        "in": null,
        "input": [
          "text"
        ],
        "label": "Σύνθεση ομιλίας",
        "max_out": null,
        "max_tool_calls": null,
        "out": null,
        "output": [
          "speech"
        ],
        "path": "/v1/audio/speech",
        "pricing_profiles": [
          {
            "dimensions": {},
            "label": "Core",
            "units": [
              {
                "amount": 100,
                "amount_unit": "usd_per_display_unit",
                "key": "tts_million_chars",
                "label": "per 1 million characters",
                "side": "in"
              }
            ]
          }
        ],
        "request_model_id": "speech-02-hd",
        "route_label": "Core",
        "status_reads": [],
        "tiers": [],
        "tool_prices": null,
        "unit": "tts_million_chars",
        "units": [
          {
            "key": "tts_million_chars",
            "label": "per 1 million characters",
            "side": "in",
            "usd": 100
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "speech-02-hd",
        "request_model_id": "speech-02-hd",
        "route_label": "Core"
      }
    ],
    "name": "speech-02-hd",
    "price": {
      "in": 100,
      "in_label": "per 1 million characters",
      "out": null,
      "out_label": null,
      "sort_in": null,
      "sort_out": null,
      "varies": false
    },
    "short": "Το Speech-02 HD είναι μοντέλο σύνθεσης ομιλίας με έμφαση στην ποιότητα του ήχου και στην ομοιότητα της φωνής."
  },
  "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": "Το Speech-02 HD είναι μοντέλο σύνθεσης ομιλίας με έμφαση στην ποιότητα του ήχου και στην ομοιότητα της φωνής.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "6866eb77651c64d3c2d7c4ae7b0d953d2a9ec107c8ec856fda5d0be41b636da8",
    "renderer_sha256": "3ed36f7af4f78822bafbd174fdcaed7b698a18a86efe254253d37f1b098a7566"
  },
  "sourceRevision": "7b5d2dfcf701d9aea704d53400431bfe23bf393999f0bbe78aed228104f3edf3"
}
