Source: https://ailoot.ai/models/he/gpt-image-2/
Canonical: https://ailoot.ai/models/he/gpt-image-2/
Language: he

# OpenAI: GPT Image 2

[Markdown](https://ailoot.ai/models/he/gpt-image-2/index.md) · [JSON](https://ailoot.ai/models/he/gpt-image-2/facts.json)

## [OpenAI: GPT Image 2](https://ailoot.ai/models/he/gpt-image-2/)

GPT Image 2 יוצר ועורך תמונות מטקסט ומתמונות ייחוס. הוא תומך במידות מסגרת גמישות ומעבד אוטומטית קלטי תמונה בנאמנות גבוהה, עם בקרות נפרדות לאיכות, לפורמט ולרקע של התוצר המוגמר.

- [**Ailoot · תמונות** `POST /v1/images/generations` `gpt-image-2`](https://ailoot.ai/models/he/gpt-image-2/#method-0)
- [**Ailoot Ultra · תמונות** `POST /v1/images/generations` `gpt-image-2`](https://ailoot.ai/models/he/gpt-image-2/#method-1)
- [**Ailoot Ultra · תמונות** `POST /v1/images/generations` `openai/gpt-image-2`](https://ailoot.ai/models/he/gpt-image-2/#method-2)

על המודל

התיאור הזה מציג את יכולות המודל. הקלט, הפלט והאפשרויות הזמינים ב-Ailoot מפורטים בהמשך לפי השיטה שנבחרה.

GPT Image 2 הוא המודל של OpenAI ליצירת תמונות ולעריכתן מקלטי טקסט ותמונה. הוא יוצר תמונה חדשה מתדריך כתוב ויכול להשתמש בתמונות מקור לעריכות או לעבודה מונחית ייחוס. משימות מעשיות כוללות איורים, רעיונות מוצר, קומפוזיציות חזותיות ושינויים בתוצר קיים. זו מהדורה נפרדת ממודלי GPT Image 2.5 Sunburst ו־Flare, עם טווח איכות והתנהגות נאמנות קלט משלה.

ליצירה, תארו את הנושא, הסצנה, הקומפוזיציה, האור והסגנון המיועד. לעריכה, ציינו מה צריך להשתנות ומה צריך לשמור על מראהו. תדריך מוצר יכול לבקש מנורה קרמית על משטח בהיר עם צללית ממורכזת ומקום לכיתוב; עריכת המשך יכולה להחליף את הרקע תוך שימור צורת המנורה וזווית הצפייה. תהליכי היצירה והעריכה הישירים המתועדים מקבלים הנחיות של עד 32,000 תווים ויכולים להחזיר אחת עד עשר תמונות.

עריכה מבוססת ייחוס מקבלת עד שש־עשרה תמונות קלט. ציינו את מטרת כל תמונת ייחוס כדי שלא יהיה בלבול בין נושא, רקע ועיבוד חזותי. GPT Image 2 מעבד אוטומטית כל קלט תמונה בנאמנות גבוהה; יש להשמיט input\_fidelity כי אינו ניתן להתאמה במהדורה זו. זה שונה מהבחירה high או low ב־GPT Image 1 וממצב נאמנות הקלט low בלבד ב־GPT Image 1 Mini. עיבוד קלט בנאמנות גבוהה תומך בפרטי המקור בלי להבטיח שכל פרט ישוחזר ללא שינוי.

מסכה יכולה לזהות את האזור לעריכה. לתמונת המקור ולמסכה חייבים להיות פורמט ומידות זהים והן חייבות להיות קטנות מ־50 MB לפי דרישות ההכנה במדריך; המסכה זקוקה גם לערוץ אלפא. אם סופקו כמה תמונות קלט, המסכה חלה על הראשונה. המודל מתייחס למסכה כהכוונה המבוססת על התדריך ולא כגבול גאומטרי קשיח. תארו את השינוי המקומי ואת דרישות השימור, ואז בדקו את האזור שסביבו לשינויים לא מכוונים.

GPT Image 2 תומך באיכות low, medium, high ו־auto, עם auto כברירת מחדל. הגדרות xhigh ו־max של משפחת 2.5 אינן חלק מטווח האיכות של מהדורה זו. הגודל יכול להיות ריבועי, רוחבי, אנכי, אוטומטי או רוחב וגובה מותאמים תקפים. דוגמאות היצרן כוללות 1024 × 1024, ‏1536 × 1024, ‏1024 × 1536, ‏2048 × 2048, ‏2048 × 1152, ‏3840 × 2160 ו־2160 × 3840 פיקסלים. בחרו את הכיוון ורמת הפירוט לפריסה בפועל במקום לראות באיכות ובמידות אותה בקרה.

מידות מותאמות חייבות להיות כפולות של שש־עשרה פיקסלים, עם צלע מרבית של 3840 פיקסלים, יחס בין הצלע הארוכה לקצרה שלא יעלה על 3:1 ושטח של 655,360 עד 8,294,400 פיקסלים. התנאים חלים בו־זמנית. רזולוציות מעל 2560 × 1440 מסומנות כניסיוניות. מסגרת העומדת בכלל אחד עדיין יכולה להפר אחר, לכן בחרו זוג מידות נתמך ותארו בתדריך מרכיבים הרגישים לחיתוך.

הפלט הוא PNG כברירת מחדל, עם אפשרות גם ל־JPEG או WebP. דחיסה מ־0 עד 100 נתמכת ל־JPEG ול־WebP. הרקע יכול להיות אטום או אוטומטי; התיעוד המדויק הנוכחי מתאר שקיפות ב־GPT Image 2 כיכולת בתצוגה מקדימה. כשמבקשים שקיפות, השתמשו ב־PNG או ב־WebP כדי לשמור ערוץ אלפא. תהליך ההזרמה המתועד מתיר עד שלוש תמונות חלקיות לפני התמונה המוגמרת; שימרו את התוצר הסופי ולא תצוגת התקדמות. ממשק היצרן תומך גם בעיבוד באצווה.

העריכו את בהירות הטקסט, מיקום העצמים ושימור פרטי המקור בתוצאה בפועל. GPT Image עלול להתקשות בכיתוב מדויק, בקומפוזיציות רגישות לפריסה ובזהות חזותית חוזרת בין יצירות נפרדות. לרצף עריכות, השתמשו בתוצאה שנבחרה כמקור הבא ותנו שינוי קונקרטי הקשור לבעיה נראית. הפלט השימושי של GPT Image 2 הוא תמונה הקשורה לתדריך יצירה או עריכה ברור, עם קלטים בנאמנות גבוהה, מידות ואיכות שנבחרו למשימה המסוימת.

**Ailoot · תמונות** `POST /v1/images/generations` `gpt-image-2`

[`gpt-image-2`](https://ailoot.ai/models/he/#m=openai%2Fgpt-image-2&route=Core&caller=gpt-image-2&fmt=images)

OpenAI /`gpt-image-2`

### התחלה

GPT Image 2 יוצר ועורך תמונות מטקסט ומתמונות ייחוס. הוא תומך במידות מסגרת גמישות ומעבד אוטומטית קלטי תמונה בנאמנות גבוהה, עם בקרות נפרדות לאיכות, לפורמט ולרקע של התוצר המוגמר.

סוגי קלט נתמכים

טקסט

תוצאות

תמונות

### זמין ב-Ailoot · קלט ושיטות

**Ailoot · תמונות** `POST /v1/images/generations`

סוגי קלט

`text`

סוגי פלט

`image`

פורמט פלט

קובץ תמונה

| שדה | סוג | דרישה | ערכים ומגבלות | ברירת מחדל |
| --- | --- | --- | --- | --- |
| שדה`model` | סוג`string` | דרישהחובה | ערכים ומגבלות gpt-image-2 | ברירת מחדל— |
| שדה`prompt` | סוג`string` | דרישהחובה | ערכים ומגבלות אורך מזערי: ⁦1⁩ | ברירת מחדל— |
| שדה`n` | סוג`integer` | דרישהרשות | ערכים ומגבלות מינימום: ⁦1⁩ | ברירת מחדל⁦1⁩ |
| שדה`response_format` | סוג`string` | דרישהרשות | ערכים ומגבלות url, b64\_json | ברירת מחדל— |
| שדה`stream` | סוג`boolean` | דרישהרשות | ערכים ומגבלות | ברירת מחדלfalse |
| שדה`size` | סוג`string` | דרישהרשות | ערכים ומגבלות תלוי במודל | ברירת מחדל— |
| שדה`quality` | סוג`string` | דרישהרשות | ערכים ומגבלות תלוי במודל | ברירת מחדל— |
| שדה`background` | סוג`string` | דרישהרשות | ערכים ומגבלות תלוי במודל | ברירת מחדל— |
| שדה`output_format` | סוג`string` | דרישהרשות | ערכים ומגבלות תלוי במודל | ברירת מחדל— |
| שדה`output_compression` | סוג`integer` | דרישהרשות | ערכים ומגבלות תלוי במודל | ברירת מחדל— |
| שדה`moderation` | סוג`string` | דרישהרשות | ערכים ומגבלות תלוי במודל | ברירת מחדל— |
| שדה`input_fidelity` | סוג`string` | דרישהרשות | ערכים ומגבלות תלוי במודל | ברירת מחדל— |
| שדה`style` | סוג`string` | דרישהרשות | ערכים ומגבלות תלוי במודל | ברירת מחדל— |
| שדה`partial_images` | סוג`integer` | דרישהרשות | ערכים ומגבלות תלוי במודל | ברירת מחדל— |

שילובים של חומרי קלט

**מטקסט לתמונה** · נדרש: prompt

פרמטרים ומחזור חיים של השיטה

| פרמטר | מפרט |
| --- | --- |
| פרמטר`material_types` | מפרטtext |
| פרמטר`required` | מפרטmodel, prompt |
| פרמטר`optional_controls` | מפרטnull |
| פרמטר`content_type` | מפרטapplication/json |

מחזור חיים: `synchronous_result_then_owned_library`

`GET /v1/media/tasks/{task_id}` · ערך task\_id שהוחזר בפועל או רשומה בספריית המדיה

`GET /v1/media/assets/{asset_id}/content`

`GET /v1/media/assets`

`GET /v1/media/assets/{asset_id}`

מבני המתודות והמזהים מדויקים; יכולת הספק נפרדת מקבלת הבקשה לביצוע.

### תעריפים

#### תעריפי שיטות Ailoot

קלט טקסט

⁦‏0.0025 ‏$⁩ */ 1K*

קלט, תמונה

⁦‏0.004 ‏$⁩ */ 1K tokens*

פלט, תמונה

⁦‏0.015 ‏$⁩ */ 1K tokens*

לפני הבקשה Ailoot משריינת סכום משוער. לאחר קבלת התוצאה היא מסדירה את החיוב הסופי לפי השימוש המדוד. הסדרת חיוב בהזרמה משתמשת ברשומת השימוש הסופית. [איך פועלים שריון הסכום והסדרת החיוב →](https://ailoot.ai/docs/he/billing/reserve/)

### דוגמאות לבקשות

#### Ailoot · תמונות

curlPython SDKNode.js SDK

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
export AILOOT_API_KEY
: "${AILOOT_PROMPT_FILE:?Set your actual UTF-8 image brief}"
export AILOOT_PROMPT_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "gpt-image-2", "prompt": ""}')
f=Path(os.environ["AILOOT_PROMPT_FILE"])
if not f.is_file():raise SystemExit("Choose your actual UTF-8 brief")
p['prompt']=f.read_text(encoding="utf-8")
if not p['prompt'].strip():raise SystemExit("Brief must contain text")
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import base64, json, os, subprocess
from pathlib import Path
from urllib.parse import urlsplit, urljoin

def save_images(items):
    if not items: raise SystemExit("No completed images; retain the full response")
    for index, item in enumerate(items):
        encoded=item.get("b64_json")
        uri=item.get("url", "")
        if not encoded and uri.startswith("data:image/"):
            header, separator, encoded=uri.partition(",")
            if not separator or ";base64" not in header: raise SystemExit("Unsupported image data URI")
        if encoded:
            raw=base64.b64decode(encoded,validate=True)
        elif uri:
            uri=urljoin("https://api.ailoot.ai",uri)
            parsed=urlsplit(uri)
            if parsed.scheme!="https" or not parsed.netloc or parsed.username or parsed.password:
                raise SystemExit("Invalid returned image URL")
            owned=parsed.netloc=="api.ailoot.ai" and parsed.path.startswith("/v1/media/assets/") and parsed.path.endswith("/content")
            args=["curl","--fail-with-body","--silent","--show-error",uri]
            if owned: args += ["-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"]]
            temporary=Path(f"image-{index}.bin")
            subprocess.run(args+["-o",str(temporary)],check=True)
            raw=temporary.read_bytes()
            temporary.unlink()
        else: raise SystemExit("Image has neither bytes nor URL")
        if not raw: raise SystemExit("Empty image result")
        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"
        Path(f"image-{index}.{ext}").write_bytes(raw)
    print("Every returned image saved; complete response metadata retained")
save_images(json.loads(Path("result.json").read_text())["data"])
PY_RESULT
```

```python
from openai import OpenAI
import base64, json, os, subprocess
from pathlib import Path
from urllib.parse import urlsplit, urljoin

def save_images(items):
    if not items: raise SystemExit("No completed images; retain the full response")
    for index, item in enumerate(items):
        encoded=item.get("b64_json")
        uri=item.get("url", "")
        if not encoded and uri.startswith("data:image/"):
            header, separator, encoded=uri.partition(",")
            if not separator or ";base64" not in header: raise SystemExit("Unsupported image data URI")
        if encoded:
            raw=base64.b64decode(encoded,validate=True)
        elif uri:
            uri=urljoin("https://api.ailoot.ai",uri)
            parsed=urlsplit(uri)
            if parsed.scheme!="https" or not parsed.netloc or parsed.username or parsed.password:
                raise SystemExit("Invalid returned image URL")
            owned=parsed.netloc=="api.ailoot.ai" and parsed.path.startswith("/v1/media/assets/") and parsed.path.endswith("/content")
            args=["curl","--fail-with-body","--silent","--show-error",uri]
            if owned: args += ["-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"]]
            temporary=Path(f"image-{index}.bin")
            subprocess.run(args+["-o",str(temporary)],check=True)
            raw=temporary.read_bytes()
            temporary.unlink()
        else: raise SystemExit("Image has neither bytes nor URL")
        if not raw: raise SystemExit("Empty image result")
        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"
        Path(f"image-{index}.{ext}").write_bytes(raw)
    print("Every returned image saved; complete response metadata retained")

f=Path(os.environ["AILOOT_PROMPT_FILE"])
if not f.is_file():raise SystemExit("Set your actual UTF-8 image brief file")
request={'model': 'gpt-image-2', 'prompt': ''}
request["prompt"]=f.read_text(encoding="utf-8")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.images.generate(**request)
Path("sdk-result.txt").write_text(str(result),encoding="utf-8")
save_images([{"b64_json":getattr(item,"b64_json",None),"url":getattr(item,"url",None)} for item in result.data])
```

```js
import OpenAI from "openai";
import { readFileSync, writeFileSync } from "node:fs";
const key=process.env.AILOOT_API_KEY;
if(!key) throw new Error("Set your actual Ailoot API key");
const client=new OpenAI({baseURL:"https://api.ailoot.ai/v1",apiKey:key,maxRetries:0});
const request={"model": "gpt-image-2", "prompt": ""};
if(!process.env.AILOOT_PROMPT_FILE)throw new Error("Set your actual UTF-8 image brief file");
request.prompt=readFileSync(process.env.AILOOT_PROMPT_FILE,"utf8");
const result=await client.images.generate(request);
writeFileSync("sdk-result.json",JSON.stringify(result,null,2));
if(!result.data?.length) throw new Error("No completed images");
for(let index=0;index<result.data.length;index++) {
  const item=result.data[index];let encoded=item.b64_json,uri=item.url||"",raw;
  if(!encoded && uri.startsWith("data:image/")) {
    const comma=uri.indexOf(",");if(comma<0 || !uri.slice(0,comma).includes(";base64")) throw new Error("Unsupported image data URI");
    encoded=uri.slice(comma+1);
  }
  if(encoded) {
    if(encoded.length%4!==0 || !/^[A-Za-z0-9+/]*={0,2}$/.test(encoded)) throw new Error("Invalid Base64");
    raw=Buffer.from(encoded,"base64");
  } else if(uri) {
    const u=new URL(uri,"https://api.ailoot.ai");
    if(u.protocol!=="https:" || u.username || u.password) throw new Error("Invalid returned URL");
    const owned=u.origin==="https://api.ailoot.ai" && u.pathname.startsWith("/v1/media/assets/") && u.pathname.endsWith("/content");
    const response=await fetch(u,{headers:owned?{Authorization:"Bearer "+key}:{},redirect:"manual"});
    if(!response.ok) throw new Error("Image content download failed: "+response.status);
    raw=Buffer.from(await response.arrayBuffer());
  } else throw new Error("Image has neither bytes nor URL");
  if(!raw.length) throw new Error("Empty image result");
  const ext=raw.subarray(0,4).equals(Buffer.from([137,80,78,71]))?"png":raw[0]===255&&raw[1]===216?"jpg":raw.toString("ascii",0,4)==="RIFF"&&raw.toString("ascii",8,12)==="WEBP"?"webp":raw.toString("utf8").trimStart().startsWith("<svg")||raw.toString("utf8").trimStart().startsWith("<?xml")?"svg":"bin";
  writeFileSync(`image-${index}.${ext}`,raw);
}
console.log("Every returned image saved; sdk-result.json retains complete metadata");
```

### קבלה ושמירה של תוצאות

#### Ailoot · תמונות

הורידו כל תמונה שהוחזרה או שמרו את תוכן ה-Base64 שלה

- `GET /v1/media/tasks/{task_id}`
- `GET /v1/media/assets/{asset_id}/content`
- `GET /v1/media/assets`
- `GET /v1/media/assets/{asset_id}`

##### שמירת כל התוצאות שהושלמו

שמרו כל תמונה שהושלמה; אחזרו אותה מכל URL שהוחזר או פענחו את תוכן ה-Base64 שלה.

שמרו כל פריט נתונים. פענחו כל b64\_json או הורידו את התוכן מכל URL חתום שהוחזר. בחרו סיומת קובץ לפי סוג ה־MIME/הבתים בפועל.

##### כשצריך לבדוק את התגובה המקורית

אם תוצאה של יצירת תמונה או עריכתה דורשת בדיקה, שמרו את operation\_id/X-Client-Request-ID המקורי ואת פרטי התוצאה שהוחזרו. שחזרו תוצאות קיימות שבבעלותכם דרך ספריית המדיה באמצעות ערכי task\_id או asset\_id בפועל. אל תשלחו שוב את בקשת היצירה/העריכה ואל תבנו URL לתשאול סטטוס מתוך operation\_id.

שדות התגובה

| שדה | סוג |
| --- | --- |
| שדה`created` | סוגinteger |
| שדה`data[].url` | סוגstring |
| שדה`data[].b64_json` | סוגbase64 string |
| שדה`usage` | סוגobject |

שגיאות והשלבים הבאים

| תגובה | תנאי | השלב הבא |
| --- | --- | --- |
| תגובה⁦400⁩ · `invalid_request_error` | תנאישדות נדרשים, ייצוג חומר או ערך פרמטר שאינם תקינים | השלב הבאתקנו את השדות שצוינו לפני בקשת יצירה חדשה. |
| תגובה`server_error` | תנאיהתשובה שהוחזרה מציינת שהפעולה או התוצאה דורשת בדיקה | השלב הבאשמרו את מזהה הפעולה/המשימה המקורי שהוחזר, את כותרות הבקשה ואת התשובה; המשיכו לבצע פעולות קריאה נתמכות של אותה פעולה מקורית. אל תשלחו שוב את בקשת היצירה. |

### כינויים

#### כינויים למודל

<strong>Ailoot</strong> [`gpt-image-2`](https://ailoot.ai/models/he/#m=openai%2Fgpt-image-2&route=Core&caller=gpt-image-2&fmt=images)
**Ailoot Ultra** [`gpt-image-2`](https://ailoot.ai/models/he/#m=openai%2Fgpt-image-2&route=Ultra&caller=gpt-image-2&fmt=images), [`openai/gpt-image-2`](https://ailoot.ai/models/he/#m=openai%2Fgpt-image-2&route=Ultra&caller=openai%2Fgpt-image-2&fmt=images)

#### כינויים לנתיבי שיטות

`/v1/images`

#### מזהי מודלים קשורים IDs

[`openai/gpt-image-2`](https://ailoot.ai/models/he/#m=openai%2Fgpt-image-2&route=Ultra&caller=openai%2Fgpt-image-2&fmt=images), [`gpt-image-2`](https://ailoot.ai/models/he/#m=openai%2Fgpt-image-2&route=Core&caller=gpt-image-2&fmt=images), [`gpt-image-2`](https://ailoot.ai/models/he/#m=openai%2Fgpt-image-2&route=Ultra&caller=gpt-image-2&fmt=images)

**Ailoot Ultra · תמונות** `POST /v1/images/generations` `gpt-image-2`

[`gpt-image-2`](https://ailoot.ai/models/he/#m=openai%2Fgpt-image-2&route=Ultra&caller=gpt-image-2&fmt=images)

OpenAI /`gpt-image-2`

מזהה מודל ID

- `gpt-image-2`
- `openai/gpt-image-2`

### התחלה

GPT Image 2 יוצר ועורך תמונות מטקסט ומתמונות ייחוס. הוא תומך במידות מסגרת גמישות ומעבד אוטומטית קלטי תמונה בנאמנות גבוהה, עם בקרות נפרדות לאיכות, לפורמט ולרקע של התוצר המוגמר.

סוגי קלט נתמכים

טקסט

תוצאות

תמונות

### זמין ב-Ailoot · קלט ושיטות

**Ailoot Ultra · תמונות** `POST /v1/images/generations`

סוגי קלט

`text`

סוגי פלט

`image`

| שדה | סוג | דרישה | ערכים ומגבלות | ברירת מחדל |
| --- | --- | --- | --- | --- |
| שדה`model` | סוג`string` | דרישהחובה | ערכים ומגבלות gpt-image-2 | ברירת מחדל— |
| שדה`prompt` | סוג`string` | דרישהחובה | ערכים ומגבלות אורך מרבי: ⁦32,000⁩ | ברירת מחדל— |
| שדה`size` | סוג`string` | דרישהרשות | ערכים ומגבלות תנאים: יש להשתמש ב־auto או ב־WIDTHxHEIGHT, כששני הממדים מתחלקים ב־16. אורך הצלע הארוכה הוא לכל היותר 3,840 פיקסלים, והגודל הכולל הוא לכל היותר 8,300,000 פיקסלים. | ברירת מחדלauto |
| שדה`background` | סוג`string` | דרישהרשות | ערכים ומגבלות transparent, opaque, auto | ברירת מחדלauto |
| שדה`moderation` | סוג`string` | דרישהרשות | ערכים ומגבלות low, auto תנאים: יש להשתמש ב־auto לבדיקת תוכן רגילה. | ברירת מחדל— |
| שדה`n` | סוג`integer` | דרישהרשות | ערכים ומגבלות מינימום: ⁦1⁩ מקסימום: ⁦10⁩ | ברירת מחדל⁦1⁩ |
| שדה`quality` | סוג`string` | דרישהרשות | ערכים ומגבלות auto, high, medium, low | ברירת מחדלauto |
| שדה`output_compression` | סוג`integer` | דרישהרשות | ערכים ומגבלות מינימום: ⁦0⁩ מקסימום: ⁦100⁩ תנאים: חל על פלט JPEG ו־WebP; יש לשלוח את הערך השלם המתועד. | ברירת מחדל⁦100⁩ |
| שדה`output_format` | סוג`string` | דרישהרשות | ערכים ומגבלות webp, png, jpeg | ברירת מחדלpng |
| שדה`stream` | סוג`boolean` | דרישהרשות | ערכים ומגבלות false תנאים: הנתיב הזה מחזיר תגובת JSON שלמה אחת. | ברירת מחדלfalse |

פרמטרים ומחזור חיים של השיטה

| פרמטר | מפרט |
| --- | --- |
| פרמטר`content_type` | מפרטapplication/json |
| פרמטר`required` | מפרטprompt, model |
| פרמטר`material_types` | מפרטtext |
| פרמטר`optional` | מפרטsize, background, moderation, n, quality, output\_compression, output\_format, stream |
| פרמטר`conditions` | מפרטרקע שקוף מחייב PNG או WebP., דחיסת הפלט חלה על JPEG או WebP., השיטה שנבחרה יוצרת מטקסט. אפשרויות העריכה וההזרמה המתוארות אצל היצרן הן יכולות נפרדות. |

מחזור חיים: `synchronous_result_then_owned_library`

`GET /v1/media/tasks/{task_id}` · ערך task\_id שהוחזר בפועל או רשומה בספריית המדיה

`GET /v1/media/assets/{asset_id}/content`

`GET /v1/media/assets`

`GET /v1/media/assets/{asset_id}`

### תעריפים

##### אופן חישוב החיוב הסופי

התעריפים המוצגים מספקים אומדן לעלות לפני היצירה. החיוב הסופי מחושב לפי העלות שנרשמה עבור היצירה המקורית. משך הפלט שנמדד והכמויות החזויות אינם הכמות הסופית לחיוב.

מידע תעריפים אינו מוסיף אפשרויות לבקשה. הפרמטרים הנתמכים מפורטים בשיטה שנבחרה.

מצב מהיר

לא צוין כאשר נבחר מצב מהיר

מצב Flex

לא צוין כאשר נבחר מצב flex

מאמץ חשיבה מרבי

לא צוין כאשר מאמץ החשיבה המרבי משתמש בהתאמת ברירת המחדל (default)

#### תעריפים משוערים להשוואה

#### מחירים לפי תצורה

התאימו כל חיוב לתנאים המוצגים. השתמשו בתעריף אחד לכל קבוצה של תצורות חלופיות.

| תצורה | טבלת תעריפים | כמות חזויה | חיוב |
| --- | --- | --- | --- |
| תצורהתעריפי בסיס לטוקנים | טבלת תעריפיםתעריף בסיס | כמות חזויה— | חיוב קלט · טוקני קלט · אומדן להשוואה בלבד **—** / 1K טוקנים פלט · טוקני פלט · אומדן להשוואה בלבד **—** / 1K טוקנים קלט · קריאה מהמטמון · אומדן להשוואה בלבד **—** / 1K טוקנים קלט · כתיבה למטמון · אומדן להשוואה בלבד **—** / 1K טוקנים קלט · כתיבה למטמון, 1 שעה · אומדן להשוואה בלבד **—** / 1K טוקנים |
| תצורהעלות יצירה משוערת | טבלת תעריפים— | כמות חזויהאומדן ליצירה אחת | חיוב פלט · עלות יצירה משוערת · אומדן להשוואה בלבד **$0.24576** אומדן לפני היצירה אומדן זה אינו חיוב נוסף או תעריף קבוע עבור היצירה שהושלמה. |

לפני הבקשה Ailoot משריינת סכום משוער. לאחר קבלת התוצאה היא מסדירה את החיוב הסופי לפי השימוש המדוד. הסדרת חיוב בהזרמה משתמשת ברשומת השימוש הסופית. [איך פועלים שריון הסכום והסדרת החיוב →](https://ailoot.ai/docs/he/billing/reserve/)

### דוגמאות לבקשות

#### Ailoot Ultra · תמונות

curl

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p={'prompt': 'A cute baby sea otter', 'model': 'gpt-image-2', 'size': '1024x1024', 'n': 1, 'background': 'auto', 'moderation': 'auto', 'output_format': 'png'}

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import base64, json, os, subprocess
from pathlib import Path
from urllib.parse import urlsplit, urljoin

def save_images(items):
    if not items: raise SystemExit("No completed images; retain the full response")
    for index, item in enumerate(items):
        encoded=item.get("b64_json")
        uri=item.get("url", "")
        if not encoded and uri.startswith("data:image/"):
            header, separator, encoded=uri.partition(",")
            if not separator or ";base64" not in header: raise SystemExit("Unsupported image data URI")
        if encoded:
            raw=base64.b64decode(encoded,validate=True)
        elif uri:
            uri=urljoin("https://api.ailoot.ai",uri)
            parsed=urlsplit(uri)
            if parsed.scheme!="https" or not parsed.netloc or parsed.username or parsed.password:
                raise SystemExit("Invalid returned image URL")
            owned=parsed.netloc=="api.ailoot.ai" and parsed.path.startswith("/v1/media/assets/") and parsed.path.endswith("/content")
            args=["curl","--fail-with-body","--silent","--show-error",uri]
            if owned: args += ["-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"]]
            temporary=Path(f"image-{index}.bin")
            subprocess.run(args+["-o",str(temporary)],check=True)
            raw=temporary.read_bytes()
            temporary.unlink()
        else: raise SystemExit("Image has neither bytes nor URL")
        if not raw: raise SystemExit("Empty image result")
        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"
        Path(f"image-{index}.{ext}").write_bytes(raw)
    print("Every returned image saved; complete response metadata retained")
save_images(json.loads(Path("result.json").read_text())["data"])
PY_RESULT
```

### קבלה ושמירה של תוצאות

#### Ailoot Ultra · תמונות

הורידו כל תמונה שהוחזרה או שמרו את תוכן ה-Base64 שלה

- `GET /v1/media/tasks/{task_id}`
- `GET /v1/media/assets/{asset_id}/content`
- `GET /v1/media/assets`
- `GET /v1/media/assets/{asset_id}`

קריאות תוכן נוספות

קריאת נכסים קיימים שבבעלותכם

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o owned-assets.json
# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.
```

##### שמירת כל התוצאות שהושלמו

שמרו כל תמונה שהושלמה; אחזרו אותה מכל URL שהוחזר או פענחו את תוכן ה-Base64 שלה.

שמרו את התשובה המלאה ואת הכותרות, כל פלט שהתקבל בפועל, את המזהים המקוריים שהוחזרו ואת כל שדות השימוש. שחזרו את הפעולה המקורית בלי לשלוח שוב בקשת יצירה.

##### כשצריך לבדוק את התגובה המקורית

שמרו את X-Client-Request-ID שהוחזר לצורך התאמת רישומים. קראו רק ערכי task\_id/asset\_id שהוחזרו בפועל או את ספריית המדיה שבבעלותכם; לעולם אל תבנו URL של משימה ממזהה הפעולה ואל תשלחו שוב בקשת יצירה.

שדות התגובה

| שדה | סוג |
| --- | --- |
| שדה`created` | סוג |
| שדה`data[].url` | סוג |
| שדה`data[].b64_json` | סוג |
| שדה`usage` | סוג |

### כינויים

#### כינויים למודל

<strong>Ailoot</strong> [`gpt-image-2`](https://ailoot.ai/models/he/#m=openai%2Fgpt-image-2&route=Core&caller=gpt-image-2&fmt=images)
**Ailoot Ultra** [`gpt-image-2`](https://ailoot.ai/models/he/#m=openai%2Fgpt-image-2&route=Ultra&caller=gpt-image-2&fmt=images), [`openai/gpt-image-2`](https://ailoot.ai/models/he/#m=openai%2Fgpt-image-2&route=Ultra&caller=openai%2Fgpt-image-2&fmt=images)

#### כינויים לנתיבי שיטות

`/v1/images`

#### מזהי מודלים קשורים IDs

[`openai/gpt-image-2`](https://ailoot.ai/models/he/#m=openai%2Fgpt-image-2&route=Ultra&caller=openai%2Fgpt-image-2&fmt=images), [`gpt-image-2`](https://ailoot.ai/models/he/#m=openai%2Fgpt-image-2&route=Core&caller=gpt-image-2&fmt=images), [`gpt-image-2`](https://ailoot.ai/models/he/#m=openai%2Fgpt-image-2&route=Ultra&caller=gpt-image-2&fmt=images)

**Ailoot Ultra · תמונות** `POST /v1/images/generations` `openai/gpt-image-2`

[`openai/gpt-image-2`](https://ailoot.ai/models/he/#m=openai%2Fgpt-image-2&route=Ultra&caller=openai%2Fgpt-image-2&fmt=images)

OpenAI /`openai/gpt-image-2`

מזהה מודל ID

- `gpt-image-2`
- `openai/gpt-image-2`

### התחלה

GPT Image 2 יוצר ועורך תמונות מטקסט ומתמונות ייחוס. הוא תומך במידות מסגרת גמישות ומעבד אוטומטית קלטי תמונה בנאמנות גבוהה, עם בקרות נפרדות לאיכות, לפורמט ולרקע של התוצר המוגמר.

סוגי קלט נתמכים

טקסט · תמונות

תוצאות

תמונות

### זמין ב-Ailoot · קלט ושיטות

**Ailoot Ultra · תמונות** `POST /v1/images/generations`

סוגי קלט

`text`, `image`

סוגי פלט

`image`

| שדה | סוג | דרישה | ערכים ומגבלות | ברירת מחדל |
| --- | --- | --- | --- | --- |
| שדה`model` | סוג`string` | דרישהחובה | ערכים ומגבלות openai/gpt-image-2 | ברירת מחדל— |
| שדה`prompt` | סוג`string` | דרישהחובה | ערכים ומגבלות אורך מזערי: ⁦1⁩ | ברירת מחדל— |
| שדה`aspect_ratio` | סוג`string` | דרישהרשות | ערכים ומגבלות 1:1, 3:2, 2:3, 4:3, 3:4, 16:9, 9:16, 21:9, auto | ברירת מחדל— |
| שדה`quality` | סוג`string` | דרישהרשות | ערכים ומגבלות auto, low, medium, high | ברירת מחדל— |
| שדה`background` | סוג`string` | דרישהרשות | ערכים ומגבלות auto, opaque | ברירת מחדל— |
| שדה`n` | סוג`integer` | דרישהרשות | ערכים ומגבלות מינימום: ⁦1⁩ מקסימום: ⁦10⁩ | ברירת מחדל— |
| שדה`input_references` | סוג`array` | דרישהרשות | ערכים ומגבלות מספר פריטים מזערי: ⁦0⁩ מספר פריטים מרבי: ⁦16⁩ | ברירת מחדל— |
| שדה`output_compression` | סוג`integer` | דרישהרשות | ערכים ומגבלות מינימום: ⁦0⁩ מקסימום: ⁦100⁩ | ברירת מחדל— |
| שדה`provider` | סוג`object` | דרישהרשות | ערכים ומגבלות | ברירת מחדל— |

פרמטרים ומחזור חיים של השיטה

| פרמטר | מפרט |
| --- | --- |
| פרמטר`content_type` | מפרטapplication/json |
| פרמטר`required` | מפרטmodel, prompt |
| פרמטר`material_types` | מפרטtext, image |

מחזור חיים: `synchronous_result_then_owned_library`

`GET /v1/media/tasks/{task_id}` · ערך task\_id שהוחזר בפועל או רשומה בספריית המדיה

`GET /v1/media/assets/{asset_id}/content`

`GET /v1/media/assets`

`GET /v1/media/assets/{asset_id}`

### תעריפים

##### אופן חישוב החיוב הסופי

התעריפים המוצגים מספקים אומדן לעלות לפני היצירה. החיוב הסופי מחושב לפי העלות שנרשמה עבור היצירה המקורית. משך הפלט שנמדד והכמויות החזויות אינם הכמות הסופית לחיוב.

מידע תעריפים אינו מוסיף אפשרויות לבקשה. הפרמטרים הנתמכים מפורטים בשיטה שנבחרה.

מצב מהיר

לא צוין כאשר נבחר מצב מהיר

מצב Flex

לא צוין כאשר נבחר מצב flex

מאמץ חשיבה מרבי

לא צוין כאשר מאמץ החשיבה המרבי משתמש בהתאמת ברירת המחדל (default)

#### תעריפים משוערים להשוואה

#### מחירים לפי תצורה

התאימו כל חיוב לתנאים המוצגים. השתמשו בתעריף אחד לכל קבוצה של תצורות חלופיות.

| תצורה | טבלת תעריפים | כמות חזויה | חיוב |
| --- | --- | --- | --- |
| תצורהתעריפי בסיס לטוקנים | טבלת תעריפיםתעריף בסיס | כמות חזויה— | חיוב קלט · טוקני קלט · אומדן להשוואה בלבד **—** / 1K טוקנים פלט · טוקני פלט · אומדן להשוואה בלבד **—** / 1K טוקנים קלט · קריאה מהמטמון · אומדן להשוואה בלבד **—** / 1K טוקנים קלט · כתיבה למטמון · אומדן להשוואה בלבד **—** / 1K טוקנים קלט · כתיבה למטמון, 1 שעה · אומדן להשוואה בלבד **—** / 1K טוקנים |
| תצורהעלות יצירה משוערת | טבלת תעריפים— | כמות חזויהאומדן ליצירה אחת | חיוב פלט · עלות יצירה משוערת · אומדן להשוואה בלבד **$0.24576** אומדן לפני היצירה אומדן זה אינו חיוב נוסף או תעריף קבוע עבור היצירה שהושלמה. |

לפני הבקשה Ailoot משריינת סכום משוער. לאחר קבלת התוצאה היא מסדירה את החיוב הסופי לפי השימוש המדוד. הסדרת חיוב בהזרמה משתמשת ברשומת השימוש הסופית. [איך פועלים שריון הסכום והסדרת החיוב →](https://ailoot.ai/docs/he/billing/reserve/)

### דוגמאות לבקשות

#### Ailoot Ultra · תמונות

curl

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p={'model': 'openai/gpt-image-2', 'prompt': 'a red panda astronaut floating in space, studio lighting'}

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import base64, json, os, subprocess
from pathlib import Path
from urllib.parse import urlsplit, urljoin

def save_images(items):
    if not items: raise SystemExit("No completed images; retain the full response")
    for index, item in enumerate(items):
        encoded=item.get("b64_json")
        uri=item.get("url", "")
        if not encoded and uri.startswith("data:image/"):
            header, separator, encoded=uri.partition(",")
            if not separator or ";base64" not in header: raise SystemExit("Unsupported image data URI")
        if encoded:
            raw=base64.b64decode(encoded,validate=True)
        elif uri:
            uri=urljoin("https://api.ailoot.ai",uri)
            parsed=urlsplit(uri)
            if parsed.scheme!="https" or not parsed.netloc or parsed.username or parsed.password:
                raise SystemExit("Invalid returned image URL")
            owned=parsed.netloc=="api.ailoot.ai" and parsed.path.startswith("/v1/media/assets/") and parsed.path.endswith("/content")
            args=["curl","--fail-with-body","--silent","--show-error",uri]
            if owned: args += ["-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"]]
            temporary=Path(f"image-{index}.bin")
            subprocess.run(args+["-o",str(temporary)],check=True)
            raw=temporary.read_bytes()
            temporary.unlink()
        else: raise SystemExit("Image has neither bytes nor URL")
        if not raw: raise SystemExit("Empty image result")
        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"
        Path(f"image-{index}.{ext}").write_bytes(raw)
    print("Every returned image saved; complete response metadata retained")
save_images(json.loads(Path("result.json").read_text())["data"])
PY_RESULT
```

### קבלה ושמירה של תוצאות

#### Ailoot Ultra · תמונות

הורידו כל תמונה שהוחזרה או שמרו את תוכן ה-Base64 שלה

- `GET /v1/media/tasks/{task_id}`
- `GET /v1/media/assets/{asset_id}/content`
- `GET /v1/media/assets`
- `GET /v1/media/assets/{asset_id}`

קריאות תוכן נוספות

קריאת נכסים קיימים שבבעלותכם

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o owned-assets.json
# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.
```

##### שמירת כל התוצאות שהושלמו

שמרו כל תמונה שהושלמה; אחזרו אותה מכל URL שהוחזר או פענחו את תוכן ה-Base64 שלה.

שמרו את התשובה המלאה ואת הכותרות, כל פלט שהתקבל בפועל, את המזהים המקוריים שהוחזרו ואת כל שדות השימוש. שחזרו את הפעולה המקורית בלי לשלוח שוב בקשת יצירה.

##### כשצריך לבדוק את התגובה המקורית

שמרו את X-Client-Request-ID שהוחזר לצורך התאמת רישומים. קראו רק ערכי task\_id/asset\_id שהוחזרו בפועל או את ספריית המדיה שבבעלותכם; לעולם אל תבנו URL של משימה ממזהה הפעולה ואל תשלחו שוב בקשת יצירה.

שדות התגובה

| שדה | סוג |
| --- | --- |
| שדה`created` | סוג |
| שדה`data[].url` | סוג |
| שדה`data[].b64_json` | סוג |
| שדה`usage` | סוג |

### כינויים

#### כינויים למודל

<strong>Ailoot</strong> [`gpt-image-2`](https://ailoot.ai/models/he/#m=openai%2Fgpt-image-2&route=Core&caller=gpt-image-2&fmt=images)
**Ailoot Ultra** [`gpt-image-2`](https://ailoot.ai/models/he/#m=openai%2Fgpt-image-2&route=Ultra&caller=gpt-image-2&fmt=images), [`openai/gpt-image-2`](https://ailoot.ai/models/he/#m=openai%2Fgpt-image-2&route=Ultra&caller=openai%2Fgpt-image-2&fmt=images)

#### כינויים לנתיבי שיטות

`/v1/images`

#### מזהי מודלים קשורים IDs

[`openai/gpt-image-2`](https://ailoot.ai/models/he/#m=openai%2Fgpt-image-2&route=Ultra&caller=openai%2Fgpt-image-2&fmt=images), [`gpt-image-2`](https://ailoot.ai/models/he/#m=openai%2Fgpt-image-2&route=Core&caller=gpt-image-2&fmt=images), [`gpt-image-2`](https://ailoot.ai/models/he/#m=openai%2Fgpt-image-2&route=Ultra&caller=gpt-image-2&fmt=images)

FAQ · OpenAI: GPT Image 2

אילו קלטים ותוצאות זמינים?

`POST /v1/images/generations` · `gpt-image-2`: `text` → `image` `POST /v1/images/generations` · `gpt-image-2`: `text` → `image` `POST /v1/images/generations` · `openai/gpt-image-2`: `text`, `image` → `image`

באילו שדות הבקשה משתמשת?

`POST /v1/images/generations` · `gpt-image-2`: `model`, `prompt`, `n`, `response_format`, `stream` `POST /v1/images/generations` · `gpt-image-2`: `model`, `prompt`, `size`, `background`, `moderation`, `n`, `quality`, `output_compression`, `output_format`, `stream` `POST /v1/images/generations` · `openai/gpt-image-2`: `model`, `prompt`, `aspect_ratio`, `quality`, `background`, `n`, `input_references`, `output_compression`, `provider`

אילו מגבלות חלות?

`POST /v1/images/generations` · `gpt-image-2`: `n.minimum`: `1` `POST /v1/images/generations` · `gpt-image-2`: `prompt.maximum_length`: `32000`; `n.minimum`: `1`; `n.maximum`: `10`; `output_compression.minimum`: `0`; `output_compression.maximum`: `100` `POST /v1/images/generations` · `openai/gpt-image-2`: `n.minimum`: `1`; `n.maximum`: `10`; `output_compression.minimum`: `0`; `output_compression.maximum`: `100`

חברו Ailoot ל- Claude Code, OpenCode, Hermes או ליישום שלכם.

## החברה ופורטפוליו הפרויקטים שלה

החברה ופורטפוליו הפרויקטים שלה: מיליוני לקוחות; מכירות בהיקף של מיליארדים מדי חודש.

## קנו אסימונים בהנחה.

הנחת מנוי לעבודה קבועה. קודי הנחה עד 50% על רכישת אסימונים.

מנוי

בחרו מסלול עם הנחה לבקשות הקבועות שלכם.

קוד הנחה עד 50%

הזינו קוד ברכישה. המחיר יחושב מחדש לפי המבצע הפעיל.

הוצאות בהיסטוריה

המודל, האסימונים והסכום נשמרים לכל בקשה.

[בחירת מנוי](https://ailoot.ai/docs/he/billing/subscriptions/) · [מחירי מודלים](https://ailoot.ai/models/he/)

## חברו API למוצר שאתם מוכרים.

SaaS, יישומים ובוטים לפי ההצעה והסכם הרישוי של Ailoot. למכירה מחדש בקשו רישיון משווק.

יישום מסחרי

שלבו יצירת טקסט, תמונות, וידאו ושמע בתכונות בתשלום של השירות שלכם.

רישיון למכירה מחדש

שלחו תיאור פרויקט ואופן מתן גישה. בקשו תנאי שימוש ומכירה מחדש בכתב.

מסמכים באתר

ההצעה, הסכם הרישוי ומדיניות עיבוד הנתונים זמינים לפני החיבור.

[בקשת רישיון למכירה מחדש](mailto:support@ailoot.ai) · [ההצעה והסכם הרישוי](https://ailoot.ai/legal/offer?lang=he)

## Ailoot · החברה ופורטפוליו הפרויקטים שלה





Ailoot נשענת על ניסיון תפעולי מצטבר, בסיס לקוחות רחב, שירות יציב ובקרה שוטפת של KPI.





החברה ופורטפוליו הפרויקטים שלה: מיליוני לקוחות; מכירות בהיקף של מיליארדים מדי חודש.





Ailoot משתמשת בניסיון התפעולי הזה כדי לספק גישת API ליכולות AI במוצרי לקוחות, בסוכנים, באפליקציות ובאוטומציות.
