Inspiration
In the world of e-commerce, data is everywhere. Businesses have databases overflowing with customer information, purchase histories, and browsing behavior. Yet, a common challenge persists: how do you turn this mountain of data into timely, personalized, and effective action?
A marketing manager at our fictitious e-commerce company, “StyleHub,” might know they have at-risk customers, but the process to identify, segment, and create a custom campaign for them is slow, manual, and requires technical help. By the time they act, the opportunity is often lost.
What it does
We built Serena to solve this. Serena is an advanced AI assistant that empowers non-technical users to have a conversation with their data, uncover deep insights, and launch hyper-personalized marketing campaigns — all in a matter of seconds/minutes.
How we built it
To achieve this, we moved beyond a single, monolithic LLM. Instead, we designed Serena as a collaborative ecosystem of 13 distinct agents, each with a specialized skill, all orchestrated by a central supervisor. This approach, built on Google’s Agent Development Kit (ADK), allows for greater accuracy, control, and reasoning capabilities.
The entire system is hosted as a dockerized Python 3.10 application on a serverless Google Cloud Run instance, ensuring scalability and cost-efficiency. It interacts with our frontend app via a real-time, bi-directional web-socket, allowing for fluid, conversational input and output using text or voice.

Challenges we ran into
Navigating a Bleeding-Edge Framework: Working with the new Agent Development Kit meant we were on the cutting edge. We navigated frequent updates and evolving features, particularly around the native asynchronous implementation. This required us to be agile and deeply understand the framework's core mechanics to ensure stability. Engineering a Real-Time Experience: Implementing bi-directional websockets to create a fluid, conversational UI was a significant technical challenge. Architecting this stateful connection within a serverless environment was complex but essential to achieving the seamless user experience we envisioned. Ensuring AI Reliability: Mitigating LLM hallucinations was our top priority for building a business-ready tool. We went beyond basic prompt engineering and architected a systemic solution: a Query Review-Rewrite Agent that acts as an AI-powered safety net, catching and correcting potential errors before they impact the user.
Accomplishments that we're proud of:
Building a Fully Integrated System: We successfully designed, built, and demoed a complete, end-to-end application that goes from a natural language question to a fully executed marketing campaign in seconds. Implementing a Sophisticated Multi-Agent Architecture: We moved beyond simple API calls and created a true multi-agent system with a supervisor orchestrating 12 specialized agents, showcasing the real power of Google's Agent Development Kit. Creating a Self-Correcting AI: Our proudest technical achievement is the Query Review-Rewrite Agent. This demonstrates a system that can reason, catch its own potential errors, and self-correct, making our AI significantly more reliable and robust. Delivering a Polished User Experience: We created a seamless, real-time conversational interface using bi-directional websockets, successfully bridging the gap between our complex backend and a simple, intuitive frontend.
What's next for Serena: The AI-Powered Marketing Co-Pilot:
The current implementation of Serena has partial scalability. The next phase includes several enhancements, such as:
- Scaling to handle hundreds of tables with the help of vector databases and rerankers
- Implementing load balancers
- Incorporating session storage within a database
- Improving prompt engineering
Built With
- adk
- cloudrun
- docker
- fastapi
- gcp
- google-bigquery
- websockets
Log in or sign up for Devpost to join the conversation.