5 Gen AI: 2 Plan and Prepare to develop AI solutions on Azure

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/8

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

9 Terms

1
New cards

[what is AI?]

  • In today's technological landscape, AI solutions are built on machine learning models that encapsulate semantic relationships found in huge quantities of data; enabling applications to

    • appear to interpret input in various formats,

    • reason over the input data, and

    • generate appropriate responses and predictions.

  • Common AI capabilities that developers can integrate into a software application include: *see pic*

  • Determining the specific AI capabilities you want to include in your application can help you identify the most appropriate AI services that you'll need to provision, configure, and use in your solution.

A closer look at gen AI

  • Generative AI represents the latest advance in artificial intelligence, and deserves some extra attention.

  • Generative AI uses language models to respond to natural language prompts, enabling you to build conversational apps and agents that support research, content creation, and task automation in ways that were previously unimaginable.

  • The language models used in generative AI solutions can be large language models (LLMs) that have been trained on huge volumes of data and include many millions of parameters;

  • or they can be small language models (SLMs) that are optimized for specific scenarios with lower overhead.

  • Language models commonly respond to text-based prompts with natural language text;

    • though increasingly new multi-modal models are able to handle image or speech prompts and respond by generating text, code, speech, or images.


<ul><li><p>In today's technological landscape, AI solutions are <strong>built on machine learning <em>models</em> </strong>that <strong>encapsulate semantic relationships</strong> found in huge quantities of data; enabling applications to </p><ul><li><p>appear to interpret input in various formats, </p></li><li><p>reason over the input data, and </p></li><li><p>generate appropriate responses and predictions.</p><p></p></li></ul></li><li><p>Common AI capabilities that developers can integrate into a software application include: *see pic*</p></li></ul><p></p><ul><li><p><span>Determining the specific AI capabilities you want to include in your application can help you identify the most appropriate AI services that you'll need to provision, configure, and use in your solution.</span></p></li></ul><p></p><p><strong>A closer look at gen AI</strong></p><ul><li><p><em>Generative AI</em> represents the latest advance in artificial intelligence, and deserves some extra attention. </p></li><li><p>Generative AI uses <em>language models</em> to respond to natural language <em>prompts</em>, enabling you to <strong>build conversational apps and agents</strong> that support research, content creation, and task automation in ways that were previously unimaginable.</p></li></ul><p></p><ul><li><p>The language models used in generative AI solutions can be large language models (LLMs) that have been trained on huge volumes of data and include many millions of parameters; </p></li><li><p>or they can be small language models (SLMs) that are optimized for specific scenarios with lower overhead. </p></li><li><p>Language models commonly respond to <strong>text-based prompts with natural language text</strong>; </p><ul><li><p>though increasingly new <em>multi-modal</em> models are able to handle image or speech prompts and respond by generating text, code, speech, or images.</p><p><br></p></li></ul></li></ul><p></p>
2
New cards
<p>[Azure AI services]</p>

[Azure AI services]

  • Microsoft Azure provides a wide range of cloud services that you can use to develop, deploy, and manage an AI solution. The most obvious starting point for considering AI development on Azure is Azure AI services; a set of out-of-the-box prebuilt APIs and models that you can integrate into your applications

Considerations for Azure AI services resources

  • To use Azure AI services, you create one or more Azure AI resources in an Azure subscription and implement code in client applications to consume them.

  • In some cases, AI services include web-based visual interfaces that you can use to configure and test your resources -

    • for example to train a custom image classification model using the Custom Vision service you can use the visual interface to upload training images, manage training jobs, and deploy the resulting model.

  • You can provision Azure AI services resources in the Azure portal (or by using BICEP or ARM templates or the Azure command-line interface) and build applications that use them directly through various service-specific APIs and SDKs.

  • However, in most medium to large-scale development scenarios it's better to provision Azure AI services resources as part of an Azure Foundry hub -

    • enabling you to centralize access control and cost management, and making it easier to manage shared resource usage based on AI development projects.


<ul><li><p><span>Microsoft Azure provides a wide range of cloud services that you can use to develop, deploy, and manage an AI solution. The most obvious starting point for considering AI development on Azure is Azure AI services; a set of out-of-the-box prebuilt APIs and models that you can integrate into your applications</span></p></li></ul><p></p><p><strong>Considerations for Azure AI services resources</strong></p><ul><li><p>To use Azure AI services, you create one or more Azure AI resources in an Azure subscription and implement code in client applications to consume them. </p></li><li><p>In some cases, AI services include web-based visual interfaces that you can use to configure and test your resources -</p><ul><li><p> for example to train a custom image classification model using the <strong>Custom Vision</strong> service you can use the visual interface to upload training images, manage training jobs, and deploy the resulting model.</p></li></ul></li></ul><p class="alert-title"></p><ul><li><p>You can provision Azure AI services resources in the Azure portal (or by using BICEP or ARM templates or the Azure command-line interface) and build applications that use them directly through various service-specific APIs and SDKs. </p></li><li><p>However, in most medium to large-scale development scenarios it's better to provision Azure AI services resources as part of an Azure Foundry <em>hub</em> - </p><ul><li><p>enabling you to <strong>centralize access control and cost management</strong>, and making it easier to manage <strong>shared resource</strong> usage based on AI development <em>projects</em>.</p></li></ul></li></ul><p><br></p>
3
New cards

