AI + Machine Learning cost estimates

The main cost driver for machine learning workloads is the compute cost. Those resources are needed to run the training model and host the deployment. For information about choosing a compute target, see What are compute targets in Azure Machine Learning?.

The compute cost depends on the cluster size, node type, and number of nodes. Billing starts while the cluster nodes are starting, running, or shutting down.

With services such as Azure Machine Learning, you have the option of creating fix-sized clusters or use autoscaling.

Task If the amount of compute is not known, start with a zero-node cluster. The cluster will scale up when it detects jobs in the queue. A zero-node cluster is not charged.

Fix-sized clusters are appropriate for jobs that run at a constant rate and the amount of compute is known and measured beforehand. The time taken to spin up or down a cluster incurs additional cost.

Task If you don't need retraining frequently, turn off the cluster when not in use.

To lower the cost for experimental or development workloads, choose Spot VMs. They aren't recommended for production workloads because they might be evicted by Azure at any time. For more information, see Use Spot VMs in Azure.

For more information about the services that make up a machine learning workload, see What are the machine learning products at Microsoft?.

This article provides cost considerations for some technology choices. This is not meant to be an exhaustive list, but a subset of options.

Azure Machine Learning

Training models don't incur the machine learning service surcharge. You're charged for these factors.

  • The cost is driven by compute choices, such as, the virtual machine sizes and the region in which they are available. If you can commit to one or three years, choosing reserved instances can lower cost. For more information, see Reserved instances.

  • As part of provisioning Machine Learning resources, additional resource are deployed such as Azure Container Registry, Azure Block Blob Storage, and Key Vault. You're charged for as per the pricing of those individual services.

  • If you deploy models to a Kubernetes Service cluster, Machine Learning adds a surcharge on top of the Kubernetes Service compute cost. This cost can be lowered through autoscaling.

For more information, see these articles:

Reference architecture

Azure Cognitive Services

The billing depends on the type of service. The charges are based on the number of transactions for each type of operation specific to a service. Certain number of transactions are free. If you need additional transactions, choose from the Standard instances. For more information, see

Reference architecture

Build an enterprise-grade conversational bot

Azure Bot Service

The Azure Bot Service is a managed service purpose-built for enterprise-grade bot development. Billing is based on the number of messages. Certain number of messages are free. If you need to create custom channels, choose Premium channels, which can drive up the cost of the workload.

For a Web App Bot, an Azure App Service is provisioned to host the bot. Also, an instance of Application Insights is provisioned. You're charged for as per the pricing of those individual services.

Reference architecture

Enterprise-grade conversational bot