Using AI applications, such as Amazon Q Business, has a direct impact on cloud infrastructure spend. While building our internal applications and consulting with our partners, we’ve gained a great deal of experience and learnt valuable lessons. Costs can quickly mount when using Amazon Q Business, especially bringing in multiple data sources. In this blog we’ll be sharing some good practices to manage and control costs.
Visualise and Control your Spending
Effective cost management is crucial for any business, and Amazon Q Business is no exception. The key to controlling your spending lies in visualizing your costs. While this may seem like a straightforward concept, it’s a critical step that shouldn’t be overlooked.
To visualize your Q Business spend, we recommend linking your CloudWatch dashboards to Cost Explorer. This integration will provide you with a clear overview of your Q spend in relation to your other services. However, to gain a deeper understanding of your total expenditure, it’s essential to dive into the granular level of data sources.
CloudWatch offers the capability to visualize which data sources are driving the most costs. This level of granularity is crucial, as the amount of documents indexed directly influences the amount of compute time and resources consumed by Q Business, and hence your costs.
It’s important to note that the majority of your data sources will likely be outside of your direct control when it comes to the data being added to them. These data sources are expected to grow over time, making it essential to have a view of what’s being ingested from each source. This proactive approach will help prevent costs from escalating unexpectedly when your Q Business application ingests data from the various sources.
To avoid unwanted surprises during monthly billing cycles, we recommend creating a basic dashboard that tracks the incoming data and provides a cost breakdown. This simple view will not only help you understand your spending on Q Business but also enable you to reassess your situation promptly if you notice your costs growing unexpectedly.
You can also set up budget threshold alerts easily in the Billing and Cost Management console of AWS.
By visualizing your costs and staying informed about your data ingestion rates, you can effectively manage your Q Business expenses and maintain a sustainable budget.
Choose Data Sources Wisely
In part 2 we mentioned building your applications with user personas in mind, making sure you deliver value to these first and selecting your data sources accordingly.
There are also certain types of data sources we wouldn’t recommend connecting to Q, one of which is internal Social Media applications and websites – anything where there is a high volume of user-created, online-only content. We learnt the hard way that Q indexes every post, comment, chat and internal group as a separate document and given the scale of these types of apps and the number of these individual documents we quickly blew through, not only our document and storage limits, but also the cost thresholds we set for ourselves, sending our average monthly spend from ~$50 to >$400 overnight on a limited proof of concept.
We also recommend, when connecting document storage sources, that a certain subset of data and files are identified for syncing first – ideally directly based on a user persona that you have identified. This prevents adverse scenarios where vast, even global, sets of documents are scanned, synchronised and then indexed, increasing costs dramatically.
Synchronising Schedule
Consider your data syncronisation schedule – do you need to do a full data sync each day? Can you use a delta sync instead? Do you need to sync your data sources on the weekend? Good FinOps practices are useful here.
Types of Costs using Amazon Q Business
Per User costs
Firstly, Amazon Q Business (and most other GenAI products) has a per-user monthly usage cost. There are currently two tiers for per user costs, $3 or $20 per user per month depending on what functionality is needed (see AI Assistant for Enterprise – Amazon Q Business Pricing – AWS ).
For a large enterprise with tens of thousands of users, these costs can be significant. Does everyone need access to Q? How do you determine who should get access, and who should not? Again when starting out it is good practice to start with a (very) limited scope. For example, if you are focusing on a Sales Persona, you can limit your ingestion of data to Sales data only, and limited your access to Amazon Q to Sales people. You can then get a good estimate of costs for one persona, and extrapolate from there.
On the other hand, you could argue (as AWS does) that if the tool improves productivity by one hour for each user each month, say, then Q pays for itself.
Data costs
This is where surprises can happen and where the size of data you ingest matters. See part 3 of our blog series where we discuss Data Management.
As always, we recommend starting small. Start with small sets of data to understand what costs are incurred and also how long it takes for data ingestion.
Above are our daily costs for indexing hundreds of gigabytes (GBs) of data into Q. We are spending roughly $100/day for data indexing. Note that even though we are not running data sync during the weekends, we still pay for the index cost. You can then extrapolate these costs based on the size of data you intend to ingest.
Other costs
Additional features that can incur costs:
Textract
Textract is image-to-text functionality that can convert images (PDFs, screenshots, jpegs, png) to text. We turned on Textract to convert the many images contained in our documents to text. One day of Textract across 14,000 documents cost close to $1000! As you can imagine, we quickly turned off this feature. Text extraction from images ideally would be native functionality in Amazon Q.
Conclusion
There are many factors that will affect costs for your GenAI projects. There are Per User costs for using the GenAI tools. There are costs around data ingestion, indexing and storage. And there may be other costs if data manipulation or pre-processing is required.
Data costs can be significant, depending on how much data is being ingested and indexed, so keeping your data sources clean is fundamental. We discussed this in part 3 and will dive more deeply into this topic in further posts.