Virtual Wine Consultant for a Wine Company
Chat system with semantic search engine capabilities integrated with a Metaverse layer.
Summary
-
The client is a global wine discovery and marketplace platform. They created a membership-based wine community to unite wine enthusiasts, share knowledge, and assist in creating unique wine collections.
-
The client decided to develop a Conversational Agent who would assist wine collectors by answering questions about different wines in their storage (cellar) and their characteristics. Additionally, the Agent can answer general questions about the wine industry and all wine varieties. The final solution would be feasible in Metaverse, with a virtual consultant available through the company's VR add-on.
-
A system has been developed leveraging API-based LLMs. OpenAI GPT-3.5 and a set of customized models for question classification, embedding creation, and named entity extraction power the solution. Milvus served as the vector database for knowledge storage. This tech stack combination built up the search engine and made the agent interactive.
Tech Stack
Delivery Timeline
Tech Challenge
-
Wine knowledge is a complex science, with each bottle presenting unique characteristics. The Conversational Agent should precisely navigate the database from each wine cellar, answering questions from wine types and flavor profiles to the geography of vineyards. It should analyze such factors as grape varietals, terroir influences, and aging processes. As a result, the virtual wine consultant would provide qualified replies and personalized recommendations.
-
Furthermore, the Agent should be capable of drawing parallels between different wines. Whether comparing wines based on similar flavor profiles, terroir characteristics, or aging process, the system needs to excel in comparative wine analysis. It should give dynamic and engaged replies, as a real wine consultant would do.
-
The major challenge was to find a way to match the user question represented within the natural language with a structured query in the cellar database and answer it in a human-like format after extracting information.
Solution
-
The system must handle 2 main cases of user questions: questions about wines that the user already has in his cellar (specific details about the chosen bottle, information about the quantity or presence of the selected wine, listing wines according to given filters like color, region, classification, etc.) and questions related to the wine topic in general.
-
To understand the user's intent, we classify the question with Deberta on the dataset created by our team. Further, we augmented it using ChatGPT to reach the data volume enough to fine-tune the selected model.
-
To handle generic questions about wines, we have created a vast knowledge base containing domain information. To implement it, we processed different wine-related books to create a database of short topic-specific textual pieces of information. All this processed information is uploaded to the Milvus vector database, which allows users to search for relevant information by question. The vector search is based on embeddings produced by the gte-large model. After the most relevant pieces of information are found, they are passed into GPT-3.5 Turbo to summarize it and generate a human-like response for the user.
-
To handle questions about wines that the user already has in his cellar, we created a wide range of templates used to map user questions into predefined SQL queries to select the necessary information from the structured cellar data. All the cellar information is stored under the Postgres database. To efficiently map the user question into a relevant template, we trained the Spacy Roberta-based NER model to extract specific wine-related entities (such as color, region, classification, vintage, vineyard, etc.). This allows us to reduce the search space for the relevant templates. When the most relevant templates are found, the corresponding queries are executed, and the information from the Postgres database is passed into GPT-3.5 Turbo to summarize it and generate a human-like response for the user.
-
Operating solely via APIs enabled the adoption of a serverless architecture, leveraging the AWS toolbox to optimize cloud costs and seamless scalability during load spikes, all under a 100% usage-based charging model.
Impact
-
The virtual wine consultant became a powerful community tool. It helps wine collectors receive up-to-date information about their wine storage and quickly access all the wine-related information to broaden their wine knowledge.
-
Given the System's wide knowledge and ability to extract relevant information and the final Metaverse wrap-up, the wine consultant can establish connections with the user, analyze requests, and demonstrate high levels of intelligence and responsiveness.
-
The solution is a part of the client's strategy to bring the wine industry to the new digital and commercial frontiers. With its unique market fit and qualified responses, the Agent is now a trusted companion for wine lovers globally.
Want a virtual assistant for your business?
Talk to Yuliya. She will make sure that all is covered. Don't waste time on googling - get all answers from relevant expert in under one hour.