Zyper: LLM Workflows for AI Ad-Tech
Zyper AI was an early-stage ad-tech product built around generative AI. I worked on the LLM layer: how prompts were structured, how much context each call carried, and how to keep outputs consistent while cutting cost and latency. Jan to Jun 2025.
Result
How AI ad-tech pipelines are put together
Generative ad tools are less "call a model" and more an orchestrated pipeline where each stage has a job. This is the pattern the product's LLM workflow followed:
Brief intake
Structured input (product, audience, channel, tone) instead of free text, so downstream prompts are predictable.
Prompt assembly
A system prompt plus templated brand context and few-shot examples, composed per request rather than hand-written.
Chained LLM calls
Generate, then critique or rewrite as separate steps. Smaller focused prompts beat one giant one on quality and cost.
Structured output and validation
JSON-schema outputs, length and policy checks, and retries on malformed responses so the UI never renders garbage.
Human in the loop
Variants go to a reviewer; their picks and edits are the signal for improving prompts over time.
What I worked on
Prompt audit. I went through the prompts in the core application logic looking for where context was inflating: instructions repeated across steps, boilerplate re-sent on every call, and history that no call needed.
Context pruning. Redundant tokens came out and each step was given only the context it used. Every change was checked against a set of prior inputs to make sure output quality and format held. That's where the roughly 12% cut in tokens and latency came from.
Why it matters. In an LLM product, tokens are the unit cost and the biggest lever on latency. Reducing them without hurting quality is the same job as reducing compute in any other system.
Around the model
- Worked with the CTO on the core SaaS workflow, testing it as a user and documenting where the flow broke down.
- Ran the migration of the company site from Angular to WordPress by scoping requirements and coordinating freelance developers.
- When the CTO left, helped cut the remaining scope down to a smaller, stable version that could ship.
- Analysed competing ad-tech tools to see how they positioned their AI features.
What I took from it
- Prompts are code: they need versioning, test inputs and regression checks, not vibes.
- Structure beats length. A tight schema and a few good examples outperform paragraphs of instructions.
- Measure before optimising. You can't tell whether a prompt change helped without a fixed set of inputs to compare on.
Zyper wound down shortly after the team change. The prompt-efficiency work is the part I'd carry into any LLM product.