Amazon Titan Picture Generator and watermark detection API at the moment are obtainable in Amazon Bedrock


Voiced by Polly

Throughout AWS re:Invent 2023, we introduced the preview of Amazon Titan Picture Generator, a generative synthetic intelligence (generative AI) basis mannequin (FM) that you should utilize to rapidly create and refine sensible, studio-quality photos utilizing English pure language prompts.

I’m joyful to share that Amazon Titan Picture Generator is now usually obtainable in Amazon Bedrock, providing you with a straightforward option to construct and scale generative AI purposes with new picture technology and picture modifying capabilities, together with prompt customization of photos.

In my earlier publish, I additionally talked about that every one photos generated by Titan Picture Generator comprise an invisible watermark, by default, which is designed to assist cut back the unfold of misinformation by offering a mechanism to determine AI-generated photos.

I’m excited to announce that watermark detection for Titan Picture Generator is now usually obtainable within the Amazon Bedrock console. As we speak, we’re additionally introducing a brand new DetectGeneratedContent API (preview) in Amazon Bedrock that checks for the existence of this watermark and helps you verify whether or not a picture was generated by Titan Picture Generator.

Let me present you methods to get began with these new capabilities.

Prompt picture customization utilizing Amazon Titan Picture Generator
Now you can generate new photos of a topic by offering as much as 5 reference photos. You’ll be able to create the topic in several scenes whereas preserving its key options, switch the type from the reference photos to new photos, or combine kinds from a number of reference photos. All this may be achieved with out further immediate engineering or fine-tuning of the mannequin.

For this demo, I immediate Titan Picture Generator to create a picture of a “parrot consuming a banana.” Within the first try, I exploit Titan Picture Generator to create this new picture with out offering a reference picture.

Observe: Within the following code examples, I’ll use the AWS SDK for Python (Boto3) to work together with Amazon Bedrock. Yow will discover further code examples for C#/.NET, Go, Java, and PHP within the Bedrock Person Information.

import boto3
import json

bedrock_runtime = boto3.shopper(service_name="bedrock-runtime")

physique = json.dumps(
    {
        "taskType": "TEXT_IMAGE",
        "textToImageParams": {
            "textual content": "parrot consuming a banana",   
        },
        "imageGenerationConfig": {
            "numberOfImages": 1,   
            "high quality": "premium", 
            "peak": 768,
            "width": 1280,
            "cfgScale": 10, 
            "seed": 42
        }
    }
)
response = bedrock_runtime.invoke_model(
    physique=physique, 
    modelId="amazon.titan-image-generator-v1",
    settle for="software/json", 
    contentType="software/json"
)

You’ll be able to show the generated picture utilizing the next code.

import io
import base64
from PIL import Picture

response_body = json.masses(response.get("physique").learn())

photos = [
    Image.open(io.BytesIO(base64.b64decode(base64_image)))
    for base64_image in response_body.get("images")
]

for img in photos:
    show(img)

Right here’s the generated picture:

Image of a parrot eating a banana generated by Amazon Titan Image Generator

Then, I exploit the brand new prompt picture customization functionality with the identical immediate, however now additionally offering the next two reference photos. For simpler comparability, I’ve resized the pictures, added a caption, and plotted them aspect by aspect.

Reference images for Amazon Titan Image Generator

Right here’s the code. The brand new prompt customization is offered by the IMAGE_VARIATION activity:

# Import reference photos
image_path_1 = "parrot-cartoon.png"
image_path_2 = "bird-sketch.png"

with open(image_path_1, "rb") as image_file:
    input_image_1 = base64.b64encode(image_file.learn()).decode("utf8")

with open(image_path_2, "rb") as image_file:
    input_image_2 = base64.b64encode(image_file.learn()).decode("utf8")

# ImageVariationParams choices:
#   textual content: Immediate to information the mannequin on methods to generate variations
#   photos: Base64 string illustration of a reference picture, as much as 5 photos are supported
#   similarityStrength: Parameter you'll be able to tune to manage similarity with reference picture(s)

physique = json.dumps(
    {
        "taskType": "IMAGE_VARIATION",
        "imageVariationParams": {
            "textual content": "parrot consuming a banana",  # Required
            "photos": [input_image_1, input_image_2],  # Required 1 to five photos
            "similarityStrength": 0.7,  # Vary: 0.2 to 1.0
        },
        "imageGenerationConfig": {
            "numberOfImages": 1,
            "high quality": "premium",
            "peak": 768,
            "width": 1280,
            "cfgScale": 10,
            "seed": 42
        }
    }
)

response = bedrock_runtime.invoke_model(
    physique=physique, 
    modelId="amazon.titan-image-generator-v1",
    settle for="software/json", 
    contentType="software/json"
)

As soon as once more, I’ve resized the generated picture, added a caption, and plotted it aspect by aspect with the initially generated picture. Amazon Titan Image Generator instance customization results

You’ll be able to see how the parrot within the second picture that has been generated utilizing the moment picture customization functionality resembles in type the mixture of the supplied reference photos.

