mô hình

GPT Image 2.5 Flare 2026-09-08

Markdown · JSON

GPT Image 2.5 Flare 2026-09-08

GPT Image 2.5 Flare dành cho tạo ảnh hằng ngày từ mô tả. Có kích thước tùy chỉnh, tập mức chất lượng mở rộng và nền trong suốt.

Về mô hình

Mô tả này trình bày khả năng của mô hình. Đầu vào, đầu ra và tùy chọn có trên Ailoot được liệt kê bên dưới cho phương thức đã chọn.

Tạo ảnh hằng ngày từ mô tả văn bản

GPT Image 2.5 Flare là mô hình của OpenAI để tạo ảnh. Theo nhà sản xuất, mục đích là tạo nhanh tư liệu hình ảnh chất lượng cao hằng ngày. Yêu cầu có thể mô tả cốt cảnh, phong cách, vị trí chi tiết và hình dạng khung hình mong muốn; kết quả là ảnh.

Trong Ailoot, thẻ này được giới thiệu cho tạo ảnh với đầu vào văn bản. OpenAI còn mô tả làm việc với ảnh nguồn, ảnh tham chiếu và chỉnh sửa. Các cách đó cần hỗ trợ ảnh đầu vào; chúng không có nghĩa phương thức văn bản đã nhận những tư liệu này.

Chất lượng từ bản nháp đến ảnh chi tiết

Các mức được hỗ trợ là low, medium, high, xhigh, max và lựa chọn tự động auto. Cài đặt chất lượng ảnh hưởng đến lượng công việc khi tạo kết quả. Nó được đặt riêng với kích thước khung hình và nén tệp hoàn chỉnh.

Kích thước có các lựa chọn vuông, ngang, dọc, tự động và tùy chỉnh. Có thể chọn tỷ lệ phù hợp bố cục khi đáp ứng mọi giới hạn của nhà sản xuất.

Kích thước tùy chỉnh

Mỗi cạnh phải là bội số của 16 pixel và không dài hơn 3840 pixel. Tỷ lệ cạnh dài với cạnh ngắn không quá 3:1. Diện tích cho phép từ 655 360 đến 8 294 400 pixel. Các giới hạn áp dụng cùng nhau: tỷ lệ được phép không loại bỏ giới hạn diện tích.

Độ phân giải trên 2560x1440 được đánh dấu là thử nghiệm. Khi chọn khung lớn, cần xét chính bố cục: nhiều pixel hơn không bảo đảm mọi yếu tố được đặt đúng.

Tệp kết quả và tính trong suốt

Mô hình có PNG, JPEG và WebP; định dạng tiêu chuẩn là PNG. Với JPEG và WebP, có thể điều khiển nén. Nền trong suốt cần PNG hoặc WebP. Nhà sản xuất còn hỗ trợ nền đục và lựa chọn tự động. Tính trong suốt cho phép dùng ảnh trong bố cục tiếp theo mà không có lớp nền định sẵn.

Cài đặt của nhà sản xuất mô tả khả năng mô hình; việc thực hiện phụ thuộc vào phương thức đã chọn có hỗ trợ tham số hay không. Mỗi lần tạo riêng cho kết quả mới, nên mô tả giống nhau không bảo đảm ảnh hoàn toàn trùng khớp.

Những điều cần kiểm tra trong ảnh thành phẩm

Theo OpenAI, xử lý yêu cầu phức tạp có thể mất tới hai phút. Đây là mô tả tạo ảnh ở phía nhà sản xuất, không bảo đảm tổng thời gian nhận kết quả trong từng ứng dụng.

Chữ, vị trí chính xác của đối tượng và giữ cùng diện mạo giữa các ảnh cần được kiểm tra. Mặt nạ trong thao tác chỉnh sửa được hỗ trợ riêng đặt hướng thay đổi, không phải ranh giới cứng. Với tạo ảnh từ văn bản, nên mô tả bố cục chính xác và kiểm tra chính tệp: chi tiết nhìn thấy, khả năng đọc chữ và sự phù hợp với cốt cảnh đã đặt.

Ailoot · Ảnh POST /v1/images/generations gpt-image-2.5-flare-2026-09-08

gpt-image-2.5-flare-2026-09-08

OpenAI /gpt-image-2.5-flare-2026-09-08

Bắt đầu

GPT Image 2.5 Flare dành cho tạo ảnh hằng ngày từ mô tả. Có kích thước tùy chỉnh, tập mức chất lượng mở rộng và nền trong suốt.

