-
Notifications
You must be signed in to change notification settings - Fork 5.9k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #40351 from dotnet/main
- Loading branch information
Showing
26 changed files
with
584 additions
and
475 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
--- | ||
title: Overview of the .NET + AI Ecosystem | ||
description: This article provides an overview of the ecosystem of SDKs and tools available to .NET developers integrating AI into their applications. | ||
ms.date: 04/04/2024 | ||
ms.topic: overview | ||
ms.custom: devx-track-dotnet, devx-track-dotnet-ai | ||
--- | ||
|
||
# Overview of the .NET + AI ecosystem | ||
|
||
.NET can be used with many different libraries and tools that support the development of generative AI applications. This page includes a summary of the services and tools you might need to use in your applications, with links to learn more about each of them. | ||
|
||
> [!NOTE] | ||
> We recommend using the [Semantic Kernel SDK](/semantic-kernel/overview/) to orchestrate your calls to large language models (LLMs) and manage interactions with the various services mentioned here. Semantic Kernel makes it easy to work with different services without having to learn a different API for each one. | ||
> [!IMPORTANT] | ||
> These SDKs and tools are built by a variety of sources. Not all SDKs are maintained by Microsoft. When considering an SDK, be sure to evaluate its quality, licensing, and support to ensure they meet your requirements. Also make sure you review each SDK's documentation for detailed version compatibility information. | ||
## Working with models | ||
|
||
Today, you can use .NET to access models built by OpenAI, using either the Azure OpenAI SDK or the Semantic Kernel. These models can be hosted by OpenAI or in Azure using the Azure AI services. Preview support is coming soon in Semantic Kernel to work with other models, and you can experiment today using open-source SDKs created by the .NET developer community. | ||
|
||
| NuGet package | Supported models | Maintainer or vendor | Link to docs | | ||
|----------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------| | ||
| [Microsoft.SemanticKernel](https://www.nuget.org/packages/Microsoft.SemanticKernel/) | [OpenAI models](https://platform.openai.com/docs/models/overview)<br/>[Azure OpenAI supported models](/azure/ai-services/openai/concepts/models) | [Semantic Kernel](https://github.com/microsoft/semantic-kernel) (Microsoft) | [Semantic Kernel documentation](/semantic-kernel/) | | ||
| [Azure OpenAI SDK](https://www.nuget.org/packages/Azure.AI.OpenAI/) | [Azure OpenAI supported models](/azure/ai-services/openai/concepts/models) | [Azure SDK for .NET](https://github.com/Azure/azure-sdk-for-net) (Microsoft) | [Azure OpenAI services documentation](/azure/ai-services/openai/) | | ||
|
||
## Connect your data using vector stores | ||
|
||
To increase relevancy and tailor AI applications for your own data, you'll likely need to work with a vector store. Many services provide a native SDK for .NET, which you can use directly. You can also use Semantic Kernel, which provides an extensible component model that allows you to try different vector stores without needing to learn each SDK. | ||
|
||
| NuGet package | Supported vector store | Maintainer or vendor | Link to docs | | ||
|----------------------------------------------------------------------------------------|-----------------------------------|-------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------| | ||
| [Microsoft.SemanticKernel](https://www.nuget.org/packages/Microsoft.SemanticKernel/) | [Supported vector stores](/semantic-kernel/memories/vector-db#available-connectors-to-vector-databases) | [Semantic Kernel](https://github.com/microsoft/semantic-kernel) (Microsoft) | [Semantic Kernel: What is a vector database](/semantic-kernel/memories/vector-db) | | ||
| [Azure.Search.Documents](https://www.nuget.org/packages/Azure.Search.Documents/) | Azure AI Search | [Azure SDK for .NET](https://github.com/Azure/azure-sdk-for-net) (Microsoft) | [Azure AI Search client library for .NET](/dotnet/api/overview/azure/search.documents-readme) | | ||
| [Milvus.Client](https://www.nuget.org/packages/Milvus.Client) | Milvus Vector Database | [Milvus](https://milvus.io/) | [Install Milvus C# SDK](https://milvus.io/docs/v2.2.x/install-csharp.md) | | ||
| [Qdrant.Client](https://www.nuget.org/packages/Qdrant.Client) | Qdrant Vector Database | [Qdrant](https://qdrant.tech) | [Qdrant .NET SDK](https://github.com/qdrant/qdrant-dotnet) | | ||
|
||
## Other options | ||
|
||
This article summarized the tools and SDKs in the .NET ecosystem, with a focus on services that provide official support for .NET. Depending on your needs and stage of app development, you might also want to take a look at the open-source options for the ecosystem in [the unofficial list of .NET + AI resources](https://github.com/jmatthiesen/dotnet-ai-resources?tab=readme-ov-file#models). Microsoft is not the maintainer of many of these projects, so be sure to review their quality, licensing, and support. | ||
|
||
## Next Steps | ||
|
||
- [What is Semantic Kernel?](/semantic-kernel/overview/) | ||
- [Quickstart - Summarize text using Azure AI chat app with .NET](./quickstarts/quickstart-openai-summarize-text.md) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
47 changes: 47 additions & 0 deletions
47
.../core/compatibility/core-libraries/9.0/obsolete-apis-with-custom-diagnostics.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
--- | ||
title: "Breaking change: .NET 9 obsoletions with custom IDs" | ||
titleSuffix: "" | ||
description: Learn about the .NET 9 breaking change in core .NET libraries where some APIs have been marked as obsolete with a custom diagnostic ID. | ||
ms.date: 04/05/2024 | ||
--- | ||
# API obsoletions with non-default diagnostic IDs (.NET 9) | ||
|
||
Some APIs have been marked as obsolete, starting in .NET 9. This breaking change is specific to APIs that have been marked as obsolete *with a custom diagnostic ID*. Suppressing the default obsoletion diagnostic ID, which is [CS0618](../../../../csharp/language-reference/compiler-messages/cs0618.md) for the C# compiler, does not suppress the warnings that the compiler generates when these APIs are used. | ||
|
||
## Change description | ||
|
||
In previous .NET versions, these APIs can be used without any build warning. In .NET 9 and later versions, use of these APIs produces a compile-time warning or error with a custom diagnostic ID. The use of custom diagnostic IDs allows you to suppress the obsoletion warnings individually instead of blanket-suppressing all obsoletion warnings. | ||
|
||
The following table lists the custom diagnostic IDs and their corresponding warning messages for obsoleted APIs. | ||
|
||
| Diagnostic ID | Description | Severity | | ||
| - | - | | ||
| [SYSLIB0009](../../../../fundamentals/syslib-diagnostics/syslib0009.md) | <xref:System.Net.AuthenticationManager> is not supported. Methods will no-op or throw <xref:System.PlatformNotSupportedException>. | Warning | | ||
|
||
## Version introduced | ||
|
||
.NET 9 | ||
|
||
## Type of breaking change | ||
|
||
These obsoletions can affect [source compatibility](../../categories.md#source-compatibility). | ||
|
||
## Recommended action | ||
|
||
- Follow the specific guidance provided for the each diagnostic ID using the URL link provided on the warning. | ||
|
||
- Warnings or errors for these obsoletions can't be suppressed using the standard diagnostic ID for obsolete types or members; use the custom `SYSLIBxxxx` diagnostic ID value instead. | ||
|
||
## Affected APIs | ||
|
||
### SYSLIB0009 | ||
|
||
- <xref:System.Net.AuthenticationManager?displayProperty=fullName> | ||
|
||
## See also | ||
|
||
- [API obsoletions with non-default diagnostic IDs (.NET 8)](../8.0/obsolete-apis-with-custom-diagnostics.md) | ||
- [API obsoletions with non-default diagnostic IDs (.NET 7)](../7.0/obsolete-apis-with-custom-diagnostics.md) | ||
- [API obsoletions with non-default diagnostic IDs (.NET 6)](../6.0/obsolete-apis-with-custom-diagnostics.md) | ||
- [API obsoletions with non-default diagnostic IDs (.NET 5)](../5.0/obsolete-apis-with-custom-diagnostics.md) | ||
- [Obsolete features in .NET 5+](../../../../fundamentals/syslib-diagnostics/obsoletions-overview.md) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.