Watermark detection for Amazon Titan Picture Generator
All Amazon Titan FMs are constructed with accountable AI in thoughts. They detect and take away dangerous content material from knowledge, reject inappropriate consumer inputs, and filter mannequin outputs. As content material creators create realistic-looking photos with AI, it’s essential to advertise accountable improvement of this expertise and cut back the unfold of misinformation. That’s why all photos generated by Titan Picture Generator comprise an invisible watermark, by default. Watermark detection is an progressive expertise, and Amazon Net Providers (AWS) is among the many first main cloud suppliers to broadly launch built-in watermarks for AI picture outputs.

Titan Picture Generator’s new watermark detection characteristic is a mechanism that means that you can determine photos generated by Amazon Titan. These watermarks are designed to be tamper-resistant, serving to enhance transparency round AI-generated content material as these capabilities proceed to advance.

Watermark detection utilizing the console
Watermark detection is usually obtainable within the Amazon Bedrock console. You’ll be able to add a picture to detect watermarks embedded in photos created by Titan Picture Generator, together with these generated by the bottom mannequin and any custom-made variations. For those who add a picture that was not created by Titan Picture Generator, then the mannequin will point out {that a} watermark has not been detected.

The watermark detection characteristic additionally comes with a confidence rating. The boldness rating represents the boldness degree in watermark detection. In some instances, the detection confidence could also be low if the unique picture has been modified. This new functionality permits content material creators, information organizations, danger analysts, fraud detection groups, and others to higher determine and mitigate deceptive AI-generated content material, selling transparency and accountable AI deployment throughout organizations.

Watermark detection utilizing the API (preview)
Along with watermark detection utilizing the console, we’re introducing a brand new DetectGeneratedContent API (preview) in Amazon Bedrock that checks for the existence of this watermark and helps you verify whether or not a picture was generated by Titan Picture Generator. Let’s see how this works.

For this demo, let’s verify if the picture of the inexperienced iguana I confirmed within the Titan Picture Generator preview publish was certainly generated by the mannequin.

Green iguana generated by Amazon Titan Image Generator

I outline the imports, arrange the Amazon Bedrock boto3 runtime shopper, and base64-encode the picture. Then, I name the DetectGeneratedContent API by specifying the muse mannequin and offering the encoded picture.

import boto3
import json
import base64

bedrock_runtime = boto3.shopper(service_name="bedrock-runtime")

image_path = "green-iguana.png"

with open(image_path, "rb") as image_file:
    input_image_iguana = image_file.learn()

response = bedrock_runtime.detect_generated_content(
    foundationModelId = "amazon.titan-image-generator-v1",
    content material = {
        "imageContent": { "bytes": input_image_iguana }
    }
)

Let’s verify the response.

response.get("detectionResult")
'GENERATED'
response.get("confidenceLevel")
'HIGH'

The response GENERATED with the boldness degree HIGH confirms that Amazon Bedrock detected a watermark generated by Titan Picture Generator.

Now, let’s verify one other picture I generated utilizing Secure Diffusion XL 1.0 on Amazon Bedrock. On this case, a “meerkat going through the sundown.”

Meerkat facing the sunset

I name the API once more, this time with the picture of the meerkat.

image_path = "meerkat.png"

with open(image_path, "rb") as image_file:
    input_image_meerkat = image_file.learn()

response = bedrock_runtime.detect_generated_content(
    foundationModelId = "amazon.titan-image-generator-v1",
    content material = {
        "imageContent": { "bytes": input_image_meerkat }
    }
)

response.get("detectionResult")
'NOT_GENERATED'

And certainly, the response NOT_GENERATED tells me that there was no watermark by Titan Picture Generator detected, and subsequently, the picture most certainly wasn’t generated by the mannequin.

Utilizing Amazon Titan Picture Generator and watermark detection within the console
Right here’s a brief demo of methods to get began with Titan Picture Generator and the brand new watermark detection characteristic within the Amazon Bedrock console, put collectively by my colleague Nirbhay Agarwal.

Availability
Amazon Titan Picture Generator, the brand new prompt customization capabilities, and watermark detection within the Amazon Bedrock console can be found right now within the AWS Areas US East (N. Virginia) and US West (Oregon). Test the full Area record for future updates. The brand new DetectGeneratedContent API in Amazon Bedrock is offered right now in public preview within the AWS Areas US East (N. Virginia) and US West (Oregon).

Amazon Titan Picture Generator, now additionally obtainable in PartyRock
Titan Picture Generator is now additionally obtainable in PartyRock, an Amazon Bedrock playground. PartyRock offers you a no-code, AI-powered app-building expertise that doesn’t require a bank card. You should utilize PartyRock to create apps that generate photos in seconds by choosing out of your selection of picture technology fashions from Stability AI and Amazon.

Extra sources
To study extra concerning the Amazon Titan household of fashions, go to the Amazon Titan product web page. For pricing particulars, verify Amazon Bedrock Pricing.

Give Amazon Titan Picture Generator a attempt in PartyRock or discover the mannequin’s superior picture technology and modifying capabilities within the Amazon Bedrock console. Ship suggestions to AWS re:Publish for Amazon Bedrock or by your common AWS contacts.

For extra deep-dive technical content material and to interact with the generative AI Builder neighborhood, go to our generative AI area at neighborhood.aws.

— Antje

Recent Articles

Related Stories

Leave A Reply

Please enter your comment!
Please enter your name here