Amazon Titan is AWS's own family of foundation models โ covering text generation, embeddings, and image generation โ built and offered exclusively through Amazon Bedrock. It sits around #15 in real-world usage share (roughly 1.7%), a lower-profile position reflecting that most Bedrock customers reach for Claude or Llama instead and use Titan mainly for the embeddings and image models. Titan is best known as the "first-party" AWS option that lives alongside third-party models in the same Bedrock API, appealing to teams that want one AWS bill and one IAM-secured endpoint for everything.
Titan models are called through Bedrock's invoke_model API using the AWS SDK for Python (boto3), targeting a Titan model ID.
import boto3
import json
client = boto3.client("bedrock-runtime", region_name="us-east-1")
body = json.dumps({
"inputText": "Explain what a REST API is in two sentences.",
"textGenerationConfig": {"maxTokenCount": 200, "temperature": 0.5}
})
response = client.invoke_model(
modelId="amazon.titan-text-premier-v1:0",
body=body
)
result = json.loads(response["body"].read())
print(result["results"][0]["outputText"])
Titan requires an AWS account with Bedrock model access enabled โ there's no free public API key.
# 1. sign up / log in to AWS, then in the Bedrock console request access
# to the Titan models under Model access
# 2. install and configure the AWS SDK
pip install boto3
aws configure
# 3. call invoke_model() with a Titan model ID as shown above