Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Penting
Model dall-e-3 pembuatan gambar DALL-E dihentikan pada 4 Maret 2026 dan tidak lagi tersedia untuk implementasi baru. Penyebaran yang ada tidak berfungsi.
gpt-image- Gunakan model seri untuk pembuatan gambar sebagai gantinya. Lihat panduan cara pembuatan gambar untuk instruksi yang diperbarui.
Model pembuatan gambar OpenAI membuat gambar dari perintah teks yang disediakan pengguna dan gambar opsional. Artikel ini menjelaskan cara menggunakan model ini, mengonfigurasi opsi, dan mendapatkan manfaat dari kemampuan pembuatan gambar tingkat lanjut di Azure.
Anda dapat melakukan pembuatan gambar melalui API pembuatan gambar atau API respons. Atau Anda dapat bereksperimen dengan pembuatan gambar di portal Foundry
Untuk memilih pendekatan dan model API pilihan Anda, gunakan tab di awal halaman ini.
Model dan kemampuan
Gunakan tabel ini untuk mempelajari perbedaan antara model pembuatan gambar yang berbeda, dan untuk membantu Anda memilih model terbaik untuk kebutuhan pembuatan gambar Anda.
| Aspek | GPT-Image-2 | GPT-Image-1.5 | GPT-Image-1 | GPT-Image-1-Mini |
|---|---|---|---|---|
| Ketersediaan | Pratinjau publik | Pratinjau akses terbatas (Terapkan untuk akses GPT-image-1.5) | Pratinjau akses terbatas (Terapkan untuk akses GPT-image-1) | Pratinjau akses terbatas (Terapkan untuk akses GPT-image-1) |
| Kekuatan | Terbaik untuk resolusi tinggi dan generasi 4K, pengeditan gambar yang ditingkatkan, dan dukungan rasio aspek yang luas | Terbaik untuk realisme, mengikuti instruksi, konteks multimodal, dan peningkatan kecepatan/biaya | Terbaik untuk realisme, mengikuti instruksi, dan konteks multimodal | Terbaik untuk prototipe cepat, pembuatan massal, atau kasus penggunaan yang sensitif terhadap biaya |
| Modalitas Input /Output & Format | Menerima input teks + gambar ; mengeluarkan gambar hanya di base64 (tanpa opsi URL). | Menerima input teks + gambar ; mengeluarkan gambar hanya di base64 (tanpa opsi URL). | Menerima input teks + gambar ; mengeluarkan gambar hanya di base64 (tanpa opsi URL). | Menerima input teks + gambar ; mengeluarkan gambar hanya di base64 (tanpa opsi URL). |
| Ukuran / Resolusi Gambar | Resolusi arbitrer: kedua tepi harus kelipatan 16 px; tepi panjang hingga 3.840 px (4K); rasio aspek hingga 3:1; jumlah piksel 655.360–8.294.400 | 1024×1024, 1024×1536, 1536×1024 | 1024×1024, 1024×1536, 1536×1024 | 1024×1024, 1024×1536, 1536×1024 |
| Opsi Kualitas | Kontrol kualitas yang dikerjakan ulang: low, , mediumhigh; low dioptimalkan untuk kasus penggunaan yang sensitif terhadap latensi |
low, medium, high (default = tinggi) |
low, medium, high (default = tinggi) |
low, , mediumhigh (default = medium) |
| Jumlah Gambar per Permintaan | 1–10 gambar per permintaan (n parameter) |
1–10 gambar per permintaan (n parameter) |
1–10 gambar per permintaan (n parameter) |
1–10 gambar per permintaan (n parameter) |
| Pengeditan (inpainting / variasi) | ✅ Peningkatan kinerja pengeditan dengan inpainting dan variasi | ✅ Mendukung pengemasan dan variasi dengan mask + prompt | ✅ Mendukung pengemasan dan variasi dengan mask + prompt | ✅ Mendukung pengemasan dan variasi dengan mask + prompt |
| Pelestarian Wajah | ✅ Pelestarian wajah tingkat lanjut untuk hasil yang realistis dan konsisten | ✅ Pelestarian wajah tingkat lanjut untuk hasil yang realistis dan konsisten | ✅ Pelestarian wajah tingkat lanjut untuk hasil yang realistis dan konsisten | ❌Tidak ada pelestarian wajah khusus; lebih baik untuk citra kreatif non-potret/umum |
| Performa & Biaya | Model fidelitas tinggi yang dioptimalkan untuk realisme; latensi dan biaya lebih tinggi | Model dengan fidelitas tinggi yang dioptimalkan untuk realisme; peningkatan efisiensi dan latensi atas GPT-Image-1 | Model fidelitas tinggi yang dioptimalkan untuk realisme; latensi dan biaya lebih tinggi | Hemat biaya dan lebih cepat untuk pembuatan skala besar atau berulang |
Quickstart
Gunakan panduan ini untuk mulai memanggil Azure OpenAI di REST API pembuatan gambar Microsoft Foundry Models dengan menggunakan Python.
Prasyarat
- Langganan Azure. Buat satu secara gratis.
- Python 3.8 atau versi yang lebih baru.
- Pustaka Python berikut diinstal:
os,requests,json. - Sumber daya OpenAI Azure dibuat di wilayah yang didukung. Lihat Ketersediaan wilayah.
- Kemudian, Anda perlu menyebarkan model seri gpt-image dengan sumber daya Azure Anda. Untuk informasi selengkapnya, lihat Buat sumber daya dan sebarkan model dengan Azure OpenAI.
Pengaturan
Mengambil kunci dan titik akhir
Agar berhasil memanggil API OpenAI Azure, Anda memerlukan informasi berikut tentang sumber daya OpenAI Azure Anda:
| Variabel | Nama | Nilai |
|---|---|---|
| Endpoint (Titik Akhir) | api_base |
Nilai endpoint terletak di bawah Keys dan Endpoint untuk sumber daya Anda di portal Azure. Anda juga dapat menemukan titik akhir melalui halaman Penyebaran di portal Foundry. Contoh titik akhir adalah: https://docs-test-001.openai.azure.com/. |
| Kunci | api_key |
Nilai kunci juga terletak di bagian Kunci dan Titik Akhir untuk sumber daya Anda di portal Azure. Azure menghasilkan dua kunci untuk sumber daya Anda. Anda dapat menggunakan salah satu nilai. |
Buka sumber daya Anda di portal Azure. Pada panel navigasi, pilih Kunci dan Titik Akhir di bawah Manajemen Sumber Daya. Salin nilai Titik akhir dan nilai kunci akses. Anda dapat menggunakan nilai KEY 1 atau KEY 2 . Selalu memiliki dua kunci memungkinkan Anda memutar dan meregenerasi kunci dengan aman tanpa menyebabkan gangguan layanan.
Variabel lingkungan
Buat dan tetapkan variabel lingkungan persisten untuk kunci dan titik akhir Anda.
Penting
Kami merekomendasikan menggunakan autentikasi Microsoft Entra ID dengan identitas terkelola untuk sumber daya Azure untuk menghindari penyimpanan kredensial di aplikasi Anda yang berjalan di cloud.
Gunakan kunci API dengan hati-hati. Jangan sertakan kunci API langsung dalam kode Anda, dan jangan pernah mempostingnya secara publik. Jika menggunakan kunci API, simpan dengan aman di Azure Key Vault, putar kunci secara teratur, dan batasi akses ke Azure Key Vault menggunakan kontrol akses berbasis peran dan pembatasan akses jaringan. Untuk informasi selengkapnya tentang menggunakan kunci API dengan aman di aplikasi Anda, lihat kunci API dengan Azure Key Vault.
Untuk informasi selengkapnya tentang keamanan layanan AI, lihat Autentikasi permintaan ke layanan Azure AI.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Membuat aplikasi Python baru
Buat file Python baru bernama quickstart.py. Buka file baru di editor atau IDE pilihan Anda.
Ganti konten quickstart.py dengan kode berikut. Ubah nilai
promptmenjadi teks pilihan Anda. Atur jugadeploymentke nama penyebaran yang Anda pilih saat menyebarkan model pembuatan gambar.import os import requests import base64 from PIL import Image from io import BytesIO # set environment variables endpoint = os.getenv("AZURE_OPENAI_ENDPOINT") subscription_key = os.getenv("AZURE_OPENAI_API_KEY") deployment = "gpt-image-1.5" # the name of your GPT-image series deployment api_version = "2025-04-01-preview" # or later version def decode_and_save_image(b64_data, output_filename): image = Image.open(BytesIO(base64.b64decode(b64_data))) image.show() image.save(output_filename) def save_all_images_from_response(response_data, filename_prefix): for idx, item in enumerate(response_data['data']): b64_img = item['b64_json'] filename = f"{filename_prefix}_{idx+1}.png" decode_and_save_image(b64_img, filename) print(f"Image saved to: '{filename}'") base_path = f'openai/deployments/{deployment}/images' params = f'?api-version={api_version}' generation_url = f"{endpoint}{base_path}/generations{params}" generation_body = { "prompt": "girl falling asleep", "n": 1, "size": "1024x1024", "quality": "medium", "output_format": "png", # "background": "transparent", # "auto" or "transparent" (GPT-image-1 only; requires PNG output) # "output_compression": 100, # 0-100 compression level (JPEG output only) } generation_response = requests.post( generation_url, headers={ 'Api-Key': subscription_key, 'Content-Type': 'application/json', }, json=generation_body ).json() save_all_images_from_response(generation_response, "generated_image") # In addition to generating images, you can edit them. edit_url = f"{endpoint}{base_path}/edits{params}" edit_body = { "prompt": "girl falling asleep", "n": 1, "size": "1024x1024", "quality": "medium" } files = { "image": ("generated_image_1.png", open("generated_image_1.png", "rb"), "image/png"), # You can use a mask to specify which parts of the image you want to edit. # The mask must be the same size as the input image. # "mask": ("mask.png", open("mask.png", "rb"), "image/png"), } edit_response = requests.post( edit_url, headers={'Api-Key': subscription_key}, data=edit_body, files=files ).json() save_all_images_from_response(edit_response, "edited_image")Skrip membuat panggilan API pembuatan gambar yang sinkron.
Penting
Ingatlah untuk menghapus kunci dari kode Anda setelah selesai, dan jangan pernah memposting kunci Anda secara publik. Untuk produksi, gunakan cara aman untuk menyimpan dan mengakses kredensial Anda. Untuk informasi selengkapnya, lihat Azure Key Vault.
Jalankan aplikasi dengan
pythonperintah :python quickstart.pyTunggu beberapa saat untuk mendapatkan respons.
Keluaran
Output dari panggilan API pembuatan gambar yang berhasil terlihat seperti contoh berikut. Bidang b64_json berisi data gambar output yang dikodekan base64.
{
"created": 1698116662,
"data": [
{
"b64_json": "<base64 image data>"
}
]
}
Respons yang berhasil meliputi:
- Penanda waktu
created(waktu epoch Unix) -
dataArray dengan setidaknya satu objek gambar- Nilaib64_json(data gambar yang dikodekan base64) untuk setiap gambar yang dihasilkan
Kesalahan umum
| Kesalahan | Menyebabkan | Resolusi |
|---|---|---|
DeploymentNotFound |
Nama penerapan tidak ditemukan atau salah eja | Verifikasi nama penyebaran di portal Azure atau portal Foundry |
401 Unauthorized |
Kunci API tidak valid atau hilang | Periksa apakah variabel lingkungan Anda AZURE_OPENAI_API_KEY diatur dengan benar |
429 Too Many Requests |
Batas tarif terlampaui | Mengimplementasikan logika percobaan ulang dengan backoff eksponensial |
content_policy_violation |
Perintah atau output yang dihasilkan diblokir oleh filter konten | Ubah perintah untuk mematuhi kebijakan konten |
InvalidPayload |
Parameter yang diperlukan tidak ada atau nilai yang tidak valid | Periksa apakah prompt, size, dan n ditentukan dengan benar |
API Gambar dilengkapi dengan filter moderasi konten. Jika layanan mengenali permintaan Anda sebagai konten berbahaya, layanan tersebut tidak menghasilkan gambar. Untuk informasi selengkapnya, lihat Pemfilteran konten. Untuk contoh respons kesalahan, lihat panduan cara pembuatan gambar.
Sistem mengembalikan status operasi Failed dan nilai error.code di dalam pesan diatur ke contentFilter. Berikut adalah contohnya:
{
"created": 1698435368,
"error":
{
"code": "contentFilter",
"message": "Your task failed as a result of our safety system."
}
}
Ada kemungkinan juga bahwa gambar yang dihasilkan itu sendiri difilter. Dalam hal ini, pesan kesalahan diatur ke Generated image was filtered as a result of our safety system.. Berikut adalah contohnya:
{
"created": 1698435368,
"error":
{
"code": "contentFilter",
"message": "Generated image was filtered as a result of our safety system."
}
}
Membersihkan sumber daya
Jika Anda ingin membersihkan dan menghapus sumber daya OpenAI Azure, Anda dapat menghapus sumber daya atau grup sumber daya. Menghapus grup sumber daya juga menghapus sumber daya lain yang terkait dengannya.
Gunakan panduan ini untuk mulai menghasilkan gambar dengan Azure OpenAI SDK untuk Python.
Kode | sumber pustakaPaket | Sampel
Prasyarat
- Langganan Azure. Buat satu secara gratis.
- Python 3.8 atau versi yang lebih baru.
- Sumber daya OpenAI Azure yang dibuat di wilayah yang kompatibel. Lihat Ketersediaan wilayah.
- Akses titik akhir dan kunci sumber daya OpenAI Azure di portal Azure.
- Model pembuatan gambar yang disebarkan:
-
Seri GPT-image-1: Menerapkan model seri
gpt-image-1. Memerlukan pendaftaran akses terbatas.
-
Seri GPT-image-1: Menerapkan model seri
Untuk informasi selengkapnya, lihat Buat sumber daya dan sebarkan model dengan Azure OpenAI.
Pengaturan
Mengambil kunci dan titik akhir
Agar berhasil memanggil API OpenAI Azure, Anda memerlukan informasi berikut tentang sumber daya OpenAI Azure Anda:
| Variabel | Nama | Nilai |
|---|---|---|
| Endpoint (Titik Akhir) | api_base |
Nilai endpoint terletak di bawah Keys dan Endpoint untuk sumber daya Anda di portal Azure. Anda juga dapat menemukan titik akhir melalui halaman Deployments di portal Microsoft Foundry. Contoh titik akhir adalah: https://docs-test-001.openai.azure.com/. |
| Kunci | api_key |
Nilai kunci juga terletak di bagian Kunci dan Titik Akhir untuk sumber daya Anda di portal Azure. Azure menghasilkan dua kunci untuk sumber daya Anda. Anda dapat menggunakan salah satu nilai. |
Buka sumber daya Anda di portal Azure. Pada panel navigasi, pilih Kunci dan Titik Akhir di bawah Manajemen Sumber Daya. Salin nilai Titik akhir dan nilai kunci akses. Anda dapat menggunakan nilai KEY 1 atau KEY 2 . Selalu memiliki dua kunci memungkinkan Anda memutar dan meregenerasi kunci dengan aman tanpa menyebabkan gangguan layanan.
Variabel lingkungan
Buat dan tetapkan variabel lingkungan persisten untuk kunci dan titik akhir Anda.
Penting
Kami merekomendasikan menggunakan autentikasi Microsoft Entra ID dengan identitas terkelola untuk sumber daya Azure untuk menghindari penyimpanan kredensial di aplikasi Anda yang berjalan di cloud.
Gunakan kunci API dengan hati-hati. Jangan sertakan kunci API langsung dalam kode Anda, dan jangan pernah mempostingnya secara publik. Jika menggunakan kunci API, simpan dengan aman di Azure Key Vault, putar kunci secara teratur, dan batasi akses ke Azure Key Vault menggunakan kontrol akses berbasis peran dan pembatasan akses jaringan. Untuk informasi selengkapnya tentang menggunakan kunci API dengan aman di aplikasi Anda, lihat kunci API dengan Azure Key Vault.
Untuk informasi selengkapnya tentang keamanan layanan AI, lihat Autentikasi permintaan ke layanan Azure AI.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Menginstal SDK Python
Buka perintah dan telusuri folder proyek Anda. Instal OpenAI Python SDK dengan menggunakan perintah berikut:
pip install openai
Instal pustaka berikut juga:
pip install requests
pip install pillow
Hasilkan gambar
Buat file python baru, quickstart.py. Buka di editor atau IDE pilihan Anda.
Ganti konten quickstart.py dengan kode berikut.
from openai import AzureOpenAI
import os
import base64
from PIL import Image
client = AzureOpenAI(
api_version="2025-04-01-preview",
api_key=os.environ["AZURE_OPENAI_API_KEY"],
azure_endpoint=os.environ['AZURE_OPENAI_ENDPOINT']
)
result = client.images.generate(
model="gpt-image-1", # the name of your GPT-image series deployment
prompt="a close-up of a bear walking through the forest",
n=1,
size="1024x1024",
quality="high",
output_format="png",
# background="transparent", # Set to "transparent" for transparent backgrounds (GPT-image-1 only; requires PNG)
# output_compression=100, # 0-100 compression level (JPEG output only)
)
# Set the directory for the stored image
image_dir = os.path.join(os.curdir, 'images')
# If the directory doesn't exist, create it
if not os.path.isdir(image_dir):
os.mkdir(image_dir)
# Initialize the image path (note the filetype should be png)
image_path = os.path.join(image_dir, 'generated_image.png')
# GPT-image-1 models always return base64-encoded image data
image_base64 = result.data[0].b64_json
generated_image = base64.b64decode(image_base64)
with open(image_path, "wb") as image_file:
image_file.write(generated_image)
# Display the image in the default image viewer
image = Image.open(image_path)
image.show()
- Pastikan variabel lingkungan
AZURE_OPENAI_ENDPOINTdanAZURE_OPENAI_API_KEYdisetel. - Ubah nilai
promptmenjadi teks pilihan Anda. - Ubah nilai
modelmenjadi nama model seri gambar GPT yang Anda sebarkan.
Penting
Ingatlah untuk menghapus kunci dari kode Anda setelah selesai, dan jangan pernah memposting kunci Anda secara publik. Untuk produksi, gunakan cara aman untuk menyimpan dan mengakses kredensial Anda. Untuk informasi selengkapnya, lihat Azure Key Vault.
Jalankan aplikasi dengan python perintah :
python quickstart.py
Tunggu beberapa saat untuk mendapatkan respons.
Keluaran
Azure OpenAI menyimpan gambar output dalam file generated_image.png di direktori yang Anda tentukan. Skrip juga menampilkan gambar di penampil gambar default Anda.
Respons yang berhasil meliputi:
- Tanda
createdwaktu - Array
datayang memiliki setidaknya satu objek gambar -
b64_jsonBidang dengan data gambar yang dikodekan base64 (model GPT-image-1 selalu mengembalikan base64)
Kesalahan umum
| Kesalahan | Menyebabkan | Resolusi |
|---|---|---|
DeploymentNotFound |
Nama penerapan tidak ditemukan atau salah eja | Verifikasi nama penyebaran di portal Azure atau portal Foundry |
AuthenticationError |
Kunci API tidak valid atau hilang | Periksa apakah variabel lingkungan Anda AZURE_OPENAI_API_KEY diatur dengan benar |
RateLimitError |
Batas tarif terlampaui | Mengimplementasikan logika percobaan ulang dengan backoff eksponensial |
content_policy_violation |
Perintah atau output yang dihasilkan diblokir oleh filter konten | Ubah perintah untuk mematuhi kebijakan konten |
API Gambar dilengkapi dengan filter moderasi konten. Jika layanan mengenali permintaan Anda sebagai konten berbahaya, layanan tersebut tidak menghasilkan gambar. Untuk informasi selengkapnya, lihat Pemfilteran konten.
Membersihkan sumber daya
Jika Anda ingin membersihkan dan menghapus sumber daya OpenAI Azure, Anda dapat menghapus sumber daya atau grup sumber daya. Menghapus grup sumber daya juga menghapus sumber daya lain yang terkait dengannya.
Gunakan panduan ini untuk mulai menghasilkan gambar dengan Azure OpenAI SDK untuk C#.
kode sumber Library | Package (NuGet) | Samples
Prasyarat
- Langganan Azure - Buat langganan secara gratis
- SDK .NET 7
- Sumber daya OpenAI Azure dibuat di wilayah yang didukung (lihat ketersediaan Region). Untuk informasi selengkapnya, lihat Buat sumber daya dan sebarkan model dengan Azure OpenAI.
prasyarat Microsoft Entra ID
Untuk autentikasi tanpa kunci yang direkomendasikan dengan Microsoft Entra ID, Anda perlu:
- Instal Azure CLI digunakan untuk autentikasi tanpa kunci dengan Microsoft Entra ID.
- Tetapkan peran
Cognitive Services Useruntuk akun pengguna Anda. Anda dapat menetapkan peran di portal Azure di bawah kontrol Access (IAM)>Tambahkan penetapan peran.
Konfigurasi
Buat folder
image-quickstartbaru dan buka folder mulai cepat dengan perintah berikut:mkdir image-quickstart && cd image-quickstartBuat aplikasi konsol baru dengan perintah berikut:
dotnet new consoleInstal pustaka klien OpenAI .NET dengan perintah tambahkan paket dotnet:
dotnet add package Azure.AI.OpenAI --version 1.0.0-beta.6Untuk direkomendasikan autentikasi tanpa kunci dengan Microsoft Entra ID, instal paket Azure.Identity dengan:
dotnet add package Azure.IdentityUntuk autentikasi tanpa kunci yang direkomendasikan dengan Microsoft Entra ID, gunakan perintah berikut untuk masuk ke Azure:
az login
Mengambil informasi sumber daya
Anda perlu mengambil informasi berikut untuk mengautentikasi aplikasi Anda dengan sumber daya OpenAI Azure Anda:
| Nama variabel | Nilai |
|---|---|
AZURE_OPENAI_ENDPOINT |
Nilai ini dapat ditemukan di bagian Keys dan Endpoint saat memeriksa sumber daya Anda dari portal Azure. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Nilai ini akan sesuai dengan nama kustom yang Anda pilih untuk penyebaran saat Anda melakukan penerapan model. Nilai ini dapat ditemukan di bawah Resource Management>Model Deployments di portal Azure. |
Pelajari selengkapnya tentang autentikasi tanpa kunci dan mengatur variabel lingkungan.
Jalankan mulai cepat
Kode sampel dalam panduan cepat ini menggunakan Microsoft Entra ID untuk autentikasi tanpa kunci yang direkomendasikan. Jika Anda lebih suka menggunakan kunci API, Anda dapat mengganti DefaultAzureCredential objek dengan AzureKeyCredential objek.
AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential());
Untuk menjalankan mulai cepat, ikuti langkah-langkah berikut:
Ganti konten
Program.csdengan kode berikut dan perbarui nilai tempat penampung dengan nilai Anda sendiri.using Azure; using Azure.AI.OpenAI; using OpenAI.Images; using static System.Environment; string endpoint = Environment.GetEnvironmentVariable("AZURE_OPENAI_ENDPOINT") ?? "https://<your-resource-name>.openai.azure.com/"; string key = Environment.GetEnvironmentVariable("AZURE_OPENAI_API_KEY") ?? "<your-key>"; // Use the recommended keyless credential instead of the AzureKeyCredential credential. AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential()); //AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new AzureKeyCredential(key)); // This must match the custom deployment name you chose for your model ImageClient chatClient = openAIClient.GetImageClient("gpt-image-1"); var imageGeneration = await chatClient.GenerateImageAsync( "a happy monkey sitting in a tree, in watercolor", new ImageGenerationOptions() { Size = GeneratedImageSize.W1024xH1024 } ); Console.WriteLine(imageGeneration.Value.ImageUri);Jalankan aplikasi menggunakan perintah
dotnet runatau tombol jalankan di bagian atas Visual Studio:dotnet run
Keluaran
Data gambar yang dikodekan base64 dicetak ke konsol.
Penting
GPT-image-1 dan GPT-image-2 juga mendukung parameter tambahan seperti quality (low, , medium), highoutput_format (png, jpeg), background (auto, transparent), dan output_compression (0-100, hanya JPEG). Untuk detailnya, lihat Opsi API.
Catatan
API Gambar dilengkapi dengan filter moderasi konten. Jika layanan mengenali permintaan Anda sebagai konten berbahaya, layanan tidak akan mengembalikan gambar yang dihasilkan. Untuk informasi selengkapnya, lihat artikel filter konten .
Membersihkan sumber daya
Jika Anda ingin membersihkan dan menghapus sumber daya OpenAI Azure, Anda dapat menghapus sumber daya. Sebelum menghapus sumber daya, Anda harus terlebih dahulu menghapus model yang disebarkan.
Gunakan panduan ini untuk mulai menghasilkan gambar dengan Azure OpenAI SDK untuk Java.
Kode sumber Library | Artifact (Maven) | Contoh
Prasyarat
- Langganan Azure - Buat langganan secara gratis
- Versi Java Development Kit (JDK) saat ini
- Pasang Apache Maven.
- Sumber daya OpenAI Azure dibuat di wilayah yang didukung (lihat ketersediaan Region). Untuk informasi selengkapnya, lihat Buat sumber daya dan sebarkan model dengan Azure OpenAI.
prasyarat Microsoft Entra ID
Untuk autentikasi tanpa kunci yang direkomendasikan dengan Microsoft Entra ID, Anda perlu:
- Instal Azure CLI digunakan untuk autentikasi tanpa kunci dengan Microsoft Entra ID.
- Tetapkan peran
Cognitive Services Useruntuk akun pengguna Anda. Anda dapat menetapkan peran di portal Azure di bawah kontrol Access (IAM)>Tambahkan penetapan peran.
Konfigurasi
Buat folder
image-quickstartbaru dan buka folder mulai cepat dengan perintah berikut:mkdir image-quickstart && cd image-quickstartPasang Apache Maven. Kemudian jalankan
mvn -vuntuk mengonfirmasi keberhasilan penginstalan.Buat file baru
pom.xmldi akar proyek Anda, dan salin kode berikut ke dalamnya:<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.azure.samples</groupId> <artifactId>quickstart-image-generation</artifactId> <version>1.0.0-SNAPSHOT</version> <build> <sourceDirectory>src</sourceDirectory> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.7.0</version> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build> <dependencies> <dependency> <groupId>com.azure</groupId> <artifactId>azure-ai-openai</artifactId> <version>1.0.0-beta.3</version> </dependency> <dependency> <groupId>com.azure</groupId> <artifactId>azure-core</artifactId> <version>1.53.0</version> </dependency> <dependency> <groupId>com.azure</groupId> <artifactId>azure-identity</artifactId> <version>1.15.1</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> <version>1.7.9</version> </dependency> </dependencies> </project>Instal Azure OpenAI SDK dan dependensi.
mvn clean dependency:copy-dependenciesUntuk autentikasi tanpa kunci yang direkomendasikan dengan Microsoft Entra ID, gunakan perintah berikut untuk masuk ke Azure:
az login
Mengambil informasi sumber daya
Anda perlu mengambil informasi berikut untuk mengautentikasi aplikasi Anda dengan sumber daya OpenAI Azure Anda:
| Nama variabel | Nilai |
|---|---|
AZURE_OPENAI_ENDPOINT |
Nilai ini dapat ditemukan di bagian Keys dan Endpoint saat memeriksa sumber daya Anda dari portal Azure. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Nilai ini akan sesuai dengan nama kustom yang Anda pilih untuk penyebaran saat Anda melakukan penerapan model. Nilai ini dapat ditemukan di bawah Resource Management>Model Deployments di portal Azure. |
Pelajari selengkapnya tentang autentikasi tanpa kunci dan mengatur variabel lingkungan.
Menjalankan aplikasi
Kode sampel dalam panduan cepat ini menggunakan Microsoft Entra ID untuk autentikasi tanpa kunci yang direkomendasikan. Jika Anda lebih suka menggunakan kunci API, Anda dapat mengganti DefaultAzureCredential objek dengan AzureKeyCredential objek.
OpenAIAsyncClient client = new OpenAIClientBuilder()
.endpoint(endpoint)
.credential(new DefaultAzureCredentialBuilder().build())
.buildAsyncClient();
Ikuti langkah-langkah ini untuk membuat aplikasi konsol untuk pembuatan gambar.
Buat file baru bernama Quickstart.java di direktori akar proyek yang sama.
Salin kode berikut ke Quickstart.java:
import com.azure.ai.openai.OpenAIAsyncClient; import com.azure.ai.openai.OpenAIClientBuilder; import com.azure.ai.openai.models.ImageGenerationOptions; import com.azure.ai.openai.models.ImageLocation; import com.azure.core.credential.AzureKeyCredential; import com.azure.core.models.ResponseError; import java.util.concurrent.TimeUnit; public class Quickstart { public static void main(String[] args) throws InterruptedException { String endpoint = System.getenv("AZURE_OPENAI_ENDPOINT"); // Use the recommended keyless credential instead of the AzureKeyCredential credential. OpenAIAsyncClient client = new OpenAIClientBuilder() .endpoint(endpoint) .credential(new DefaultAzureCredentialBuilder().build()) .buildAsyncClient(); ImageGenerationOptions imageGenerationOptions = new ImageGenerationOptions( "A drawing of the Seattle skyline in the style of Van Gogh"); client.getImages(imageGenerationOptions).subscribe( images -> { for (ImageLocation imageLocation : images.getData()) { ResponseError error = imageLocation.getError(); if (error != null) { System.out.printf("Image generation operation failed. Error code: %s, error message: %s.%n", error.getCode(), error.getMessage()); } else { System.out.printf( "Image location URL that provides temporary access to download the generated image is %s.%n", imageLocation.getUrl()); } } }, error -> System.err.println("There was an error getting images." + error), () -> System.out.println("Completed getImages.")); // The .subscribe() creation and assignment isn't a blocking call. // The thread sleeps so the program does not end before the send operation is complete. // Use .block() instead of .subscribe() for a synchronous call. TimeUnit.SECONDS.sleep(10); } }Jalankan aplikasi konsol baru Anda untuk menghasilkan gambar:
javac Quickstart.java -cp ".;target\dependency\*" java -cp ".;target\dependency\*" Quickstart
Keluaran
URL gambar yang dihasilkan dicetak ke konsol.
Image location URL that provides temporary access to download the generated image is <SAS URL>.
Completed getImages.
Penting
GPT-image-1 juga mendukung parameter tambahan seperti quality (low, , medium), highoutput_format (png, jpeg), background (auto, transparent), dan output_compression (0-100, hanya JPEG). Untuk detailnya, lihat Opsi API.
Catatan
API Gambar dilengkapi dengan filter moderasi konten. Jika layanan mengenali permintaan Anda sebagai konten berbahaya, layanan tidak akan mengembalikan gambar yang dihasilkan. Untuk informasi selengkapnya, lihat artikel filter konten .
Membersihkan sumber daya
Jika Anda ingin membersihkan dan menghapus sumber daya OpenAI Azure, Anda dapat menghapus sumber daya. Sebelum menghapus sumber daya, Anda harus terlebih dahulu menghapus model yang disebarkan.
Gunakan panduan ini untuk mulai menghasilkan gambar dengan Azure OpenAI SDK for JavaScript.
Dokumentasi Referensi | Kode sumber | Package (npm) | Contoh
Prasyarat
- Langganan Azure - Buat langganan secara gratis
- Versi LTS dari Node.js
- Azure CLI digunakan untuk autentikasi tanpa kata sandi di lingkungan pengembangan lokal, buat konteks yang diperlukan dengan masuk dengan Azure CLI.
- Sumber daya OpenAI Azure dibuat di wilayah yang didukung (lihat ketersediaan Region). Untuk informasi selengkapnya, lihat Buat sumber daya dan sebarkan model dengan Azure OpenAI.
prasyarat Microsoft Entra ID
Untuk autentikasi tanpa kunci yang direkomendasikan dengan Microsoft Entra ID, Anda perlu:
- Instal Azure CLI digunakan untuk autentikasi tanpa kunci dengan Microsoft Entra ID.
- Tetapkan peran
Cognitive Services Useruntuk akun pengguna Anda. Anda dapat menetapkan peran di portal Azure di bawah kontrol Access (IAM)>Tambahkan penetapan peran.
Pengaturan
Buat folder
image-quickstartbaru dan buka folder mulai cepat dengan perintah berikut:mkdir image-quickstart && cd image-quickstartBuat
package.jsondengan menggunakan perintah berikut:npm init -yInstal pustaka klien OpenAI untuk JavaScript dengan:
npm install openaiUntuk autentikasi tanpa kata sandi yang direkomendasikan :
npm install @azure/identity
Mengambil informasi sumber daya
Anda perlu mengambil informasi berikut untuk mengautentikasi aplikasi Anda dengan sumber daya OpenAI Azure Anda:
| Nama variabel | Nilai |
|---|---|
AZURE_OPENAI_ENDPOINT |
Nilai ini dapat ditemukan di bagian Keys dan Endpoint saat memeriksa sumber daya Anda dari portal Azure. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Nilai ini akan sesuai dengan nama kustom yang Anda pilih untuk penyebaran saat Anda melakukan penerapan model. Nilai ini dapat ditemukan di bawah Resource Management>Model Deployments di portal Azure. |
Pelajari selengkapnya tentang autentikasi tanpa kunci dan mengatur variabel lingkungan.
Perhatian
Untuk menggunakan autentikasi tanpa kunci yang direkomendasikan dengan SDK, pastikan variabel AZURE_OPENAI_API_KEY lingkungan tidak diatur.
Hasilkan gambar
index.jsBuat file dengan kode berikut:const { AzureOpenAI } = require("openai"); const { DefaultAzureCredential, getBearerTokenProvider } = require("@azure/identity"); const fs = require("fs"); // You will need to set these environment variables or edit the following values const endpoint = process.env.AZURE_OPENAI_ENDPOINT || "Your endpoint"; // Required Azure OpenAI deployment name and API version const apiVersion = process.env.OPENAI_API_VERSION || "2025-04-01-preview"; const deploymentName = process.env.AZURE_OPENAI_DEPLOYMENT_NAME || "gpt-image-1"; // The prompt to generate images from const prompt = "a monkey eating a banana"; const numberOfImagesToGenerate = 1; // keyless authentication const credential = new DefaultAzureCredential(); const scope = "https://ai.azure.com/.default"; const azureADTokenProvider = getBearerTokenProvider(credential, scope); function getClient() { return new AzureOpenAI({ endpoint, azureADTokenProvider, apiVersion, deployment: deploymentName, }); } async function main() { console.log("== Image Generation =="); const client = getClient(); const results = await client.images.generate({ prompt, size: "1024x1024", n: numberOfImagesToGenerate, model: "", quality: "high", // output_format: "png", // "png" or "jpeg" (GPT-image-1 only) // background: "transparent", // "auto" or "transparent" (GPT-image-1 only, requires PNG) }); // GPT-image-1 models always return base64-encoded images for (const image of results.data) { const imageBuffer = Buffer.from(image.b64_json, "base64"); fs.writeFileSync("generated_image.png", imageBuffer); console.log("Image saved to generated_image.png"); } } main().catch((err) => { console.error("The sample encountered an error:", err); });Masuk ke Azure dengan perintah berikut:
az loginJalankan file JavaScript.
node index.js
Keluaran
Gambar yang dihasilkan disimpan ke generated_image.png dalam direktori saat ini.
== Image Generation ==
Image saved to generated_image.png
Catatan
API Gambar dilengkapi dengan filter moderasi konten. Jika layanan mengenali permintaan Anda sebagai konten berbahaya, layanan tidak akan mengembalikan gambar yang dihasilkan. Untuk informasi selengkapnya, lihat artikel filter konten .
Membersihkan sumber daya
Jika Anda ingin membersihkan dan menghapus sumber daya OpenAI Azure, Anda dapat menghapus sumber daya. Sebelum menghapus sumber daya, Anda harus terlebih dahulu menghapus model yang disebarkan.
Gunakan panduan ini untuk mulai menghasilkan gambar dengan Azure OpenAI SDK for JavaScript.
Dokumentasi Referensi | Kode sumber | Package (npm) | Contoh
Prasyarat
- Langganan Azure - Buat langganan secara gratis
- Versi LTS dari Node.js
- TypeScript
- Azure CLI digunakan untuk autentikasi tanpa kata sandi di lingkungan pengembangan lokal, buat konteks yang diperlukan dengan masuk dengan Azure CLI.
- Sumber daya OpenAI Azure dibuat di wilayah yang didukung (lihat ketersediaan Region). Untuk informasi selengkapnya, lihat Buat sumber daya dan sebarkan model dengan Azure OpenAI.
prasyarat Microsoft Entra ID
Untuk autentikasi tanpa kunci yang direkomendasikan dengan Microsoft Entra ID, Anda perlu:
- Instal Azure CLI digunakan untuk autentikasi tanpa kunci dengan Microsoft Entra ID.
- Tetapkan peran
Cognitive Services Useruntuk akun pengguna Anda. Anda dapat menetapkan peran di portal Azure di bawah kontrol Access (IAM)>Tambahkan penetapan peran.
Pengaturan
Buat folder
image-quickstartbaru dan buka folder mulai cepat dengan perintah berikut:mkdir image-quickstart && cd image-quickstartBuat
package.jsondengan menggunakan perintah berikut:npm init -ypackage.jsonPerbarui ke ECMAScript dengan perintah berikut:npm pkg set type=moduleInstal pustaka klien OpenAI untuk JavaScript dengan:
npm install openaiUntuk autentikasi tanpa kata sandi yang direkomendasikan :
npm install @azure/identity
Mengambil informasi sumber daya
Anda perlu mengambil informasi berikut untuk mengautentikasi aplikasi Anda dengan sumber daya OpenAI Azure Anda:
| Nama variabel | Nilai |
|---|---|
AZURE_OPENAI_ENDPOINT |
Nilai ini dapat ditemukan di bagian Keys dan Endpoint saat memeriksa sumber daya Anda dari portal Azure. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Nilai ini akan sesuai dengan nama kustom yang Anda pilih untuk penyebaran saat Anda melakukan penerapan model. Nilai ini dapat ditemukan di bawah Resource Management>Model Deployments di portal Azure. |
Pelajari selengkapnya tentang autentikasi tanpa kunci dan mengatur variabel lingkungan.
Perhatian
Untuk menggunakan autentikasi tanpa kunci yang direkomendasikan dengan SDK, pastikan variabel AZURE_OPENAI_API_KEY lingkungan tidak diatur.
Hasilkan gambar
index.tsBuat file dengan kode berikut:import { AzureOpenAI } from "openai"; import { DefaultAzureCredential, getBearerTokenProvider } from "@azure/identity"; import * as fs from "fs"; // You will need to set these environment variables or edit the following values const endpoint = process.env.AZURE_OPENAI_ENDPOINT || "Your endpoint"; // Required Azure OpenAI deployment name and API version const apiVersion = process.env.OPENAI_API_VERSION || "2025-04-01-preview"; const deploymentName = process.env.AZURE_OPENAI_DEPLOYMENT_NAME || "gpt-image-1"; // keyless authentication const credential = new DefaultAzureCredential(); const scope = "https://ai.azure.com/.default"; const azureADTokenProvider = getBearerTokenProvider(credential, scope); function getClient(): AzureOpenAI { return new AzureOpenAI({ endpoint, azureADTokenProvider, apiVersion, deployment: deploymentName, }); } async function main() { console.log("== Image Generation =="); const client = getClient(); const results = await client.images.generate({ prompt, size: "1024x1024", n: numberOfImagesToGenerate, model: "", quality: "high", // output_format: "png", // "png" or "jpeg" (GPT-image-1 only) // background: "transparent", // "auto" or "transparent" (GPT-image-1 only, requires PNG) }); // GPT-image-1 models always return base64-encoded images for (const image of results.data) { const imageBuffer = Buffer.from(image.b64_json!, "base64"); fs.writeFileSync("generated_image.png", imageBuffer); console.log("Image saved to generated_image.png"); } } main().catch((err) => { console.error("The sample encountered an error:", err); });tsconfig.jsonBuat file untuk menerjemahkan kode TypeScript dan salin kode berikut untuk ECMAScript.{ "compilerOptions": { "module": "NodeNext", "target": "ES2022", // Supports top-level await "moduleResolution": "NodeNext", "skipLibCheck": true, // Avoid type errors from node_modules "strict": true // Enable strict type-checking options }, "include": ["*.ts"] }Transpile dari TypeScript ke JavaScript.
tscMasuk ke Azure dengan perintah berikut:
az loginJalankan kode dengan perintah berikut:
node index.js
Keluaran
Gambar yang dihasilkan disimpan ke generated_image.png dalam direktori saat ini.
== Image Generation ==
Image saved to generated_image.png
Catatan
API Gambar dilengkapi dengan filter moderasi konten. Jika layanan mengenali permintaan Anda sebagai konten berbahaya, layanan tidak akan mengembalikan gambar yang dihasilkan. Untuk informasi selengkapnya, lihat artikel filter konten .
Membersihkan sumber daya
Jika Anda ingin membersihkan dan menghapus sumber daya OpenAI Azure, Anda dapat menghapus sumber daya. Sebelum menghapus sumber daya, Anda harus terlebih dahulu menghapus model yang disebarkan.
Gunakan panduan ini untuk mulai menghasilkan gambar dengan Azure OpenAI SDK for Go.
Kode sumber Library | Paket | Sampel
Prasyarat
- Langganan Azure - Buat langganan secara gratis
- Go 1.8+
- Sumber daya OpenAI Azure dibuat di wilayah yang didukung (lihat ketersediaan Region). Untuk informasi selengkapnya, lihat Buat sumber daya dan sebarkan model dengan Azure OpenAI.
prasyarat Microsoft Entra ID
Untuk autentikasi tanpa kunci yang direkomendasikan dengan Microsoft Entra ID, Anda perlu:
- Instal Azure CLI digunakan untuk autentikasi tanpa kunci dengan Microsoft Entra ID.
- Tetapkan peran
Cognitive Services Useruntuk akun pengguna Anda. Anda dapat menetapkan peran di portal Azure di bawah kontrol Access (IAM)>Tambahkan penetapan peran.
Pengaturan
Buat folder
dall-e-quickstartbaru dan buka folder mulai cepat dengan perintah berikut:mkdir dall-e-quickstart && cd dall-e-quickstartUntuk autentikasi tanpa kunci yang direkomendasikan dengan Microsoft Entra ID, gunakan perintah berikut untuk masuk ke Azure:
az login
Mengambil informasi sumber daya
Anda perlu mengambil informasi berikut untuk mengautentikasi aplikasi Anda dengan sumber daya OpenAI Azure Anda:
| Nama variabel | Nilai |
|---|---|
AZURE_OPENAI_ENDPOINT |
Nilai ini dapat ditemukan di bagian Keys dan Endpoint saat memeriksa sumber daya Anda dari portal Azure. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Nilai ini akan sesuai dengan nama kustom yang Anda pilih untuk penyebaran saat Anda melakukan penerapan model. Nilai ini dapat ditemukan di bawah Resource Management>Model Deployments di portal Azure. |
Pelajari selengkapnya tentang autentikasi tanpa kunci dan mengatur variabel lingkungan.
Jalankan mulai cepat
Kode sampel dalam panduan cepat ini menggunakan Microsoft Entra ID untuk autentikasi tanpa kunci yang direkomendasikan. Jika Anda lebih suka menggunakan kunci API, Anda dapat mengganti NewDefaultAzureCredential implementasi dengan NewKeyCredential.
azureOpenAIEndpoint := os.Getenv("AZURE_OPENAI_ENDPOINT")
credential, err := azidentity.NewDefaultAzureCredential(nil)
client, err := azopenai.NewClient(azureOpenAIEndpoint, credential, nil)
Untuk menjalankan sampel:
Buat file baru bernama quickstart.go. Salin kode berikut ke dalam file quickstart.go .
package main import ( "context" "fmt" "net/http" "os" "log" "github.com/Azure/azure-sdk-for-go/sdk/ai/azopenai" "github.com/Azure/azure-sdk-for-go/sdk/azcore/to" "github.com/Azure/azure-sdk-for-go/sdk/azidentity" ) func main() { azureOpenAIEndpoint := os.Getenv("AZURE_OPENAI_ENDPOINT") modelDeploymentID := "gpt-image-1" credential, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Printf("ERROR: %s", err) return } client, err := azopenai.NewClient( azureOpenAIEndpoint, credential, nil) if err != nil { log.Printf("ERROR: %s", err) return } resp, err := client.GetImageGenerations(context.TODO(), azopenai.ImageGenerationOptions{ Prompt: to.Ptr("A painting of a cat in the style of Dali."), ResponseFormat: to.Ptr(azopenai.ImageGenerationResponseFormatURL), DeploymentName: to.Ptr(modelDeploymentID), }, nil) if err != nil { // Implement application specific error handling logic. log.Printf("ERROR: %s", err) return } for _, generatedImage := range resp.Data { // The underlying type for the generatedImage is determined by the value of // ImageGenerationOptions.ResponseFormat. // In this example we use `azopenai.ImageGenerationResponseFormatURL`, // so the underlying type will be ImageLocation. resp, err := http.Head(*generatedImage.URL) if err != nil { // Implement application specific error handling logic. log.Printf("ERROR: %s", err) return } fmt.Fprintf(os.Stderr, "Image generated, HEAD request on URL returned %d\nImage URL: %s\n", resp.StatusCode, *generatedImage.URL) } }Jalankan perintah berikut untuk membuat modul Go baru:
go mod init quickstart.goJalankan
go mod tidyuntuk menginstal dependensi yang diperlukan:go mod tidyJalankan perintah berikut untuk menjalankan sampel:
go run quickstart.go
Keluaran
URL gambar yang dihasilkan dicetak ke konsol.
Image generated, HEAD request on URL returned 200
Image URL: <SAS URL>
Penting
Model GPT-image-1 selalu mengembalikan data gambar yang dikodekan base64 alih-alih URL. Jika versi SDK Anda mengembalikan URL untuk model DALL-E, Anda perlu menangani respons base64 untuk penyebaran GPT-image-1. GPT-image-1 juga mendukung parameter tambahan seperti quality (low, , medium), highoutput_format (png, jpeg), background (auto, transparent), dan output_compression (0-100, hanya JPEG). Untuk detailnya, lihat Opsi API.
Catatan
API Gambar dilengkapi dengan filter moderasi konten. Jika layanan mengenali permintaan Anda sebagai konten berbahaya, layanan tidak akan mengembalikan gambar yang dihasilkan. Untuk informasi selengkapnya, lihat artikel filter konten .
Membersihkan sumber daya
Jika Anda ingin membersihkan dan menghapus sumber daya OpenAI Azure, Anda dapat menghapus sumber daya atau grup sumber daya. Menghapus grup sumber daya juga menghapus sumber daya lain yang terkait dengannya.
Gunakan panduan ini untuk mulai memanggil Azure OpenAI di API pembuatan gambar Microsoft Foundry Models dengan PowerShell.
Prasyarat
- Langganan Azure. Buat satu secara gratis.
- Untuk tugas ini, versi terbaru PowerShell 7 direkomendasikan karena contoh menggunakan fitur baru tidak tersedia di Windows PowerShell 5.1.
- Sumber daya OpenAI Azure dibuat di wilayah yang didukung (lihat ketersediaan Region). Untuk informasi selengkapnya, lihat Buat sumber daya dan sebarkan model dengan Azure OpenAI.
prasyarat Microsoft Entra ID
Untuk autentikasi tanpa kunci yang direkomendasikan dengan Microsoft Entra ID, Anda perlu:
- Instal Azure CLI digunakan untuk autentikasi tanpa kunci dengan Microsoft Entra ID.
- Tetapkan peran
Cognitive Services Useruntuk akun pengguna Anda. Anda dapat menetapkan peran di portal Azure di bawah kontrol Access (IAM)>Tambahkan penetapan peran.
Mengambil informasi sumber daya
Anda perlu mengambil informasi berikut untuk mengautentikasi aplikasi Anda dengan sumber daya OpenAI Azure Anda:
| Nama variabel | Nilai |
|---|---|
AZURE_OPENAI_ENDPOINT |
Nilai ini dapat ditemukan di bagian Keys dan Endpoint saat memeriksa sumber daya Anda dari portal Azure. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Nilai ini akan sesuai dengan nama kustom yang Anda pilih untuk penyebaran saat Anda melakukan penerapan model. Nilai ini dapat ditemukan di bawah Resource Management>Model Deployments di portal Azure. |
Pelajari selengkapnya tentang autentikasi tanpa kunci dan mengatur variabel lingkungan.
Hasilkan gambar
Untuk autentikasi tanpa kunci yang direkomendasikan dengan Microsoft Entra ID, gunakan perintah berikut untuk masuk ke Azure:
az loginDapatkan token autentikasi OpenAI Azure dan atur sebagai variabel lingkungan untuk sesi PowerShell saat ini:
$Env:DEFAULT_AZURE_CREDENTIAL_TOKEN = az account get-access-token --resource https://cognitiveservices.azure.com --query accessToken -o tsvBuat file PowerShell baru yang disebut quickstart.ps1. Kemudian buka di editor atau IDE pilihan Anda.
Ganti konten quickstart.ps1 dengan kode berikut. Pastikan
AZURE_OPENAI_ENDPOINTdiatur, dan ubah nilaipromptke teks pilihan Anda.Untuk menggunakan autentikasi kunci API alih-alih autentikasi tanpa kunci, atur
AZURE_OPENAI_API_KEYdan hapus komentar dari baris'api-key'.# Azure OpenAI metadata variables $openai = @{ api_base = $Env:AZURE_OPENAI_ENDPOINT deployment = 'gpt-image-1' # set to the name of your model deployment } # Use the recommended keyless authentication via bearer token. $headers = [ordered]@{ #'api-key' = $Env:AZURE_OPENAI_API_KEY 'Authorization' = "Bearer $($Env:DEFAULT_AZURE_CREDENTIAL_TOKEN)" } # Text to describe image $prompt = 'A painting of a dog' # Adjust these values to fine-tune completions $body = [ordered]@{ model = $openai.deployment # required: the name of your model deployment prompt = $prompt size = '1024x1024' n = 1 quality = 'high' output_format = 'png' # background = 'transparent' # 'auto' or 'transparent' (GPT-image-1 only; requires PNG output) # output_compression = 100 # 0-100 compression level (JPEG output only) } | ConvertTo-Json # Call the API to generate the image and retrieve the response $url = "$($openai.api_base)/openai/v1/images/generations?api-version=preview" $response = Invoke-RestMethod -Uri $url -Headers $headers -Body $body -Method Post -ContentType 'application/json' # Set the directory for the stored image $image_dir = Join-Path -Path $pwd -ChildPath 'images' # If the directory doesn't exist, create it if (-not(Resolve-Path $image_dir -ErrorAction Ignore)) { New-Item -Path $image_dir -ItemType Directory } # Initialize the image path (note the filetype should be png) $image_path = Join-Path -Path $image_dir -ChildPath 'generated_image.png' # Decode the base64 image and save to file $image_bytes = [Convert]::FromBase64String($response.data[0].b64_json) [IO.File]::WriteAllBytes($image_path, $image_bytes) return $image_pathPenting
Untuk produksi, gunakan cara aman untuk menyimpan dan mengakses kredensial Anda seperti Pengaturan Rahasia PowerShell dengan Azure Key Vault. Untuk informasi selengkapnya tentang keamanan kredensial, lihat artikel keamanan ini.
Jalankan skrip menggunakan PowerShell:
./quickstart.ps1Skrip menghasilkan gambar dan menyimpannya.
Keluaran
PowerShell meminta gambar dari Azure OpenAI dan menyimpan gambar output dalam file generated_image.png di direktori yang Anda tentukan. Untuk kenyamanan, jalur lengkap untuk file dikembalikan di akhir skrip.
API Gambar dilengkapi dengan filter moderasi konten. Jika layanan mengenali permintaan Anda sebagai konten berbahaya, layanan tersebut tidak menghasilkan gambar. Untuk informasi selengkapnya, lihat Pemfilteran konten.
Membersihkan sumber daya
Jika Anda ingin membersihkan dan menghapus sumber daya OpenAI Azure, Anda dapat menghapus sumber daya atau grup sumber daya. Menghapus grup sumber daya juga menghapus sumber daya lain yang terkait dengannya.
Gunakan panduan ini untuk mulai menghasilkan gambar dengan Azure OpenAI di browser Anda dengan Microsoft Foundry.
Prasyarat
- Langganan Azure. Buat satu secara gratis.
- Sumber daya OpenAI Azure dibuat di wilayah yang didukung. Lihat Ketersediaan wilayah. Untuk informasi selengkapnya, lihat Buat sumber daya dan sebarkan model dengan Azure OpenAI.
Kunjungi Foundry
Telusuri ke Foundry dan masuk dengan kredensial yang terkait dengan sumber daya OpenAI Azure Anda. Selama atau setelah alur kerja masuk, pilih direktori yang sesuai, langganan Azure, dan sumber daya OpenAI Azure.
Dari halaman arahan Foundry, buat atau pilih proyek baru. Navigasi ke halaman Model + titik akhir di navigasi kiri. Pilih Sebarkan model lalu pilih salah satu model pembuatan gambar dari daftar. Selesaikan proses penyebaran.
Pada halaman model, pilih Buka di taman bermain.
Mencoba pembuatan gambar
Mulai jelajahi kemampuan OpenAI Azure dengan pendekatan tanpa kode melalui taman bermain Images. Masukkan prompt gambar Anda ke dalam kotak teks dan pilih Buat. Saat gambar yang dihasilkan AI siap, gambar tersebut akan muncul di halaman.
Catatan
API Gambar dilengkapi dengan filter moderasi konten. Jika Azure OpenAI mengenali permintaan Anda sebagai konten berbahaya, itu tidak mengembalikan gambar yang dihasilkan. Untuk informasi selengkapnya, lihat Pemfilteran konten.
Di Images playground, Anda juga dapat melihat sampel kode Python dan cURL, yang telah diisi sebelumnya sesuai dengan pengaturan Anda. Pilih Tampilkan kode di dekat bagian atas halaman. Anda dapat menggunakan kode ini untuk menulis aplikasi yang menyelesaikan tugas yang sama.
Membersihkan sumber daya
Jika Anda ingin membersihkan dan menghapus sumber daya OpenAI Azure, Anda dapat menghapus sumber daya atau grup sumber daya. Menghapus grup sumber daya juga menghapus sumber daya lain yang terkait dengannya.
Kuota dan batasan
Pembuatan gambar memiliki pembatasan laju default per implementasi.
| Model | Kuota bawaan (gambar/menit) |
|---|---|
| Seri GPT-image-1 | 5 |
| GPT-image-2 | 5 |
Untuk melihat kuota Anda saat ini atau meminta peningkatan, lihat Kelola kuota OpenAI Azure.
Memanggil API pembuatan gambar
Perintah berikut menunjukkan cara paling dasar untuk menggunakan model gambar dengan kode. Jika ini pertama kalinya Anda menggunakan model ini secara terprogram, mulailah dengan mulai cepat.
Tips
Pembuatan gambar biasanya membutuhkan waktu 10-30 detik tergantung pada pengaturan model, ukuran, dan kualitas.
Prasyarat
- Langganan Azure. Anda dapat membuatnya secara gratis.
- Sumber daya OpenAI Azure dibuat di wilayah yang didukung. Lihat Ketersediaan wilayah.
- Sebarkan model
gpt-image-1-series ataugpt-image-2dengan sumber daya OpenAI Azure Anda. Untuk informasi selengkapnya tentang penyebaran, lihat Buat sumber daya dan sebarkan model dengan Azure OpenAI.- Model seri GPT-image-1 tersedia dalam akses terbatas: Terapkan untuk akses GPT-image-1; Terapkan untuk akses GPT-image-1.5.
- GPT-image-2 tersedia dalam pratinjau publik.
- Python 3.8 atau yang lebih baru.
- Instal paket yang diperlukan:
pip install openai azure-identity
- Instal paket yang diperlukan:
Kirim permintaan POST ke:
https://<your_resource_name>.openai.azure.com/openai/v1/images/generations?api-version=preview
URL:
Ganti <your_resource_name> dengan nama sumber daya OpenAI Azure Anda.
Header yang diperlukan:
-
Content-Type:application/json -
api-key:<your_API_key>
Isi:
Berikut adalah contoh isi permintaan. Anda menentukan sejumlah opsi, yang ditentukan di bagian selanjutnya.
Catatan
Atur model parameter ke nama penyebaran model Anda (misalnya, gpt-image-1.5).
{
"prompt": "A multi-colored umbrella on the beach, disposable camera",
"model": "gpt-image-1.5",
"size": "1024x1024",
"n": 1,
"quality": "high"
}
Tips
Untuk biaya token pembuatan gambar, lihat Token gambar.
Keluaran
Respons dari panggilan API pembuatan gambar yang berhasil terlihat seperti contoh berikut. Bidang b64_json berisi data gambar output.
{
"created": 1698116662,
"data": [
{
"b64_json": "<base64 image data>"
}
]
}
Catatan
Parameter response_format tidak didukung untuk model seri GPT-image-1, yang selalu mengembalikan gambar yang dikodekan base64.
Penayangan langsung
Streaming memungkinkan Anda menerima gambar parsial saat dibuat, memberikan umpan balik visual yang lebih cepat untuk pengguna Anda. Ini berguna untuk aplikasi di mana Anda ingin menunjukkan kemajuan generasi. Parameter partial_images (1-3) mengontrol berapa banyak gambar perantara yang dikembalikan sebelum hasil akhir.
Anda dapat mengalirkan permintaan pembuatan gambar ke gpt-image-1-seri dan gpt-image-2 model dengan mengatur stream parameter ke true, dan mengatur partial_images parameter ke nilai antara 0 dan 3.
import base64
from openai import OpenAI
from azure.identity import DefaultAzureCredential, get_bearer_token_provider
token_provider = get_bearer_token_provider(
DefaultAzureCredential(), "https://ai.azure.com/.default"
)
client = OpenAI(
base_url = "https://RESOURCE-NAME-HERE/openai/v1/",
api_key=token_provider,
)
stream = client.images.generate(
model="gpt-image-1.5",
prompt="A cute baby sea otter",
n=1,
size="1024x1024",
stream=True,
partial_images = 2
)
for event in stream:
if event.type == "image_generation.partial_image":
idx = event.partial_image_index
image_base64 = event.b64_json
image_bytes = base64.b64decode(image_base64)
with open(f"river{idx}.png", "wb") as f:
f.write(image_bytes)
Tentukan opsi API
Parameter isi API berikut tersedia untuk model pembuatan gambar.
Ukuran
Untuk model seri GPT-image-1, tentukan ukuran gambar yang dihasilkan sebagai salah satu dari 1024x1024, , 1024x1536atau 1536x1024. Gambar persegi lebih cepat untuk dihasilkan.
Untuk gpt-image-2, resolusi arbitrer didukung dengan batasan berikut:
- Kedua tepi harus merupakan bilangan kelipatan dari 16 piksel.
- Tepi panjang hingga 3840 px (dukungan 4K).
- Rasio aspek hingga 3:1.
- Jumlah piksel total antara 655.360 dan 8.294.400.
Kualitas
Ada tiga opsi untuk kualitas gambar: low, , mediumdan high. Gambar berkualitas lebih rendah dapat dihasilkan lebih cepat.
Nilai defaultnya adalah high.
Nomor
Anda dapat menghasilkan antara satu dan 10 gambar dalam satu panggilan API. Nilai defaultnya adalah 1.
ID Pengguna
Gunakan parameter pengguna untuk menentukan pengidentifikasi unik untuk pengguna yang membuat permintaan. Pengidentifikasi ini berguna untuk melacak dan memantau pola penggunaan. Nilainya bisa berupa string apa pun, seperti ID pengguna atau alamat email.
Format output
Gunakan parameter output_format untuk menentukan format gambar yang dihasilkan. Format yang didukung adalah PNG dan JPEG. Defaultnya adalah PNG.
Catatan
Gambar WEBP tidak didukung di Azure OpenAI di Microsoft Foundry Models.
Kompresi
Gunakan parameter output_compression untuk menentukan tingkat kompresi untuk gambar yang dihasilkan. Masukkan bilangan bulat antara 0 dan 100, di mana 0 tidak ada pemadatan dan 100 merupakan pemadatan maksimum. Defaultnya adalah 100.
Penayangan langsung
Gunakan parameter streaming untuk mengaktifkan respons streaming. Saat diatur ke true, API mengembalikan gambar parsial saat dibuat. Fitur ini memberikan umpan balik visual yang lebih cepat untuk pengguna dan meningkatkan latensi yang dirasakan. Atur parameter partial_images untuk mengontrol berapa banyak gambar parsial yang dihasilkan (1-3).
Transparansi
Atur parameter latar belakang ke transparent dan output_format ke PNG pada permintaan pembuatan gambar untuk mendapatkan gambar dengan latar belakang transparan.
Memanggil API edit gambar
IMAGE Edit API memungkinkan Anda memodifikasi gambar yang ada berdasarkan perintah teks yang Anda berikan. Panggilan API mirip dengan panggilan API pembuatan gambar, tetapi Anda juga perlu memberikan gambar input.
Penting
Gambar input harus berukuran kurang dari 50 MB dan harus berupa file PNG atau JPG.
Kirim permintaan POST ke:
https://<your_resource_name>.openai.azure.com/openai/deployments/<your_deployment_name>/images/edits?api-version=<api_version>
URL:
Ganti nilai berikut:
-
<your_resource_name>adalah nama sumber daya OpenAI Azure Anda. -
<your_deployment_name>adalah nama penerapan model seri GPT-image Anda. -
<api_version>adalah versi API yang ingin Anda gunakan. Misalnya,2025-04-01-preview.
Header yang diperlukan:
-
Content-Type:multipart/form-data -
api-key:<your_API_key>
Isi:
Berikut adalah contoh isi permintaan. Anda menentukan sejumlah opsi, yang ditentukan di bagian selanjutnya.
Penting
IMAGE Edit API mengambil data multipart/form, bukan data JSON. Contoh di bawah ini menunjukkan contoh data formulir yang akan dilampirkan ke permintaan cURL.
-F "image[]=@beach.png" \
-F 'prompt=Add a beach ball in the center' \
-F "model=gpt-image-1" \
-F "size=1024x1024" \
-F "n=1" \
-F "quality=high"
Keluaran respons API
Respons dari panggilan API pengeditan gambar yang berhasil terlihat seperti contoh berikut. Bidang b64_json berisi data gambar output.
{
"created": 1698116662,
"data": [
{
"b64_json": "<base64 image data>"
}
]
}
Tentukan opsi API edit gambar
Parameter isi API berikut tersedia untuk model pengeditan gambar, selain yang tersedia untuk model pembuatan gambar.
Gambar
Nilai gambar menunjukkan file gambar yang ingin Anda edit.
Keakuratan input
Parameter input_fidelity mengontrol seberapa banyak upaya yang dimasukkan model untuk mencocokkan gaya dan fitur, terutama fitur wajah, dari gambar input.
Parameter ini memungkinkan Anda melakukan pengeditan halus ke gambar tanpa mengubah area yang tidak terkait. Saat Anda menggunakan keakuratan input tinggi, wajah dipertahankan lebih akurat daripada dalam mode standar.
Penting
Ketepatan input tidak didukung oleh model gpt-image-1-mini.
Masker
Parameter mask menggunakan jenis yang sama dengan parameter input gambar utama. Ini menentukan area gambar yang Anda inginkan untuk diedit model, menggunakan piksel yang sepenuhnya transparan (alfa nol) di area tersebut. Masker harus berupa file PNG dan memiliki dimensi yang sama dengan gambar input.
Penayangan langsung
Gunakan parameter streaming untuk mengaktifkan respons streaming. Saat diatur ke true, API mengembalikan gambar parsial saat dibuat. Fitur ini memberikan umpan balik visual yang lebih cepat untuk pengguna dan meningkatkan latensi yang dirasakan. Atur parameter partial_images untuk mengontrol berapa banyak gambar parsial yang dihasilkan (1-3).
Transparansi
Hanya GPT-image-1: atur parameter latar belakang ke transparent dan output_format ke PNG pada permintaan pembuatan gambar untuk mendapatkan gambar dengan latar belakang transparan.
Menulis perintah teks ke gambar yang efektif
Perintah Anda harus menjelaskan konten yang ingin Anda lihat dalam gambar dan gaya visual gambar.
Saat Anda menulis perintah, pertimbangkan bahwa API Gambar dilengkapi dengan filter moderasi konten. Jika layanan mengenali permintaan Anda sebagai konten berbahaya, layanan tersebut tidak menghasilkan gambar. Untuk informasi selengkapnya, lihat Pemfilteran konten.
Tips
Untuk melihat secara menyeluruh bagaimana Anda dapat mengubah perintah teks Anda untuk menghasilkan berbagai jenis gambar, lihat panduan rekayasa permintaan gambar.
AI dan Pembuatan Gambar yang Bertanggung Jawab
Model pembuatan gambar Azure OpenAI mencakup perlindungan Responsible AI (RAI) bawaan agar memastikan penggunaan yang aman dan sesuai.
Selain itu, Azure menyediakan moderasi input dan output di semua model pembuatan gambar, bersama dengan perlindungan khusus Azure seperti pemfilteran konten dan pemantauan penyalahgunaan. Sistem ini membantu mendeteksi dan mencegah pembuatan atau penyalahgunaan konten yang berbahaya, tidak aman, atau melanggar kebijakan.
Pelanggan dapat mempelajari lebih lanjut tentang perlindungan ini dan cara menyesuaikannya di sini:
- Pelajari selengkapnya: Menjelajahi pemfilteran konten
- Kustomisasi permintaan: Terapkan untuk menolak pemfilteran konten
Pertimbangan khusus untuk menghasilkan gambar anak di bawah umur
Gambar fotorealistik anak di bawah umur diblokir secara default. Pelanggan dapat meminta akses ke kemampuan model ini. Pelanggan tingkat perusahaan disetujui secara otomatis.
Pemecahan masalah
Penolakan panggilan API
Petunjuk dan gambar difilter berdasarkan kebijakan konten kami. API mengembalikan kesalahan saat perintah atau gambar ditandai.
Jika perintah Anda ditandai, nilai error.code dalam pesan disetel ke contentFilter. Berikut adalah contohnya:
{
"created": 1698435368,
"error":
{
"code": "contentFilter",
"message": "Your task failed as a result of our safety system."
}
}
Ada kemungkinan juga bahwa gambar yang dihasilkan itu sendiri difilter. Dalam hal ini, pesan kesalahan diatur ke Gambar yang Dihasilkan difilter sebagai hasil dari sistem keamanan kami. Berikut adalah contohnya:
{
"created": 1698435368,
"error":
{
"code": "contentFilter",
"message": "Generated image was filtered as a result of our safety system."
}
}
Kesalahan batas laju
Jika Anda menerima kesalahan 429, Anda telah melebihi batas tarif Anda. Tunggu sebelum mencoba kembali atau meminta penambahan kuota di portal Azure.
Kesalahan autentikasi
Jika Anda menerima kesalahan 401:
- Autentikasi kunci API: Pastikan kunci API Anda sudah benar dan tidak kedaluwarsa.
- Identitas terkelola: Pastikan identitas Anda memiliki peran Pengguna OpenAI Cognitive Services pada sumber daya.
Kesalahan Timeout
Pembuatan gambar dapat memakan waktu hingga 60 detik untuk perintah yang kompleks. Jika Anda mengalami waktu habis:
- Gunakan streaming untuk mendapatkan hasil parsial lebih cepat.
- Sederhanakan prompt Anda.
- Coba ukuran gambar yang lebih kecil.
Konten terkait
- Pelajari tentang token pembuatan gambar