Stable Diffusion 3 Permintaan dan tanggapan besar - Amazon Bedrock

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Stable Diffusion 3 Permintaan dan tanggapan besar

Badan permintaan diteruskan di body bidang permintaan ke InvokeModelatau InvokeModelWithResponseStream.

Bidang badan permintaan permintaan model

Saat Anda melakukan InvokeModel panggilan menggunakan Stable Diffusion 3 Model besar, isi bidang tubuh dengan JSON objek yang terlihat seperti di bawah ini.

{ 'prompt': 'Create an image of a panda' }

Bidang tubuh respons pemanggilan model

Saat Anda melakukan InvokeModel panggilan menggunakan Stable Diffusion 3 Model besar, responsnya terlihat seperti di bawah ini

{ 'seeds': [2130420379], "finish_reasons": [null], "images": ["..."] }

Tanggapan dengan alasan akhir yang tidaknull, akan terlihat seperti di bawah ini:

{ "finish_reasons": ["Filter reason: prompt"] }
  • seed — (string) Daftar benih yang digunakan untuk menghasilkan gambar untuk model.

  • finish_reasons - Enum menunjukkan apakah permintaan itu disaring atau tidak. nullakan menunjukkan bahwa permintaan itu berhasil. Nilai yang mungkin saat ini:"Filter reason: prompt", "Filter reason: output image", "Filter reason: input image", "Inference error", null.

  • gambar - Daftar gambar yang dihasilkan dalam format string base64.

Untuk informasi lebih lanjut, lihat https://platform.stability.ai/docs/api-reference#tag/v1generation.

Text to image

Stability.ai Stable Diffusion 3 Model besar memiliki parameter inferensi berikut untuk panggilan text-to-image inferensi.

  • prompt — (string) Apa yang ingin Anda lihat pada gambar output. Prompt deskriptif yang kuat yang mendefinisikan elemen, warna, dan subjek dengan jelas akan menghasilkan hasil yang lebih baik.

    Minimum Maksimum

    0

    10.000

Bidang opsional

  • aspect_ratio — (string) Mengontrol rasio aspek dari gambar yang dihasilkan. Parameter ini hanya berlaku untuk text-to-image permintaan. Standar 1:1. Enum: 16:9, 1:1, 21:9, 2:3, 3:2, 4:5, 5:4, 9:16, 9:21.

  • mode — Mengontrol apakah ini adalah image-to-image generasi text-to-image atau, yang mempengaruhi parameter mana yang diperlukan. Default: text-to-image. Enum:image-to-image,text-to-image.

  • output_format - Menentukan format gambar output. Format yang didukung:JPEG,PNG. Dimensi yang didukung: tinggi 640 hingga 1.536 px, lebar 640 hingga 1.536 px.

  • seed — (angka) Nilai spesifik yang digunakan untuk memandu 'keacakan' generasi. (Abaikan parameter ini atau berikan 0 untuk menggunakan benih acak.) Rentang: 0 hingga 4294967295.

  • negative_prompt — Kata kunci dari apa yang tidak ingin Anda lihat dalam gambar output. Max: 10.000 karakter.

import boto3 import json import base64 import io from PIL import Image bedrock = boto3.client('bedrock-runtime', region_name='us-west-2') response = bedrock.invoke_model( modelId='stability.sd3-large-v1:0', body=json.dumps({ 'prompt': 'A car made out of vegetables.' }) ) output_body = json.loads(response["body"].read().decode("utf-8")) base64_output_image = output_body["images"][0] image_data = base64.b64decode(base64_output_image) image = Image.open(io.BytesIO(image_data)) image.save("image.png")
Image to image

Stability.ai Stable Diffusion 3 Model besar memiliki parameter inferensi berikut untuk panggilan image-to-image inferensi.

text_prompts (Wajib) - Sebuah array teks yang diminta untuk digunakan untuk pembuatan. Setiap elemen adalah JSON objek yang berisi prompt dan bobot untuk prompt.

  • prompt — (string) Apa yang ingin Anda lihat pada gambar output. Prompt deskriptif yang kuat yang mendefinisikan elemen, warna, dan subjek dengan jelas akan menghasilkan hasil yang lebih baik.

    Minimum Maksimum

    0

    10.000

  • image — String dalam format base64. Gambar untuk digunakan sebagai titik awal untuk generasi. Format yang didukung:JPEG,PNG, WEBP (WEBPtidak didukung di konsol), Dimensi yang didukung: Lebar: 640 - 1536 px, Tinggi: 640 - 1536 px.

  • kekuatan — Numerik. Kadang-kadang disebut sebagai denoising, parameter ini mengontrol seberapa besar pengaruh parameter gambar pada gambar yang dihasilkan. Nilai 0 akan menghasilkan gambar yang identik dengan input. Nilai 1 akan seolah-olah Anda tidak memberikan gambar sama sekali. Rentang: [0, 1]

  • mode - harus diatur keimage-to-image.

Bidang opsional

  • aspect_ratio — (string) Mengontrol rasio aspek dari gambar yang dihasilkan. Parameter ini hanya berlaku untuk text-to-image permintaan. Standar 1:1. Enum: 16:9, 1:1, 21:9, 2:3, 3:2, 4:5, 5:4, 9:16, 9:21.

  • mode — Mengontrol apakah ini adalah image-to-image generasi text-to-image atau, yang mempengaruhi parameter mana yang diperlukan. Default: text-to-image. Enum:image-to-image,text-to-image.

  • output_format - Menentukan format gambar output. Format yang didukung:JPEG,PNG. Dimensi yang didukung: tinggi 640 hingga 1.536 px, lebar 640 hingga 1.536 px.

  • seed — (angka) Nilai spesifik yang digunakan untuk memandu 'keacakan' generasi. (Abaikan parameter ini atau berikan 0 untuk menggunakan benih acak.) Rentang: 0 hingga 4294967295.

  • negative_prompt — Kata kunci dari apa yang tidak ingin Anda lihat dalam gambar output. Max: 10.000 karakter.

import boto3 import json import base64 import io from PIL import Image bedrock = boto3.client('bedrock-runtime', region_name='us-west-2') file_path = 'input_image.png' image_bytes = open(file_path, "rb").read() base64_image = base64.b64encode(image_bytes).decode("utf-8") response = bedrock.invoke_model( modelId='stability.sd3-large-v1:0', body=json.dumps({ 'prompt': 'A car made out of fruits', 'image': base64_image, 'strength': 0.75, 'mode': 'image-to-image' }) ) output_body = json.loads(response["body"].read().decode("utf-8")) base64_output_image = output_body["images"][0] image_data = base64.b64decode(base64_output_image) image = Image.open(io.BytesIO(image_data)) image.save("output_image.png")