Single service or multi-service resource?
[Azure AI services]

  • Most Azure AI services, such as Azure AI Vision, Azure AI Language, and so on, can be provisioned as standalone resources, enabling you to create only the Azure resources you specifically need.

  • Additionally, standalone Azure AI services often include a free-tier SKU with limited functionality, enabling you to evaluate and develop with the service at no cost.

  • Each standalone Azure AI resource provides an endpoint and authorization keys that you can use to access it securely from a client application.

  • Alternatively, you can provision a multi-service Azure AI services resource that encapsulates the following services in a single Azure resource:

    • Azure OpenAI

    • Azure AI Speech

    • Azure AI Vision

    • Azure AI Language

    • Azure AI Content Safety

    • Azure AI Translator

    • Azure AI Document Intelligence

    • Azure AI Content Understanding

    Using a multi-service resource can make it easier to manage applications that use multiple AI capabilities.

There may be more than one Azure AI services resource type available in the Azure portal.

Expand table

Service

Icon

When you want to provision an Azure AI Services resource, be careful to select the Azure AI services resource type with the icon shown here. This resource type includes the latest AI services.

Azure AI services icon.

An older Azure AI services resource type with a different icon may also be listed in the Azure portal. The older service encapsulates a different set of AI services and isn't suitable for working with newer services like Azure OpenAI and Azure AI Content Understanding.

Azure Cognitive Services icon.

4
New cards

regional availiability and cost

[Azure AI services]

  • Some services and models are available in only a subset of Azure regions.

  • Consider service availability and any regional quota restrictions for your subscription when provisioning Azure AI services.

  • Use the product availability table to check regional availability of Azure services.

  • Use the model availability table in the Azure OpenAI service documentation to determine regional availability for Azure OpenAI models.

  • Azure AI services are charged based on usage, with different pricing schemes available depending on the specific services being used.

  • As you plan an AI solution on Azure, use the Azure AI services pricing documentation to understand pricing for the AI services you intend to incorporate into your application.

  • You can use the Azure pricing calculator to estimate the costs your expected usage will incur.

5
New cards

[Azure AI Foundry]

6
New cards

[Developer Tools and SDKs]

  • There are many development tools and environments available, and developers should choose one that supports the languages, SDKs, and APIs they need to work with and with which they're most comfortable. For example, a developer who focuses strongly on building applications for Windows using the .NET Framework might prefer to work in an integrated development environment (IDE) like Microsoft Visual Studio. Conversely, a web application developer who works with a wide range of open-source languages and libraries might prefer to use a code editor like Visual Studio Code (VS Code). Both of these products are suitable for developing AI applications on Azure.

7
New cards

The Azure AI Foundry VS Code container image
[Developer Tools and SDKs]

  • As an alternative to installing and configuring your own development environment, within Azure AI Foundry portal,

    • you can create compute and use it to host a container image for VS Code (installed locally or as a hosted web application in a browser).

    • The benefit of using the container image is that it includes the latest versions of the SDK packages you're most likely to work with when building AI applications with Azure AI Foundry.

<ul><li><p><span>As an alternative to installing and configuring your own development environment, within Azure AI Foundry portal,</span></p><ul><li><p><span>you can <strong>create compute</strong> and use it to <strong>host a container image for VS Code </strong>(installed locally or as a hosted web application in a browser). </span></p></li><li><p><span>The benefit of using the container image is that <strong>it includes the latest versions of the SDK packages you're most likely to work with</strong> when building AI applications with Azure AI Foundry.</span></p></li></ul></li></ul><p></p>
8
New cards

GitHub and GitHub Copilot

[Developer Tools and SDKs]

  • GitHub is the world's most popular platform for source control and DevOps management, and can be a critical element of any team development effort.

  • Visual Studio and VS Code (including the Azure AI Foundry VS Code container image) both provide native integration with GitHub, and access to GitHub Copilot; an AI assistant that can significantly improve developer productivity and effectiveness.


9
New cards

Programming languages, APIs, and SDKs

[Developer Tools and SDKs]

  • You can develop AI applications using many common programming languages and frameworks, including Microsoft C#, Python, Node, TypeScript, Java, and others. When building AI solutions on Azure, some common SDKs you should plan to install and use include:

    • The Azure AI Foundry SDK, which enables you to write code to connect to Azure AI Foundry projects and access resource connections, which you can then work with using service-specific SDKs.

    • Azure AI Services SDKs - AI service-specific libraries for multiple programming languages and frameworks that enable you to consume Azure AI Services resources in your subscription. You can also use Azure AI Services through their REST APIs.

    • The Azure AI Agent Service, which is accessed through the Azure AI Foundry SDK and can be integrated with frameworks like AutoGen and Semantic Kernel to build comprehensive AI agent solutions.

    • The Prompt Flow SDK, which you can use to implement orchestration logic to manage prompt interactions with generative AI models.