The Problem With Marketing at Scale
Every campaign starts the same way — a banner gets designed, a festival greeting gets illustrated, a sale graphic gets approved. Then comes the part that doesn't scale: someone has to translate that visual into words for every channel it needs to reach. A WhatsApp broadcast reads nothing like an email subject line. A push notification has to say in 50 characters what an email says in 500. Multiply that across dozens of campaigns a year — product drops, festival greetings, flash sales, event invites — and copywriting becomes the bottleneck, not the creative.
This project set out to remove that bottleneck: give the system a banner image or an email template, and it writes the marketing message for you — understanding not just what's in the image, but what kind of message it calls for.
Why This Needed AI, Not Just Automation
A simple template system could fill in `{product_name}` and `{discount}` into a fixed sentence. But real campaign banners aren't that predictable — a banner might be a product shot, a festival greeting, a flash-sale graphic, or an event invite, each needing a completely different tone. A festival greeting shouldn't end with "Buy now!" A flash sale needs urgency a greeting shouldn't have.
That's a reasoning problem, not a fill-in-the-blank problem — the system needs to look at an image, understand what kind of campaign it represents, and write copy that actually fits. This is exactly the kind of task modern multimodal AI models are built for: models that can genuinely interpret an image's content and context, not just tag objects in it.
Why AWS Bedrock
The project runs on Amazon Bedrock, using the Nova Lite multimodal model through Bedrock's `converse` API. A few reasons this fit better than building or hosting a model from scratch:
- No infrastructure to manage. Bedrock is a managed service — there's no GPU server to provision, patch, or keep running. You send a request, you get a response.
- Pay-per-use pricing. Since marketing campaigns are bursty (a batch of banners around a launch, then quiet), paying only for what you actually generate is far more efficient than running a dedicated server around the clock.
- Multimodal by default. Nova Lite accepts an image and a text prompt in the same request, so the model can look at a banner and reason about instructions in the same call — no separate captioning step required.
- Enterprise-grade reliability. Being an AWS-native service, it sits neatly alongside the rest of a typical AWS stack (S3 for storing banners, IAM for access control) without introducing a third-party dependency into the pipeline.
How the System Works
The pipeline is built around a simple idea: one function, flexible inputs. A campaign might have a banner image, an email HTML template, or both — so the system is designed to accept whichever is available and adapt automatically.
1. Input handling
Banners can come from S3 or a direct URL. Email templates are fetched and parsed — not just stripped of HTML tags, but broken into its meaningful parts: the subject line, headings, actual CTA links, and image alt text. This structured extraction matters because it means the AI has real signal to work with — like the actual discount link — instead of guessing at a placeholder.
2. Prompting Nova Lite
The image (if present) and a carefully constructed prompt are sent to Bedrock together. The prompt doesn't just say "write a WhatsApp message" — it asks the model to first classify what kind of campaign this is (product promo, festival greeting, sale, announcement, event invite), and then write copy that matches that type's natural tone. This classification step is what keeps a Diwali greeting from reading like a discount code blast.
3. Channel-aware formatting
The output is written specifically for WhatsApp's conventions — short, scannable text, `asterisks` for WhatsApp-native bold formatting (not markdown), a couple of well-placed emojis, and a conversational register rather than corporate ad-speak. The same underlying approach extends naturally to SMS, push notifications, and email subject lines, each with their own length and tone constraints.
Where AI Actually Adds Value Here
It's worth being specific about what the AI is doing, rather than treating it as a black box:
- Context recognition — telling a festival banner apart from a product promo apart from a flash sale, based on visual cues a rule-based system would miss entirely.
- Tone matching — a warm, celebratory register for a greeting versus an urgent, transactional register for a sale, without being told explicitly which to use for a given image.
- Cross-channel adaptation — taking the same underlying campaign information and reshaping it to fit WhatsApp's reading habits versus an email inbox's, rather than sending the same copy everywhere and hoping it lands.
- Using the real offer details — pulling actual CTA links and headline offers out of an email template rather than generating generic placeholder text.
None of this requires the model to be creative in an open-ended sense — it requires it to be a good, fast, consistent reader of visual and textual context, which is precisely what a well-prompted multimodal model on Bedrock delivers.
The Bigger Picture
This project is a small, concrete example of a pattern that's becoming common in marketing and content operations: AI doesn't replace the creative work of designing a banner or planning a campaign — it removes the repetitive translation work between "here's the visual" and "here's the message for every channel it needs to reach." Bedrock's role in that is to make the AI part of this pipeline something you can call as a managed API, rather than something you have to build, host, and maintain yourself.
The result is a system where a marketing team can upload a banner and, within seconds, have a WhatsApp message ready to review and send — freeing up time for the parts of marketing that still genuinely need a human: strategy, design, and knowing your audience.
References
- What is Amazon Nova? — AWS Documentation
- Amazon Nova Lite Model Card — Amazon Bedrock User Guide
- Getting Started with Amazon Nova in the Bedrock Console
- Send and Process Images/Documents with Amazon Nova on Bedrock
- AWS Architecture Icons (official icon set)
- Amazon Bedrock Pricing
- Announcing Amazon Nova 2 Foundation Models in Amazon Bedrock
- Amazon Nova Models: A Guide With Examples — DataCamp
