What The Hack - Intro to Artificial Intelligence (ARCHIVED)

NOTE: This hack has been marked as “archived” since one of the data sources used by students is no longer available.

NOTE: Please see our NEW hack on Azure OpenAI Fundamentals which should replace this hack.

If you would like to update this hack so we can “un-archive” it, please submit a proposal to the What The Hack team as per our WTH Contribution Guide. We welcome contributions and can provide you more details on what would be needed to update it.

Introduction

AI-oriented services such as Azure Bot Services, Azure Search, and Cognitive Services Welcome to the What The Hack Intro to AI Challenge! We will focus on hands-on activities that develop proficiency in AI-oriented services such as Azure Bot Services, Azure Search, and Cognitive Services. These challenges assume an introductory to intermediate knowledge of these services, and if this is not the case, please spend time working through related resources.

Learning Objectives

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

Once all hackathon challenges are completed, you should be able to:

Background Knowledge

This workshop is meant for an AI Developer on Azure. Since our time today is limited, there are certain things you will need to read or setup after you arrive. If you do not have this background knowledge, please work closely with your team to learn from others or use the links below.

Challenges

Your team’s mission today is to learn more about AI capabilities through hands-on practice by completing challenges in two key areas: Cognitive Services and Bots.

Your team will start by building a simple C# application that allows you to ingest pictures from your local drive, then invoke the Computer Vision API to analyze the images and obtain tags and a description. Once you have this data, you will process it to pull out the details we need, and store it all into Cosmos DB.

You’ll continue by build an Azure Search Index (Azure Search is our PaaS offering for faceted, fault-tolerant search) on top of Cosmos DB, then you’ll build a Bot Framework bot to query it. Finally, you’ll extend this bot with Language Understanding (LUIS) to automatically derive intent from your queries and use those to direct your searches intelligently.

Part 1: Cognitive Services

This set of challenges involves building an end-to-end application that allows you to pull in your own pictures, use Cognitive Services to obtain a caption and some tags about the images, and then store that information in Cosmos DB. Build on your work by using the NoSQL store (Cosmos DB) to populate an Azure Search index, and then build a Bot Framework bot using LUIS to allow easy, targeted querying.

Part 2: Bots

You are working with Contoso LLC, which sells bicycles and bicycle equipment to its customers. Contoso currently processes new product orders and queries through human operators and is starting to devise a plan to implement your proposed solution using bots. The solution will provide an automated approach that allows Contoso to seamlessly scale up to handle a large call volume while maintaining zero wait times and freeing up staff to manage other tasks.

Prerequisites

This is a list of pre-requisites needed to successfully complete the challenges. Some of these are items to deploy to your development machine. Some are decisions you should discuss and define as a team, like the language to use for development.

  1. Azure Account
    • You must have an Azure account to complete the hackathon. Either use your existing subscription or setup a free trial to complete today’s challenges. We will not be providing Azure passes for this workshop.
  2. Custom Vision Training Key
    • The training API key allows you to create, manage and train Custom Vision project programmatically. You can obtain a key by creating a new project at https://customvision.ai and then clicking on the “setting” gear in the top right.

Repository Contents

Contributors