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:
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.