Prerequisites¶
Before attending the Intelligent App Development Workshop, please ensure you have the following prerequisites in place:
- Azure account: A Microsoft Azure account with an active subscription. If you don't have one, sign up for a free trial.
- Azure subscription with access enabled for the Azure AI Foundry - For more details, see the Azure AI Foundry documentation on how to get access.
Development Environment Setup¶
You have the option of using Github Codespaces or your local development environment.
Using Github Codespaces (recommended)¶
If using Github Codespaces all prerequisites will be pre-installed, however you will need to create a fork as follows:
- Navigate to this link to create a new fork (must be logged into your github account).
- Accept the default values and click on "Create fork" which will take you to the forked repository in the browser.
- From your forked repository click on the "<> Code" button. Then click on the "Create codespace on main" button.
Using local development environment¶
If you prefer using a computer with using a local development environment, the following pre-requisites need to be installed:
- Git: Ensure you have Git installed on your computer.
- Azure CLI: Install the Azure Command-Line Interface (CLI) to interact with Azure services and manage resources from the command line.
- .NET SDK: install .NET SDK to build and run .NET projects.
- Docker: Install Docker Desktop to build and run containerized applications.
- Node.Js: Install Node.Js to build and run web application.
- Azure Development CLI: Install azd to be able to provision and deploy application to Azure.
- bash/shell terminal: the lessons assume bash/shell script syntax. If using Windows, either you can either using Git Bash (included when you install Git) or installing WSL (Windows Subsystem for Linux).
Next you will need to clone this repo using:
Change directory into cloned repo:
Initial Setup¶
-
Copy and rename the file
appsettings.json.example
into the corresponding lesson directory as follows (example command for Lesson1): -
Create Azure Grounding with Bing Search resource. We will use this to ensure the LLM can get current data from the internet:
- Create Bing Search Service (from Azure Portal):
- Go to the Azure Portal.
- Click on Create A Resource
- On the search bar type Grounding with Bing Search and hit enter
- Locate Grounding with Bing Search and click Create
- On the Create a Grounding with Bing Search Resource page, provide the following information for the fields on the Basics tab:
- Subscription: The Azure subscription to used for your service.
- Resource group: The Azure resource group to contain your Bing service resource. You can create a new group or use a pre-existing group.
- Name: A descriptive and unique name for your Grounding with Bing Search Service resource, such as
grounding-bing-search-myid
. - Region: Global (default).
- Pricing Tier: Grounding with Bing Search (default)
- Terms: Check the box to acknowledge the terms of use.
- Click Next.
- On the Tags tab click Next
- Click Create.
- Create Bing Search Service (from Azure Portal):
-
Create an Azure AI Foundry Hub:
- Go to the Azure Portal.
- Click on Create A Resource.
- On the search bar type Azure AI Foundry and hit enter.
- Locate Azure AI Foundry and click Create.
- On the Create Azure AI Foundry Hub page, provide the following information for the fields on the Basics tab:
- Subscription: The Azure subscription to be used for your service.
- Resource group: The Azure resource group to contain your Azure AI Foundry Hub service resource. For simplicity, use the same resource group you used for the Bing Search grounding resource.
- Region: The location of your instance. Different locations can introduce latency, but they don't affect the runtime availability of your resource.
- Name: A descriptive and unique name for your Azure AI Foundry Hub service resource, such as
aifoundryhub-sk-workshop-myid
.
- Click Review + create.
- Click Create.
- When the deployment is complete, click Go to resource
- Click Launch Azure AI Foundry
-
Create an Azure AI Foundry project:
- Click New Project
- Enter a name for your project
- Click Create
-
Store AI Foundry settings in
appsettings.json
- In Azure AI Foundry, copy the API key and use it as the apiKey value in the
AIFoundryProject
element ofappsettings.json
. - Under Included capabilities choose Azure OpenAI Service and copy the endpoint. Use it as the endpoint value in the
AIFoundryProject
element ofappsettings.json
. - On the right side of the screen, locate the Project connection string (within Project Details) and use it as the connectionString value within the
AIFoundryProject
element inappSettings.json
.
- In Azure AI Foundry, copy the API key and use it as the apiKey value in the
-
Deploy a model in Azure AI Foundry:
- Click the Models + endpoints* tab (sidebar, left) to view currently deployed models.
- If your desired model is not deployed, click on Deploy Model then select to Deploy Base Model.
- You will need a chat completion model. For this workshop we recommend using
gpt-4o
. Selectgpt-4o
from the drop down and click Confirm. - Click Customize and choose the
2024-05-13
model. At the time of this workshop, this is the latest version that integrates with Azure AI Agent Service, which we will use in Lesson 6. - Adjust the Tokens per Minute Rate Limit to at least 250 requests per minute (RPM)
- Click Deploy.
- Use the Deployment Name value (e.g. gpt-4o) as the deploymentName value within the
AIFoundryProject
element in theappsettings.json
file. - Wait a few minutes after deployment to allow the API to come online.
-
Create Agents connection to Grounding with Bing Search resource:
- Click on Playgrounds on the left side.
- In the Agents playground box, click Try the Agents playground.
- Choose your Azure OpenAI Service instance in the dropdown and click Let's go.
- Scroll down and find the
Knowledge
section on the right. Click Add. - Click Grounding with Bing Search.
- Click Create connection.
- Find the resource you created and click Add connection.
- Click Connect.
- From the Agents playground page, locate the Knowledge section and copy the name of the connection you just created and paste it as the groundingWithBingConnectionId value within the
AIFoundryProject
element in theappSettings.json
file.
-
Additionally, we need to obtain an API Key to be able to get stock prices from polygon.io. You can sign up for a free API Key by creating a login. This value will be needed for Lesson 3.
- Once logged in, from the polygon.io Dashboard locate the Keys section. Copy the default key value and paste it as the apiKey value within the
StockService
element in theappsettings.json
file.
- Once logged in, from the polygon.io Dashboard locate the Keys section. Copy the default key value and paste it as the apiKey value within the
By ensuring you have completed these prerequisites, you'll be well-prepared to dive into the Intelligent App Development Workshop and make the most of the hands-on learning experience.