GPT-6 Sol & Claude Opus 5.5 kini tersediaGPT-6 Sol: setengah harga 5.6 Sol

Alternatif API FLUX Kontext: Edit Gambar dengan GPT Image 2

Edit lewat instruksi tanpa masker: kode permintaannya, rantai tiga edit yang kami jalankan pada 28 Oktober 2026, dan apa yang dipertahankan setiap langkah.

Kiki, OmniaKey COO7 menit baca
Di halaman ini

API FLUX Kontext mengedit foto dari satu prompt dan satu gambar per permintaan. Halaman BFL menyebut FLUX.1 Kontext sebagai model generasi sebelumnya dan merekomendasikan FLUX.2 untuk proyek baru (diperiksa 28 Oktober 2026). GPT-Image 2 menerima dua masukan yang sama. Tiga edit berantai pada 28 Oktober 2026 mempertahankan meja kafe, cangkir, tanaman, dan jendela, juga setiap perubahan sebelumnya.

Apa itu edit berbasis instruksi

Anda mengirim sebuah foto dan satu kalimat seperti "ubah sepeda merah menjadi hitam dof". Model mengembalikan foto baru dengan perubahan itu sudah dilakukan dan bagian lain dari bingkai tetap utuh. BFL menjelaskan Kontext sebagai pengeditan gambar dengan prompt teks sederhana, tanpa alur kerja rumit atau fine-tuning (docs.bfl.ai/kontext/kontext_image_editing, diperiksa 28 Oktober 2026).

Tiga angka dari BFL menentukan cara kode ditulis: masukan sampai 20 MB atau 20 megapiksel, hasil sekitar 1 MP, dan tautan hasil bertanda tangan yang berlaku 10 menit. Unduh hasilnya segera.

Instruksi membawa dua bagian: perubahannya, lalu daftar hal yang tetap.

GPT-Image 2 di OmniaKey menerima tugas edit dengan dua bahan yang sama, dan halaman modelnya mencantumkan teks ke gambar serta edit gambar pada kualitas low, medium, dan high (omniakey.com/gpt-image-2, diperiksa 28 Oktober 2026). Kami tidak menjalankan model FLUX mana pun, jadi yang berikut adalah empat edit kami sendiri beserta kodenya.

Permintaan

Satu edit adalah satu POST ke https://api.omniakey.com/v1/media/tasks dengan model berisi gpt-image-2, type image, operation edit, kalimatnya di input.prompt, dan foto sumber di input.image sebagai Base64 beserta tipe mime-nya (docs.omniakey.com/en/media/image, diperiksa 2026-10-28). Panggilan ini menjawab HTTP 202 dengan id tugas. Polling GET /v1/media/tasks/{task_id} selama statusnya queued atau processing, lalu ambil assets[0].url dari tugas yang sudah selesai.

Dua hal kecil membuat kami mengulang sekali. POST dengan User-Agent bawaan Python mengembalikan HTTP 403 sampai kami memasang User-Agent sendiri (28 Oktober 2026), dan Base64 di dalam badan permintaan ikut dihitung terhadap batas 1 MiB, jadi perkecil foto sebelum dienkode.

Hasilnya PNG opaque di balik tautan bertanda tangan yang kedaluwarsa sekitar satu jam; berkasnya sendiri disimpan 24 jam. Unduh lalu baca lebar dan tinggi sebenarnya, jangan percaya ukuran yang Anda minta.

python
import base64
import json
import os
import time
import urllib.request
import uuid

API = "https://api.omniakey.com/v1/media/tasks"
KEY = os.environ["OMNIAKEY_API_KEY"]


def request(method, url, body=None, extra_headers=None):
    headers = {"Authorization": f"Bearer {KEY}", "User-Agent": "omniakey-example/1"}
    data = None
    if body is not None:
        headers["Content-Type"] = "application/json"
        data = json.dumps(body).encode()
    headers.update(extra_headers or {})
    req = urllib.request.Request(url, data=data, headers=headers, method=method)
    with urllib.request.urlopen(req, timeout=120) as resp:
        return json.load(resp)


