Artificial Intelligence on AWS
Artificial Intelligence on AWS
AWS suits AI that is event-driven, embedded in your own application, or built on data already sitting in Amazon S3. Amazon Bedrock puts several model families behind one API and one IAM boundary, which keeps model choice a configuration decision instead of a rebuild. The trade is that more of the assistant is yours to assemble, so we are explicit from the start about what you will own, what it costs while idle, and which models you can actually call from an Australian region.
Why AWS
When this is the right platform.
- Amazon Bedrock exposes multiple model families through a single API and a single IAM boundary, so moving to a better or cheaper model is a configuration change plus a re-evaluation rather than a rewrite.
- Event-driven and uneven workloads fit the serverless pattern well. AWS Lambda, AWS Step Functions and Amazon EventBridge let a document pipeline sit idle at no compute cost and absorb a month-end surge without capacity planning.
- If your operational data already lands in Amazon S3 under an established account and IAM structure, the AI workload inherits the account boundaries, tagging and controls your platform team already maintains.
- Amazon SageMaker AI covers forecasting and classification alongside generative work, which matters when the valuable use case is a demand prediction rather than a chat interface.
- The assistant can live inside your own product. Where the interface belongs to your application rather than an office suite, AWS is the more natural fit and there is no per-seat licence in the way.
- Teams already fluent in CloudWatch, IAM and infrastructure as code on AWS can operate an AI workload without adopting a second toolchain or a second on-call process.
Where it is less suited
We would rather say this now than after a migration.
- More of the assistant is yours to build. There is no per-seat assistant sitting inside the document tools your staff already use, so a knowledge assistant means owning ingestion, chunking, permission filtering and the interface. A managed assistant narrows that gap, but Amazon Q Business is closed to new customers and AWS now points new work at Amazon Quick, so the managed option is Quick and its connector coverage should be verified against your source systems before you plan around it.
- Model availability in Sydney is narrower than the headline catalogue suggests. Several current models cannot be called on demand from ap-southeast-2 and need a cross-Region inference profile, which routes the request to another region within the geography. The Australian profiles keep that routing inside Australia and New Zealand, but it is a decision your risk team should sign off at design time rather than meet during go-live, and we verify it per model with the date recorded.
- The retrieval store has a floor. A serverless vector collection bills for a minimum capacity whether or not anyone asks a question, which makes a quiet proof of concept surprisingly expensive, and deleting the application does not always delete the collection. Where volume is low we usually recommend a database with vector support instead, and we will say so even though it is the less fashionable answer.
- The cost of a generative workload is assembled from many small meters: tokens in and out, embedding calls, retrieval capacity hours, Lambda duration and data transfer. Without tagging and a per-feature cost model the invoice is hard to attribute, and attribution is what lets you retire a feature that is not earning its place.
- Almost nothing is secure by default. Guardrails, logging, IAM scoping and human approval steps are all configuration you own, which gives precision but means a safe baseline is deliberate engineering work rather than an inherited setting.
- Service and feature naming in this part of AWS moves quickly, so blog posts, existing code and vendor documentation do not always agree. We confirm current behaviour against what is actually deployed in your account rather than trusting an article.
Business outcomes
What AWS delivers here.
- A document pipeline that costs nothing while idle
- Extraction and classification run on Lambda and Step Functions triggered by new objects in S3, so month-end volume is absorbed without provisioning anything in advance.Agreed measure: Turnaround per document type against the manual baseline captured during assessment.
- Model choice that stays a decision rather than a rebuild
- Applications call Bedrock through one integration point, so a newer or cheaper model can be evaluated and swapped without touching application code. A model change arrives as a reviewed pull request with evaluation results attached.Agreed measure: Whether a model swap can pass the evaluation set and reach production without an application change.
- An assistant embedded in your own product or portal
- Where the interface belongs to your application rather than an office suite, retrieval, guardrails and API access are built into the product your staff or customers already use.Agreed measure: Handling or completion time on the specific journey the assistant sits inside, baselined first.
- Forecasting and generative work on one platform
- SageMaker AI carries demand, inventory or workload prediction alongside the Bedrock work, so one team, one pipeline and one control set cover both instead of two.Agreed measure: Model error published with every forecast, against the method it replaces.
- Engineering time returned to delivery
- Amazon Q Developer supports the engineering team on routine implementation, dependency upgrades and understanding unfamiliar code, under agreed rules about review before anything is accepted.Agreed measure: Cycle time on a defined class of change, baselined with the team before the tool is introduced.
Common client problems
What we usually hear first.
We built a data lake in S3 and the business has never seen anything come out of it.
We work backwards from a decision somebody makes every week and establish what would have to be true for that decision to improve. Often the first useful output is a narrow retrieval or forecasting capability over one part of the lake, not another platform programme.
Our developers want to choose the model and our risk team wants to know what happens when it changes.
We separate the model from the application behind one Bedrock integration point and hold prompts, tool definitions and evaluation sets in source control. A model change then arrives as a reviewed pull request with evaluation results attached, which is what the risk team is actually asking for.
Our content lives in S3, a wiki and a file share. An assistant would only ever see part of it.
We map each source against connector support and ingestion effort, then state plainly which sources are worth indexing and which are not. Where a managed assistant covers your systems we use it, and where it does not we build the ingestion path and tell you what it will cost to run. Note that Amazon Q Business is closed to new customers, so the managed option for new work is Amazon Quick.
Per-token pricing is impossible to put in a budget.
We build a volume model from your real documents or transcripts, measuring tokens per interaction for each shortlisted model, then project monthly cost at expected and peak load. Tokens are usually not the largest line, so the model also carries embedding calls, the retrieval store and its idle floor, function duration and data transfer. Caps, throttling and per-feature tagging go in from the beginning.
We tested an agent and it took an action we did not expect.
We constrain agents to an explicit tool schema with validated arguments, and anything with financial, contractual or client-facing consequence waits behind a human approval task in Step Functions. Every tool call is logged with a correlation ID so the sequence can be reconstructed rather than guessed at.
Our risk team has asked whether the data stays in Australia.
The honest answer needs checking per model rather than per platform. Bedrock runs in Sydney, but the on-demand catalogue there is narrower than the global one and several current models are reachable only through a cross-Region inference profile that routes the request elsewhere in the geography. The Australian profiles keep that routing within Australia and New Zealand, and stored data, logs and knowledge bases stay in the source region. We verify it per model, record the date, and put it in front of your risk team at design time rather than during go-live.
How we deliver
Our AWS delivery approach.
- 01
Assessment and advisory
The AWS assessment covers feasibility, account placement and cost together, because on this platform the cost model is a design input rather than an afterthought.
- Account and IAM placement. AWS Organizations structure, IAM boundaries and where the AI workload should sit relative to your existing production accounts.
- Source-data inventory. Format, volume, refresh frequency and access owner recorded for every set in Amazon S3 and the connected systems around it.
- Sydney model availability check. Which shortlisted models can be called on demand from your intended region and which need a cross-Region inference profile, recorded with the date.
- Token and idle cost model. Monthly inference cost projected at expected and peak usage, plus the retrieval store your design implies and what it charges while nobody is asking questions.
- Build against adopt ruling. Where a managed assistant covers the need and where a custom Bedrock application is justified, with connector coverage checked against your real systems.
- Guardrails and approval points defined. The guardrail policies, the human approval steps and the actions an agent must never take unattended, all agreed before the first line of code.
- 02
Architecture and implementation
Patterns are assembled from managed services rather than a single product, which gives precision at the cost of more decisions. We make those decisions explicit and record why each was taken. Where a problem genuinely needs several cooperating agents rather than one bounded agent, that is a different design and it sits with our agentic AI orchestration work.
- Retrieval with a documented strategy. Chunking and embedding choices recorded, metadata filters for team or tenancy scoping, and permission checks applied before any result reaches the model.
- One Bedrock integration point. Every application calls models through a single layer with Bedrock guardrails applied consistently, so a model change is configuration rather than a rewrite.
- Agents scoped to a tool schema. Explicit tools with validated arguments, using Bedrock AgentCore where a session needs managed runtime, memory and identity handling.
- Retrieval store sized for real volume. A serverless vector collection where query volume justifies its capacity floor, and a database with vector support where it does not.
- Event-driven document orchestration. Step Functions for multi-step work, Lambda for extraction and enrichment, and EventBridge triggering on new objects in S3 instead of polling on a timer.
- Model access off the public surface. Amazon API Gateway in front of application endpoints for authentication, throttling and usage plans, with no direct model endpoint exposed.
- Predictive models registered, not ad hoc. Trained and versioned in SageMaker AI, with Amazon SageMaker Unified Studio used where data engineering, analysis and modelling share one governed source.
- 03
Security and governance
On AWS almost nothing is enabled by default, which is an advantage if the controls are designed in and a liability if they are left until later. We build them in the first increment.
- A role per component. Separate IAM roles for retrieval, inference and each tool an agent may call, with no shared long-lived credentials anywhere in the path.
- Guardrails as code, not console clicks. One shared Bedrock guardrail policy set, with denied topics, sensitive-information rules and grounding checks tested in the release pipeline.
- Retrieved content treated as hostile. Prompt-injection cases held permanently in the evaluation suite, and tool invocation restricted to an allowlist with argument validation.
- Buckets in scope, and out, in writing. S3 bucket policies, encryption and access logging reviewed for every source, with a published list of buckets deliberately excluded from indexing.
- Correlation IDs on every call. Model calls, retrievals and tool invocations logged to CloudWatch so any single answer can be reconstructed during an internal review.
- Approval as a workflow state. A human approval task inside Step Functions before an agent takes any action with financial, contractual or client-facing consequence.
- 04
Adoption and enablement
AWS assistants usually appear inside your own application or a managed assistant you switch on for one team, so adoption is planned per cohort and per workflow rather than per tenant.
- A pilot cohort, not a tenant rollout. Named users with a weekly review of unhelpful answers and a documented list of the questions the system is not expected to handle.
- Managed assistant to one area first. Connector coverage confirmed against the systems that team actually uses before licences are assigned any more widely.
- Engineering conventions agreed first. Amazon Q Developer introduced with written rules on review, testing and what may not be accepted into a codebase without inspection.
- Enablement per workflow. Prompts and worked examples written from your own documents, covering the specific tasks in scope rather than the tool in general.
- The sponsor owns the usage statement. Intended use, known limitations and escalation path published and owned by the business, not by the platform team.
- Measured against the assessment baseline. Reported to the sponsor with the original assumptions restated, so the comparison is still defensible months later.
- 05
Managed continuation
A generative workload on AWS has many moving parts and many small meters. Continuation keeps quality, security posture and cost under the same review each month.
- Evaluation on every model change. The suite re-run on a schedule and on each model or prompt change, with results trended and regressions raised before users report them.
- Alarms on the meters that matter. CloudWatch dashboards and alarms on invocation errors, throttling, latency percentiles, consumption per feature and retrieval quality signals.
- Guardrails re-tested on new content. Denied topics and sensitive-information filters checked against fresh examples as new content types and use cases appear.
- Model lifecycle tracked. A migration path tested and ready before a Bedrock model version is withdrawn, rather than after a call starts failing in production.
- Retrieval sizing revisited. OpenSearch cluster health, index freshness and ingestion failures reviewed, with capacity set against real query volume rather than the first estimate.
- Cost attributed by feature. Monthly inference, retrieval and orchestration spend compared with the assessment model, broken down per feature and per account.
Reference architecture
A grounded assistant on AWS, end to end.
How the pieces fit together on AWS. Every engagement adapts this, and we will tell you which layers you already have.
- 01
Sources
Where the content already lives, and who is allowed to read each part of it.
- Amazon S3 document store
- Line-of-business APIs
- Aurora and RDS records
- 02
Ground
Extracted, chunked, embedded and permission-filtered before a model sees it.
- Amazon Textract or Bedrock Data Automation
- Embedding model on Bedrock
- Vector index or Aurora pgvector
- 03
Reason
One integration point, one guardrail policy set, one bounded tool schema.
- Amazon Bedrock
- Bedrock guardrails
- Bedrock AgentCore runtime
- 04
Act
Tool calls with validated arguments, and a person in front of consequences.
- AWS Step Functions
- Lambda tool functions
- Human approval task
- 05
Serve
Authenticated, throttled and metered before it reaches a person.
- Amazon API Gateway
- Your own application or portal
- Amazon Q for staff content
Across every layer
- A separate IAM role per component, no shared long-lived credentials
- One guardrail policy set tested in the release pipeline
- CloudWatch correlation IDs so any answer can be reconstructed
- Per-feature cost tags, because the meters are small and numerous
Technology reference
The AWS services we build with.
A reference architecture view of the platform services used in this domain, and what each one does in the design.
Model, agent and guardrail platform
Amazon BedrockThe managed model layer, giving several model families one API and one IAM boundary. Its guardrails carry denied topics, sensitive-information filtering and grounding checks, and its knowledge bases and agent features cover retrieval and bounded tool use.
Amazon Bedrock AgentCoreManaged runtime, session memory and identity handling for an agent that must hold context across a longer interaction than a single request.
Retrieval and content
Amazon OpenSearch ServiceThe vector and keyword retrieval layer behind grounded answers, with metadata filters applied before any result reaches the model.
Amazon AuroraThe cheaper retrieval option where query volume does not justify a serverless vector collection, using PostgreSQL vector support instead.
Amazon S3The source of record for documents and extracted output, with bucket policies defining precisely what is in scope for indexing.
Predictive models and assistants
Amazon SageMaker AIForecasting, classification and custom model work with versioned datasets, a model registry, a retraining trigger defined before release. Amazon SageMaker Unified Studio is used where data engineering, analysis and model development need one workspace over the same governed data.
Amazon QAmazon Q Developer for engineering assistance. Note Amazon Q Business is closed to new customers and AWS directs new work to Amazon Quick, so the managed-assistant half of this is Quick rather than Q Business, and Amazon Q Developer for engineering assistance under agreed review conventions.
Orchestration and interfaces
AWS LambdaExtraction, enrichment and inference calls as short-lived functions, so an idle pipeline costs nothing and a surge needs no capacity planning.
AWS Step FunctionsMulti-step workflows with explicit state, retries and a human approval task in front of any consequential action.
Amazon EventBridgeEvent routing that starts a workflow when a document lands or a business system raises a change, instead of polling on a timer.
Amazon API GatewayAuthentication, throttling and usage plans in front of application endpoints, keeping direct model access off the public surface.
Security, identity and operations
AWS Identity and Access ManagementPer-component roles for retrieval, inference and every tool an agent may call, replacing shared long-lived credentials.
AWS KMSCustomer-managed keys over document sources and extracted output, with key access separated from the teams whose content is being indexed.
Amazon CloudWatchMetrics, logs and alarms across invocations, latency, throttling and consumption, with correlation IDs that let a specific answer be reconstructed.
AWS CloudTrailThe audit record of who invoked which model and which configuration changed, kept outside the account team that operates the workload.
Product names and icons are trademarks of Microsoft and Amazon Web Services, reproduced unmodified from their official architecture icon libraries to identify the technologies used in these architectures. Their presence does not indicate partnership, certification or endorsement by either vendor.
AWS questions
What people ask about doing this on AWS.
Cost, lock-in and the parts that go wrong, answered before you have to ask twice.
Can we run Amazon Bedrock in the Sydney region?
Yes, with a qualification worth knowing before you design around a particular model. Bedrock is available in ap-southeast-2, but the on-demand catalogue there is narrower than the global one, and several current models are reachable only through a cross-Region inference profile that routes the request to another region in the geography. The Australian profiles keep that routing within Australia and New Zealand, and your stored data, logs and knowledge bases stay in the source region. We verify availability per model at design time and record the date, because the list changes month to month.
What does a Bedrock retrieval application actually cost to run each month?
Token pricing is the part everyone estimates and usually the smaller part of the bill. The rest is embedding calls to build and refresh the index, the retrieval store, Lambda and Step Functions duration, and data transfer. The retrieval store is what surprises people: a serverless vector collection carries a minimum capacity charge that runs whether or not anyone asks a question, so an idle proof of concept is not free. We model every component at expected and peak volume, and tag per feature so a feature that is not earning its place can be identified and switched off.
Does building on Amazon Bedrock lock us into AWS?
Partly, and it is worth being precise about which part. The model is the least sticky component, because Bedrock puts several families behind one API and your prompts and evaluation sets belong to you. What is genuinely AWS-specific is the surrounding work: Step Functions state machines, Lambda functions, IAM role design and the guardrail configuration would all need reimplementing elsewhere. We keep prompts, tool definitions and evaluation sets in source control and platform-neutral, because that is the part that carries. Anyone offering a fully portable generative AI architecture is selling you an abstraction layer you will maintain forever.
Should we use a managed assistant or build our own on Bedrock?
Check connector coverage against your actual systems first, because that one question decides it more often than anything else. Be aware the managed option has moved: Amazon Q Business is closed to new customers and AWS directs new work to Amazon Quick, so an existing Q Business estate is migration work rather than a foundation. Where the managed assistant reaches your content it is something you configure rather than a codebase you own, and recommending it over a custom build is usually both the cheaper and the more honest answer. Where your content sits behind an unsupported system, or the assistant has to live inside your own product, a Bedrock application is justified. We have told clients to buy the managed option and stop there, which is a smaller engagement for us.
Is our data used to train the models we call through Bedrock?
Under the current Bedrock terms your prompts and outputs are not used to train the base models and are not shared with the model providers. We confirm the specific terms attached to the models in your architecture at design time and record them with the date, because vendor data-handling terms change and a term verified 18 months ago is not evidence today. If your audit committee needs it in writing, that record is the thing they take into the meeting.
Our developers already know AWS. Why would we pay a consultancy for this?
Often you should not, and if you have engineers with time and a product owner who can define the use case, we will tell you that. What clients usually get wrong on their own is not the Bedrock call, which is straightforward. It is permission filtering at retrieval time, an evaluation set that makes a model change reviewable, the cost model including the idle floor, and deciding where a human must approve. If your team already has those four, what you need is a review rather than a build, and that is a much smaller piece of work.
Related industries
Where this work has the most leverage.
Logistics and Warehousing
Shipment and document automation, proof-of-delivery processing and exception dashboards that let a small team run a large network.
Manufacturing and Distribution
Demand and inventory intelligence, production analytics and supplier automation built on data your planners already trust.
Professional Services
Governed enterprise search, document intelligence and secure copilots that respect matter confidentiality and conflict boundaries.
Free discovery workshop
Start with a artificial intelligence discovery workshop.
Bring one challenge. We will assess whether AWS is the right platform for it before recommending anything.