{
  "aboutHtml": "<h4>איור בעל הבעה ופיתוח יצירתי יציב</h4><p>Krea 2 Medium הוא מודל תמונות Krea 2 שנבנה מאפס ומיועד לאיור בעל הבעה. Krea מתארת אותו כקטן מ־Large וככזה שעבר אימון המשך נרחב יותר, עם אופי יציב יותר שפועל טוב במיוחד באיור, באנימה ובציור. Medium ו־Large חולקים את מערכת הבקרות המתועדת; ההבדל בין המהדורות נוגע לתכנון המודל ולנטיותיו החזותיות, ולא לסוג פלט אחר.</p><p>השתמשו ב־Medium לפיתוח איורים מערכתיים, סצנות סיפור, קונספטים מצוירים וכיוונים חזותיים מתואמים. התחילו בבריף שמגדיר את הנושא, הפעולה, הסביבה, הקומפוזיציה, פלטת הצבעים והמדיום. למשל: ״רוכב אופניים חוצה גשר שקט על גדת נהר עם שחר, איור מערכתי רחב, צורות גואש בשכבות, צללים כחולים רכים ונגיעה אחת בגוון קורל, מרחב פתוח מעל הנהר לכותרת.״ התייחסו למרחב הריק כבקשת קומפוזיציה, ואז הציבו את הטיפוגרפיה הסופית בפריסה המוגמרת.</p><h4>הכינו קלטי טקסט ותמונה</h4><p>ממשק היצירה מחייב הנחיה, יחס ממדים ורזולוציה. טקסט מספק את הסצנה ואת הכיוון היצירתי. תמונת מקור אופציונלית מאפשרת יצירה מתמונה לתמונה, המתחילה מאותה תמונה במקום מרעש טהור. עוצמת הסרת הרעש נעה בין 0 ל־1: 0 שומר על תמונת הקלט, 1 מחליף אותה במלואה, וברירת המחדל המתועדת היא 0.99. השתמשו בתמונת מקור כאשר קומפוזיציית הפתיחה חשובה, ואז תארו את הטיפול החדש ובחרו כמה שינוי לאפשר.</p><p>ייחוסי סגנון בתמונות משפיעים על הטיפול החזותי בנפרד מתמונת המקור. הסכמה הייחודית למודל מגבילה מחרוזות URI של תמונת מקור ושל ייחוס סגנון ל־1,024 תווים. הסכמה הייחודית ל־Medium מקבלת עד עשרה ייחוסים, עם השפעה נפרדת בין 0 ל־1 וברירת מחדל של 0.5. הכינו מערך ייחוסים קטן ומכוון: תמונה אחת יכולה לקבוע את עבודת המכחול ואחרת את הפלטה או התאורה. ציינו את הקשר הרצוי בבריף במקום להסתמך על אוסף מעורב שירמוז על כיוון מגובש.</p><p>לוח השראה מקבץ ייחוסים קשורים סביב סגנון, פלטה, מרקם או קומפוזיציה משותפים. תהליך העבודה המתועד יוצר תחילה את לוח ההשראה ואז משתמש במזהה הקיים שלו בבקשת יצירה. Medium מקבל לוח השראה אחד, עם השפעה בין 0 ל־1 וברירת מחדל של 0.23 בסכמת הבקשה שלו. סגנונות מאומנים, בדרך כלל LoRA, הם קלט נפרד שנבחר לפי מזהה ועוצמה בין ‎-2 ל־2. בחרו את הקלט המתאים למשימה: תמונת מקור מתחילה את הסצנה, ייחוס מציע מראה, ולוח השראה או סגנון מאומן מספקים כיוון לשימוש חוזר.</p><h4>שלטו בפרשנות ובתוצאה החזותית</h4><p>Creativity שולט בהרחבת ההנחיה. Raw משבית הרחבה; low נשאר קרוב יותר לבריף המילולי, ואילו medium ו־high מאפשרים יותר פרשנות. סכמת הבקשה הייחודית ל־Medium משתמשת ב־low כברירת מחדל. לאיור המוגדר בקפדנות, כתבו את הכיוון המלא והתחילו בהרחבה מאופקת. לחקר ראשוני, הגדרה חופשית יותר יכולה לפתח קונספט פשוט לסצנה עשירה יותר.</p><p>שלושה מחוונים עצמאיים מעצבים את התמונה: Intensity, Complexity ו־Movement. כל אחד מקבל מספר שלם בין ‎-100 ל־100, עם 0 כניטרלי. Intensity מעביר את הטיפול בין מאופק לנועז. Complexity מעביר בין קומפוזיציות נקיות ומינימליות לבין פרטים צפופים. Movement משנה אנרגיה חזותית, מחווה ותנועה מרומזת. Movement נשאר בקרת תמונת סטילס; הוא אינו יוצר אנימציה או קליפ וידאו. המחוונים עצמאיים מהרחבת ההנחיה של creativity ואפשר לשלבם עם קלטי ייחוס.</p><p>תהליך איור מעשי קובע קודם את הסצנה, אחר כך מתאים פלטה וטיפול, ואז מכוונן צפיפות או אנרגיה. תעדו את ההנחיה, מערך הייחוסים וערך ה־seed האופציונלי תוך שינוי בקרה אחת בכל פעם. באיור שעל גדת הנהר, מורכבות נמוכה יותר יכולה לפשט את הרקע, וערך movement גבוה יותר יכול לרמוז על תנוחת רכיבה נמרצת יותר. אלה כיוונים יצירתיים שיש לבדוק בתוצאה המוגמרת, ולא נעילות מדויקות של פריסה או תנוחה.</p><h4>פורמט, יצירה ומסירה</h4><p>סכמת היצירה המתועדת של Medium מציעה סולם רזולוציה 1K ותשעה יחסי ממדים: 1:1, 4:3, 3:2, 16:9, 2.35:1, 4:5, 3:4, 2:3 ו־9:16. בחרו את המסגרת המיועדת לפני היצירה כדי שהבריף יוכל לתאר את הקומפוזיציה בהתאם. איור ריבועי, סצנת סיפור רחבה וכריכה אנכית דורשים מיקום שונה של הנושא המרכזי ושל הפרטים שסביבו.</p><p>תהליך היצירה המתועד מחזיר משימה, שבתחילה עשויה להיות בהמתנה. עקבו אחר הסטטוס שלה עד ההשלמה ואז אחזרו את מיקומי התמונות שהתקבלו. שמרו את התמונה שנבחרה יחד עם הבריף, תמונות הקלט והגדרות הבקרה. בדקו קווי מתאר, ידיים או עצמים קטנים, פרספקטיבה, פלטת צבעים וכל כיתוב גלוי לפני שילובה בפרסום או בקמפיין.</p><p>הדגש של Medium על איור הוא בחירת מהדורה שימושית, ולא הבטחה לתוצאות זהות בין הנחיות. ייחוס חזותי יכול להנחות סגנון בלי להעתיק באופן מושלם את הנושא או הפריסה שלו, ועוצמת תמונה־לתמונה משנה כמה מתמונת הפתיחה שורד. השתמשו בהוראות מפורשות לרכיבים נדרשים, בדקו כל פלט מוגמר מול הבריף ובצעו התאמות סופיות של קומפוזיציה, טיפוגרפיה והפקה בעורך.</p>",
  "aboutText": "### איור בעל הבעה ופיתוח יצירתי יציב\n\nKrea 2 Medium הוא מודל תמונות Krea 2 שנבנה מאפס ומיועד לאיור בעל הבעה. Krea מתארת אותו כקטן מ־Large וככזה שעבר אימון המשך נרחב יותר, עם אופי יציב יותר שפועל טוב במיוחד באיור, באנימה ובציור. Medium ו־Large חולקים את מערכת הבקרות המתועדת; ההבדל בין המהדורות נוגע לתכנון המודל ולנטיותיו החזותיות, ולא לסוג פלט אחר.\n\nהשתמשו ב־Medium לפיתוח איורים מערכתיים, סצנות סיפור, קונספטים מצוירים וכיוונים חזותיים מתואמים. התחילו בבריף שמגדיר את הנושא, הפעולה, הסביבה, הקומפוזיציה, פלטת הצבעים והמדיום. למשל: ״רוכב אופניים חוצה גשר שקט על גדת נהר עם שחר, איור מערכתי רחב, צורות גואש בשכבות, צללים כחולים רכים ונגיעה אחת בגוון קורל, מרחב פתוח מעל הנהר לכותרת.״ התייחסו למרחב הריק כבקשת קומפוזיציה, ואז הציבו את הטיפוגרפיה הסופית בפריסה המוגמרת.\n\n### הכינו קלטי טקסט ותמונה\n\nממשק היצירה מחייב הנחיה, יחס ממדים ורזולוציה. טקסט מספק את הסצנה ואת הכיוון היצירתי. תמונת מקור אופציונלית מאפשרת יצירה מתמונה לתמונה, המתחילה מאותה תמונה במקום מרעש טהור. עוצמת הסרת הרעש נעה בין 0 ל־1: 0 שומר על תמונת הקלט, 1 מחליף אותה במלואה, וברירת המחדל המתועדת היא 0.99. השתמשו בתמונת מקור כאשר קומפוזיציית הפתיחה חשובה, ואז תארו את הטיפול החדש ובחרו כמה שינוי לאפשר.\n\nייחוסי סגנון בתמונות משפיעים על הטיפול החזותי בנפרד מתמונת המקור. הסכמה הייחודית למודל מגבילה מחרוזות URI של תמונת מקור ושל ייחוס סגנון ל־1,024 תווים. הסכמה הייחודית ל־Medium מקבלת עד עשרה ייחוסים, עם השפעה נפרדת בין 0 ל־1 וברירת מחדל של 0.5. הכינו מערך ייחוסים קטן ומכוון: תמונה אחת יכולה לקבוע את עבודת המכחול ואחרת את הפלטה או התאורה. ציינו את הקשר הרצוי בבריף במקום להסתמך על אוסף מעורב שירמוז על כיוון מגובש.\n\nלוח השראה מקבץ ייחוסים קשורים סביב סגנון, פלטה, מרקם או קומפוזיציה משותפים. תהליך העבודה המתועד יוצר תחילה את לוח ההשראה ואז משתמש במזהה הקיים שלו בבקשת יצירה. Medium מקבל לוח השראה אחד, עם השפעה בין 0 ל־1 וברירת מחדל של 0.23 בסכמת הבקשה שלו. סגנונות מאומנים, בדרך כלל LoRA, הם קלט נפרד שנבחר לפי מזהה ועוצמה בין ‎-2 ל־2. בחרו את הקלט המתאים למשימה: תמונת מקור מתחילה את הסצנה, ייחוס מציע מראה, ולוח השראה או סגנון מאומן מספקים כיוון לשימוש חוזר.\n\n### שלטו בפרשנות ובתוצאה החזותית\n\nCreativity שולט בהרחבת ההנחיה. Raw משבית הרחבה; low נשאר קרוב יותר לבריף המילולי, ואילו medium ו־high מאפשרים יותר פרשנות. סכמת הבקשה הייחודית ל־Medium משתמשת ב־low כברירת מחדל. לאיור המוגדר בקפדנות, כתבו את הכיוון המלא והתחילו בהרחבה מאופקת. לחקר ראשוני, הגדרה חופשית יותר יכולה לפתח קונספט פשוט לסצנה עשירה יותר.\n\nשלושה מחוונים עצמאיים מעצבים את התמונה: Intensity, Complexity ו־Movement. כל אחד מקבל מספר שלם בין ‎-100 ל־100, עם 0 כניטרלי. Intensity מעביר את הטיפול בין מאופק לנועז. Complexity מעביר בין קומפוזיציות נקיות ומינימליות לבין פרטים צפופים. Movement משנה אנרגיה חזותית, מחווה ותנועה מרומזת. Movement נשאר בקרת תמונת סטילס; הוא אינו יוצר אנימציה או קליפ וידאו. המחוונים עצמאיים מהרחבת ההנחיה של creativity ואפשר לשלבם עם קלטי ייחוס.\n\nתהליך איור מעשי קובע קודם את הסצנה, אחר כך מתאים פלטה וטיפול, ואז מכוונן צפיפות או אנרגיה. תעדו את ההנחיה, מערך הייחוסים וערך ה־seed האופציונלי תוך שינוי בקרה אחת בכל פעם. באיור שעל גדת הנהר, מורכבות נמוכה יותר יכולה לפשט את הרקע, וערך movement גבוה יותר יכול לרמוז על תנוחת רכיבה נמרצת יותר. אלה כיוונים יצירתיים שיש לבדוק בתוצאה המוגמרת, ולא נעילות מדויקות של פריסה או תנוחה.\n\n### פורמט, יצירה ומסירה\n\nסכמת היצירה המתועדת של Medium מציעה סולם רזולוציה 1K ותשעה יחסי ממדים: 1:1, 4:3, 3:2, 16:9, 2.35:1, 4:5, 3:4, 2:3 ו־9:16. בחרו את המסגרת המיועדת לפני היצירה כדי שהבריף יוכל לתאר את הקומפוזיציה בהתאם. איור ריבועי, סצנת סיפור רחבה וכריכה אנכית דורשים מיקום שונה של הנושא המרכזי ושל הפרטים שסביבו.\n\nתהליך היצירה המתועד מחזיר משימה, שבתחילה עשויה להיות בהמתנה. עקבו אחר הסטטוס שלה עד ההשלמה ואז אחזרו את מיקומי התמונות שהתקבלו. שמרו את התמונה שנבחרה יחד עם הבריף, תמונות הקלט והגדרות הבקרה. בדקו קווי מתאר, ידיים או עצמים קטנים, פרספקטיבה, פלטת צבעים וכל כיתוב גלוי לפני שילובה בפרסום או בקמפיין.\n\nהדגש של Medium על איור הוא בחירת מהדורה שימושית, ולא הבטחה לתוצאות זהות בין הנחיות. ייחוס חזותי יכול להנחות סגנון בלי להעתיק באופן מושלם את הנושא או הפריסה שלו, ועוצמת תמונה־לתמונה משנה כמה מתמונת הפתיחה שורד. השתמשו בהוראות מפורשות לרכיבים נדרשים, בדקו כל פלט מוגמר מול הבריף ובצעו התאמות סופיות של קומפוזיציה, טיפוגרפיה והפקה בעורך.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "2773c3db0c30663694dcbaff5e39372a9db78090b48f5008419938dd4888bb17",
    "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\">•</span><h2 id=\"sheet-title\">Krea: Krea 2 Medium</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"סגירה\">×</button></div><div class=\"idline\"><span>Krea /</span><code>krea/krea-2-medium</code><button type=\"button\" id=\"copy-id\">העתקת ID</button></div><nav class=\"card-jump-nav\" aria-label=\"חלקי כרטיס המודל\"><button type=\"button\" data-card-jump=\"overview\">התחלה</button><button type=\"button\" data-card-jump=\"methods\">קלט ושיטות</button><button type=\"button\" data-card-jump=\"pricing\">תעריפים</button><button type=\"button\" data-card-jump=\"examples\">דוגמאות</button><button type=\"button\" data-card-jump=\"results\">תוצאות</button><button type=\"button\" data-card-jump=\"aliases\">כינויים</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"שיטות API\"><button type=\"button\" role=\"tab\" tabindex=\"0\" aria-controls=\"card-method-content\" aria-selected=\"true\" id=\"card-method-tab-0\" data-card-method=\"Ultra|images|/v1/images/generations|krea%2Fkrea-2-medium\">תמונות</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\">Krea 2 Medium יוצר איורים בעלי הבעה מטקסט ומקלטים חזותיים אופציונליים. אימון ההמשך הנרחב יותר שלו מעודד תוצאות יציבות באיור, באנימה ובציור, עם בקרות לסגנון, לפרשנות ההנחיה, לצפיפות הקומפוזיציה ולאנרגיה החזותית.</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\"><h4>איור בעל הבעה ופיתוח יצירתי יציב</h4><p>Krea 2 Medium הוא מודל תמונות Krea 2 שנבנה מאפס ומיועד לאיור בעל הבעה. Krea מתארת אותו כקטן מ־Large וככזה שעבר אימון המשך נרחב יותר, עם אופי יציב יותר שפועל טוב במיוחד באיור, באנימה ובציור. Medium ו־Large חולקים את מערכת הבקרות המתועדת; ההבדל בין המהדורות נוגע לתכנון המודל ולנטיותיו החזותיות, ולא לסוג פלט אחר.</p><p>השתמשו ב־Medium לפיתוח איורים מערכתיים, סצנות סיפור, קונספטים מצוירים וכיוונים חזותיים מתואמים. התחילו בבריף שמגדיר את הנושא, הפעולה, הסביבה, הקומפוזיציה, פלטת הצבעים והמדיום. למשל: ״רוכב אופניים חוצה גשר שקט על גדת נהר עם שחר, איור מערכתי רחב, צורות גואש בשכבות, צללים כחולים רכים ונגיעה אחת בגוון קורל, מרחב פתוח מעל הנהר לכותרת.״ התייחסו למרחב הריק כבקשת קומפוזיציה, ואז הציבו את הטיפוגרפיה הסופית בפריסה המוגמרת.</p><h4>הכינו קלטי טקסט ותמונה</h4><p>ממשק היצירה מחייב הנחיה, יחס ממדים ורזולוציה. טקסט מספק את הסצנה ואת הכיוון היצירתי. תמונת מקור אופציונלית מאפשרת יצירה מתמונה לתמונה, המתחילה מאותה תמונה במקום מרעש טהור. עוצמת הסרת הרעש נעה בין 0 ל־1: 0 שומר על תמונת הקלט, 1 מחליף אותה במלואה, וברירת המחדל המתועדת היא 0.99. השתמשו בתמונת מקור כאשר קומפוזיציית הפתיחה חשובה, ואז תארו את הטיפול החדש ובחרו כמה שינוי לאפשר.</p><p>ייחוסי סגנון בתמונות משפיעים על הטיפול החזותי בנפרד מתמונת המקור. הסכמה הייחודית למודל מגבילה מחרוזות URI של תמונת מקור ושל ייחוס סגנון ל־1,024 תווים. הסכמה הייחודית ל־Medium מקבלת עד עשרה ייחוסים, עם השפעה נפרדת בין 0 ל־1 וברירת מחדל של 0.5. הכינו מערך ייחוסים קטן ומכוון: תמונה אחת יכולה לקבוע את עבודת המכחול ואחרת את הפלטה או התאורה. ציינו את הקשר הרצוי בבריף במקום להסתמך על אוסף מעורב שירמוז על כיוון מגובש.</p><p>לוח השראה מקבץ ייחוסים קשורים סביב סגנון, פלטה, מרקם או קומפוזיציה משותפים. תהליך העבודה המתועד יוצר תחילה את לוח ההשראה ואז משתמש במזהה הקיים שלו בבקשת יצירה. Medium מקבל לוח השראה אחד, עם השפעה בין 0 ל־1 וברירת מחדל של 0.23 בסכמת הבקשה שלו. סגנונות מאומנים, בדרך כלל LoRA, הם קלט נפרד שנבחר לפי מזהה ועוצמה בין ‎-2 ל־2. בחרו את הקלט המתאים למשימה: תמונת מקור מתחילה את הסצנה, ייחוס מציע מראה, ולוח השראה או סגנון מאומן מספקים כיוון לשימוש חוזר.</p><h4>שלטו בפרשנות ובתוצאה החזותית</h4><p>Creativity שולט בהרחבת ההנחיה. Raw משבית הרחבה; low נשאר קרוב יותר לבריף המילולי, ואילו medium ו־high מאפשרים יותר פרשנות. סכמת הבקשה הייחודית ל־Medium משתמשת ב־low כברירת מחדל. לאיור המוגדר בקפדנות, כתבו את הכיוון המלא והתחילו בהרחבה מאופקת. לחקר ראשוני, הגדרה חופשית יותר יכולה לפתח קונספט פשוט לסצנה עשירה יותר.</p><p>שלושה מחוונים עצמאיים מעצבים את התמונה: Intensity, Complexity ו־Movement. כל אחד מקבל מספר שלם בין ‎-100 ל־100, עם 0 כניטרלי. Intensity מעביר את הטיפול בין מאופק לנועז. Complexity מעביר בין קומפוזיציות נקיות ומינימליות לבין פרטים צפופים. Movement משנה אנרגיה חזותית, מחווה ותנועה מרומזת. Movement נשאר בקרת תמונת סטילס; הוא אינו יוצר אנימציה או קליפ וידאו. המחוונים עצמאיים מהרחבת ההנחיה של creativity ואפשר לשלבם עם קלטי ייחוס.</p><p>תהליך איור מעשי קובע קודם את הסצנה, אחר כך מתאים פלטה וטיפול, ואז מכוונן צפיפות או אנרגיה. תעדו את ההנחיה, מערך הייחוסים וערך ה־seed האופציונלי תוך שינוי בקרה אחת בכל פעם. באיור שעל גדת הנהר, מורכבות נמוכה יותר יכולה לפשט את הרקע, וערך movement גבוה יותר יכול לרמוז על תנוחת רכיבה נמרצת יותר. אלה כיוונים יצירתיים שיש לבדוק בתוצאה המוגמרת, ולא נעילות מדויקות של פריסה או תנוחה.</p><h4>פורמט, יצירה ומסירה</h4><p>סכמת היצירה המתועדת של Medium מציעה סולם רזולוציה 1K ותשעה יחסי ממדים: 1:1, 4:3, 3:2, 16:9, 2.35:1, 4:5, 3:4, 2:3 ו־9:16. בחרו את המסגרת המיועדת לפני היצירה כדי שהבריף יוכל לתאר את הקומפוזיציה בהתאם. איור ריבועי, סצנת סיפור רחבה וכריכה אנכית דורשים מיקום שונה של הנושא המרכזי ושל הפרטים שסביבו.</p><p>תהליך היצירה המתועד מחזיר משימה, שבתחילה עשויה להיות בהמתנה. עקבו אחר הסטטוס שלה עד ההשלמה ואז אחזרו את מיקומי התמונות שהתקבלו. שמרו את התמונה שנבחרה יחד עם הבריף, תמונות הקלט והגדרות הבקרה. בדקו קווי מתאר, ידיים או עצמים קטנים, פרספקטיבה, פלטת צבעים וכל כיתוב גלוי לפני שילובה בפרסום או בקמפיין.</p><p>הדגש של Medium על איור הוא בחירת מהדורה שימושית, ולא הבטחה לתוצאות זהות בין הנחיות. ייחוס חזותי יכול להנחות סגנון בלי להעתיק באופן מושלם את הנושא או הפריסה שלו, ועוצמת תמונה־לתמונה משנה כמה מתמונת הפתיחה שורד. השתמשו בהוראות מפורשות לרכיבים נדרשים, בדקו כל פלט מוגמר מול הבריף ובצעו התאמות סופיות של קומפוזיציה, טיפוגרפיה והפקה בעורך.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">זמין ב-Ailoot · קלט ושיטות</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · תמונות</b> <code>POST /v1/images/generations</code></summary><dl class=\"method-capabilities\"><div><dt>סוגי קלט</dt><dd><code>text</code>, <code>image</code></dd></div><div><dt>סוגי פלט</dt><dd><code>image</code></dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>שדה</th><th>סוג</th><th>דרישה</th><th>ערכים ומגבלות</th><th>ברירת מחדל</th></tr></thead><tbody><tr><th data-cell-label=\"שדה\" scope=\"row\"><span class=\"card-cell-label\">שדה</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"סוג\" data-field-type><span class=\"card-cell-label\">סוג</span><code>string</code></td><td data-cell-label=\"דרישה\"><span class=\"card-cell-label\">דרישה</span>חובה</td><td data-cell-label=\"ערכים ומגבלות\"><span class=\"card-cell-label\">ערכים ומגבלות</span><div>krea/krea-2-medium</div></td><td data-cell-label=\"ברירת מחדל\" data-default=\"unspecified\"><span class=\"card-cell-label\">ברירת מחדל</span>—</td></tr><tr><th data-cell-label=\"שדה\" scope=\"row\"><span class=\"card-cell-label\">שדה</span><code class=\"card-field-name\">prompt</code></th><td data-cell-label=\"סוג\" data-field-type><span class=\"card-cell-label\">סוג</span><code>string</code></td><td data-cell-label=\"דרישה\"><span class=\"card-cell-label\">דרישה</span>חובה</td><td data-cell-label=\"ערכים ומגבלות\"><span class=\"card-cell-label\">ערכים ומגבלות</span><div>אורך מזערי: ⁦1⁩</div></td><td data-cell-label=\"ברירת מחדל\" data-default=\"unspecified\"><span class=\"card-cell-label\">ברירת מחדל</span>—</td></tr><tr><th data-cell-label=\"שדה\" scope=\"row\"><span class=\"card-cell-label\">שדה</span><code class=\"card-field-name\">resolution</code></th><td data-cell-label=\"סוג\" data-field-type><span class=\"card-cell-label\">סוג</span><code>string</code></td><td data-cell-label=\"דרישה\"><span class=\"card-cell-label\">דרישה</span>רשות</td><td data-cell-label=\"ערכים ומגבלות\"><span class=\"card-cell-label\">ערכים ומגבלות</span><div>1K</div></td><td data-cell-label=\"ברירת מחדל\" data-default=\"unspecified\"><span class=\"card-cell-label\">ברירת מחדל</span>—</td></tr><tr><th data-cell-label=\"שדה\" scope=\"row\"><span class=\"card-cell-label\">שדה</span><code class=\"card-field-name\">aspect_ratio</code></th><td data-cell-label=\"סוג\" data-field-type><span class=\"card-cell-label\">סוג</span><code>string</code></td><td data-cell-label=\"דרישה\"><span class=\"card-cell-label\">דרישה</span>רשות</td><td data-cell-label=\"ערכים ומגבלות\"><span class=\"card-cell-label\">ערכים ומגבלות</span><div>1:1, 4:3, 3:2, 16:9, 4:5, 2:3, 9:16</div></td><td data-cell-label=\"ברירת מחדל\" data-default=\"unspecified\"><span class=\"card-cell-label\">ברירת מחדל</span>—</td></tr><tr><th data-cell-label=\"שדה\" scope=\"row\"><span class=\"card-cell-label\">שדה</span><code class=\"card-field-name\">input_references</code></th><td data-cell-label=\"סוג\" data-field-type><span class=\"card-cell-label\">סוג</span><code>array</code></td><td data-cell-label=\"דרישה\"><span class=\"card-cell-label\">דרישה</span>רשות</td><td data-cell-label=\"ערכים ומגבלות\"><span class=\"card-cell-label\">ערכים ומגבלות</span><div>מספר פריטים מזערי: ⁦0⁩</div><div>מספר פריטים מרבי: ⁦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\">provider</code></th><td data-cell-label=\"סוג\" data-field-type><span class=\"card-cell-label\">סוג</span><code>object</code></td><td data-cell-label=\"דרישה\"><span class=\"card-cell-label\">דרישה</span>רשות</td><td data-cell-label=\"ערכים ומגבלות\"><span class=\"card-cell-label\">ערכים ומגבלות</span></td><td data-cell-label=\"ברירת מחדל\" data-default=\"unspecified\"><span class=\"card-cell-label\">ברירת מחדל</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>פרמטרים ומחזור חיים של השיטה</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>פרמטר</th><th>מפרט</th></tr></thead><tbody><tr><th data-cell-label=\"פרמטר\" scope=\"row\"><span class=\"card-cell-label\">פרמטר</span><code>content_type</code></th><td data-cell-label=\"מפרט\"><span class=\"card-cell-label\">מפרט</span>application/json</td></tr><tr><th data-cell-label=\"פרמטר\" scope=\"row\"><span class=\"card-cell-label\">פרמטר</span><code>required</code></th><td data-cell-label=\"מפרט\"><span class=\"card-cell-label\">מפרט</span>model, prompt</td></tr><tr><th data-cell-label=\"פרמטר\" scope=\"row\"><span class=\"card-cell-label\">פרמטר</span><code>material_types</code></th><td data-cell-label=\"מפרט\"><span class=\"card-cell-label\">מפרט</span>text, image</td></tr></tbody></table></div><p>מחזור חיים: <code>synchronous_result_then_owned_library</code></p><p class=\"note-s\"><code>GET /v1/media/tasks/{task_id}</code> · ערך task_id שהוחזר בפועל או רשומה בספריית המדיה</p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}/content</code></p><p class=\"note-s\"><code>GET /v1/media/assets</code></p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}</code></p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">תעריפים</h3><div class=\"card-result-process\" data-billing-basis><h5>אופן חישוב החיוב הסופי</h5><p class=\"note-s\">התעריפים המוצגים מספקים אומדן לעלות לפני היצירה. החיוב הסופי מחושב לפי העלות שנרשמה עבור היצירה המקורית. משך הפלט שנמדד והכמויות החזויות אינם הכמות הסופית לחיוב.</p></div><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>מידע תעריפים אינו מוסיף אפשרויות לבקשה. הפרמטרים הנתמכים מפורטים בשיטה שנבחרה.</p><dl data-price-conditions><dt>מצב מהיר</dt><dd>לא צוין <span class=\"note-s\">כאשר נבחר מצב מהיר</span></dd><dt>מצב Flex</dt><dd>לא צוין <span class=\"note-s\">כאשר נבחר מצב flex</span></dd><dt>מאמץ חשיבה מרבי</dt><dd>לא צוין <span class=\"note-s\">כאשר מאמץ החשיבה המרבי משתמש בהתאמת ברירת המחדל (default)</span></dd></dl></div><div data-declared-tariff-pricing><h4>תעריפים משוערים להשוואה</h4><h4>מחירים לפי תצורה</h4><p class=\"note-s\">התאימו כל חיוב לתנאים המוצגים. השתמשו בתעריף אחד לכל קבוצה של תצורות חלופיות.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>תצורה</th><th>טבלת תעריפים</th><th>כמות חזויה</th><th>חיוב</th></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>אומדן ליצירה אחת</td><td data-cell-label=\"חיוב\"><span class=\"card-cell-label\">חיוב</span><div><span>פלט · עלות יצירה משוערת · אומדן להשוואה בלבד</span> <b>$0.06</b> <span class=\"price-unit\">אומדן לפני היצירה</span></div><p class=\"note-s\">אומדן זה אינו חיוב נוסף או תעריף קבוע עבור היצירה שהושלמה.</p></td></tr></tbody></table></div></div><p class=\"note-s\">לפני הבקשה Ailoot משריינת סכום משוער. לאחר קבלת התוצאה היא מסדירה את החיוב הסופי לפי השימוש המדוד. הסדרת חיוב בהזרמה משתמשת ברשומת השימוש הסופית. <a href=\"/docs/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-1775-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1775-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"העתקת הקוד\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-1775-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1775-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\nexport AILOOT_API_KEY\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport json,os\nfrom pathlib import Path\np={&#39;model&#39;: &#39;krea/krea-2-medium&#39;, &#39;prompt&#39;: &#39;a red panda astronaut floating in space, studio lighting&#39;}\n\nPath(&quot;request.json&quot;).write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -H &#39;Content-Type: application/json&#39; \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - &lt;&lt;&#39;PY_RESULT&#39;\nimport base64, json, os, subprocess\nfrom pathlib import Path\nfrom urllib.parse import urlsplit, urljoin\n\ndef save_images(items):\n    if not items: raise SystemExit(&quot;No completed images; retain the full response&quot;)\n    for index, item in enumerate(items):\n        encoded=item.get(&quot;b64_json&quot;)\n        uri=item.get(&quot;url&quot;, &quot;&quot;)\n        if not encoded and uri.startswith(&quot;data:image/&quot;):\n            header, separator, encoded=uri.partition(&quot;,&quot;)\n            if not separator or &quot;;base64&quot; not in header: raise SystemExit(&quot;Unsupported image data URI&quot;)\n        if encoded:\n            raw=base64.b64decode(encoded,validate=True)\n        elif uri:\n            uri=urljoin(&quot;https://api.ailoot.ai&quot;,uri)\n            parsed=urlsplit(uri)\n            if parsed.scheme!=&quot;https&quot; or not parsed.netloc or parsed.username or parsed.password:\n                raise SystemExit(&quot;Invalid returned image URL&quot;)\n            owned=parsed.netloc==&quot;api.ailoot.ai&quot; and parsed.path.startswith(&quot;/v1/media/assets/&quot;) and parsed.path.endswith(&quot;/content&quot;)\n            args=[&quot;curl&quot;,&quot;--fail-with-body&quot;,&quot;--silent&quot;,&quot;--show-error&quot;,uri]\n            if owned: args += [&quot;-H&quot;,&quot;Authorization: Bearer &quot;+os.environ[&quot;AILOOT_API_KEY&quot;]]\n            temporary=Path(f&quot;image-{index}.bin&quot;)\n            subprocess.run(args+[&quot;-o&quot;,str(temporary)],check=True)\n            raw=temporary.read_bytes()\n            temporary.unlink()\n        else: raise SystemExit(&quot;Image has neither bytes nor URL&quot;)\n        if not raw: raise SystemExit(&quot;Empty image result&quot;)\n        ext=&quot;png&quot; if raw.startswith(b&quot;\\x89PNG&quot;) else &quot;jpg&quot; if raw.startswith(b&quot;\\xff\\xd8&quot;) else &quot;webp&quot; if raw[:4]==b&quot;RIFF&quot; and raw[8:12]==b&quot;WEBP&quot; else &quot;svg&quot; if raw.lstrip().startswith((b&quot;&lt;svg&quot;,b&quot;&lt;?xml&quot;)) else &quot;bin&quot;\n        Path(f&quot;image-{index}.{ext}&quot;).write_bytes(raw)\n    print(&quot;Every returned image saved; complete response metadata retained&quot;)\nsave_images(json.loads(Path(&quot;result.json&quot;).read_text())[&quot;data&quot;])\nPY_RESULT\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">קבלה ושמירה של תוצאות</h3><h4>Ailoot Ultra · תמונות</h4><p class=\"note-s\">הורידו כל תמונה שהוחזרה או שמרו את תוכן ה-Base64 שלה</p><ul class=\"card-result-paths\"><li><code>GET /v1/media/tasks/{task_id}</code></li><li><code>GET /v1/media/assets/{asset_id}/content</code></li><li><code>GET /v1/media/assets</code></li><li><code>GET /v1/media/assets/{asset_id}</code></li></ul><details class=\"card-about\"><summary>קריאות תוכן נוספות</summary><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"אפשרויות קוד\"><button class=\"cg-tab\" id=\"model-code-1776-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1776-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-1776-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1776-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -o owned-assets.json\n# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.\n</code></pre></div></div></div></details><div class=\"card-result-process\" data-all-results><h5>שמירת כל התוצאות שהושלמו</h5><p class=\"note-s\">שמרו כל תמונה שהושלמה; אחזרו אותה מכל URL שהוחזר או פענחו את תוכן ה-Base64 שלה.</p><p class=\"note-s\">שמרו את התשובה המלאה ואת הכותרות, כל פלט שהתקבל בפועל, את המזהים המקוריים שהוחזרו ואת כל שדות השימוש. שחזרו את הפעולה המקורית בלי לשלוח שוב בקשת יצירה.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>כשצריך לבדוק את התגובה המקורית</h5><p class=\"note-s\">שמרו את X-Client-Request-ID שהוחזר לצורך התאמת רישומים. קראו רק ערכי task_id/asset_id שהוחזרו בפועל או את ספריית המדיה שבבעלותכם; לעולם אל תבנו URL של משימה ממזהה הפעולה ואל תשלחו שוב בקשת יצירה.</p></div><details class=\"card-about\" data-output-fields><summary>שדות התגובה</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>שדה</th><th>סוג</th></tr></thead><tbody><tr><th data-cell-label=\"שדה\" scope=\"row\"><span class=\"card-cell-label\">שדה</span><code class=\"card-field-name\">created</code></th><td data-cell-label=\"סוג\" data-field-type><span class=\"card-cell-label\">סוג</span></td></tr><tr><th data-cell-label=\"שדה\" scope=\"row\"><span class=\"card-cell-label\">שדה</span><code class=\"card-field-name\">data[].url</code></th><td data-cell-label=\"סוג\" data-field-type><span class=\"card-cell-label\">סוג</span></td></tr><tr><th data-cell-label=\"שדה\" scope=\"row\"><span class=\"card-cell-label\">שדה</span><code class=\"card-field-name\">data[].b64_json</code></th><td data-cell-label=\"סוג\" data-field-type><span class=\"card-cell-label\">סוג</span></td></tr><tr><th data-cell-label=\"שדה\" scope=\"row\"><span class=\"card-cell-label\">שדה</span><code class=\"card-field-name\">usage</code></th><td data-cell-label=\"סוג\" data-field-type><span class=\"card-cell-label\">סוג</span></td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">כינויים</h3><h4>כינויים למודל</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=krea%2Fkrea-2-medium&amp;route=Ultra&amp;caller=krea%2Fkrea-2-medium&amp;fmt=images\"><code>krea/krea-2-medium</code></a></span></p><h4>כינויים לנתיבי שיטות</h4><p class=\"note-s\"><code>/v1/images</code></p><h4>מזהי מודלים קשורים IDs</h4><p class=\"note-s\"><a href=\"#m=krea%2Fkrea-2-medium&amp;route=Ultra&amp;caller=krea%2Fkrea-2-medium&amp;fmt=images\"><code>krea/krea-2-medium</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "krea/krea-2-medium",
        "fmt": "images",
        "http": "POST",
        "path": "/v1/images/generations",
        "request_model_id": "krea/krea-2-medium",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|images|/v1/images/generations|krea%2Fkrea-2-medium",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "billing_basis": {
          "basis": "original_invoice_usd",
          "description": "התעריפים המוצגים מספקים אומדן לעלות לפני היצירה. החיוב הסופי מחושב לפי העלות שנרשמה עבור היצירה המקורית. משך הפלט שנמדד והכמויות החזויות אינם הכמות הסופית לחיוב.",
          "forecast_quantity_is_estimate": true,
          "physical_output_is_billable_quantity": false,
          "version": "original_invoice_usd_v1"
        },
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed URL; never construct token"
                }
              ],
              "mode": "synchronous_result_then_owned_library",
              "operation_id_is_not_task_id": true,
              "status": [
                {
                  "http": "GET",
                  "id_source": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "שמרו את X-Client-Request-ID שהוחזר לצורך התאמת רישומים. קראו רק ערכי task_id/asset_id שהוחזרו בפועל או את ספריית המדיה שבבעלותכם; לעולם אל תבנו URL של משימה ממזהה הפעולה ואל תשלחו שוב בקשת יצירה."
            },
            "outputs": {
              "all_results": "שמרו את התשובה המלאה ואת הכותרות, כל פלט שהתקבל בפועל, את המזהים המקוריים שהוחזרו ואת כל שדות השימוש. שחזרו את הפעולה המקורית בלי לשלוח שוב בקשת יצירה.",
              "family": "image",
              "fields": [
                {
                  "description": null,
                  "name": "created",
                  "type": null
                },
                {
                  "description": null,
                  "name": "data[].url",
                  "type": null
                },
                {
                  "description": null,
                  "name": "data[].b64_json",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage",
                  "type": null
                }
              ]
            },
            "parameters": [
              {
                "enum": [
                  "krea/krea-2-medium"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "min_length": 1,
                "name": "prompt",
                "required": true,
                "type": "string"
              },
              {
                "enum": [
                  "1K"
                ],
                "enum_known": true,
                "name": "resolution",
                "required": false,
                "type": "string"
              },
              {
                "enum": [
                  "1:1",
                  "4:3",
                  "3:2",
                  "16:9",
                  "4:5",
                  "2:3",
                  "9:16"
                ],
                "enum_known": true,
                "name": "aspect_ratio",
                "required": false,
                "type": "string"
              },
              {
                "items": {
                  "properties": {
                    "image_url": {
                      "properties": {
                        "url": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "url"
                      ],
                      "type": "object"
                    },
                    "type": {
                      "const": "image_url"
                    }
                  },
                  "required": [
                    "type",
                    "image_url"
                  ],
                  "type": "object"
                },
                "maximum_items": 1,
                "minimum_items": 0,
                "name": "input_references",
                "required": false,
                "type": "array"
              },
              {
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "aspect_ratio": {
                  "enum": [
                    "1:1",
                    "4:3",
                    "3:2",
                    "16:9",
                    "4:5",
                    "2:3",
                    "9:16"
                  ],
                  "type": "string"
                },
                "input_references": {
                  "items": {
                    "properties": {
                      "image_url": {
                        "properties": {
                          "url": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "url"
                        ],
                        "type": "object"
                      },
                      "type": {
                        "const": "image_url"
                      }
                    },
                    "required": [
                      "type",
                      "image_url"
                    ],
                    "type": "object"
                  },
                  "maxItems": 1,
                  "minItems": 0,
                  "type": "array"
                },
                "model": {
                  "enum": [
                    "krea/krea-2-medium"
                  ],
                  "type": "string"
                },
                "prompt": {
                  "minLength": 1,
                  "type": "string"
                },
                "provider": {
                  "description": "Exact image provider preferences from the documented image request schema.",
                  "type": "object"
                },
                "resolution": {
                  "enum": [
                    "1K"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "prompt"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "model": "krea/krea-2-medium",
                "prompt": "a red panda astronaut floating in space, studio lighting"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_types": [
              "text",
              "image"
            ],
            "required": [
              "model",
              "prompt"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed URL; never construct token"
              }
            ],
            "mode": "synchronous_result_then_owned_library",
            "operation_id_is_not_task_id": true,
            "status": [
              {
                "http": "GET",
                "id_source": "ערך task_id שהוחזר בפועל או רשומה בספריית המדיה",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Keep the returned X-Client-Request-ID for reconciliation. Read only actual returned task_id/asset_id values or the owned media library; never build a task URL from the operation ID and never resubmit creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/images/generations"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "image",
            "fields": [
              {
                "description": null,
                "name": "created",
                "type": null
              },
              {
                "description": null,
                "name": "data[].url",
                "type": null
              },
              {
                "description": null,
                "name": "data[].b64_json",
                "type": null
              },
              {
                "description": null,
                "name": "usage",
                "type": null
              }
            ]
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "basis": "אומדן זה אינו חיוב נוסף או תעריף קבוע עבור היצירה שהושלמה.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "עלות יצירה משוערת",
            "units": [
              {
                "amount": "0.06",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.06",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np={'model': 'krea/krea-2-medium', 'prompt': 'a red panda astronaut floating in space, studio lighting'}\n\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - <<'PY_RESULT'\nimport base64, json, os, subprocess\nfrom pathlib import Path\nfrom urllib.parse import urlsplit, urljoin\n\ndef save_images(items):\n    if not items: raise SystemExit(\"No completed images; retain the full response\")\n    for index, item in enumerate(items):\n        encoded=item.get(\"b64_json\")\n        uri=item.get(\"url\", \"\")\n        if not encoded and uri.startswith(\"data:image/\"):\n            header, separator, encoded=uri.partition(\",\")\n            if not separator or \";base64\" not in header: raise SystemExit(\"Unsupported image data URI\")\n        if encoded:\n            raw=base64.b64decode(encoded,validate=True)\n        elif uri:\n            uri=urljoin(\"https://api.ailoot.ai\",uri)\n            parsed=urlsplit(uri)\n            if parsed.scheme!=\"https\" or not parsed.netloc or parsed.username or parsed.password:\n                raise SystemExit(\"Invalid returned image URL\")\n            owned=parsed.netloc==\"api.ailoot.ai\" and parsed.path.startswith(\"/v1/media/assets/\") and parsed.path.endswith(\"/content\")\n            args=[\"curl\",\"--fail-with-body\",\"--silent\",\"--show-error\",uri]\n            if owned: args += [\"-H\",\"Authorization: Bearer \"+os.environ[\"AILOOT_API_KEY\"]]\n            temporary=Path(f\"image-{index}.bin\")\n            subprocess.run(args+[\"-o\",str(temporary)],check=True)\n            raw=temporary.read_bytes()\n            temporary.unlink()\n        else: raise SystemExit(\"Image has neither bytes nor URL\")\n        if not raw: raise SystemExit(\"Empty image result\")\n        ext=\"png\" if raw.startswith(b\"\\x89PNG\") else \"jpg\" if raw.startswith(b\"\\xff\\xd8\") else \"webp\" if raw[:4]==b\"RIFF\" and raw[8:12]==b\"WEBP\" else \"svg\" if raw.lstrip().startswith((b\"<svg\",b\"<?xml\")) else \"bin\"\n        Path(f\"image-{index}.{ext}\").write_bytes(raw)\n    print(\"Every returned image saved; complete response metadata retained\")\nsave_images(json.loads(Path(\"result.json\").read_text())[\"data\"])\nPY_RESULT\n",
            "label": "curl · exact creation/save all outputs",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o owned-assets.json\n# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.\n",
            "label": "Read existing owned assets",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "images",
        "hints": [
          "Use the exact caller model ID and documented input representation.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "text",
          "image"
        ],
        "label": "תמונות",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [
          "/v1/images"
        ],
        "native_endpoint": "images",
        "out": null,
        "output": [
          "image"
        ],
        "path": "/v1/images/generations",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "original_invoice_usd",
          "image_input_price": null,
          "image_output_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "basis": "This estimate is not an additional charge or a fixed rate for the completed generation.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Estimated generation cost",
            "units": [
              {
                "amount": "0.06",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.06",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "request_model_id": "krea/krea-2-medium",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.06",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "forecast_usd",
            "label": "Estimated generation cost",
            "native_amount_usd_per_unit": "0.06",
            "native_quantity": 1,
            "public_unit_label": "estimate before generation",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "request_estimate"
          }
        ]
      }
    }
  ],
  "model_id": "krea/krea-2-medium",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "c930fd68ab0ec8a264baea521501a06aefd5849437377002c21076e9c0a84678",
    "input_html_sha256": "21f015cfb994cbb5ff913fbd878e55bb32cc7eebb3c53a39b1a353e3543bf45a",
    "private_audit_sha256": "f33af472f97a2c1def133541d80d71917e72a806e97f9cfb55baae22184d57d4",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/he/krea-krea-2-medium/",
    "description": "Krea 2 Medium יוצר איורים בעלי הבעה מטקסט ומקלטים חזותיים אופציונליים. אימון ההמשך הנרחב יותר שלו מעודד תוצאות יציבות באיור, באנימה ובציור, עם בקרות לסגנון, לפרשנות ההנחיה, לצפיפות הקומפוזיציה ולאנרגיה החזותית.",
    "locale": "he",
    "md_url": "https://ailoot.ai/models/he/krea-krea-2-medium/index.md",
    "title": "Krea: Krea 2 Medium — Ailoot",
    "url": "https://ailoot.ai/models/he/krea-krea-2-medium/"
  },
  "rawModel": {
    "about": "### איור בעל הבעה ופיתוח יצירתי יציב\n\nKrea 2 Medium הוא מודל תמונות Krea 2 שנבנה מאפס ומיועד לאיור בעל הבעה. Krea מתארת אותו כקטן מ־Large וככזה שעבר אימון המשך נרחב יותר, עם אופי יציב יותר שפועל טוב במיוחד באיור, באנימה ובציור. Medium ו־Large חולקים את מערכת הבקרות המתועדת; ההבדל בין המהדורות נוגע לתכנון המודל ולנטיותיו החזותיות, ולא לסוג פלט אחר.\n\nהשתמשו ב־Medium לפיתוח איורים מערכתיים, סצנות סיפור, קונספטים מצוירים וכיוונים חזותיים מתואמים. התחילו בבריף שמגדיר את הנושא, הפעולה, הסביבה, הקומפוזיציה, פלטת הצבעים והמדיום. למשל: ״רוכב אופניים חוצה גשר שקט על גדת נהר עם שחר, איור מערכתי רחב, צורות גואש בשכבות, צללים כחולים רכים ונגיעה אחת בגוון קורל, מרחב פתוח מעל הנהר לכותרת.״ התייחסו למרחב הריק כבקשת קומפוזיציה, ואז הציבו את הטיפוגרפיה הסופית בפריסה המוגמרת.\n\n### הכינו קלטי טקסט ותמונה\n\nממשק היצירה מחייב הנחיה, יחס ממדים ורזולוציה. טקסט מספק את הסצנה ואת הכיוון היצירתי. תמונת מקור אופציונלית מאפשרת יצירה מתמונה לתמונה, המתחילה מאותה תמונה במקום מרעש טהור. עוצמת הסרת הרעש נעה בין 0 ל־1: 0 שומר על תמונת הקלט, 1 מחליף אותה במלואה, וברירת המחדל המתועדת היא 0.99. השתמשו בתמונת מקור כאשר קומפוזיציית הפתיחה חשובה, ואז תארו את הטיפול החדש ובחרו כמה שינוי לאפשר.\n\nייחוסי סגנון בתמונות משפיעים על הטיפול החזותי בנפרד מתמונת המקור. הסכמה הייחודית למודל מגבילה מחרוזות URI של תמונת מקור ושל ייחוס סגנון ל־1,024 תווים. הסכמה הייחודית ל־Medium מקבלת עד עשרה ייחוסים, עם השפעה נפרדת בין 0 ל־1 וברירת מחדל של 0.5. הכינו מערך ייחוסים קטן ומכוון: תמונה אחת יכולה לקבוע את עבודת המכחול ואחרת את הפלטה או התאורה. ציינו את הקשר הרצוי בבריף במקום להסתמך על אוסף מעורב שירמוז על כיוון מגובש.\n\nלוח השראה מקבץ ייחוסים קשורים סביב סגנון, פלטה, מרקם או קומפוזיציה משותפים. תהליך העבודה המתועד יוצר תחילה את לוח ההשראה ואז משתמש במזהה הקיים שלו בבקשת יצירה. Medium מקבל לוח השראה אחד, עם השפעה בין 0 ל־1 וברירת מחדל של 0.23 בסכמת הבקשה שלו. סגנונות מאומנים, בדרך כלל LoRA, הם קלט נפרד שנבחר לפי מזהה ועוצמה בין ‎-2 ל־2. בחרו את הקלט המתאים למשימה: תמונת מקור מתחילה את הסצנה, ייחוס מציע מראה, ולוח השראה או סגנון מאומן מספקים כיוון לשימוש חוזר.\n\n### שלטו בפרשנות ובתוצאה החזותית\n\nCreativity שולט בהרחבת ההנחיה. Raw משבית הרחבה; low נשאר קרוב יותר לבריף המילולי, ואילו medium ו־high מאפשרים יותר פרשנות. סכמת הבקשה הייחודית ל־Medium משתמשת ב־low כברירת מחדל. לאיור המוגדר בקפדנות, כתבו את הכיוון המלא והתחילו בהרחבה מאופקת. לחקר ראשוני, הגדרה חופשית יותר יכולה לפתח קונספט פשוט לסצנה עשירה יותר.\n\nשלושה מחוונים עצמאיים מעצבים את התמונה: Intensity, Complexity ו־Movement. כל אחד מקבל מספר שלם בין ‎-100 ל־100, עם 0 כניטרלי. Intensity מעביר את הטיפול בין מאופק לנועז. Complexity מעביר בין קומפוזיציות נקיות ומינימליות לבין פרטים צפופים. Movement משנה אנרגיה חזותית, מחווה ותנועה מרומזת. Movement נשאר בקרת תמונת סטילס; הוא אינו יוצר אנימציה או קליפ וידאו. המחוונים עצמאיים מהרחבת ההנחיה של creativity ואפשר לשלבם עם קלטי ייחוס.\n\nתהליך איור מעשי קובע קודם את הסצנה, אחר כך מתאים פלטה וטיפול, ואז מכוונן צפיפות או אנרגיה. תעדו את ההנחיה, מערך הייחוסים וערך ה־seed האופציונלי תוך שינוי בקרה אחת בכל פעם. באיור שעל גדת הנהר, מורכבות נמוכה יותר יכולה לפשט את הרקע, וערך movement גבוה יותר יכול לרמוז על תנוחת רכיבה נמרצת יותר. אלה כיוונים יצירתיים שיש לבדוק בתוצאה המוגמרת, ולא נעילות מדויקות של פריסה או תנוחה.\n\n### פורמט, יצירה ומסירה\n\nסכמת היצירה המתועדת של Medium מציעה סולם רזולוציה 1K ותשעה יחסי ממדים: 1:1, 4:3, 3:2, 16:9, 2.35:1, 4:5, 3:4, 2:3 ו־9:16. בחרו את המסגרת המיועדת לפני היצירה כדי שהבריף יוכל לתאר את הקומפוזיציה בהתאם. איור ריבועי, סצנת סיפור רחבה וכריכה אנכית דורשים מיקום שונה של הנושא המרכזי ושל הפרטים שסביבו.\n\nתהליך היצירה המתועד מחזיר משימה, שבתחילה עשויה להיות בהמתנה. עקבו אחר הסטטוס שלה עד ההשלמה ואז אחזרו את מיקומי התמונות שהתקבלו. שמרו את התמונה שנבחרה יחד עם הבריף, תמונות הקלט והגדרות הבקרה. בדקו קווי מתאר, ידיים או עצמים קטנים, פרספקטיבה, פלטת צבעים וכל כיתוב גלוי לפני שילובה בפרסום או בקמפיין.\n\nהדגש של Medium על איור הוא בחירת מהדורה שימושית, ולא הבטחה לתוצאות זהות בין הנחיות. ייחוס חזותי יכול להנחות סגנון בלי להעתיק באופן מושלם את הנושא או הפריסה שלו, ועוצמת תמונה־לתמונה משנה כמה מתמונת הפתיחה שורד. השתמשו בהוראות מפורשות לרכיבים נדרשים, בדקו כל פלט מוגמר מול הבריף ובצעו התאמות סופיות של קומפוזיציה, טיפוגרפיה והפקה בעורך.",
    "alias_of": null,
    "aliases": [],
    "author": "Krea",
    "capabilities": {
      "context_length": 65536,
      "manufacturer_input": [
        "text",
        "image"
      ],
      "manufacturer_output": [
        "image"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.06",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "forecast_usd",
            "label": "Estimated generation cost",
            "native_amount_usd_per_unit": "0.06",
            "native_quantity": 1,
            "public_unit_label": "estimate before generation",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "request_estimate"
          }
        ],
        "summary": "התמחור המלא של התצורה מופיע בפרטים."
      }
    ],
    "ctx": null,
    "formats": [
      "images"
    ],
    "id": "krea/krea-2-medium",
    "input": [
      "text",
      "image"
    ],
    "kind": "image",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "billing_basis": {
          "basis": "original_invoice_usd",
          "description": "התעריפים המוצגים מספקים אומדן לעלות לפני היצירה. החיוב הסופי מחושב לפי העלות שנרשמה עבור היצירה המקורית. משך הפלט שנמדד והכמויות החזויות אינם הכמות הסופית לחיוב.",
          "forecast_quantity_is_estimate": true,
          "physical_output_is_billable_quantity": false,
          "version": "original_invoice_usd_v1"
        },
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed URL; never construct token"
                }
              ],
              "mode": "synchronous_result_then_owned_library",
              "operation_id_is_not_task_id": true,
              "status": [
                {
                  "http": "GET",
                  "id_source": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "שמרו את X-Client-Request-ID שהוחזר לצורך התאמת רישומים. קראו רק ערכי task_id/asset_id שהוחזרו בפועל או את ספריית המדיה שבבעלותכם; לעולם אל תבנו URL של משימה ממזהה הפעולה ואל תשלחו שוב בקשת יצירה."
            },
            "outputs": {
              "all_results": "שמרו את התשובה המלאה ואת הכותרות, כל פלט שהתקבל בפועל, את המזהים המקוריים שהוחזרו ואת כל שדות השימוש. שחזרו את הפעולה המקורית בלי לשלוח שוב בקשת יצירה.",
              "family": "image",
              "fields": [
                {
                  "description": null,
                  "name": "created",
                  "type": null
                },
                {
                  "description": null,
                  "name": "data[].url",
                  "type": null
                },
                {
                  "description": null,
                  "name": "data[].b64_json",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage",
                  "type": null
                }
              ]
            },
            "parameters": [
              {
                "enum": [
                  "krea/krea-2-medium"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "min_length": 1,
                "name": "prompt",
                "required": true,
                "type": "string"
              },
              {
                "enum": [
                  "1K"
                ],
                "enum_known": true,
                "name": "resolution",
                "required": false,
                "type": "string"
              },
              {
                "enum": [
                  "1:1",
                  "4:3",
                  "3:2",
                  "16:9",
                  "4:5",
                  "2:3",
                  "9:16"
                ],
                "enum_known": true,
                "name": "aspect_ratio",
                "required": false,
                "type": "string"
              },
              {
                "items": {
                  "properties": {
                    "image_url": {
                      "properties": {
                        "url": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "url"
                      ],
                      "type": "object"
                    },
                    "type": {
                      "const": "image_url"
                    }
                  },
                  "required": [
                    "type",
                    "image_url"
                  ],
                  "type": "object"
                },
                "maximum_items": 1,
                "minimum_items": 0,
                "name": "input_references",
                "required": false,
                "type": "array"
              },
              {
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "aspect_ratio": {
                  "enum": [
                    "1:1",
                    "4:3",
                    "3:2",
                    "16:9",
                    "4:5",
                    "2:3",
                    "9:16"
                  ],
                  "type": "string"
                },
                "input_references": {
                  "items": {
                    "properties": {
                      "image_url": {
                        "properties": {
                          "url": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "url"
                        ],
                        "type": "object"
                      },
                      "type": {
                        "const": "image_url"
                      }
                    },
                    "required": [
                      "type",
                      "image_url"
                    ],
                    "type": "object"
                  },
                  "maxItems": 1,
                  "minItems": 0,
                  "type": "array"
                },
                "model": {
                  "enum": [
                    "krea/krea-2-medium"
                  ],
                  "type": "string"
                },
                "prompt": {
                  "minLength": 1,
                  "type": "string"
                },
                "provider": {
                  "description": "Exact image provider preferences from the documented image request schema.",
                  "type": "object"
                },
                "resolution": {
                  "enum": [
                    "1K"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "prompt"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "model": "krea/krea-2-medium",
                "prompt": "a red panda astronaut floating in space, studio lighting"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_types": [
              "text",
              "image"
            ],
            "required": [
              "model",
              "prompt"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed URL; never construct token"
              }
            ],
            "mode": "synchronous_result_then_owned_library",
            "operation_id_is_not_task_id": true,
            "status": [
              {
                "http": "GET",
                "id_source": "ערך task_id שהוחזר בפועל או רשומה בספריית המדיה",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Keep the returned X-Client-Request-ID for reconciliation. Read only actual returned task_id/asset_id values or the owned media library; never build a task URL from the operation ID and never resubmit creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/images/generations"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "image",
            "fields": [
              {
                "description": null,
                "name": "created",
                "type": null
              },
              {
                "description": null,
                "name": "data[].url",
                "type": null
              },
              {
                "description": null,
                "name": "data[].b64_json",
                "type": null
              },
              {
                "description": null,
                "name": "usage",
                "type": null
              }
            ]
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "basis": "אומדן זה אינו חיוב נוסף או תעריף קבוע עבור היצירה שהושלמה.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "עלות יצירה משוערת",
            "units": [
              {
                "amount": "0.06",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.06",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np={'model': 'krea/krea-2-medium', 'prompt': 'a red panda astronaut floating in space, studio lighting'}\n\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - <<'PY_RESULT'\nimport base64, json, os, subprocess\nfrom pathlib import Path\nfrom urllib.parse import urlsplit, urljoin\n\ndef save_images(items):\n    if not items: raise SystemExit(\"No completed images; retain the full response\")\n    for index, item in enumerate(items):\n        encoded=item.get(\"b64_json\")\n        uri=item.get(\"url\", \"\")\n        if not encoded and uri.startswith(\"data:image/\"):\n            header, separator, encoded=uri.partition(\",\")\n            if not separator or \";base64\" not in header: raise SystemExit(\"Unsupported image data URI\")\n        if encoded:\n            raw=base64.b64decode(encoded,validate=True)\n        elif uri:\n            uri=urljoin(\"https://api.ailoot.ai\",uri)\n            parsed=urlsplit(uri)\n            if parsed.scheme!=\"https\" or not parsed.netloc or parsed.username or parsed.password:\n                raise SystemExit(\"Invalid returned image URL\")\n            owned=parsed.netloc==\"api.ailoot.ai\" and parsed.path.startswith(\"/v1/media/assets/\") and parsed.path.endswith(\"/content\")\n            args=[\"curl\",\"--fail-with-body\",\"--silent\",\"--show-error\",uri]\n            if owned: args += [\"-H\",\"Authorization: Bearer \"+os.environ[\"AILOOT_API_KEY\"]]\n            temporary=Path(f\"image-{index}.bin\")\n            subprocess.run(args+[\"-o\",str(temporary)],check=True)\n            raw=temporary.read_bytes()\n            temporary.unlink()\n        else: raise SystemExit(\"Image has neither bytes nor URL\")\n        if not raw: raise SystemExit(\"Empty image result\")\n        ext=\"png\" if raw.startswith(b\"\\x89PNG\") else \"jpg\" if raw.startswith(b\"\\xff\\xd8\") else \"webp\" if raw[:4]==b\"RIFF\" and raw[8:12]==b\"WEBP\" else \"svg\" if raw.lstrip().startswith((b\"<svg\",b\"<?xml\")) else \"bin\"\n        Path(f\"image-{index}.{ext}\").write_bytes(raw)\n    print(\"Every returned image saved; complete response metadata retained\")\nsave_images(json.loads(Path(\"result.json\").read_text())[\"data\"])\nPY_RESULT\n",
            "label": "curl · exact creation/save all outputs",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o owned-assets.json\n# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.\n",
            "label": "Read existing owned assets",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "images",
        "hints": [
          "Use the exact caller model ID and documented input representation.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "text",
          "image"
        ],
        "label": "תמונות",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [
          "/v1/images"
        ],
        "native_endpoint": "images",
        "out": null,
        "output": [
          "image"
        ],
        "path": "/v1/images/generations",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "original_invoice_usd",
          "image_input_price": null,
          "image_output_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "basis": "This estimate is not an additional charge or a fixed rate for the completed generation.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Estimated generation cost",
            "units": [
              {
                "amount": "0.06",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.06",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "request_model_id": "krea/krea-2-medium",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.06",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "forecast_usd",
            "label": "Estimated generation cost",
            "native_amount_usd_per_unit": "0.06",
            "native_quantity": 1,
            "public_unit_label": "estimate before generation",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "request_estimate"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "krea/krea-2-medium",
        "request_model_id": "krea/krea-2-medium",
        "route_label": "Ultra"
      }
    ],
    "name": "Krea: Krea 2 Medium",
    "price": {
      "estimate_only": true,
      "in": null,
      "in_label": null,
      "out": 0.06,
      "out_label": "estimate before generation",
      "scope_label": "Estimated generation cost",
      "sort_in": null,
      "sort_out": 0.06,
      "varies": false
    },
    "short": "Krea 2 Medium יוצר איורים בעלי הבעה מטקסט ומקלטים חזותיים אופציונליים. אימון ההמשך הנרחב יותר שלו מעודד תוצאות יציבות באיור, באנימה ובציור, עם בקרות לסגנון, לפרשנות ההנחיה, לצפיפות הקומפוזיציה ולאנרגיה החזותית."
  },
  "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": "Krea 2 Medium יוצר איורים בעלי הבעה מטקסט ומקלטים חזותיים אופציונליים. אימון ההמשך הנרחב יותר שלו מעודד תוצאות יציבות באיור, באנימה ובציור, עם בקרות לסגנון, לפרשנות ההנחיה, לצפיפות הקומפוזיציה ולאנרגיה החזותית.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "82bc5ddb6996a6bca480ae483639f29c44b816924a1bb68551bbe2cb227e6365",
    "renderer_sha256": "c36bd89b8b0dac234af52bf68530df83530b908ec7a9f2e1de2483fe236ae910"
  },
  "sourceRevision": "a54c903d8af7d88701f2aa702497df4e7bfe2bd00ddc1fcc23b47eb7b8ff25da"
}
