Sdílet prostřednictvím


Přehled ekosystému .NET + AI

Ekosystém .NET poskytuje mnoho výkonných nástrojů, knihoven a služeb pro vývoj aplikací AI. .NET podporuje cloudová i místní připojení modelu AI, mnoho různých sad SDK pro různé služby AI a vektorové databáze a další nástroje, které vám pomůžou vytvářet inteligentní aplikace s různou rozsahem a složitostí.

Důležité

Microsoft neschovávají všechny sady SDK a služby uvedené v tomto dokumentu. Při zvažování sady SDK nezapomeňte vyhodnotit jeho kvalitu, licencování, podporu a kompatibilitu, abyste zajistili, že splňují vaše požadavky.

knihovna Microsoft.Extensions.AI pro .NET

Microsoft.Extensions.AI je sada základních knihoven .NET vytvořených ve spolupráci s vývojáři v ekosystému .NET, včetně sémantického jádra. Tyto knihovny poskytují jednotnou vrstvu abstrakcí jazyka C# pro interakci se službami AI, jako jsou malé a velké jazykové modely (SLM a LLM), vkládání a middleware.

Microsoft.Extensions.AI poskytuje abstrakce, které mohou být implementovány různými službami, všechny dodržování stejných základních konceptů. Tato knihovna není určená k poskytování rozhraní API přizpůsobených službám konkrétního poskytovatele. Cílem Microsoft.Extensions.AI je jednat jako jednotná vrstva ekosystému .NET, která vývojářům umožňuje zvolit si upřednostňované architektury a knihovny a zároveň zajistit bezproblémovou integraci a spolupráci napříč ekosystémem.

Sémantické jádro pro .NET

Sémantické jádro je opensourcová sada SDK, která umožňuje integraci a orchestraci AI ve vašich aplikacích .NET. Tato sada SDK je obecně doporučeným nástrojem pro orchestraci AI pro aplikace .NET, které používají jednu nebo více služeb AI v kombinaci s jinými rozhraními API nebo webovými službami, úložišti dat a vlastním kódem. Sémantické jádro přináší podnikovým vývojářům následující výhody:

  • Zjednodušuje integraci funkcí AI do stávajících aplikací, aby bylo možné využívat soudržné řešení pro podnikové produkty.
  • Minimalizuje křivku učení práce s různými modely nebo službami umělé inteligence tím, že poskytuje abstrakce, které snižují složitost.
  • Zlepšuje spolehlivost snížením nepředvídatelného chování výzev a odpovědí z modelů AI. Můžete vyladit výzvy a plánovat úkoly, abyste vytvořili řízené a předvídatelné uživatelské prostředí.

Další informace najdete v dokumentaci k sémantickému jádru.

Sady .NET SDK pro vytváření aplikací AI

V závislosti na cílové platformě nebo modelu AI je pro .NET k dispozici mnoho různých sad SDK. Modely OpenAI nabízejí výkonné možnosti generování AI, zatímco jiné služby Azure AI poskytují inteligentní řešení pro různé konkrétní scénáře.

Sady .NET SDK pro modely OpenAI

Balíček NuGet Podporované modely Správce nebo dodavatel Dokumentace
Microsoft.SemanticKernel Modely OpenAI
Podporované modely Azure OpenAI
Sémantické jádro (Microsoft) Dokumentace k sémantickému jádru
Azure OpenAI SDK Podporované modely Azure OpenAI Azure SDK pro .NET (Microsoft) Dokumentace ke službám Azure OpenAI
OpenAI SDK Podporované modely OpenAI OpenAI SDK pro .NET (OpenAI) Dokumentace ke službám OpenAI

Sady .NET SDK pro služby Azure AI

Azure nabízí mnoho dalších služeb AI pro vytváření konkrétních funkcí a pracovních postupů aplikací. Většina těchto služeb poskytuje sadu .NET SDK pro integraci jejich funkcí do vlastních aplikací. Některé z nejčastěji používaných služeb jsou uvedené v následující tabulce. Úplný seznam dostupných služeb a výukových materiálů najdete v dokumentaci ke službám Azure AI Services .