Đầu vào được chấp nhận
Văn bản
Kết quả
Ảnh

Có trên Ailoot · đầu vào & phương thức

Ailoot · Ảnh POST /v1/images/generations
Đầu vào
text
Đầu ra
image
Định dạng đầu ra
Tệp ảnh
TrườngLoạiYêu cầuGiá trị & giới hạnMặc định
TrườngmodelLoạistringYêu cầuBắt buộcGiá trị & giới hạn
gpt-image-2.5-flare-2026-09-08
Mặc định—
TrườngpromptLoạistringYêu cầuBắt buộcGiá trị & giới hạn
Độ dài tối thiểu: 1
Mặc định—
TrườngnLoạiintegerYêu cầuKhông bắt buộcGiá trị & giới hạn
Tối thiểu: 1
Mặc định1
Trườngresponse_formatLoạistringYêu cầuKhông bắt buộcGiá trị & giới hạn
url, b64_json
Mặc định—
TrườngstreamLoạibooleanYêu cầuKhông bắt buộcGiá trị & giới hạnMặc địnhfalse
TrườngsizeLoạistringYêu cầuKhông bắt buộcGiá trị & giới hạn
Tùy thuộc vào mô hình
Mặc định—
TrườngqualityLoạistringYêu cầuKhông bắt buộcGiá trị & giới hạn
Tùy thuộc vào mô hình
Mặc định—
TrườngbackgroundLoạistringYêu cầuKhông bắt buộcGiá trị & giới hạn
Tùy thuộc vào mô hình
Mặc định—
Trườngoutput_formatLoạistringYêu cầuKhông bắt buộcGiá trị & giới hạn
Tùy thuộc vào mô hình
Mặc định—
Trườngoutput_compressionLoạiintegerYêu cầuKhông bắt buộcGiá trị & giới hạn
Tùy thuộc vào mô hình
Mặc định—
TrườngmoderationLoạistringYêu cầuKhông bắt buộcGiá trị & giới hạn
Tùy thuộc vào mô hình
Mặc định—
Trườnginput_fidelityLoạistringYêu cầuKhông bắt buộcGiá trị & giới hạn
Tùy thuộc vào mô hình
Mặc định—
TrườngstyleLoạistringYêu cầuKhông bắt buộcGiá trị & giới hạn
Tùy thuộc vào mô hình
Mặc định—
Trườngpartial_imagesLoạiintegerYêu cầuKhông bắt buộcGiá trị & giới hạn
Tùy thuộc vào mô hình
Mặc định—
Tổ hợp tư liệu đầu vào

Văn bản thành ảnh · Bắt buộc: prompt

Tham số phương thức và vòng đời
Tham sốHợp đồng
Tham sốmaterial_typesHợp đồngtext
Tham sốrequiredHợp đồngmodel, prompt
Tham sốoptional_controlsHợp đồngnull
Tham sốcontent_typeHợp đồngapplication/json

Vòng đời: synchronous_result_then_owned_library

GET /v1/media/tasks/{task_id} · Giá trị task_id thực tế đã trả về hoặc bản ghi trong thư viện nội dung đa phương tiện

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

GET /v1/media/assets

GET /v1/media/assets/{asset_id}

Cấu trúc phương thức và ID là chính xác; khả năng của nhà cung cấp tách biệt với việc cho phép tiếp nhận yêu cầu.

Bảng giá

Mức phí phương thức Ailoot

Ailoot ẢnhPOST /v1/images/generations
Đầu vào văn bản
0,005 US$ / 1K
Đầu vào, hình ảnh
0,008 US$ / 1K tokens
Đầu ra, hình ảnh
0,03 US$ / 1K tokens

Ailoot tạm giữ một khoản ước tính trước yêu cầu. Sau khi có kết quả, phí cuối cùng được quyết toán theo mức sử dụng đo được. Việc quyết toán khi truyền luồng dùng bản ghi mức sử dụng cuối cùng. Cách hoạt động của cơ chế tạm giữ và quyết toán →

Ví dụ yêu cầu

Ailoot · Ảnh

curlPython SDKNode.js SDK
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.5-flare-2026-09-08", "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
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.5-flare-2026-09-08', '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])
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.5-flare-2026-09-08", "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");

Nhận và lưu kết quả

Ailoot · Ảnh

Tải xuống từng ảnh trả về hoặc lưu nội dung Base64 của ảnh

  • GET /v1/media/tasks/{task_id}
  • GET /v1/media/assets/{asset_id}/content
  • GET /v1/media/assets
  • GET /v1/media/assets/{asset_id}
