1/8
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
[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.
[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.
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. | ![]() |
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. | ![]() |
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.
[Azure AI Foundry]
[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.
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.
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.
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.