View on GitHub


LearnAI Boot Camp Training Materials

Apps & Agents


Cognitive Services Bootcamp - Build an Intelligent Search Solution for Images using Microsoft AI Platform

Important Information - May 2019

This training was created, and last updated, with Bot Framework SDK V4.0, Visual Studio 2017, Bot Emulator 4.3, and .Net Framework 4.6. The content is provided “as is”. Due to the rapidly changing nature of the many components, including Azure PaaS services, individual labs may break when new versions are used. Be mindful of this as you progress through them, and test the code with newer versions of the mentioned tools, particularly if you’re planning a redelivery.

This repo depends upon the community’s input to keep this training current. As you find inconsistencies and bugs, please update the course! Pull Requests are reviewed monthly and credit appropriately attributed.

About this course

In this course, you will focus on hands-on activities that develop proficiency in Azure Cognitive Services including Computer Vision, Custom Vision, LUIS, and Bing Search. You will also learn to leverage other AI-oriented services such as Azure Search and Azure Bot Services. These labs assume an introductory to intermediate knowledge of these services, and, if this is not the case, then you should spend the time working through the prerequisites.

Normally used within Intelligent Bots, as LUIS is, the Q&A Maker service was released after the creation of this training in 2017, so it is not used. We recommend that you search for information and trainings about it.

This training is two days long, but you can compress the content with alternative agendas.


Most challenges observed by customers in these realms are in stitching multiple services together. As such, where possible, we have tried to place key concepts in the context of a broader example.

At the end of this workshop, you should be able to:


This workshop is meant for an AI Developer on Azure. Since this is only a short workshop, there are certain things you need before you arrive.

Firstly, you should have some previous exposure to Visual Studio. We will be using it for everything we are building in the workshop, so you should be familiar with how to use it to create applications. Additionally, this is not a class where we teach you how to code or develop applications. We assume you have some familiarity with C# (intermediate level - you can learn here and here), but you do not know how to implement solutions with Cognitive Services.

Secondly, you should have some experience developing bots with Microsoft’s Bot Framework. We won’t spend a lot of time discussing how to design them or how dialogs work. If you are not familiar with the Bot Framework, you should complete this tutorial prior to attending the workshop.

Thirdly, you should have experience with the portal and be able to create resources (and spend money) on Azure. We will not be providing Azure passes for this workshop.

Finally, before arriving at the workshop, we expect you to have completed 1_Setup along with configuring the following for Custom Vision:

  1. Training API Key: The training API key allows you to create, manage and train Custom Vision project programmatically

  2. You can obtain a key by creating a new project at and then clicking on the “setting” gear in the top right


Please note: This is a rough agenda, and the schedule is subject to change pending class activities, breaks, and interactions.

Here are some related courses from the LearnAI team:


Contact us: and


The LearnAI team had intense participation in the creation of the following new Microsoft certifications and its required tests:

Cognitive Services Compliance

Click here to learn how Microsoft Cognitive Services handle your data.


This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit

When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact with any additional questions or comments.