def edit_image(source_path, prompt, out_path, size="1024x1536", quality="medium"):
    with open(source_path, "rb") as f:
        image = base64.b64encode(f.read()).decode()
    body = {
        "model": "gpt-image-2",
        "type": "image",
        "operation": "edit",
        "input": {"prompt": prompt, "image": {"data": image, "mime_type": "image/jpeg"}},
        "parameters": {"size": size, "quality": quality},
    }
    task = request("POST", API, body, {"Idempotency-Key": str(uuid.uuid4())})["id"]
    for _ in range(150):
        time.sleep(4)
        state = request("GET", f"{API}/{task}")
        if state["status"] not in ("queued", "processing"):
            break
    if state["status"] != "succeeded":
        raise RuntimeError(state.get("error") or state["status"])
    asset_url = state["assets"][0]["url"]  # signed link: valid for about an hour, so download now
    req = urllib.request.Request(asset_url, headers={"User-Agent": "omniakey-example/1"})
    with urllib.request.urlopen(req, timeout=120) as resp, open(out_path, "wb") as f:
        f.write(resp.read())
    return task
if __name__ == "__main__":
    task = edit_image(
        "cafe-base.jpg",
        "Change the red bicycle to a matte black bicycle with a brown wicker basket on the front. Keep everything else exactly the same: the wooden table, the coffee cup, the plant, the window frame and the bright daylight. Photorealistic, no text, no logos.",
        "cafe-step1.png",
        size="1536x1024",
    )
    print("task", task)

Percobaan kami memakai size 1536x1024 dan quality medium. Dokumentasi menyebut n harus 1 untuk GPT Image; fungsi ini tidak mengirimkannya. Panggilan contoh di bagian bawah berkas adalah langkah 1 dari rantai.

Rantai tiga edit

Setiap langkah memakai hasil sebelumnya sebagai masukan, jadi rantainya tiga tugas dan tiga unduhan. Foto dasarnya meja kafe di samping jendela: cangkir kopi putih di atas tatakan, sepeda merah di trotoar, tanaman dalam pot di ambang jendela, 1536x1024 pada kualitas medium.

  • Langkah 1: "Change the red bicycle to a matte black bicycle with a brown wicker basket on the front. Keep everything else exactly the same: the wooden table, the coffee cup, the plant, the window frame and the bright daylight. Photorealistic, no text, no logos." Hasil: sepeda hitam dof dengan keranjang rotan di depan; meja, cangkir, tanaman, dan jendela tidak berubah.
  • Langkah 2, dari langkah 1: "Make it evening outside: the sky is dark blue and the street lamps are on. The cafe interior lights are warm yellow. Keep the table, the cup, the plant, the black bicycle and the window frame exactly the same. Photorealistic, no text, no logos." Hasil: langit senja, lampu jalan menyala, cahaya dalam ruangan kuning hangat, dan sepeda hitam beserta keranjangnya tetap ada.
  • Langkah 3, dari langkah 2: "Replace the coffee in the white cup with a clear glass of iced tea with a lemon slice on the rim. Keep everything else exactly the same. Photorealistic, no text, no logos." Hasil: es teh dengan irisan lemon di bibir gelas menggantikan kopi; suasana senja tetap bertahan.
Kisi 2x2 dari meja kafe yang sama: foto asli, sepeda hitam, versi senja, dan es teh menggantikan kopi
Foto kafe yang sama setelah tiga instruksi, satu langkah setiap kali. Setiap langkah mempertahankan meja, cangkir, tanaman, dan jendela.

Keempat bingkai adalah adegan sintetis buatan gpt-image-2. Generated with GPT-Image 2 via the OmniaKey API on October 28, 2026, size 1536x1024, quality medium.

Satu edit dari foto asli

Tidak semua edit perlu dirantai. Yang ini mulai dari foto dasar dan menukar satu benda di ambang jendela: "Remove the potted plant from the windowsill and place a stack of three old hardcover books there. Keep everything else exactly the same: the table, the cup, the red bicycle and the daylight. Photorealistic, no text, no logos."

Tiga buku hardcover tua berdiri di ambang jendela, tanaman hilang, dan sepeda merah tetap merah. Satu kalimat membuat dua perubahan, dan keduanya muncul di bingkai.

Meja kafe dengan tiga buku hardcover tua di ambang jendela, tempat tanaman dalam pot sebelumnya berdiri
Edit terpisah dari foto asli: buku menggantikan tanaman. Sepeda merah tidak berubah.

Yang bertahan dan yang tidak

Meja, cangkir, tanaman, dan kusen jendela melewati ketiga langkah, sepeda hitam dan keranjangnya selamat dari perubahan cahaya senja, dan setiap edit sebelumnya masih ada di bingkai berikutnya. Cahaya berubah sekali, di langkah 2, tepat seperti yang diminta kalimatnya.

