Panduan praktis Python untuk model gambar Seedream 4.5 dari ByteDance yang mencakup pembuatan batch, perenderan teks, pengeditan multi-gambar, dan praktik terbaik untuk prompting.
BytePlus baru saja merilis model generasi gambar terbaru mereka, Seedream 4.5. Sebagai lengan teknologi perusahaan dari ByteDance, perusahaan ini menghadirkan kemampuan AI canggih bagi bisnis di seluruh dunia, dengan bertumpu pada inovasi di balik platform seperti TikTok.
Dalam artikel ini, saya akan mengajarkan cara menggunakan Seedream 4.5 dengan Python dengan mengintegrasikannya melalui API untuk menghasilkan gambar secara terprogram.
Saya merekomendasikan mengambil kursus Generative AI Concepts sebagai pengantar yang sangat baik tentang teknologi di balik model generasi gambar seperti Seedream. Jika Anda juga tertarik pada model generasi gambar lainnya, lihat panduan kami tentang Nano Banana 2 dari Google.
Apa itu Seedream 4.5
Seedream 4.5 adalah iterasi terbaru dari model generasi gambar AI milik BytePlus.
Rilis terbaru ini meningkatkan konsistensi subjek, mempertajam detail teks kecil, dan memperbaiki penggabungan multi-gambar. Model ini juga memiliki pemahaman instruksi yang lebih kuat, penalaran spasial yang lebih baik, dan inferensi logis yang lebih maju.
Model ini juga dapat menghasilkan gambar 4K berkualitas tinggi, yang merupakan peningkatan yang disambut baik, karena model pesaing sering kesulitan menghasilkan gambar beresolusi tinggi. Dari sisi biaya, model ini juga kompetitif, dengan biaya pembuatan hanya 4 sen per gambar.
Pastikan juga untuk membaca artikel kami tentang model generasi video terbaru ByteDance, Seedance 2.0.
Penyiapan API Seedream 4.5
Tanpa berlama-lama, mari mulai dengan API Seedream 4.5.
Membuat kunci API
Untuk menggunakan Seedream 4.5 dengan Python melalui API mereka, pertama kita perlu membuat kunci API.
Setelah masuk, ada tombol Access API di pojok kanan atas. Klik dan buat kunci API. Membuat kunci API mengharuskan kita memverifikasi nomor telepon dan memberikan informasi penagihan. Namun, ini bukan langganan, jadi kita tidak akan dikenai biaya bulanan. Hanya permintaan API kita yang dikenai biaya.
Buat file bernama .env di folder yang sama tempat kita menulis kode Python dan salin kuncinya ke dalam file tersebut dengan format berikut:
Sebelum model dapat digunakan, pastikan juga untuk mengaktifkannya di konsol BytePlus ModelArk. Ini perlu dilakukan secara terpisah dari kunci API. Caranya:
Arahkan ke Model activation pada bilah sisi kiri.
Di bagian tengah, pilih Media untuk kategori model yang tepat.
Klik Activate di sisi kanan, pada baris model ByteDance-Seedream-4.5.
Konfirmasi pada jendela yang terbuka.
Penyiapan dependensi Python
Untuk berinteraksi dengan API Seedream 4.5, kita memasang beberapa paket Python:
byteplussdkarkruntime: Paket Python resmi yang memungkinkan kita membuat permintaan API ke Seedream 4.5, yang merupakan bagian dari BytePlus Python SDK.
Beberapa paket pembantu untuk memuat kunci API dari file .env, untuk permintaan HTTP async, dan validasi pengaturan.
Kita memasang paket-paket ini menggunakan perintah:
pip install byteplus-python-sdk-v2 python-dotenv httpx requests typing_extensions pydanticDidukung oleh
Membuat Gambar dengan Seedream 4.5
Mari mulai dengan mempelajari cara membuat gambar dari prompt teks. Jika Anda telah membaca tutorial API AI Python kami yang lain, seperti tentang GPT-Image-1 atau Grok Imagine, Anda mungkin sudah familier dengan alur kerja khas berikut:
Impor paket-paketnya.
Muat kunci API dari file .env.
Buat klien menggunakan paket API resmi.
Kirim permintaan API.
Seedream 4.5 bekerja persis dengan cara yang sama. Berikut contoh skrip untuk menghasilkan sebuah gambar.
# 1. Import the necessary packagesfrom dotenv import load_dotenv
from byteplussdkarkruntime import Ark
import os
# 2. Load the API key
load_dotenv()# 3. Create the client
client = Ark(
base_url="https://ark.ap-southeast.bytepluses.com/api/v3",
api_key=os.getenv("ARK_API_KEY"),)# 4. Send the API request
prompt ="""
Photorealistic anthropomorphic animals hanging out in a coffee shop with no humans.
"""
imagesResponse = client.images.generate(
model="seedream-4-5-251128",
prompt=prompt,
watermark=False,)
image_url = imagesResponse.data[0].url
print(image_url)Didukung oleh
Dalam contoh khusus ini, prompt yang kami gunakan adalah:
Photorealistic anthropomorphic animals hanging out in a coffee shop with no humans.Didukung oleh
Ini adalah hasil yang dihasilkan model:
Mengunduh gambar yang dihasilkan
Skrip di atas akan menampilkan URL gambar yang dihasilkan di terminal. Itu bukan alur kerja yang paling nyaman. Alternatif yang lebih baik adalah membuat fungsi yang mengunduh gambar yang dihasilkan ke folder lokal kita.
import requests
from urllib.parse import urlparse
import os
defdownload_image(url):try:
response = requests.get(url, stream=True)
response.raise_for_status()
parsed_url = urlparse(url)
filename = os.path.basename(parsed_url.path)ifnot filename:
filename ="downloaded_image"withopen(filename,"wb")as f:for chunk in response.iter_content(1024):
f.write(chunk)print(f"Image saved to: {filename}")except Exception as e:print(f"Error downloading image: {e}")Didukung oleh
Saya merekomendasikan membuat skrip baru bernama utils.py dan menaruh fungsi ini di sana. Lalu, di skrip yang menghasilkan gambar, tambahkan kode berikut untuk mengunduh gambarnya:
import utils
utils.download_image(image_url)Didukung oleh
Menentukan ukuran gambar
Contoh sebelumnya menggunakan parameter default Seedream 4.5, kecuali watermark, yang kami setel ke False untuk menyembunyikannya.
Seedream 4.5 menyediakan dua cara untuk menentukan dimensi gambar keluaran menggunakan parameter size.
Cara pertama adalah menentukan resolusi gambar yang dihasilkan dengan mengatur size ke "2K" atau "4K" dan mendeskripsikan rasio aspek, bentuk, atau tujuan dalam prompt menggunakan bahasa natural, lalu biarkan model menentukan lebar dan tinggi. Nilai default adalah "2K".
Berikut contohnya:
prompt ="""
Portait Instagram image to be used to promote travel to Tokyo, Japan.
"""
imagesResponse = client.images.generate(
model="seedream-4-5-251128",
prompt=prompt,
size="4K",
watermark=False,)Didukung oleh
Sebagai alternatif, kita dapat menentukan ukuran gambar dalam piksel dengan string seperti "3750x1250", tetapi ada dua aturan yang harus diikuti:
Jumlah piksel (lebar × tinggi) harus antara 3,6 juta dan 16,7 juta.
Rasio aspek (lebar ÷ tinggi) harus antara 1/16 dan 16.
Jika hanya satu aturan yang terpenuhi, ukuran tidak valid. Untuk menghindari perhitungan ini, saya merekomendasikan menggunakan metode resolusi di atas atau salah satu ukuran valid berikut:
Pembuatan batch
Seedream 4.5 menyertakan mode pembuatan batch yang dapat digunakan untuk menghasilkan sekumpulan gambar yang saling terkait secara tematik. Ini berguna, misalnya, untuk menghasilkan storyboard atau visual yang berpusat pada subjek bersama.
Untuk membuat satu batch gambar, kita perlu memberikan parameter sequential_image_generation dan sequential_image_generation_options pada permintaan API. Berikut contoh untuk menghasilkan 4 gambar:
from byteplussdkarkruntime.types.images.images import SequentialImageGenerationOptions
prompt ="""
Generate a series of four visually coherent and stylistically consistent images illustrating these stages of a human life: Child, Adolescent, Adult, and Elderly. Make sure it's the same person in the four images.
"""
imagesResponse = client.images.generate(
model="seedream-4-5-251128",
prompt=prompt,
size="2K",
sequential_image_generation="auto",
sequential_image_generation_options=SequentialImageGenerationOptions(max_images=4),
response_format="url",
watermark=False)Didukung oleh
Saat kita menggunakan pembuatan batch, kita mendapatkan format respons yang berbeda yang berisi semua gambar. Kita dapat mengiterasi gambar-gambar tersebut dan mengunduhnya seperti ini:
# Iterate through all image datafor image in imagesResponse.data:
utils.download_image(image.url)Didukung oleh
Saya mencoba ini dengan prompt berikut:
Generate a series of four visually coherent and stylistically consistent images illustrating these stages of a human life: Child, Adolescent, Adult, and Elderly. Make sure it's the same person in the four images.Didukung oleh
Namun, karena suatu alasan, gambar keempat selalu melanggar konsistensi dan keluar sebagai seorang wanita (saya mencoba beberapa kali).
Untuk menghasilkan jumlah gambar yang berbeda, kita cukup mengubah nilai max_images pada permintaan API. Angka ini bisa berupa bilangan bulat antara 1 dan 15 (inklusif). Misalnya, untuk menghasilkan 6 gambar, kita akan melakukan:
Mari uji kemampuan Seedream 4.5 dalam menghasilkan teks. Dalam pengujian, saya memutuskan untuk melihat apakah model dapat menghasilkan gambar dengan sebuah pembuktian matematis tanpa secara eksplisit menentukan teks yang ingin saya render. Ini juga menguji kemampuan model dalam memahami konteks.
Berikut prompt yang saya gunakan:
Generate an image of a math professor standing in front of a blackboard. On the blackboard, there is a written proof that the square root of 2 is irrational.Didukung oleh
Berikut hasilnya:
Saya cukup puas dengan hasilnya. Bukan hanya pembuktiannya benar, model juga mampu menangani teks dalam jumlah besar dengan baik.
Mengedit Gambar dengan Seedream 4.5
Pada bagian ini, kita mempelajari cara mengedit gambar. Cara yang lebih sederhana untuk mengedit gambar dengan Seedream 4.5 adalah memberikan URL gambar menggunakan parameter image dan menjelaskan perubahannya dalam prompt.
Berikut contoh skrip lengkapnya:
from dotenv import load_dotenv
from byteplussdkarkruntime import Ark
import os
import utils
load_dotenv()
client = Ark(
base_url="https://ark.ap-southeast.bytepluses.com/api/v3",
api_key=os.getenv('ARK_API_KEY'),)
image ="https://images.pexels.com/photos/34408249/pexels-photo-34408249.jpeg"
prompt ="""
Make in snowy.
"""
imagesResponse = client.images.generate(
model="seedream-4-5-251128",
prompt=prompt,
image=image,
response_format="url",
watermark=False,
size="1664x2496")
image_url = imagesResponse.data[0].url
utils.download_image(image_url)Didukung oleh
Perhatikan bahwa pada contoh di atas, kami secara eksplisit menyatakan ukuran keluaran, "1664x2496", untuk menyesuaikan rasio aspek gambar input. Berbeda dengan kebanyakan model gambar AI, Seedream 4.5 tidak akan secara otomatis menghasilkan gambar dengan dimensi yang sama seperti input. Saat saya menghilangkan parameter size, keluarannya berupa gambar persegi.
Mengedit gambar lokal
Menggunakan URL gambar adalah cara termudah untuk memberikan gambar ke Seedream 4.5. Namun, ini merepotkan jika gambarnya belum dihosting di suatu tempat.
API Seedream juga memungkinkan kita dengan mudah menggunakan gambar lokal. Untuk melakukannya, kita perlu memuatnya sebagai gambar base64. Berikut fungsi untuk melakukannya:
import mimetypes
import base64
defload_image_as_base64(file_path):
mime_type, _ = mimetypes.guess_type(file_path)if mime_type isNoneornot mime_type.startswith("image/"):raise ValueError("File is not a recognized image type")withopen(file_path,"rb")as f:
encoded = base64.b64encode(f.read()).decode("utf-8")returnf"data:{mime_type};base64,{encoded}"Didukung oleh
Saya merekomendasikan menambahkannya ke file utils.py yang berisi fungsi untuk mengunduh gambar, sehingga mudah digunakan di skrip utama kita.
Misalkan kita memiliki gambar lokal di folder yang sama bernama motard.jpeg. Berikut cara memuat dan mengedit gambar tersebut:
image = utils.load_image_as_base64("motard.jpeg")
prompt ="""
Remove the sunglasses and add a helmet.
"""
imagesResponse = client.images.generate(
model="seedream-4-5-251128",
prompt=prompt,
image=image,
response_format="url",
watermark=False)Didukung oleh
Pengeditan input multi-gambar
Seedream 4.5 mendukung beberapa input gambar. Ini dapat digunakan untuk menghasilkan gambar baru dengan memadukan gaya dan elemen visual dari gambar-gambar tersebut.
Memberikan beberapa gambar dalam permintaan API semudah mengirimkan daftar yang berisi gambar-gambar tersebut. Berikut contoh menggabungkan gambar seseorang dan sebuah pakaian menjadi gambar orang tersebut mengenakan pakaian itu:
image1 = utils.load_image_as_base64("woman.jpeg")
image2 = utils.load_image_as_base64("outfit.jpeg")
prompt ="""
Make the woman from image 1 wear the outfit in image 2.
"""
imagesResponse = client.images.generate(
model="seedream-4-5-251128",
prompt=prompt,
image=[image1, image2],
response_format="url",
watermark=False,)Didukung oleh
Contoh ini menunjukkan bahwa Seedream 4.5 cukup baik dalam mempertahankan wajah; orang pada gambar akhir masih terlihat sangat mirip dengan aslinya. Ini adalah hal yang sering kurang optimal pada model lain.
Pengeditan keluaran multi-gambar
Fungsionalitas batching yang telah kita pelajari juga berfungsi untuk pengeditan gambar, di mana jumlah total gambar (input + output) tidak boleh melebihi 15. Ini sangat berguna, misalnya, untuk menghasilkan banyak gambar berdasarkan sebuah visual.
Untuk melakukan ini, kita cukup menggabungkan parameter image dengan parameter pembuatan batch yang telah kita pelajari di atas. Berikut contoh permintaannya:
prompt ="""
Use the given logo to create a visual design system for an outdoor hiking brand,
including backpack, hat, and shoes.
"""
image = utils.load_image_as_base64("logo.jpeg")
imagesResponse = client.images.generate(
model="seedream-4-5-251128",
prompt=prompt,
size="2K",
image=image,
sequential_image_generation="auto",
sequential_image_generation_options=SequentialImageGenerationOptions(max_images=3),
response_format="url",
watermark=False)Didukung oleh
Masking
Beberapa model generasi gambar AI mendukung masking dengan memungkinkan pengguna memberikan citra mask hitam-putih untuk menentukan area gambar yang ingin diedit. Namun, Seedream 4.5 tidak mendukung parameter masking secara native.
Saya tetap mencobanya dengan mengirimkan mask sebagai gambar input dan menentukan apa yang saya inginkan dalam prompt untuk melihat apakah model dapat memahami dan menirukan hasilnya:
Ini berhasil pada contoh ini, tetapi karena bukan fitur bawaan model, hasilnya tidak terlalu andal. Misalnya, saat saya mencoba hal yang sama untuk menambahkan seekor anjing, itu tidak berhasil.
Praktik Terbaik Seedream 4.5
Seperti yang telah kita lihat, Seedream 4.5 menawarkan performa yang baik dan beberapa fitur menarik. Untuk memaksimalkan hasilnya, ingat praktik terbaik berikut.
Pedoman inti untuk prompting
Untuk hasil pembuatan gambar terbaik dari Seedream 4.5, jawab pertanyaan tentang apa yang Anda inginkan, mengapa Anda menginginkannya, dan bagaimana gaya yang diharapkan, sambil tetap ringkas:
Jelaskan subjek, aksi, dan lingkungan dengan bahasa yang lugas.
Tentukan tujuan/kasus penggunaan (logo, poster, storyboard, UI, dll.).
Kendalikan gaya menggunakan kata kunci yang presisi atau gambar referensi.
Lebih utamakan prompt yang ringkas dan presisi daripada daftar panjang adjektiva.
Letakkan teks yang harus muncul pada gambar dalam tanda kutip ganda.
Pedoman pengeditan gambar
Saat mengedit gambar, nyatakan dengan tepat perubahan apa yang Anda lakukan dan apa yang harus tetap tidak berubah. Gunakan empat kata berikut untuk menentukan tindakan:
Tambahkan
Hapus
Ganti
Modifikasi
Jika adegannya kompleks, menggunakan petunjuk visual (panah, kotak, coretan) untuk menandai area bisa membantu model.
Saat Anda menggunakan gambar referensi untuk mempertahankan identitas, gaya, atau fitur produk, selalu tentukan:
Target referensi: apa yang harus diekstrak/dipertahankan (mis., desain karakter, material, gaya).
Adegan yang dihasilkan: di mana/bagaimana menggunakannya (tata letak, setelan, realisme, ukuran, posisi).
Pedoman batching
Saat menggunakan beberapa gambar input, tetapkan peran dengan jelas:
Mana yang menyediakan subjek, mana yang menyediakan pakaian/gaya/latar belakang?
Rujuk gambar sebagai gambar 1, gambar 2, dan seterusnya.
Terlepas dari adanya parameter model untuk menentukan berapa banyak gambar yang ingin kita hasilkan, sebaiknya pastikan juga menggunakan prompt untuk menentukan apa yang kita inginkan:
Minta “serangkaian,” “satu set,” atau tentukan jumlah gambar secara tepat.
Gunakan untuk storyboard, komik, set merek yang konsisten, paket emoji, dll.
Kesimpulan
Seedream 4.5 tampil sebagai generator gambar yang matang dan siap produksi yang sekelas dengan model papan atas seperti Nano Banana, menghadirkan fidelitas yang sebanding, kepatuhan pada instruksi, dan koherensi lintas gambar sambil tetap hemat biaya.
Yang menonjol bagi saya adalah betapa mudah didekati API ini saat digunakan: endpoint generate yang sama menangani pembuatan sekali jalan, pengeditan (melalui URL atau base64), pencampuran multi-gambar, dan batch berurutan, dan kita mengaktifkan tiap mode hanya dengan mengubah sejumlah kecil parameter yang penamaannya jelas.
Meski begitu, saya tidak merasa model ini menghadirkan inovasi khusus: ini adalah implementasi yang sangat baik dari kotak peralatan generasi gambar yang kini sudah familier, bukan lompatan konseptual.
Pembelajaran Lanjutan
Jika Anda ingin terus membangun momentum setelah panduan ini, pertimbangkan untuk memperkuat fondasi yang membuat proyek Seedream 4.5 berjalan mulus di produksi.
Mulailah dengan kursus Introduction to APIs in Python untuk menguasai permintaan terautentikasi dan penanganan error, padukan dengan Image Processing in Python untuk menangani pengubahan ukuran, komposit, dan konversi format dalam pipeline Anda.
Jika Anda membidik jalur yang lebih formal ke ML terapan dan tooling, jalur karier AI Engineer merangkai semuanya dengan alur kerja untuk mengirimkan fitur AI yang andal dan skalabel.
Seedream 4.5 FAQs
Bagaimana perbandingan Seedream 4.5 dengan Nano Banana?⌄
Meskipun Seedream 4.5 bisa bersaing dengan versi asli Nano Banana dari sisi biaya dan kualitas gambar, versi baru, Nano Banana 2, memberi Google keunggulan atas Seedream 4.5
Meski demikian, Seedream 4.5 unggul dalam konsistensi batch berfidelitas tinggi dan keluaran 4K yang fotorealistik. Nano Banana menonjol dalam penalaran spasial yang cepat dan pengeditan lokal yang presisi.
Apakah Seedream 4.5 dapat menghasilkan gambar beresolusi tinggi?⌄
Ya, Seedream 4.5 dapat menghasilkan gambar 4K.
Berapa biaya untuk membuat sebuah gambar?⌄
Baik gambar 2K maupun 4K berbiaya $0,04 untuk dibuat melalui BytePlus ArkRuntime API.
Apakah saya memerlukan langganan untuk menggunakan Seedream 4.5?⌄
Tidak. Kita dapat menggunakan Seedream 4.5 melalui BytePlus ArkRuntime API dan hanya membayar untuk gambar yang kita buat.
Apakah memungkinkan menghasilkan gambar tanpa watermark?⌄
Insinyur full-stack & pendiri di CheapGPT. Mengajar selalu menjadi passion saya. Sejak masa awal sebagai mahasiswa, saya aktif mencari peluang untuk membimbing dan membantu mahasiswa lain. Passion ini mendorong saya menempuh studi PhD, di mana saya juga menjadi asisten pengajar untuk mendukung kegiatan akademik saya. Selama tahun-tahun itu, saya menemukan kepuasan besar dalam suasana kelas tradisional, membangun koneksi dan memfasilitasi proses belajar. Namun, dengan hadirnya platform pembelajaran daring, saya melihat potensi transformatif pendidikan digital. Bahkan, saya terlibat aktif dalam pengembangan salah satu platform tersebut di universitas kami. Saya sangat berkomitmen untuk mengintegrasikan prinsip-prinsip pengajaran tradisional dengan metodologi digital yang inovatif. Tujuan saya adalah menciptakan kursus yang tidak hanya menarik dan informatif, tetapi juga mudah diakses oleh para pembelajar di era digital ini.
Temukan alasan mengapa Anda sebaiknya (tidak) menggunakan spaghetti plot untuk menyampaikan ketidakpastian jalur prediksi badai serta dampaknya terhadap interpretasi.
Kuasai pertanyaan wawancara basis data, dari konsep SQL dasar hingga skenario desain sistem tingkat lanjut. Panduan mendalam ini mencakup semua yang Anda perlukan untuk sukses di wawancara DBMS dan meraih peran berikutnya.
Pelajari cara mulai memanfaatkan AI generatif secara bertanggung jawab. Pelajari cara model AI generatif dikembangkan dan dampaknya bagi masyarakat ke depan.
Pelajari cara mengintegrasikan kecerdasan buatan (AI) ke dalam aplikasi perangkat lunak menggunakan antarmuka pemrograman aplikasi (API) dan perpustakaan sumber terbuka. Mulailah perjalanan Anda untuk menjadi seorang Insinyur Kecerdasan Buatan (AI) hari ini!
BytePlus baru saja merilis model generasi gambar terbaru mereka, Seedream 4.5. Sebagai lengan teknologi perusahaan dari ByteDance, perusahaan ini menghadirkan kemampuan AI canggih bagi bisnis di seluruh dunia, dengan bertumpu pada inovasi di balik platform seperti TikTok.
Dalam artikel ini, saya akan mengajarkan cara menggunakan Seedream 4.5 dengan Python dengan mengintegrasikannya melalui API untuk menghasilkan gambar secara terprogram.
Saya merekomendasikan mengambil kursus Generative AI Concepts sebagai pengantar yang sangat baik tentang teknologi di balik model generasi gambar seperti Seedream. Jika Anda juga tertarik pada model generasi gambar lainnya, lihat panduan kami tentang Nano Banana 2 dari Google.
Apa itu Seedream 4.5
Seedream 4.5 adalah iterasi terbaru dari model generasi gambar AI milik BytePlus.
Rilis terbaru ini meningkatkan konsistensi subjek, mempertajam detail teks kecil, dan memperbaiki penggabungan multi-gambar. Model ini juga memiliki pemahaman instruksi yang lebih kuat, penalaran spasial yang lebih baik, dan inferensi logis yang lebih maju.
Model ini juga dapat menghasilkan gambar 4K berkualitas tinggi, yang merupakan peningkatan yang disambut baik, karena model pesaing sering kesulitan menghasilkan gambar beresolusi tinggi. Dari sisi biaya, model ini juga kompetitif, dengan biaya pembuatan hanya 4 sen per gambar.
Pastikan juga untuk membaca artikel kami tentang model generasi video terbaru ByteDance, Seedance 2.0.
Penyiapan API Seedream 4.5
Tanpa berlama-lama, mari mulai dengan API Seedream 4.5.
Membuat kunci API
Untuk menggunakan Seedream 4.5 dengan Python melalui API mereka, pertama kita perlu membuat kunci API.
Buka situs web resmi mereka, klik tombol Get API di pojok kanan bawah, lalu masuk.
Setelah masuk, ada tombol Access API di pojok kanan atas. Klik dan buat kunci API. Membuat kunci API mengharuskan kita memverifikasi nomor telepon dan memberikan informasi penagihan. Namun, ini bukan langganan, jadi kita tidak akan dikenai biaya bulanan. Hanya permintaan API kita yang dikenai biaya.
Buat file bernama
.envdi folder yang sama tempat kita menulis kode Python dan salin kuncinya ke dalam file tersebut dengan format berikut:Sebelum model dapat digunakan, pastikan juga untuk mengaktifkannya di konsol BytePlus ModelArk. Ini perlu dilakukan secara terpisah dari kunci API. Caranya:
Arahkan ke Model activation pada bilah sisi kiri.
Di bagian tengah, pilih Media untuk kategori model yang tepat.
Klik Activate di sisi kanan, pada baris model
ByteDance-Seedream-4.5.Konfirmasi pada jendela yang terbuka.
Penyiapan dependensi Python
Untuk berinteraksi dengan API Seedream 4.5, kita memasang beberapa paket Python:
byteplussdkarkruntime: Paket Python resmi yang memungkinkan kita membuat permintaan API ke Seedream 4.5, yang merupakan bagian dari BytePlus Python SDK.Beberapa paket pembantu untuk memuat kunci API dari file
.env, untuk permintaan HTTP async, dan validasi pengaturan.Kita memasang paket-paket ini menggunakan perintah:
Membuat Gambar dengan Seedream 4.5
Mari mulai dengan mempelajari cara membuat gambar dari prompt teks. Jika Anda telah membaca tutorial API AI Python kami yang lain, seperti tentang GPT-Image-1 atau Grok Imagine, Anda mungkin sudah familier dengan alur kerja khas berikut:
Impor paket-paketnya.
Muat kunci API dari file
.env.Buat klien menggunakan paket API resmi.
Kirim permintaan API.
Seedream 4.5 bekerja persis dengan cara yang sama. Berikut contoh skrip untuk menghasilkan sebuah gambar.
Dalam contoh khusus ini, prompt yang kami gunakan adalah:
Ini adalah hasil yang dihasilkan model:
Mengunduh gambar yang dihasilkan
Skrip di atas akan menampilkan URL gambar yang dihasilkan di terminal. Itu bukan alur kerja yang paling nyaman. Alternatif yang lebih baik adalah membuat fungsi yang mengunduh gambar yang dihasilkan ke folder lokal kita.
Saya merekomendasikan membuat skrip baru bernama
utils.pydan menaruh fungsi ini di sana. Lalu, di skrip yang menghasilkan gambar, tambahkan kode berikut untuk mengunduh gambarnya:Menentukan ukuran gambar
Contoh sebelumnya menggunakan parameter default Seedream 4.5, kecuali
watermark, yang kami setel keFalseuntuk menyembunyikannya.Seedream 4.5 menyediakan dua cara untuk menentukan dimensi gambar keluaran menggunakan parameter
size.Cara pertama adalah menentukan resolusi gambar yang dihasilkan dengan mengatur size ke "2K" atau "4K" dan mendeskripsikan rasio aspek, bentuk, atau tujuan dalam prompt menggunakan bahasa natural, lalu biarkan model menentukan lebar dan tinggi. Nilai default adalah "2K".
Berikut contohnya:
Sebagai alternatif, kita dapat menentukan ukuran gambar dalam piksel dengan string seperti
"3750x1250", tetapi ada dua aturan yang harus diikuti:Jika hanya satu aturan yang terpenuhi, ukuran tidak valid. Untuk menghindari perhitungan ini, saya merekomendasikan menggunakan metode resolusi di atas atau salah satu ukuran valid berikut:
Pembuatan batch
Seedream 4.5 menyertakan mode pembuatan batch yang dapat digunakan untuk menghasilkan sekumpulan gambar yang saling terkait secara tematik. Ini berguna, misalnya, untuk menghasilkan storyboard atau visual yang berpusat pada subjek bersama.
Untuk membuat satu batch gambar, kita perlu memberikan parameter
sequential_image_generationdansequential_image_generation_optionspada permintaan API. Berikut contoh untuk menghasilkan4gambar:Saat kita menggunakan pembuatan batch, kita mendapatkan format respons yang berbeda yang berisi semua gambar. Kita dapat mengiterasi gambar-gambar tersebut dan mengunduhnya seperti ini:
Saya mencoba ini dengan prompt berikut:
Namun, karena suatu alasan, gambar keempat selalu melanggar konsistensi dan keluar sebagai seorang wanita (saya mencoba beberapa kali).
Untuk menghasilkan jumlah gambar yang berbeda, kita cukup mengubah nilai
max_imagespada permintaan API. Angka ini bisa berupa bilangan bulat antara 1 dan 15 (inklusif). Misalnya, untuk menghasilkan 6 gambar, kita akan melakukan:Pembuatan teks
Mari uji kemampuan Seedream 4.5 dalam menghasilkan teks. Dalam pengujian, saya memutuskan untuk melihat apakah model dapat menghasilkan gambar dengan sebuah pembuktian matematis tanpa secara eksplisit menentukan teks yang ingin saya render. Ini juga menguji kemampuan model dalam memahami konteks.
Berikut prompt yang saya gunakan:
Berikut hasilnya:
Saya cukup puas dengan hasilnya. Bukan hanya pembuktiannya benar, model juga mampu menangani teks dalam jumlah besar dengan baik.
Mengedit Gambar dengan Seedream 4.5
Pada bagian ini, kita mempelajari cara mengedit gambar. Cara yang lebih sederhana untuk mengedit gambar dengan Seedream 4.5 adalah memberikan URL gambar menggunakan parameter
imagedan menjelaskan perubahannya dalam prompt.Berikut contoh skrip lengkapnya:
Dalam contoh ini, saya menggunakan foto yang tersedia publik di Pexels oleh Michael Fischer dan menggunakan Seedream 4.5 untuk membuatnya bersalju.
Ini yang saya dapatkan:
Perhatikan bahwa pada contoh di atas, kami secara eksplisit menyatakan ukuran keluaran,
"1664x2496", untuk menyesuaikan rasio aspek gambar input. Berbeda dengan kebanyakan model gambar AI, Seedream 4.5 tidak akan secara otomatis menghasilkan gambar dengan dimensi yang sama seperti input. Saat saya menghilangkan parameter size, keluarannya berupa gambar persegi.Mengedit gambar lokal
Menggunakan URL gambar adalah cara termudah untuk memberikan gambar ke Seedream 4.5. Namun, ini merepotkan jika gambarnya belum dihosting di suatu tempat.
API Seedream juga memungkinkan kita dengan mudah menggunakan gambar lokal. Untuk melakukannya, kita perlu memuatnya sebagai gambar base64. Berikut fungsi untuk melakukannya:
Saya merekomendasikan menambahkannya ke file
utils.pyyang berisi fungsi untuk mengunduh gambar, sehingga mudah digunakan di skrip utama kita.Misalkan kita memiliki gambar lokal di folder yang sama bernama
motard.jpeg. Berikut cara memuat dan mengedit gambar tersebut:Pengeditan input multi-gambar
Seedream 4.5 mendukung beberapa input gambar. Ini dapat digunakan untuk menghasilkan gambar baru dengan memadukan gaya dan elemen visual dari gambar-gambar tersebut.
Memberikan beberapa gambar dalam permintaan API semudah mengirimkan daftar yang berisi gambar-gambar tersebut. Berikut contoh menggabungkan gambar seseorang dan sebuah pakaian menjadi gambar orang tersebut mengenakan pakaian itu:
Contoh ini menunjukkan bahwa Seedream 4.5 cukup baik dalam mempertahankan wajah; orang pada gambar akhir masih terlihat sangat mirip dengan aslinya. Ini adalah hal yang sering kurang optimal pada model lain.
Pengeditan keluaran multi-gambar
Fungsionalitas batching yang telah kita pelajari juga berfungsi untuk pengeditan gambar, di mana jumlah total gambar (input + output) tidak boleh melebihi 15. Ini sangat berguna, misalnya, untuk menghasilkan banyak gambar berdasarkan sebuah visual.
Untuk melakukan ini, kita cukup menggabungkan parameter image dengan parameter pembuatan batch yang telah kita pelajari di atas. Berikut contoh permintaannya:
Masking
Beberapa model generasi gambar AI mendukung masking dengan memungkinkan pengguna memberikan citra mask hitam-putih untuk menentukan area gambar yang ingin diedit. Namun, Seedream 4.5 tidak mendukung parameter masking secara native.
Saya tetap mencobanya dengan mengirimkan mask sebagai gambar input dan menentukan apa yang saya inginkan dalam prompt untuk melihat apakah model dapat memahami dan menirukan hasilnya:
Ini berhasil pada contoh ini, tetapi karena bukan fitur bawaan model, hasilnya tidak terlalu andal. Misalnya, saat saya mencoba hal yang sama untuk menambahkan seekor anjing, itu tidak berhasil.
Praktik Terbaik Seedream 4.5
Seperti yang telah kita lihat, Seedream 4.5 menawarkan performa yang baik dan beberapa fitur menarik. Untuk memaksimalkan hasilnya, ingat praktik terbaik berikut.
Pedoman inti untuk prompting
Untuk hasil pembuatan gambar terbaik dari Seedream 4.5, jawab pertanyaan tentang apa yang Anda inginkan, mengapa Anda menginginkannya, dan bagaimana gaya yang diharapkan, sambil tetap ringkas:
Pedoman pengeditan gambar
Saat mengedit gambar, nyatakan dengan tepat perubahan apa yang Anda lakukan dan apa yang harus tetap tidak berubah. Gunakan empat kata berikut untuk menentukan tindakan:
Jika adegannya kompleks, menggunakan petunjuk visual (panah, kotak, coretan) untuk menandai area bisa membantu model.
Saat Anda menggunakan gambar referensi untuk mempertahankan identitas, gaya, atau fitur produk, selalu tentukan:
Pedoman batching
Saat menggunakan beberapa gambar input, tetapkan peran dengan jelas:
Terlepas dari adanya parameter model untuk menentukan berapa banyak gambar yang ingin kita hasilkan, sebaiknya pastikan juga menggunakan prompt untuk menentukan apa yang kita inginkan:
Kesimpulan
Seedream 4.5 tampil sebagai generator gambar yang matang dan siap produksi yang sekelas dengan model papan atas seperti Nano Banana, menghadirkan fidelitas yang sebanding, kepatuhan pada instruksi, dan koherensi lintas gambar sambil tetap hemat biaya.
Yang menonjol bagi saya adalah betapa mudah didekati API ini saat digunakan: endpoint generate yang sama menangani pembuatan sekali jalan, pengeditan (melalui URL atau base64), pencampuran multi-gambar, dan batch berurutan, dan kita mengaktifkan tiap mode hanya dengan mengubah sejumlah kecil parameter yang penamaannya jelas.
Meski begitu, saya tidak merasa model ini menghadirkan inovasi khusus: ini adalah implementasi yang sangat baik dari kotak peralatan generasi gambar yang kini sudah familier, bukan lompatan konseptual.
Pembelajaran Lanjutan
Jika Anda ingin terus membangun momentum setelah panduan ini, pertimbangkan untuk memperkuat fondasi yang membuat proyek Seedream 4.5 berjalan mulus di produksi.
Mulailah dengan kursus Introduction to APIs in Python untuk menguasai permintaan terautentikasi dan penanganan error, padukan dengan Image Processing in Python untuk menangani pengubahan ukuran, komposit, dan konversi format dalam pipeline Anda.
Jika Anda membidik jalur yang lebih formal ke ML terapan dan tooling, jalur karier AI Engineer merangkai semuanya dengan alur kerja untuk mengirimkan fitur AI yang andal dan skalabel.