Architecture Diagrams
Chatbot Architecture
In terms of the Chatbot architecture, our team decided to use the Microsoft Azure Bot Framework in order to build and test the bot. How this will will work will be as shown in the diagram below:

Firstly, the chatbot will be connected to a database that contains all the relevant information about the plants in a user's portfolio, so that if the user will ask a specific question, the bot will know where to retrieve that data from. Secondly, the bot will be developed and trained by our team to to recognize specific topics and intents in order to give appropriate answers to the user. This will be done using the Language Understanding(LUIS) tool provided by Microsoft. LUIS is a machine learning-based service used to build natural language into apps, bots and IoT devices.
Data Science Architecture
For the Data Science part of our project, we researched possible algorithms that might give us more precise and accurate predictions of the solar energy production and revenue. We concluded that the Random Forest algorithm is the best solution to begin working with on the implementation of the new features (Plant Performance Forecasting and Energy Prices Forecasting). The algorithm is currently being used by our client for Irradiance Forecasting.

The algorithm would work in the following way: past data, such as the solar energy prices as well as plant production data, is prepared and then fed into our R and Python algorithm. Based on that, the AzureML would generate a forecast of the future energy prices as well as future performance which is then saved into an SQL Azure Database. Finally, the Azure WebApp presents the prediction in form of graphs and tables. The current architecture of the project (which is being used to predict the plant revenue) works in a similar manner to what we are planning to do.