{
  "aboutHtml": "<p>Google Gemini 3.1 Flash TTS Preview הוא מהדורת המרת הטקסט לדיבור של משפחת Gemini 3.1 Flash Audio. הוא מקבל טקסט ומפיק אודיו מדובר עם הבעה המכוונת באמצעות פרומפט. Google מתארת את הדור הזה כשיפור בטבעיות הדיבור, ביכולת השליטה ובביצועים הרב־לשוניים, עם דיאלוג מובנה מרובה דוברים ויותר מ־70 שפות. שימוש מעשי הוא שיעור קצר עם קריינות, חילופי דברים בין דמויות או קטע מדובר שאופן ההגשה שלו חשוב לא פחות מהניסוח.</p><p>יש להכין תסריט מוגמר ובריף ביצוע. הדור הזה משתמש בהוראות בשפה טבעית בתוך קלט הטקסט כדי לכוון סגנון קולי, קצב והגשה. המהדורה של Google מציגה הוראות סצנה להגדרת המצב, Audio Profiles של דוברים להגדרת דמויות ו־Director’s Notes להכוונת קצב, טון ומבטא. יש להשאיר את החלקים האלה מזוהים בהכנת הפרומפט, כך שאפשר יהיה לבדוק בנפרד את המילים המיועדות ואת הוראות הביצוע. קל יותר לתקן בריף חסכוני מכמה תיאורים מתחרים של אותו קול.</p><p>לדוגמה, בריף חזרה מקורי יכול לתאר קריין רגוע המסביר מוצג במוזיאון, עם ניסוח בקצב מדוד וטון חם יותר במשפט האחרון. התסריט המצורף צריך לכלול את שמות המוצג האמיתיים ואת הניסוח המדויק שיש להקריא. בדיאלוג, יש לתת לדמויות פרופילים נבדלים ורצף תורים ברור. יש להשתמש בהקשר הסצנה כדי להסביר אם דובר אחד מרגיע את האחר, שואל שאלה כנה או מגיב בהפתעה מאופקת. התוצר שנוצר ואותו יש להעריך הוא הביצוע הנשמע של התסריט הזה.</p><p>תגיות אודיו משולבות מוסיפות שליטה מקומית בתוך הטקסט, ומאפשרות להבעת הדובר להשתנות בתוך משפט במקום להסתמך לחלוטין על הוראת הפתיחה. Google מתארת תגיות כשולטות בסגנון קולי, בקצב ובהגשה. יש להשתמש בהן במקומות שבהם הביצוע דורש שינוי מסוים ולהשאיר את שאר הניסוח טבעי להקראה. ההבחנה השימושית במהדורה הזו היא בין בריף הדמות או הסצנה ברמה הכללית לבין השינוי המקומי בהגשה. קטע ניטרלי קצר יכול לבסס את קול הבסיס לפני שהתסריט מוסיף הכוונה רגשית רבה יותר.</p><p>בעבודה רב־לשונית, יש לספק תסריט בשפה הסופית ולציין בבריף את המבטא וסגנון הדיבור הרצויים. ההודעה של Google מתעדת תמיכה ביותר מ־70 שפות. כהכנה עריכתית מעשית, יש לתת לשמות חוזרים איות עקבי אחד, להרחיב קיצורים דו־משמעיים כשנדרשת קריאה אחת ולבדוק מספרים בתוצאה המדוברת. תווית שפה לבדה אינה מכריעה כיצד שם מותג או מונח שאול צריכים להישמע. יש להשוות את הקטעים שמכילים את המונחים האלה לקריאה הרצויה לפני אישור קריינות ארוכה.</p><p>עמוד מודל Gemini API המדויק מציין מגבלת קלט של 8,192 טוקנים ומגבלת פלט של 16,384 טוקנים למודל התצוגה המקדימה הזה. כרטיס מודל TTS המקורי של DeepMind מציין בנפרד קלט טקסט של עד 16K טוקנים ופלט אודיו של 32K טוקנים; נתוני הכרטיס האלה נפרדים ממגבלות ההגשה של Gemini API. יש לספור את הוראות הביצוע כחלק מהקלט המוכן לצד התסריט. מכסת הפלט מבוטאת בטוקני אודיו, ולכן אינה מבטיחה משך הקלטה מסוים. יש לארגן שיעור או סיפור ארוך במקטעים קוהרנטיים, לשמור על אותו בריף דמות ולהאזין לחיבורים. בדיאלוג מתוסרט, יש לבדוק שיוך וסדר תורים נוסף על המילים המדוברות וההגשה הרגשית.</p><p>תיעוד המעבר של Google מזהה את פלט ברירת המחדל של 3.1 כ־PCM גולמי ללא כותרת מסוג audio/l16. בתי האודיו דורשים מידע השמעה או מכל מתאים בעת הכנת הקלטה ניתנת לעריכה; הוספת שם קובץ WAV בלבד אינה יוצרת כותרת WAV. יש לבדוק את הפורמט שהוחזר בפועל לפני ייבוא התוצאה. Google מציינת גם שאודיו שנוצר באמצעות Gemini 3.1 Flash TTS נושא סימן מים בלתי מורגש של SynthID. סימן המים נוגע לזיהוי אודיו שנוצר, ואינו מחליף תמליל, תוויות דוברים או בדיקת האזנה.</p><p>סגנון ההכנה של 3.1 שונה מהותית מזה של 3.8. ‏Gemini 3.8 מעביר הוראות מתמשכות וזהות דובר למטא־נתוני דיבור מובנים, משתמש בתגיות לאירועים נקודתיים בסוגריים זוויתיים ומשנה את ברירות המחדל של בקשה שהושלמה ל־WAV. יש לשמר פרומפט של 3.1 כפרומפט של 3.1, ולא לערבב לתוכו את מבנה הבקשה החדש יותר. טבלת המודלים הנתמכים של Google מציינת סינתזה של דובר יחיד ומרובת דוברים עבור 3.1, ואילו בקרות הקול המעוצב ושכפול הקול שייכות לרשומות 3.8. מהדורת Flash Live הנפרדת מטפלת בקלט אודיו אינטראקטיבי; מהדורת TTS הזו מיועדת להפקת טקסט־לאודיו שהוכן מראש.</p><p>יש לבדוק את ההקלטה מול התסריט הכתוב עבור מילים שהושמטו או חזרו, שמות, תזמון התורים והשינויים הרגשיים הרצויים. אם משפט אחד דורש הדגשה שונה, יש לתקן את ההוראה המקומית ולבדוק את המעבר המושפע. תהליך זה הופך את בריף הביצוע לשימושי: הוא מתעד מה צריך להישאר יציב אצל הדובר ומה צריך להשתנות בקטע הזה, ואילו התסריט משמר את התוכן שהקהל צריך לשמוע.</p>",
  "aboutText": "Google Gemini 3.1 Flash TTS Preview הוא מהדורת המרת הטקסט לדיבור של משפחת Gemini 3.1 Flash Audio. הוא מקבל טקסט ומפיק אודיו מדובר עם הבעה המכוונת באמצעות פרומפט. Google מתארת את הדור הזה כשיפור בטבעיות הדיבור, ביכולת השליטה ובביצועים הרב־לשוניים, עם דיאלוג מובנה מרובה דוברים ויותר מ־70 שפות. שימוש מעשי הוא שיעור קצר עם קריינות, חילופי דברים בין דמויות או קטע מדובר שאופן ההגשה שלו חשוב לא פחות מהניסוח.\n\nיש להכין תסריט מוגמר ובריף ביצוע. הדור הזה משתמש בהוראות בשפה טבעית בתוך קלט הטקסט כדי לכוון סגנון קולי, קצב והגשה. המהדורה של Google מציגה הוראות סצנה להגדרת המצב, Audio Profiles של דוברים להגדרת דמויות ו־Director’s Notes להכוונת קצב, טון ומבטא. יש להשאיר את החלקים האלה מזוהים בהכנת הפרומפט, כך שאפשר יהיה לבדוק בנפרד את המילים המיועדות ואת הוראות הביצוע. קל יותר לתקן בריף חסכוני מכמה תיאורים מתחרים של אותו קול.\n\nלדוגמה, בריף חזרה מקורי יכול לתאר קריין רגוע המסביר מוצג במוזיאון, עם ניסוח בקצב מדוד וטון חם יותר במשפט האחרון. התסריט המצורף צריך לכלול את שמות המוצג האמיתיים ואת הניסוח המדויק שיש להקריא. בדיאלוג, יש לתת לדמויות פרופילים נבדלים ורצף תורים ברור. יש להשתמש בהקשר הסצנה כדי להסביר אם דובר אחד מרגיע את האחר, שואל שאלה כנה או מגיב בהפתעה מאופקת. התוצר שנוצר ואותו יש להעריך הוא הביצוע הנשמע של התסריט הזה.\n\nתגיות אודיו משולבות מוסיפות שליטה מקומית בתוך הטקסט, ומאפשרות להבעת הדובר להשתנות בתוך משפט במקום להסתמך לחלוטין על הוראת הפתיחה. Google מתארת תגיות כשולטות בסגנון קולי, בקצב ובהגשה. יש להשתמש בהן במקומות שבהם הביצוע דורש שינוי מסוים ולהשאיר את שאר הניסוח טבעי להקראה. ההבחנה השימושית במהדורה הזו היא בין בריף הדמות או הסצנה ברמה הכללית לבין השינוי המקומי בהגשה. קטע ניטרלי קצר יכול לבסס את קול הבסיס לפני שהתסריט מוסיף הכוונה רגשית רבה יותר.\n\nבעבודה רב־לשונית, יש לספק תסריט בשפה הסופית ולציין בבריף את המבטא וסגנון הדיבור הרצויים. ההודעה של Google מתעדת תמיכה ביותר מ־70 שפות. כהכנה עריכתית מעשית, יש לתת לשמות חוזרים איות עקבי אחד, להרחיב קיצורים דו־משמעיים כשנדרשת קריאה אחת ולבדוק מספרים בתוצאה המדוברת. תווית שפה לבדה אינה מכריעה כיצד שם מותג או מונח שאול צריכים להישמע. יש להשוות את הקטעים שמכילים את המונחים האלה לקריאה הרצויה לפני אישור קריינות ארוכה.\n\nעמוד מודל Gemini API המדויק מציין מגבלת קלט של 8,192 טוקנים ומגבלת פלט של 16,384 טוקנים למודל התצוגה המקדימה הזה. כרטיס מודל TTS המקורי של DeepMind מציין בנפרד קלט טקסט של עד 16K טוקנים ופלט אודיו של 32K טוקנים; נתוני הכרטיס האלה נפרדים ממגבלות ההגשה של Gemini API. יש לספור את הוראות הביצוע כחלק מהקלט המוכן לצד התסריט. מכסת הפלט מבוטאת בטוקני אודיו, ולכן אינה מבטיחה משך הקלטה מסוים. יש לארגן שיעור או סיפור ארוך במקטעים קוהרנטיים, לשמור על אותו בריף דמות ולהאזין לחיבורים. בדיאלוג מתוסרט, יש לבדוק שיוך וסדר תורים נוסף על המילים המדוברות וההגשה הרגשית.\n\nתיעוד המעבר של Google מזהה את פלט ברירת המחדל של 3.1 כ־PCM גולמי ללא כותרת מסוג audio/l16. בתי האודיו דורשים מידע השמעה או מכל מתאים בעת הכנת הקלטה ניתנת לעריכה; הוספת שם קובץ WAV בלבד אינה יוצרת כותרת WAV. יש לבדוק את הפורמט שהוחזר בפועל לפני ייבוא התוצאה. Google מציינת גם שאודיו שנוצר באמצעות Gemini 3.1 Flash TTS נושא סימן מים בלתי מורגש של SynthID. סימן המים נוגע לזיהוי אודיו שנוצר, ואינו מחליף תמליל, תוויות דוברים או בדיקת האזנה.\n\nסגנון ההכנה של 3.1 שונה מהותית מזה של 3.8. ‏Gemini 3.8 מעביר הוראות מתמשכות וזהות דובר למטא־נתוני דיבור מובנים, משתמש בתגיות לאירועים נקודתיים בסוגריים זוויתיים ומשנה את ברירות המחדל של בקשה שהושלמה ל־WAV. יש לשמר פרומפט של 3.1 כפרומפט של 3.1, ולא לערבב לתוכו את מבנה הבקשה החדש יותר. טבלת המודלים הנתמכים של Google מציינת סינתזה של דובר יחיד ומרובת דוברים עבור 3.1, ואילו בקרות הקול המעוצב ושכפול הקול שייכות לרשומות 3.8. מהדורת Flash Live הנפרדת מטפלת בקלט אודיו אינטראקטיבי; מהדורת TTS הזו מיועדת להפקת טקסט־לאודיו שהוכן מראש.\n\nיש לבדוק את ההקלטה מול התסריט הכתוב עבור מילים שהושמטו או חזרו, שמות, תזמון התורים והשינויים הרגשיים הרצויים. אם משפט אחד דורש הדגשה שונה, יש לתקן את ההוראה המקומית ולבדוק את המעבר המושפע. תהליך זה הופך את בריף הביצוע לשימושי: הוא מתעד מה צריך להישאר יציב אצל הדובר ומה צריך להשתנות בקטע הזה, ואילו התסריט משמר את התוכן שהקהל צריך לשמוע.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "205664c2f884fdc663daeb4e3c88fac1a12c20d85b62ee21754e69f7ad5a8dc7",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "he",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">G</span><h2 id=\"sheet-title\">Google: Gemini 3.1 Flash TTS Preview</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"סגירה\">×</button></div><div class=\"idline\"><span>Google /</span><code>google/gemini-3.1-flash-tts-preview</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|speech|/v1/audio/speech|google%2Fgemini-3.1-flash-tts-preview\">הקראה</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\">Google Gemini 3.1 Flash TTS Preview ממיר תסריטים כתובים לאודיו מדובר מלא הבעה. הוראות בשפה טבעית, Audio Profiles לדוברים, Director’s Notes ותגיות אודיו משולבות מעצבים את הקצב, הטון והמבטא. הוא תומך בדיאלוג מובנה וביותר מ־70 שפות, ומשתמש בפורמט הפרומפט והאודיו של 3.1.</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>Google Gemini 3.1 Flash TTS Preview הוא מהדורת המרת הטקסט לדיבור של משפחת Gemini 3.1 Flash Audio. הוא מקבל טקסט ומפיק אודיו מדובר עם הבעה המכוונת באמצעות פרומפט. Google מתארת את הדור הזה כשיפור בטבעיות הדיבור, ביכולת השליטה ובביצועים הרב־לשוניים, עם דיאלוג מובנה מרובה דוברים ויותר מ־70 שפות. שימוש מעשי הוא שיעור קצר עם קריינות, חילופי דברים בין דמויות או קטע מדובר שאופן ההגשה שלו חשוב לא פחות מהניסוח.</p><p>יש להכין תסריט מוגמר ובריף ביצוע. הדור הזה משתמש בהוראות בשפה טבעית בתוך קלט הטקסט כדי לכוון סגנון קולי, קצב והגשה. המהדורה של Google מציגה הוראות סצנה להגדרת המצב, Audio Profiles של דוברים להגדרת דמויות ו־Director’s Notes להכוונת קצב, טון ומבטא. יש להשאיר את החלקים האלה מזוהים בהכנת הפרומפט, כך שאפשר יהיה לבדוק בנפרד את המילים המיועדות ואת הוראות הביצוע. קל יותר לתקן בריף חסכוני מכמה תיאורים מתחרים של אותו קול.</p><p>לדוגמה, בריף חזרה מקורי יכול לתאר קריין רגוע המסביר מוצג במוזיאון, עם ניסוח בקצב מדוד וטון חם יותר במשפט האחרון. התסריט המצורף צריך לכלול את שמות המוצג האמיתיים ואת הניסוח המדויק שיש להקריא. בדיאלוג, יש לתת לדמויות פרופילים נבדלים ורצף תורים ברור. יש להשתמש בהקשר הסצנה כדי להסביר אם דובר אחד מרגיע את האחר, שואל שאלה כנה או מגיב בהפתעה מאופקת. התוצר שנוצר ואותו יש להעריך הוא הביצוע הנשמע של התסריט הזה.</p><p>תגיות אודיו משולבות מוסיפות שליטה מקומית בתוך הטקסט, ומאפשרות להבעת הדובר להשתנות בתוך משפט במקום להסתמך לחלוטין על הוראת הפתיחה. Google מתארת תגיות כשולטות בסגנון קולי, בקצב ובהגשה. יש להשתמש בהן במקומות שבהם הביצוע דורש שינוי מסוים ולהשאיר את שאר הניסוח טבעי להקראה. ההבחנה השימושית במהדורה הזו היא בין בריף הדמות או הסצנה ברמה הכללית לבין השינוי המקומי בהגשה. קטע ניטרלי קצר יכול לבסס את קול הבסיס לפני שהתסריט מוסיף הכוונה רגשית רבה יותר.</p><p>בעבודה רב־לשונית, יש לספק תסריט בשפה הסופית ולציין בבריף את המבטא וסגנון הדיבור הרצויים. ההודעה של Google מתעדת תמיכה ביותר מ־70 שפות. כהכנה עריכתית מעשית, יש לתת לשמות חוזרים איות עקבי אחד, להרחיב קיצורים דו־משמעיים כשנדרשת קריאה אחת ולבדוק מספרים בתוצאה המדוברת. תווית שפה לבדה אינה מכריעה כיצד שם מותג או מונח שאול צריכים להישמע. יש להשוות את הקטעים שמכילים את המונחים האלה לקריאה הרצויה לפני אישור קריינות ארוכה.</p><p>עמוד מודל Gemini API המדויק מציין מגבלת קלט של 8,192 טוקנים ומגבלת פלט של 16,384 טוקנים למודל התצוגה המקדימה הזה. כרטיס מודל TTS המקורי של DeepMind מציין בנפרד קלט טקסט של עד 16K טוקנים ופלט אודיו של 32K טוקנים; נתוני הכרטיס האלה נפרדים ממגבלות ההגשה של Gemini API. יש לספור את הוראות הביצוע כחלק מהקלט המוכן לצד התסריט. מכסת הפלט מבוטאת בטוקני אודיו, ולכן אינה מבטיחה משך הקלטה מסוים. יש לארגן שיעור או סיפור ארוך במקטעים קוהרנטיים, לשמור על אותו בריף דמות ולהאזין לחיבורים. בדיאלוג מתוסרט, יש לבדוק שיוך וסדר תורים נוסף על המילים המדוברות וההגשה הרגשית.</p><p>תיעוד המעבר של Google מזהה את פלט ברירת המחדל של 3.1 כ־PCM גולמי ללא כותרת מסוג audio/l16. בתי האודיו דורשים מידע השמעה או מכל מתאים בעת הכנת הקלטה ניתנת לעריכה; הוספת שם קובץ WAV בלבד אינה יוצרת כותרת WAV. יש לבדוק את הפורמט שהוחזר בפועל לפני ייבוא התוצאה. Google מציינת גם שאודיו שנוצר באמצעות Gemini 3.1 Flash TTS נושא סימן מים בלתי מורגש של SynthID. סימן המים נוגע לזיהוי אודיו שנוצר, ואינו מחליף תמליל, תוויות דוברים או בדיקת האזנה.</p><p>סגנון ההכנה של 3.1 שונה מהותית מזה של 3.8. ‏Gemini 3.8 מעביר הוראות מתמשכות וזהות דובר למטא־נתוני דיבור מובנים, משתמש בתגיות לאירועים נקודתיים בסוגריים זוויתיים ומשנה את ברירות המחדל של בקשה שהושלמה ל־WAV. יש לשמר פרומפט של 3.1 כפרומפט של 3.1, ולא לערבב לתוכו את מבנה הבקשה החדש יותר. טבלת המודלים הנתמכים של Google מציינת סינתזה של דובר יחיד ומרובת דוברים עבור 3.1, ואילו בקרות הקול המעוצב ושכפול הקול שייכות לרשומות 3.8. מהדורת Flash Live הנפרדת מטפלת בקלט אודיו אינטראקטיבי; מהדורת TTS הזו מיועדת להפקת טקסט־לאודיו שהוכן מראש.</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/speech</code></summary><dl class=\"method-capabilities\"><div><dt>סוגי קלט</dt><dd><code>text</code></dd></div><div><dt>סוגי פלט</dt><dd><code>audio</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>google/gemini-3.1-flash-tts-preview</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</code></th><td data-cell-label=\"סוג\" data-field-type><span class=\"card-cell-label\">סוג</span><code>string</code></td><td data-cell-label=\"דרישה\"><span class=\"card-cell-label\">דרישה</span>חובה</td><td data-cell-label=\"ערכים ומגבלות\"><span class=\"card-cell-label\">ערכים ומגבלות</span><div>אורך מזערי: ⁦1⁩</div></td><td data-cell-label=\"ברירת מחדל\" data-default=\"unspecified\"><span class=\"card-cell-label\">ברירת מחדל</span>—</td></tr><tr><th data-cell-label=\"שדה\" scope=\"row\"><span class=\"card-cell-label\">שדה</span><code class=\"card-field-name\">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>Zephyr, Puck, Charon, Kore, Fenrir, Leda, Orus, Aoede, Callirrhoe, Autonoe, Enceladus, Iapetus, Umbriel, Algieba, Despina, Erinome, Algenib, Rasalgethi, Laomedeia, Achernar, Alnilam, Schedar, Gacrux, Pulcherrima, Achird, Zubenelgenubi, Vindemiatrix, Sadachbia, Sadaltager, Sulafat</div><div>אורך מזערי: ⁦1⁩</div></td><td data-cell-label=\"ברירת מחדל\" data-default=\"unspecified\"><span class=\"card-cell-label\">ברירת מחדל</span>—</td></tr><tr><th data-cell-label=\"שדה\" scope=\"row\"><span class=\"card-cell-label\">שדה</span><code class=\"card-field-name\">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, pcm</div></td><td data-cell-label=\"ברירת מחדל\" data-default=\"known\"><span class=\"card-cell-label\">ברירת מחדל</span>pcm</td></tr><tr><th data-cell-label=\"שדה\" scope=\"row\"><span class=\"card-cell-label\">שדה</span><code class=\"card-field-name\">provider</code></th><td data-cell-label=\"סוג\" data-field-type><span class=\"card-cell-label\">סוג</span><code>object</code></td><td data-cell-label=\"דרישה\"><span class=\"card-cell-label\">דרישה</span>רשות</td><td data-cell-label=\"ערכים ומגבלות\"><span class=\"card-cell-label\">ערכים ומגבלות</span></td><td data-cell-label=\"ברירת מחדל\" data-default=\"unspecified\"><span class=\"card-cell-label\">ברירת מחדל</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>פרמטרים ומחזור חיים של השיטה</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>פרמטר</th><th>מפרט</th></tr></thead><tbody><tr><th data-cell-label=\"פרמטר\" scope=\"row\"><span class=\"card-cell-label\">פרמטר</span><code>content_type</code></th><td data-cell-label=\"מפרט\"><span class=\"card-cell-label\">מפרט</span>application/json</td></tr><tr><th data-cell-label=\"פרמטר\" scope=\"row\"><span class=\"card-cell-label\">פרמטר</span><code>required</code></th><td data-cell-label=\"מפרט\"><span class=\"card-cell-label\">מפרט</span>model, input, voice</td></tr><tr><th data-cell-label=\"פרמטר\" scope=\"row\"><span class=\"card-cell-label\">פרמטר</span><code>material_types</code></th><td data-cell-label=\"מפרט\"><span class=\"card-cell-label\">מפרט</span>text</td></tr></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>תעריפי בסיס לטוקנים</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>—</b> <span class=\"price-unit\">/ 1K טוקנים</span></div><div><span>פלט · טוקני פלט</span> <b>—</b> <span class=\"price-unit\">/ 1K טוקנים</span></div><div><span>קלט · קריאה מהמטמון</span> <b>—</b> <span class=\"price-unit\">/ 1K טוקנים</span></div><div><span>קלט · כתיבה למטמון</span> <b>—</b> <span class=\"price-unit\">/ 1K טוקנים</span></div><div><span>קלט · כתיבה למטמון, 1 שעה</span> <b>—</b> <span class=\"price-unit\">/ 1K טוקנים</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>/ 1K טוקנים</td><td data-cell-label=\"חיוב\"><span class=\"card-cell-label\">חיוב</span><div><span>קלט</span> <b>$0.002</b> <span class=\"price-unit\">/ 1K טוקנים</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>/ 1K טוקנים</td><td data-cell-label=\"חיוב\"><span class=\"card-cell-label\">חיוב</span><div><span>פלט</span> <b>$0.04</b> <span class=\"price-unit\">/ 1K טוקנים</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">לפני הבקשה Ailoot משריינת סכום משוער. לאחר קבלת התוצאה היא מסדירה את החיוב הסופי לפי השימוש המדוד. הסדרת חיוב בהזרמה משתמשת ברשומת השימוש הסופית. <a href=\"/docs/he/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-1460-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1460-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-1460-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1460-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\n: &quot;${AILOOT_INPUT_TEXT:?Set the actual documented input value}&quot;\nexport AILOOT_INPUT_TEXT\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport json,os\nfrom pathlib import Path\nrequest={&#39;model&#39;: &#39;google/gemini-3.1-flash-tts-preview&#39;, &#39;input&#39;: &#39;${ACTUAL_INPUT_TEXT}&#39;, &#39;voice&#39;: &#39;Orus&#39;, &#39;response_format&#39;: &#39;pcm&#39;}\nrequest[&#39;input&#39;]=os.environ[&#39;AILOOT_INPUT_TEXT&#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/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 response.bin\n# Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.\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\">אודיו בינארי מלא או תגובת audio_url מקורית, כותרות וכל נכס שבבעלותכם.</p><ul class=\"card-result-paths\"><li><code>GET /v1/media/tasks/{task_id}</code></li><li><code>GET /v1/media/assets/{asset_id}/content</code></li><li><code>GET /v1/media/assets</code></li><li><code>GET /v1/media/assets/{asset_id}</code></li></ul><details class=\"card-about\"><summary>קריאות תוכן נוספות</summary><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"אפשרויות קוד\"><button class=\"cg-tab\" id=\"model-code-1461-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1461-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-1461-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1461-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -o owned-assets.json\n# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.\n</code></pre></div></div></div></details><div class=\"card-result-process\" data-all-results><h5>שמירת כל התוצאות שהושלמו</h5><p class=\"note-s\">שמרו כל תגובה מלאה, קובץ ומקטע תוכן שהוחזרו.</p><p class=\"note-s\">שמרו את התשובה המלאה ואת הכותרות, כל פלט שהתקבל בפועל, את המזהים המקוריים שהוחזרו ואת כל שדות השימוש. שחזרו את הפעולה המקורית בלי לשלוח שוב בקשת יצירה.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>כשצריך לבדוק את התגובה המקורית</h5><p class=\"note-s\">שמרו את X-Client-Request-ID שהוחזר לצורך התאמת רישומים. קראו רק ערכי task_id/asset_id שהוחזרו בפועל או את ספריית המדיה שבבעלותכם; לעולם אל תבנו URL של משימה ממזהה הפעולה ואל תשלחו שוב בקשת יצירה.</p></div></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=google%2Fgemini-3.1-flash-tts-preview&amp;route=Ultra&amp;caller=google%2Fgemini-3.1-flash-tts-preview&amp;fmt=speech\"><code>google/gemini-3.1-flash-tts-preview</code></a></span></p><h4>כינויים לנתיבי שיטות</h4><p class=\"note-s\">השתמשו בנתיבי השיטות המוצגים למעלה.</p><h4>מזהי מודלים קשורים IDs</h4><p class=\"note-s\"><a href=\"#m=google%2Fgemini-3.1-flash-tts-preview&amp;route=Ultra&amp;caller=google%2Fgemini-3.1-flash-tts-preview&amp;fmt=speech\"><code>google/gemini-3.1-flash-tts-preview</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "google/gemini-3.1-flash-tts-preview",
        "fmt": "speech",
        "http": "POST",
        "path": "/v1/audio/speech",
        "request_model_id": "google/gemini-3.1-flash-tts-preview",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|speech|/v1/audio/speech|google%2Fgemini-3.1-flash-tts-preview",
      "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.",
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed URL; never construct token"
                }
              ],
              "mode": "synchronous_result_then_owned_library",
              "operation_id_is_not_task_id": true,
              "status": [
                {
                  "http": "GET",
                  "id_source": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "שמרו את X-Client-Request-ID שהוחזר לצורך התאמת רישומים. קראו רק ערכי task_id/asset_id שהוחזרו בפועל או את ספריית המדיה שבבעלותכם; לעולם אל תבנו URL של משימה ממזהה הפעולה ואל תשלחו שוב בקשת יצירה."
            },
            "outputs": {
              "all_results": "שמרו את התשובה המלאה ואת הכותרות, כל פלט שהתקבל בפועל, את המזהים המקוריים שהוחזרו ואת כל שדות השימוש. שחזרו את הפעולה המקורית בלי לשלוח שוב בקשת יצירה.",
              "family": "audio",
              "formats": [
                "mp3",
                "pcm"
              ],
              "result": "אודיו בינארי מלא או תגובת audio_url מקורית, כותרות וכל נכס שבבעלותכם."
            },
            "parameters": [
              {
                "enum": [
                  "google/gemini-3.1-flash-tts-preview"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "min_length": 1,
                "name": "input",
                "required": true,
                "type": "string"
              },
              {
                "enum": [
                  "Zephyr",
                  "Puck",
                  "Charon",
                  "Kore",
                  "Fenrir",
                  "Leda",
                  "Orus",
                  "Aoede",
                  "Callirrhoe",
                  "Autonoe",
                  "Enceladus",
                  "Iapetus",
                  "Umbriel",
                  "Algieba",
                  "Despina",
                  "Erinome",
                  "Algenib",
                  "Rasalgethi",
                  "Laomedeia",
                  "Achernar",
                  "Alnilam",
                  "Schedar",
                  "Gacrux",
                  "Pulcherrima",
                  "Achird",
                  "Zubenelgenubi",
                  "Vindemiatrix",
                  "Sadachbia",
                  "Sadaltager",
                  "Sulafat"
                ],
                "enum_known": true,
                "min_length": 1,
                "name": "voice",
                "required": true,
                "type": "string"
              },
              {
                "default": "pcm",
                "default_known": true,
                "enum": [
                  "mp3",
                  "pcm"
                ],
                "enum_known": true,
                "name": "response_format",
                "required": false,
                "type": "string"
              },
              {
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "input": {
                  "minLength": 1,
                  "type": "string"
                },
                "model": {
                  "enum": [
                    "google/gemini-3.1-flash-tts-preview"
                  ],
                  "type": "string"
                },
                "provider": {
                  "description": "Documented speech data policy and provider-specific options.",
                  "properties": {
                    "data_collection": {
                      "enum": [
                        "allow",
                        "deny",
                        null
                      ],
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "options": {
                      "type": "object"
                    },
                    "zdr": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    }
                  },
                  "type": "object"
                },
                "response_format": {
                  "default": "pcm",
                  "enum": [
                    "mp3",
                    "pcm"
                  ],
                  "type": "string"
                },
                "voice": {
                  "enum": [
                    "Zephyr",
                    "Puck",
                    "Charon",
                    "Kore",
                    "Fenrir",
                    "Leda",
                    "Orus",
                    "Aoede",
                    "Callirrhoe",
                    "Autonoe",
                    "Enceladus",
                    "Iapetus",
                    "Umbriel",
                    "Algieba",
                    "Despina",
                    "Erinome",
                    "Algenib",
                    "Rasalgethi",
                    "Laomedeia",
                    "Achernar",
                    "Alnilam",
                    "Schedar",
                    "Gacrux",
                    "Pulcherrima",
                    "Achird",
                    "Zubenelgenubi",
                    "Vindemiatrix",
                    "Sadachbia",
                    "Sadaltager",
                    "Sulafat"
                  ],
                  "minLength": 1,
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input",
                "voice"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "input": "${ACTUAL_INPUT_TEXT}",
                "model": "google/gemini-3.1-flash-tts-preview",
                "response_format": "pcm",
                "voice": "Orus"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_types": [
              "text"
            ],
            "required": [
              "model",
              "input",
              "voice"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed URL; never construct token"
              }
            ],
            "mode": "synchronous_result_then_owned_library",
            "operation_id_is_not_task_id": true,
            "status": [
              {
                "http": "GET",
                "id_source": "ערך task_id שהוחזר בפועל או רשומה בספריית המדיה",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Keep the returned X-Client-Request-ID for reconciliation. Read only actual returned task_id/asset_id values or the owned media library; never build a task URL from the operation ID and never resubmit creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/speech"
          },
          "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": "audio",
            "formats": [
              "mp3",
              "pcm"
            ],
            "result": "Complete binary audio or original audio_url response, headers and every owned asset."
          }
        },
        "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": "/ 1K tokens"
            },
            "label": "input token",
            "units": [
              {
                "amount": "0.002000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_token",
                "label": "input token",
                "native_amount_usd_per_unit": "0.000002",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "/ 1K tokens"
            },
            "label": "output token",
            "units": [
              {
                "amount": "0.04000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_token",
                "label": "output token",
                "native_amount_usd_per_unit": "0.00004",
                "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"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_INPUT_TEXT:?Set the actual documented input value}\"\nexport AILOOT_INPUT_TEXT\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\nrequest={'model': 'google/gemini-3.1-flash-tts-preview', 'input': '${ACTUAL_INPUT_TEXT}', 'voice': 'Orus', 'response_format': 'pcm'}\nrequest['input']=os.environ['AILOOT_INPUT_TEXT']\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/speech \\\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 response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.\n",
            "label": "Use actual input and retain the complete result",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o owned-assets.json\n# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.\n",
            "label": "Read existing owned assets",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "speech",
        "hints": [
          "Use the exact caller model ID and documented input representation.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "text"
        ],
        "label": "דיבור",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "audio_speech",
        "out": null,
        "output": [
          "audio"
        ],
        "path": "/v1/audio/speech",
        "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": {
            "input_token": 2e-06,
            "output_token": 4e-05
          }
        },
        "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": "/ 1K tokens"
            },
            "label": "input token",
            "units": [
              {
                "amount": "0.002000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_token",
                "label": "input token",
                "native_amount_usd_per_unit": "0.000002",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "/ 1K tokens"
            },
            "label": "output token",
            "units": [
              {
                "amount": "0.04000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_token",
                "label": "output token",
                "native_amount_usd_per_unit": "0.00004",
                "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"
              }
            ]
          }
        ],
        "request_model_id": "google/gemini-3.1-flash-tts-preview",
        "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.002000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_token",
            "label": "input token",
            "native_amount_usd_per_unit": "0.000002",
            "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": "0.04000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_token",
            "label": "output token",
            "native_amount_usd_per_unit": "0.00004",
            "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"
          }
        ]
      }
    }
  ],
  "model_id": "google/gemini-3.1-flash-tts-preview",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "48fd881373d4cec9f441014030f8a96a2085e4d0d280ed954d1a5b75e3fce3c2",
    "input_html_sha256": "e552046ff875b9960e7f39272ae82ec5c21b2099ccc764e184fdf50b6fa921af",
    "private_audit_sha256": "f6c34e8feda3e8817ac8be5b7320eb9b4c4262921429c79f44ba642f8ca800bd",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/he/google-gemini-3-1-flash-tts-preview/",
    "description": "Google Gemini 3.1 Flash TTS Preview ממיר תסריטים כתובים לאודיו מדובר מלא הבעה. הוראות בשפה טבעית, Audio Profiles לדוברים, Director’s Notes ותגיות אודיו משולבות מעצבים את הקצב, הטון והמבטא. הוא תומך בדיאלוג מובנה וביותר מ־70 שפות, ומשתמש בפורמט הפרומפט והאודיו של 3.1.",
    "locale": "he",
    "md_url": "https://ailoot.ai/models/he/google-gemini-3-1-flash-tts-preview/index.md",
    "title": "Google: Gemini 3.1 Flash TTS Preview — Ailoot",
    "url": "https://ailoot.ai/models/he/google-gemini-3-1-flash-tts-preview/"
  },
  "rawModel": {
    "about": "Google Gemini 3.1 Flash TTS Preview הוא מהדורת המרת הטקסט לדיבור של משפחת Gemini 3.1 Flash Audio. הוא מקבל טקסט ומפיק אודיו מדובר עם הבעה המכוונת באמצעות פרומפט. Google מתארת את הדור הזה כשיפור בטבעיות הדיבור, ביכולת השליטה ובביצועים הרב־לשוניים, עם דיאלוג מובנה מרובה דוברים ויותר מ־70 שפות. שימוש מעשי הוא שיעור קצר עם קריינות, חילופי דברים בין דמויות או קטע מדובר שאופן ההגשה שלו חשוב לא פחות מהניסוח.\n\nיש להכין תסריט מוגמר ובריף ביצוע. הדור הזה משתמש בהוראות בשפה טבעית בתוך קלט הטקסט כדי לכוון סגנון קולי, קצב והגשה. המהדורה של Google מציגה הוראות סצנה להגדרת המצב, Audio Profiles של דוברים להגדרת דמויות ו־Director’s Notes להכוונת קצב, טון ומבטא. יש להשאיר את החלקים האלה מזוהים בהכנת הפרומפט, כך שאפשר יהיה לבדוק בנפרד את המילים המיועדות ואת הוראות הביצוע. קל יותר לתקן בריף חסכוני מכמה תיאורים מתחרים של אותו קול.\n\nלדוגמה, בריף חזרה מקורי יכול לתאר קריין רגוע המסביר מוצג במוזיאון, עם ניסוח בקצב מדוד וטון חם יותר במשפט האחרון. התסריט המצורף צריך לכלול את שמות המוצג האמיתיים ואת הניסוח המדויק שיש להקריא. בדיאלוג, יש לתת לדמויות פרופילים נבדלים ורצף תורים ברור. יש להשתמש בהקשר הסצנה כדי להסביר אם דובר אחד מרגיע את האחר, שואל שאלה כנה או מגיב בהפתעה מאופקת. התוצר שנוצר ואותו יש להעריך הוא הביצוע הנשמע של התסריט הזה.\n\nתגיות אודיו משולבות מוסיפות שליטה מקומית בתוך הטקסט, ומאפשרות להבעת הדובר להשתנות בתוך משפט במקום להסתמך לחלוטין על הוראת הפתיחה. Google מתארת תגיות כשולטות בסגנון קולי, בקצב ובהגשה. יש להשתמש בהן במקומות שבהם הביצוע דורש שינוי מסוים ולהשאיר את שאר הניסוח טבעי להקראה. ההבחנה השימושית במהדורה הזו היא בין בריף הדמות או הסצנה ברמה הכללית לבין השינוי המקומי בהגשה. קטע ניטרלי קצר יכול לבסס את קול הבסיס לפני שהתסריט מוסיף הכוונה רגשית רבה יותר.\n\nבעבודה רב־לשונית, יש לספק תסריט בשפה הסופית ולציין בבריף את המבטא וסגנון הדיבור הרצויים. ההודעה של Google מתעדת תמיכה ביותר מ־70 שפות. כהכנה עריכתית מעשית, יש לתת לשמות חוזרים איות עקבי אחד, להרחיב קיצורים דו־משמעיים כשנדרשת קריאה אחת ולבדוק מספרים בתוצאה המדוברת. תווית שפה לבדה אינה מכריעה כיצד שם מותג או מונח שאול צריכים להישמע. יש להשוות את הקטעים שמכילים את המונחים האלה לקריאה הרצויה לפני אישור קריינות ארוכה.\n\nעמוד מודל Gemini API המדויק מציין מגבלת קלט של 8,192 טוקנים ומגבלת פלט של 16,384 טוקנים למודל התצוגה המקדימה הזה. כרטיס מודל TTS המקורי של DeepMind מציין בנפרד קלט טקסט של עד 16K טוקנים ופלט אודיו של 32K טוקנים; נתוני הכרטיס האלה נפרדים ממגבלות ההגשה של Gemini API. יש לספור את הוראות הביצוע כחלק מהקלט המוכן לצד התסריט. מכסת הפלט מבוטאת בטוקני אודיו, ולכן אינה מבטיחה משך הקלטה מסוים. יש לארגן שיעור או סיפור ארוך במקטעים קוהרנטיים, לשמור על אותו בריף דמות ולהאזין לחיבורים. בדיאלוג מתוסרט, יש לבדוק שיוך וסדר תורים נוסף על המילים המדוברות וההגשה הרגשית.\n\nתיעוד המעבר של Google מזהה את פלט ברירת המחדל של 3.1 כ־PCM גולמי ללא כותרת מסוג audio/l16. בתי האודיו דורשים מידע השמעה או מכל מתאים בעת הכנת הקלטה ניתנת לעריכה; הוספת שם קובץ WAV בלבד אינה יוצרת כותרת WAV. יש לבדוק את הפורמט שהוחזר בפועל לפני ייבוא התוצאה. Google מציינת גם שאודיו שנוצר באמצעות Gemini 3.1 Flash TTS נושא סימן מים בלתי מורגש של SynthID. סימן המים נוגע לזיהוי אודיו שנוצר, ואינו מחליף תמליל, תוויות דוברים או בדיקת האזנה.\n\nסגנון ההכנה של 3.1 שונה מהותית מזה של 3.8. ‏Gemini 3.8 מעביר הוראות מתמשכות וזהות דובר למטא־נתוני דיבור מובנים, משתמש בתגיות לאירועים נקודתיים בסוגריים זוויתיים ומשנה את ברירות המחדל של בקשה שהושלמה ל־WAV. יש לשמר פרומפט של 3.1 כפרומפט של 3.1, ולא לערבב לתוכו את מבנה הבקשה החדש יותר. טבלת המודלים הנתמכים של Google מציינת סינתזה של דובר יחיד ומרובת דוברים עבור 3.1, ואילו בקרות הקול המעוצב ושכפול הקול שייכות לרשומות 3.8. מהדורת Flash Live הנפרדת מטפלת בקלט אודיו אינטראקטיבי; מהדורת TTS הזו מיועדת להפקת טקסט־לאודיו שהוכן מראש.\n\nיש לבדוק את ההקלטה מול התסריט הכתוב עבור מילים שהושמטו או חזרו, שמות, תזמון התורים והשינויים הרגשיים הרצויים. אם משפט אחד דורש הדגשה שונה, יש לתקן את ההוראה המקומית ולבדוק את המעבר המושפע. תהליך זה הופך את בריף הביצוע לשימושי: הוא מתעד מה צריך להישאר יציב אצל הדובר ומה צריך להשתנות בקטע הזה, ואילו התסריט משמר את התוכן שהקהל צריך לשמוע.",
    "alias_of": null,
    "aliases": [],
    "author": "Google",
    "capabilities": {
      "context_length": 32768,
      "manufacturer_input": [
        "text"
      ],
      "manufacturer_output": [
        "speech"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.002000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_token",
            "label": "input token",
            "native_amount_usd_per_unit": "0.000002",
            "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": "0.04000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_token",
            "label": "output token",
            "native_amount_usd_per_unit": "0.00004",
            "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"
          }
        ],
        "summary": "התמחור המלא של התצורה מופיע בפרטים."
      }
    ],
    "ctx": null,
    "formats": [
      "speech"
    ],
    "id": "google/gemini-3.1-flash-tts-preview",
    "input": [
      "text"
    ],
    "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.",
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed URL; never construct token"
                }
              ],
              "mode": "synchronous_result_then_owned_library",
              "operation_id_is_not_task_id": true,
              "status": [
                {
                  "http": "GET",
                  "id_source": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "שמרו את X-Client-Request-ID שהוחזר לצורך התאמת רישומים. קראו רק ערכי task_id/asset_id שהוחזרו בפועל או את ספריית המדיה שבבעלותכם; לעולם אל תבנו URL של משימה ממזהה הפעולה ואל תשלחו שוב בקשת יצירה."
            },
            "outputs": {
              "all_results": "שמרו את התשובה המלאה ואת הכותרות, כל פלט שהתקבל בפועל, את המזהים המקוריים שהוחזרו ואת כל שדות השימוש. שחזרו את הפעולה המקורית בלי לשלוח שוב בקשת יצירה.",
              "family": "audio",
              "formats": [
                "mp3",
                "pcm"
              ],
              "result": "אודיו בינארי מלא או תגובת audio_url מקורית, כותרות וכל נכס שבבעלותכם."
            },
            "parameters": [
              {
                "enum": [
                  "google/gemini-3.1-flash-tts-preview"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "min_length": 1,
                "name": "input",
                "required": true,
                "type": "string"
              },
              {
                "enum": [
                  "Zephyr",
                  "Puck",
                  "Charon",
                  "Kore",
                  "Fenrir",
                  "Leda",
                  "Orus",
                  "Aoede",
                  "Callirrhoe",
                  "Autonoe",
                  "Enceladus",
                  "Iapetus",
                  "Umbriel",
                  "Algieba",
                  "Despina",
                  "Erinome",
                  "Algenib",
                  "Rasalgethi",
                  "Laomedeia",
                  "Achernar",
                  "Alnilam",
                  "Schedar",
                  "Gacrux",
                  "Pulcherrima",
                  "Achird",
                  "Zubenelgenubi",
                  "Vindemiatrix",
                  "Sadachbia",
                  "Sadaltager",
                  "Sulafat"
                ],
                "enum_known": true,
                "min_length": 1,
                "name": "voice",
                "required": true,
                "type": "string"
              },
              {
                "default": "pcm",
                "default_known": true,
                "enum": [
                  "mp3",
                  "pcm"
                ],
                "enum_known": true,
                "name": "response_format",
                "required": false,
                "type": "string"
              },
              {
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "input": {
                  "minLength": 1,
                  "type": "string"
                },
                "model": {
                  "enum": [
                    "google/gemini-3.1-flash-tts-preview"
                  ],
                  "type": "string"
                },
                "provider": {
                  "description": "Documented speech data policy and provider-specific options.",
                  "properties": {
                    "data_collection": {
                      "enum": [
                        "allow",
                        "deny",
                        null
                      ],
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "options": {
                      "type": "object"
                    },
                    "zdr": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    }
                  },
                  "type": "object"
                },
                "response_format": {
                  "default": "pcm",
                  "enum": [
                    "mp3",
                    "pcm"
                  ],
                  "type": "string"
                },
                "voice": {
                  "enum": [
                    "Zephyr",
                    "Puck",
                    "Charon",
                    "Kore",
                    "Fenrir",
                    "Leda",
                    "Orus",
                    "Aoede",
                    "Callirrhoe",
                    "Autonoe",
                    "Enceladus",
                    "Iapetus",
                    "Umbriel",
                    "Algieba",
                    "Despina",
                    "Erinome",
                    "Algenib",
                    "Rasalgethi",
                    "Laomedeia",
                    "Achernar",
                    "Alnilam",
                    "Schedar",
                    "Gacrux",
                    "Pulcherrima",
                    "Achird",
                    "Zubenelgenubi",
                    "Vindemiatrix",
                    "Sadachbia",
                    "Sadaltager",
                    "Sulafat"
                  ],
                  "minLength": 1,
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input",
                "voice"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "input": "${ACTUAL_INPUT_TEXT}",
                "model": "google/gemini-3.1-flash-tts-preview",
                "response_format": "pcm",
                "voice": "Orus"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_types": [
              "text"
            ],
            "required": [
              "model",
              "input",
              "voice"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed URL; never construct token"
              }
            ],
            "mode": "synchronous_result_then_owned_library",
            "operation_id_is_not_task_id": true,
            "status": [
              {
                "http": "GET",
                "id_source": "ערך task_id שהוחזר בפועל או רשומה בספריית המדיה",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Keep the returned X-Client-Request-ID for reconciliation. Read only actual returned task_id/asset_id values or the owned media library; never build a task URL from the operation ID and never resubmit creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/speech"
          },
          "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": "audio",
            "formats": [
              "mp3",
              "pcm"
            ],
            "result": "Complete binary audio or original audio_url response, headers and every owned asset."
          }
        },
        "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": "/ 1K tokens"
            },
            "label": "input token",
            "units": [
              {
                "amount": "0.002000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_token",
                "label": "input token",
                "native_amount_usd_per_unit": "0.000002",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "/ 1K tokens"
            },
            "label": "output token",
            "units": [
              {
                "amount": "0.04000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_token",
                "label": "output token",
                "native_amount_usd_per_unit": "0.00004",
                "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"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_INPUT_TEXT:?Set the actual documented input value}\"\nexport AILOOT_INPUT_TEXT\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\nrequest={'model': 'google/gemini-3.1-flash-tts-preview', 'input': '${ACTUAL_INPUT_TEXT}', 'voice': 'Orus', 'response_format': 'pcm'}\nrequest['input']=os.environ['AILOOT_INPUT_TEXT']\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/speech \\\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 response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.\n",
            "label": "Use actual input and retain the complete result",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o owned-assets.json\n# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.\n",
            "label": "Read existing owned assets",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "speech",
        "hints": [
          "Use the exact caller model ID and documented input representation.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "text"
        ],
        "label": "דיבור",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "audio_speech",
        "out": null,
        "output": [
          "audio"
        ],
        "path": "/v1/audio/speech",
        "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": {
            "input_token": 2e-06,
            "output_token": 4e-05
          }
        },
        "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": "/ 1K tokens"
            },
            "label": "input token",
            "units": [
              {
                "amount": "0.002000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_token",
                "label": "input token",
                "native_amount_usd_per_unit": "0.000002",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "/ 1K tokens"
            },
            "label": "output token",
            "units": [
              {
                "amount": "0.04000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_token",
                "label": "output token",
                "native_amount_usd_per_unit": "0.00004",
                "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"
              }
            ]
          }
        ],
        "request_model_id": "google/gemini-3.1-flash-tts-preview",
        "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.002000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_token",
            "label": "input token",
            "native_amount_usd_per_unit": "0.000002",
            "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": "0.04000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_token",
            "label": "output token",
            "native_amount_usd_per_unit": "0.00004",
            "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"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "google/gemini-3.1-flash-tts-preview",
        "request_model_id": "google/gemini-3.1-flash-tts-preview",
        "route_label": "Ultra"
      }
    ],
    "name": "Google: Gemini 3.1 Flash TTS Preview",
    "price": {
      "in": null,
      "in_label": null,
      "out": 0.04,
      "out_label": "/ 1K tokens",
      "sort_in": null,
      "sort_out": 0.04,
      "varies": true
    },
    "short": "Google Gemini 3.1 Flash TTS Preview ממיר תסריטים כתובים לאודיו מדובר מלא הבעה. הוראות בשפה טבעית, Audio Profiles לדוברים, Director’s Notes ותגיות אודיו משולבות מעצבים את הקצב, הטון והמבטא. הוא תומך בדיאלוג מובנה וביותר מ־70 שפות, ומשתמש בפורמט הפרומפט והאודיו של 3.1."
  },
  "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": "Google Gemini 3.1 Flash TTS Preview ממיר תסריטים כתובים לאודיו מדובר מלא הבעה. הוראות בשפה טבעית, Audio Profiles לדוברים, Director’s Notes ותגיות אודיו משולבות מעצבים את הקצב, הטון והמבטא. הוא תומך בדיאלוג מובנה וביותר מ־70 שפות, ומשתמש בפורמט הפרומפט והאודיו של 3.1.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "42685599a76bf91baf1df9b14c85a6aef21ff601e1a0ca72e5035e1a0f1b7ee7",
    "renderer_sha256": "c36bd89b8b0dac234af52bf68530df83530b908ec7a9f2e1de2483fe236ae910"
  },
  "sourceRevision": "9166e2e061a84a68ccd8d9168f42b7ca370b22a0cc261ca739b4ba43b4db1864"
}