Irisan lemon berada di bibir gelas sesuai permintaan kalimat, dan es tehnya tetap di atas tatakan. Setiap instruksi dijalankan sekali, jadi setiap bingkai adalah satu sampel.

Instruksi yang berhasil

Empat instruksi menghasilkan empat edit yang bisa dipakai, dengan pola yang sama.

  • Satu perubahan per kalimat, lalu daftar yang dipertahankan. Langkah 1 mengubah sepeda dan menyebut meja, cangkir, tanaman, serta jendela tetap sama.
  • Ulangi daftar yang dipertahankan di setiap putaran, termasuk perubahan sebelumnya: langkah 2 menulis "the black bicycle", dan langkah 3 mempertahankan suasana senja.
  • Sebutkan ke mana benda baru diletakkan dalam kalimat yang sama dengan benda lama: "place a stack of three old hardcover books there".
  • Pakai bahan dan warna yang konkret: "matte black", "brown wicker basket", "warm yellow", "clear glass".
  • Tutup dengan "Photorealistic, no text, no logos". Setiap instruksi dalam rantai kami berakhir begitu.

Untuk urutan kalimat dan pilihan kata saat mengedit, panduan prompt GPT Image 2 kami membahas strukturnya. Panduan virtual try-on membahas ganti pakaian, dan panduan penghapusan objek membahas penghapusan benda.

Mana yang dipilih

FLUX.1 KontextEdit di GPT-Image 2
Masukan per permintaanSatu prompt, satu gambarSatu prompt, satu gambar
Batas sumber20 MB atau 20 megapikselPermintaan 1 MiB, termasuk Base64
Ukuran hasilSekitar 1 MPUkuran yang Anda minta, sebagai PNG
Tautan hasil10 menitSekitar satu jam
Status modelGenerasi sebelumnya, menurut BFLTersedia di OmniaKey

Pilih Kontext bila pipeline FLUX sudah berjalan di produksi dan Anda ingin mempertahankan bentuk panggilan itu untuk sekarang. Pilih GPT-Image 2 bila Anda ingin menentukan ukuran sendiri dan punya waktu satu jam untuk mengambil tautannya. BFL mengarahkan pekerjaan baru ke FLUX.2, jadi proyek baru adalah momen yang tepat untuk meninjau pilihan.

Soal biaya, halaman harga OpenAI (diperiksa 2026-10-28) menagih gpt-image-2 per juta token: $8.00 untuk masukan gambar, $30.00 untuk keluaran gambar, $2.00 untuk masukan gambar yang di-cache, dan batch setengah dari tarif standar. Tidak ada baris per gambar; panduan pembuatan gambar punya kalkulator untuk satu gambar.

FAQ

Apa fungsi API FLUX Kontext?

Mengedit foto dari instruksi teks, dengan satu prompt dan satu gambar masukan per permintaan (BFL, diperiksa 2026-10-28). Halaman BFL menulis bahwa layanan ini "edits images using simple text prompts".

Apakah FLUX Kontext masih berlaku?

BFL menyebut FLUX.1 Kontext sebagai model generasi sebelumnya dan merekomendasikan FLUX.2 untuk proyek baru (diperiksa 2026-10-28).

Bisakah foto diedit lewat API hanya dengan teks?

Bisa. Kirim satu foto dan satu instruksi ke endpoint edit GPT-Image 2, lalu foto baru kembali. Kami menjalankan empat edit dengan cara ini pada 28 Oktober 2026.

Bisakah edit dirantai?

Bisa, dengan satu tugas per langkah: masukkan setiap hasil sebagai foto sumber berikutnya. Rantai tiga langkah kami mempertahankan perubahan sebelumnya saat cahaya senja dan saat minuman diganti.

Berapa lama tautan hasil berlaku?

Sekitar satu jam di OmniaKey, sedangkan berkasnya disimpan 24 jam (docs.omniakey.com, diperiksa 2026-10-28). Unduh PNG begitu tugas berhasil, lalu baca dimensi sebenarnya.

OmniaKey menyediakan edit GPT-Image 2 lewat alur tugas di atas; harga terbaru ada di halaman harga.

Model di artikel ini

FLUX KontextGPT Image 2edit gambaredit lewat instruksiAPI

Artikel terkait

Artikel terbaru