目录
1、Bedrock调用代码
import json
import boto3
import base64
import os
from PIL import Image
import io
session = boto3.Session()
bedrock = session.client(service_name='bedrock-runtime') #creates a Bedrock client
bedrock_model_id = "stability.stable-diffusion-xl-v1" # set the foundation model
prompt = "a beautiful mountain landscape" # the prompt to send to the model
seed = 10
body = json.dumps({
"text_prompts": [{"text": prompt}],
"seed": seed,
"cfg_scale": 10,
"steps": 30,
}) # build the request payload
# send the payload to Bedrock
response = bedrock.invoke_model(
body=body, modelId=bedrock_model_id, accept='application/json', contentType='application/json')
# read the response
response_body = json.loads(response.get('body').read())
base64_image_data = response_body.get("artifacts")[0]["base64"]
print(f"{base64_image_data[0:80]}...")
# Convert base64 image data to an image and save it to a file
image_data = base64.b64decode(base64_image_data)
os.makedirs("data", exist_ok=True)
image = Image.open(io.BytesIO(image_data))
image.save('sd_generated_image.jpg')