Inspiration
We are two colleagues working for a furniture company, so obviously we had to make something about furniture ! We wanted to create an agent that would be suited for our needs as decoration addicts, to advise us and guide us throughout our shopping journey.
What it does
Cherry is the perfect assistant : she will help you pick the perfect chair, from inspiration images you give her to just explaining your wants and your needs. The agent has different tools :
- Information Retrieval (RAG Agent): Provides decoration advice, styling tips, and design principles related to chairs by retrieving information from a Vertex AI RAG corpus.
- Structured Data Querying (SQL Inspector & BigQuery Executor):
-
SQL Inspector Agent: Corrects and refines SQL queries for accessing product and review data. -
BigQuery Executor Agent: Executes the corrected SQL queries against BigQuery tables to retrieve product details (price, dimensions, reviews, etc.).
-
- General Knowledge (Google Search Agent): Fetches information outside the internal store systems, such as market trends, competitor info, or general facts about chairs, always citing sources.
- Shopping Cart Management (Add to Cart Agent): Assists users in adding products to their shopping basket, ensuring product availability and updating the basket stored in the agent's state.
- Visual Product Search (Product Similarity Tool): Allows users to find similar products by providing an image, leveraging Google Cloud Vision AI Product Search.
- Customer Profile Management:
-
Get Customer Profile: Retrieves current customer information, including basket contents and purchase history, from the agent's state. -
Update Customer Profile: Modifies specific fields in the customer's profile stored in the agent's state.
-
How we built it
We built an ADK agent that's deployed using cloud run. The front is made with Next JS and runs on Vercel. Our agent uses the Google Vision API, specifically the product search API. It also uses RAGs and Big Query calls.
Challenges we ran into
We had 3 big challenges :
- Project gestion and IAM : for various reasons, our agent was built from different gcp projects, and the admin of one of those projects wasn't there to give us the right rights. It was a bit tricky to incorporate everything !
- Stability : we found it rather hard to predict the behaviour of an agent, as it won't give the same information while being asked twice the same question. Tuning the temperature and other hyper parameters didn't work as well as we thought it would.
- Versioning and documentation : our initial strategy was to deploy the agent into Agent Engine, but unfortunately we ran into versioning problems that google's documentation wasn't able to help with.
Built With
- adk
- bigquery
- cloud-run
- next-js
- product-search
- rag
- react
- vercel
Log in or sign up for Devpost to join the conversation.