Služba Popis
Azure AI Search Cloudové vyhledávání s podporou AI ve vašich mobilních a webových aplikacích
Bezpečnost obsahu Azure AI Zjištění nežádoucího nebo urážlivého obsahu
Azure AI Document Intelligence Převést dokumenty na inteligentní řešení založená na datech.
Jazyk Azure AI Vytvářejte aplikace s špičkovými možnostmi porozumění přirozenému jazyku.
Azure AI Speech Rozpoznávání řeči na text, převod textu na řeč, překlad a rozpoznávání mluvčího
Azure AI Translator Technologie překladu využívající AI s podporou více než 100 jazyků a dialektů.
Azure AI Vision Analyzujte obsah v obrázcích a videích.

Vývoj s využitím místních modelů AI

Aplikace .NET se také můžou připojit k místním modelům AI pro mnoho různých vývojových scénářů. Sémantické jádro je doporučený nástroj pro připojení k místním modelům pomocí .NET. Sémantické jádro se může připojit k mnoha různým modelům hostovaným na různých platformách a abstrahuje podrobnosti implementace nižší úrovně.

Například pomocí Ollama se můžete připojit k místním modelům AI pomocí .NET, včetně několika malých jazykových modelů (SLM) vyvinutých Microsoftem:

Model Popis
Modely phi3 Řada výkonných SLM se zásadním výkonem s nízkými náklady a nízkou latencí.
Modely orca Výzkum modelů v úkolech, jako je odůvodnění nad daty zadanými uživateli, čtení porozumění, řešení matematických problémů a sumarizace textu

Poznámka:

Předchozí SLM je také možné hostovat na jiných službách, jako je Azure.

Připojení k vektorové databázi a službám

Aplikace umělé inteligence často používají databáze a služby datových vektorů ke zlepšení relevance a poskytování přizpůsobených funkcí. Mnohé z těchto služeb poskytují nativní sadu SDK pro .NET, zatímco jiné nabízejí službu REST, ke které se můžete připojit prostřednictvím vlastního kódu. Sémantické jádro poskytuje rozšiřitelný model komponent, který umožňuje používat různá vektorová úložiště bez nutnosti učit se jednotlivé sady SDK.

Sémantické jádro poskytuje konektory pro následující vektorové databáze a služby:

Vektorová služba Sémantický konektor jádra .NET SDK
Azure AI Vyhledávač Microsoft.SemanticKernel.Connectors.AzureAISearch Azure.Search.Documents
Azure Cosmos DB for NoSQL Microsoft.SemanticKernel.Connectors.AzureCosmosDBNoSQL Microsoft.Azure.Cosmos
Azure Cosmos DB pro MongoDB Microsoft.SemanticKernel.Connectors.AzureCosmosDBMongoDB MongoDb.Driver
Azure PostgreSQL Server Microsoft.SemanticKernel.Connectors.Postgres Npgsql
Azure SQL Database Microsoft.SemanticKernel.Connectors.SqlServer Microsoft.Data.SqlClient
Sytost barvy Microsoft.SemanticKernel.Connectors.Chroma NA
DuckDB Microsoft.SemanticKernel.Connectors.DuckDB DuckDB.NET.Data.Full
Milvus Microsoft.SemanticKernel.Connectors.Milvus Milvus.Client
MongoDB Atlas Vector Search Microsoft.SemanticKernel.Connectors.MongoDB MongoDb.Driver
Pinecone Microsoft.SemanticKernel.Connectors.Pinecone REST API
Postgres Microsoft.SemanticKernel.Connectors.Postgres Npgsql
Qdrant Microsoft.SemanticKernel.Connectors.Qdrant Qdrant.Client
Redis Microsoft.SemanticKernel.Connectors.Redis StackExchange.Redis
Weaviate Microsoft.SemanticKernel.Connectors.Weaviate REST API

Navštivte dokumentaci pro každou příslušnou službu a zjistěte podporu sady .NET SDK a rozhraní API.

Další možnosti

Tento článek shrnuje nástroje a sady SDK v ekosystému .NET se zaměřením na služby, které poskytují oficiální podporu pro .NET. V závislosti na vašich potřebách a fázi vývoje aplikací se můžete také podívat na opensourcové možnosti ekosystému v neoficiálním seznamu prostředků .NET + AI. Microsoft není správcem mnoha těchto projektů, proto si nezapomeňte projít jejich kvalitu, licencování a podporu.

Další kroky