Langsung ke konten

Pengeditan gambar

POST /v1/images/edits menerima gambar yang sudah ada dan sebuah prompt dan mengembalikan gambar yang diubah: latar belakang baru, objek yang dihapus, gaya yang diterapkan. Ini mengikuti format pengeditan gambar OpenAI, sehingga client.images.edit berfungsi dengan base URL yang diubah. Model gambar yang menghasilkan juga mengedit — lihat halaman model.

Mengunggah file

curl https://api.inferray.com/v1/images/edits \
  -H "Authorization: Bearer $INFERRAY_API_KEY" \
  -F "model=gpt-image-2" \
  -F "image=@product.png" \
  -F "prompt=Put the product on a marble countertop in soft morning light"
import fs from "node:fs";
import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.inferray.com/v1", apiKey: process.env.INFERRAY_API_KEY });

const result = await client.images.edit({
  model: "gpt-image-2",
  image: fs.createReadStream("product.png"),
  prompt: "Put the product on a marble countertop in soft morning light",
});

fs.writeFileSync("edited.png", Buffer.from(result.data[0].b64_json, "base64"));

Field multipart dapat bernama image, image[], atau file. Hanya file gambar pertama yang digunakan. Tambahkan file mask — PNG yang area transparannya menandai bagian yang akan diedit — pada model yang mendukung mask.

Mengirim URL gambar sebagai JSON

curl https://api.inferray.com/v1/images/edits \
  -H "Authorization: Bearer $INFERRAY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemini-3-pro-image-preview",
    "images": [{ "image_url": "https://example.com/room.jpg" }],
    "prompt": "Repaint the walls sage green",
    "n": 1
  }'

Respons

Bentuknya sama dengan pembuatan gambar: array data dengan satu entri per gambar, masing-masing berisi b64_json. Decode dan simpan byte-nya.

Opsi dan harga

size, quality, n, dan format output berfungsi jika didukung oleh model; halaman model mencantumkan nilai-nilainya. Harga pengeditan sama seperti pembuatan gambar — per gambar, berdasarkan resolusi, atau per token, tergantung modelnya — dan ditampilkan di halaman model.

Pengeditan gambar ditagihkan ke saldo pay-as-you-go; kunci Token Plan ditolak di endpoint ini.