Lưu tất cả kết quả đã hoàn tất

Lưu mọi ảnh đã hoàn tất; truy xuất từng URL trả về hoặc giải mã nội dung Base64 của ảnh.

Lưu mọi phần tử dữ liệu. Giải mã từng b64_json hoặc tải xuống từ mọi URL có chữ ký đã trả về. Chọn phần mở rộng tệp dựa trên MIME/nội dung byte thực tế.

Nếu cần kiểm tra phản hồi gốc

Nếu kết quả tạo hoặc chỉnh sửa ảnh cần được kiểm tra, giữ lại operation_id/X-Client-Request-ID gốc và thông tin kết quả đã trả về. Khôi phục các kết quả hiện có thuộc quyền sở hữu của bạn qua thư viện nội dung đa phương tiện bằng các giá trị task_id hoặc asset_id thực tế. Không gửi lại yêu cầu tạo/chỉnh sửa ảnh hoặc tạo URL truy vấn trạng thái từ operation_id.

Trường phản hồi
TrườngLoại
TrườngcreatedLoạiinteger
Trườngdata[].urlLoạistring
Trườngdata[].b64_jsonLoạibase64 string
TrườngusageLoạiobject
Lỗi và bước tiếp theo
Phản hồiĐiều kiệnBước tiếp theo
Phản hồi400 · invalid_request_errorĐiều kiệnTrường bắt buộc, cách biểu diễn tài liệu hoặc giá trị tham số không hợp lệBước tiếp theoSửa các trường được chỉ ra trước khi gửi yêu cầu tạo mới.
Phản hồiserver_errorĐiều kiệnPhản hồi trả về cho biết thao tác hoặc kết quả cần được kiểm traBước tiếp theoGiữ lại ID thao tác/tác vụ gốc đã trả về, các header của yêu cầu và toàn bộ phản hồi; tiếp tục truy xuất thao tác gốc đó bằng các phương thức được hỗ trợ. Không gửi lại yêu cầu tạo.

Bí danh

Bí danh mô hình

Ailoot gpt-image-2.5-flare-2026-09-08

Bí danh đường dẫn phương thức

Dùng các đường dẫn phương thức hiển thị ở trên.

ID gọi liên quan

gpt-image-2.5-flare-2026-09-08

FAQ · GPT Image 2.5 Flare 2026-09-08
Có những đầu vào và kết quả nào?

POST /v1/images/generations · gpt-image-2.5-flare-2026-09-08: text → image

Yêu cầu sử dụng những trường nào?

POST /v1/images/generations · gpt-image-2.5-flare-2026-09-08: model, prompt, n, response_format, stream

Áp dụng những giới hạn nào?

POST /v1/images/generations · gpt-image-2.5-flare-2026-09-08: n.minimum: 1

Xem thêm chi tiết

Kết nối Ailoot với Claude Code, OpenCode, Hermes hoặc ứng dụng của bạn.

Công ty và danh mục dự án của công ty

Công ty và danh mục dự án của công ty: hàng triệu khách hàng; doanh số hàng tỷ mỗi tháng.

Mua token với giá ưu đãi.

Ưu đãi thuê bao cho nhu cầu thường xuyên. Mã khuyến mãi giảm đến 50% khi mua token.

Thuê bao
Chọn gói ưu đãi cho các yêu cầu thường xuyên của bạn.
Mã giảm đến 50%
Nhập mã khi mua. Giá được tính lại theo chương trình đang áp dụng.
Chi phí trong lịch sử
Mô hình, token và số tiền được lưu cho mỗi yêu cầu.

Chọn gói thuê bao · Xem giá mô hình

Kết nối API vào sản phẩm bạn đang bán.

SaaS, ứng dụng và bot — theo đề nghị giao kết chính thức và thỏa thuận cấp phép Ailoot. Muốn bán lại, hãy yêu cầu giấy phép bán lại.

Ứng dụng thương mại
Tích hợp tạo văn bản, ảnh, video và âm thanh vào các tính năng trả phí của dịch vụ.
Giấy phép bán lại
Gửi mô tả dự án và cách cung cấp quyền truy cập. Yêu cầu điều khoản sử dụng và bán lại bằng văn bản.
Tài liệu trên website
Đề nghị giao kết, thỏa thuận cấp phép và chính sách xử lý dữ liệu có sẵn trước khi kết nối.

Yêu cầu giấy phép bán lại · Đề nghị giao kết và thỏa thuận cấp phép