4 Training a virtual assistant

 

This chapter covers

  • Setting up the base application project for a virtual assistant app
  • Teaching the virtual assistant how to categorize software errors
  • Teaching the virtual assistant how to estimate numeric values
  • Teaching virtual assistant to recommend products to us based on our preferences
  • Teaching the virtual assistant to perform future forecasting

Up to this point, we learned how ML.NET works and how to choose an ML.NET task based on a problem we are trying to solve. Now, it’s time to get our hands dirty and use ML.NET to build an ML model we can use.

In this chapter, we will use the knowledge we have obtained so far and build a virtual assistant application. We will focus on adding functionality to our assistant by performing a number of supervised shallow learning tasks.

We won’t end up with a ChatGPT clone just yet. However, the application we will end up with will still be useful. By the end of this chapter, we will have built an application that will be able to do the following:

  • Identify the type of error based on the error message coming from a software application
  • Estimate the pay for a specific position in the IT sector
  • Recommend movies to watch based on our preferences
  • Forecast stock prices of a major software company

This way, you will see how ML models can be combined to produce a piece of software that can provide advice to us in several different areas, just like ChatGPT does.

4.1 Setting up our project

4.2 Classifying inputs

4.2.1 Training the classification model

4.2.2 Reviewing the classification pipeline

4.2.3 Making our model consumable

4.2.4 Interacting with the model

4.3 Estimating numeric values

4.3.1 Training the regression model

4.3.2 Reviewing the regression pipeline

4.3.3 Adding the regression capabilities to the virtual assistant

4.4 Adding recommendation engine

4.4.1 Training the recommendation model

4.4.2 Reviewing the recommendation pipeline

4.4.3 Adding the recommendation capabilities to the virtual assistant

4.5 Teaching our assistant to perform forecasting

4.5.1 Training the forecasting model

4.5.2 Reviewing the forecasting pipeline

4.5.3 Enabling forecasting in the virtual assistant app

4.6 Summary