Our Secret to Customer-First Account Management? Using an LLM-Powered Chatbot for Sales Teams
Snowflake account managers need their fingers on the pulse of which workload shifts or performance optimizations could improve customer experience. Yet without an all-encompassing view of their customers, sales teams have to piece together customers’ wants and needs through duplicate CRM accounts and various BI tools and dashboards.
That’s why Snowflake is developing a natural language processing (NLP) app to equip our own sales team with a multi-dimensional view of customer accounts, including factors such as account consumption patterns, overall account health, account engagement, and trends of Snowflake feature usage.
The app’s first version is powered by an Azure-based GPT-4 trained on the table names of all of our Snowflake internal sales intelligence. The large language model (LLM) is able to learn terminology variations presented across the tables through the comment fields of the columns. So if there is a column with a record of all account managers called ACCT_MGR, we annotate its comment field with “account manager aka account executive (AE) aka sales rep” to ensure the LLM recognizes all variations.
We plan to track engagement — from the email correspondence between account managers and customer support to the list of attendee titles of any meeting. The model also takes into account which Snowflake team members were involved in the sales process from technical field experts to product executives such as our SVP of Product. The more sales interactions ingested alongside data of Snowflake consumption, the smarter it will become.
With a chatbot interface, our sales teams can dive into the specifics of any territory or account with a simple question — for example, “What are my fastest growing accounts?” One of the shifts we’re seeing with generative AI is a divide in who can benefit: people who know how to ask the right questions versus those who don’t. We don’t expect everyone to be prompt engineers, so the chatbot overlays a contextualized (via in-context learning) GPT-4-based LLM that can effectively answer the question, whether it’s worded well or not. As its own LLM layer, the chatbot will continue to grow more intuitive with time.
The sales benefit: productivity nudges
Once an account manager uses the app to identify underperforming accounts, they can ask for recommendations on the type of engagement activity that will deliver the most impact — or what we call a nudge, aka the output of the app’s ML algorithm. It understands which actions have taken place in the account and suggests additional actions that could generate more consumption, such as a meeting with a specific stakeholder, offering engineering resources or introducing a new feature or data workload with an estimated ROI.
An added benefit is our ability to use this data to iterate on making Snowflake better. The app can help establish the friction points, so we can proactively help customers optimize Snowflake performance, or if it’s necessary, bubble repeat issues up to product managers as a feature development request.
Reinforcing the value of consumption models for customers
In the name of optimal customer experience, Snowflake has long invested in consumption-based pricing. Customers can pay for what they use and get better value for their spending. Consumption-based pricing is often met with concerns that costs can spiral out of control, but that’s only if things are left unchecked. The LLM-powered chatbot will help identify opportunities for sales to help the customer implement cost monitoring and manage usage, including:
- Proactive budgeting alerting
- Cost visibility and chargeback
- ROI-based workload segmentation
- Notifications to throttle resource allocation and scaling permissions
You can learn more about all the features and tools available for cost-effective use of Snowflake here.
How we architected a ChatGPT-like app for sales
We built the proof of concept in Python. With Snowflake’s Python connector and Snowpark — a set of libraries and runtimes that securely deploy and process Python and other programming languages in Snowflake — we seamlessly switch between SQL-based data injection and Python-based business logic implementation as needed. Then, we built a front-end chat interface using Streamlit in Snowflake.
The diagram below represents a high-level concept architecture of the ChatGPT-like app when a query is posed to Azure-based GPT-4:
Harnessing the power of LLMs
Account managers will have a single source of data from which to know and serve their customers, helping them answer questions like:
- Which accounts are consuming more or less than in the previous quarter?
- What top five customer-reported use cases represent most of their monthly consumption?
- Based on an account’s current consumption, what would be a new use case that the customer could benefit from?
- What is the total addressable market share opportunity in this account?
- If an account is under-consuming, what would be the best action or series of actions to take to help the customer get higher value from Snowflake?
At the leadership level, a sales executive can understand the overall health of their territory by answering:
- What is the best-performing use case across my region in terms of consumption?
- Where will my region finish this year in consumption and growth?
- Where will I have pipeline problems in future quarters that I can address now?
- Which industry messages are resonating most across my region?
- Which ecosystem partners will have the biggest impact on consumption in my accounts?
Sales is on the hook for customer success, and this rapidly evolving app will help ensure that sales teams are armed with the most pertinent insights, sales leadership can provide guidance backed by data, and our customers reap all the benefits — as they should.
To learn how “sipping our own champagne” teaches us valuable lessons we can then share with you, check out our live webinar series, Snowflake on Snowflake.