A .NET + AI-ökoszisztéma áttekintése
A .NET-ökoszisztéma számos hatékony eszközt, kódtárat és szolgáltatást biztosít az AI-alkalmazások fejlesztéséhez. A .NET támogatja a felhőbeli és a helyi AI-modellkapcsolatokat, számos különböző SDK-t a különböző AI- és vektoradatbázis-szolgáltatásokhoz, valamint egyéb eszközöket, amelyekkel különböző hatókörű és összetettségű intelligens alkalmazásokat hozhat létre.
Fontos
A Microsoft nem minden jelen dokumentumban bemutatott SDK-t és szolgáltatást tart fenn. Az SDK-k mérlegelésekor mindenképpen értékelje annak minőségét, licencelését, támogatását és kompatibilitását, hogy megfeleljenek a követelményeknek.
Microsoft.Extensions.AI .NET-kódtár
Microsoft.Extensions.AI
a .NET-ökoszisztéma fejlesztőivel együttműködve létrehozott alapvető .NET-kódtárak készlete, beleértve a Szemantic Kernelt is. Ezek a kódtárak egységes C#-absztrakciós réteget biztosítanak az AI-szolgáltatások, például a kis és nagy nyelvi modellek (SLM-ek és LLM-ek), a beágyazások és a köztes szoftverek használatához.
Microsoft.Extensions.AI
olyan absztrakciókat biztosít, amelyeket különböző szolgáltatások valósíthatnak meg, amelyek mindegyike ugyanazokat az alapvető fogalmakat követi. Ez a kódtár nem arra szolgál, hogy adott szolgáltató szolgáltatásaihoz igazított API-kat biztosítson. A cél Microsoft.Extensions.AI
az, hogy egységesítő rétegként működjenek a .NET-ökoszisztémán belül, lehetővé téve a fejlesztők számára, hogy kiválaszthassák az előnyben részesített keretrendszereket és kódtárakat, miközben zökkenőmentes integrációt és együttműködést biztosítanak az ökoszisztémában.
Szemantikus kernel a .NET-hez
A Szemantic Kernel egy nyílt forráskódú SDK, amely lehetővé teszi az AI-integrációt és a vezénylési képességeket a .NET-alkalmazásokban. Ez az SDK általában az ajánlott AI-vezénylési eszköz olyan .NET-alkalmazásokhoz, amelyek egy vagy több AI-szolgáltatást használnak más API-kkal vagy webszolgáltatásokkal, adattárakkal és egyéni kódokkal kombinálva. A Szemantic Kernel a következő módokon nyújt előnyöket a vállalati fejlesztőknek:
- Egyszerűsíti az AI-képességek integrálását a meglévő alkalmazásokba, hogy egységes megoldást biztosíthasson a nagyvállalati termékekhez.
- Minimalizálja a különböző AI-modellekkel vagy szolgáltatásokkal végzett munka tanulási görbéit azáltal, hogy olyan absztrakciókat biztosít, amelyek csökkentik az összetettség mértékét.
- Növeli a megbízhatóságot azáltal, hogy csökkenti az AI-modellektől érkező kérések és válaszok kiszámíthatatlan viselkedését. A parancssorok finomhangolása és a feladatok megtervezhetők egy szabályozott és kiszámítható felhasználói élmény létrehozásához.
További információt a Szemantic Kernel dokumentációjában talál.
.NET SDK-k AI-alkalmazások létrehozásához
A .NET-hez számos különböző SDK érhető el a célplatformtól vagy AI-modelltől függően AI-képességekkel rendelkező alkalmazások létrehozásához. Az OpenAI-modellek hatékony, generatív AI-képességeket kínálnak, míg más Azure AI-szolgáltatások intelligens megoldásokat biztosítanak számos konkrét forgatókönyvhöz.
.NET SDK-k OpenAI-modellekhez
NuGet-csomag | Támogatott modellek | Karbantartó vagy szállító | Dokumentáció |
---|---|---|---|
Microsoft.SemanticKernel |
OpenAI-modellek Az Azure OpenAI által támogatott modellek |
Szemantikus kernel (Microsoft) | Szemantikus kernel dokumentációja |
Azure OpenAI SDK | Az Azure OpenAI által támogatott modellek | Azure SDK for .NET (Microsoft) | Az Azure OpenAI-szolgáltatások dokumentációja |
OpenAI SDK | OpenAI által támogatott modellek | OpenAI SDK for .NET (OpenAI) | OpenAI-szolgáltatások dokumentációja |
.NET SDK-k az Azure AI-szolgáltatásokhoz
Az Azure számos más AI-szolgáltatást is kínál adott alkalmazásképességek és munkafolyamatok létrehozásához. A szolgáltatások többsége .NET SDK-t biztosít a funkciók egyéni alkalmazásokba való integrálásához. A leggyakrabban használt szolgáltatások némelyike az alábbi táblázatban látható. Az elérhető szolgáltatások és a képzési erőforrások teljes listáját az Azure AI Services dokumentációjában találja.
Szolgáltatás | Leírás |
---|---|
Azure AI Search | AI-alapú felhőbeli keresést építhet be mobil- és webalkalmazásokba. |
Azure AI – Tartalombiztonság | Nem kívánt vagy sértő tartalom észlelése. |
Azure AI-dokumentumintelligencia | Dokumentumok átalakítása intelligens, adatvezérelt megoldásokká. |
Azure AI-nyelv | Alkalmazások készítése iparágvezető természetes nyelvfelismerési képességekkel. |
Azure AI Speech | Beszéd a szöveghez, szövegről beszédre, fordítás és beszélőfelismerés. |
Azure AI Translator | Mi-alapú fordítási technológia több mint 100 nyelv és nyelvjárás támogatásával. |
Azure AI Vision | Képek és videók tartalmainak elemzése. |
Fejlesztés helyi AI-modellekkel
A .NET-alkalmazások számos különböző fejlesztési forgatókönyv esetén helyi AI-modellekhez is csatlakozhatnak. A szemantikus kernel az ajánlott eszköz a helyi modellekhez való csatlakozáshoz a .NET használatával. A Szemantikus Kernel számos különböző platformon üzemeltetett modellhez tud csatlakozni, és elvonta az alacsonyabb szintű implementáció részleteit.
Az Ollama használatával például helyi AI-modellekhez csatlakozhat a .NET-tel, beleértve a Microsoft által kifejlesztett több kis nyelvi modellt is:
Modell | Leírás |
---|---|
phi3 modellek | Nagy teljesítményű SLM-ekkel rendelkező család, amely úttörő teljesítményt nyújt alacsony költséggel és alacsony késéssel. |
orkamodellek | Olyan feladatok modelljeinek kutatása, mint például a felhasználó által megadott adatok érvelése, az olvasási megértés, a matematikai problémamegoldás és a szövegösszesítés. |
Feljegyzés
Az előző SLM-ek más szolgáltatásokon, például az Azure-on is üzemeltethetők.
Csatlakozás vektoradatbázisokhoz és -szolgáltatásokhoz
Az AI-alkalmazások gyakran használnak adatvektor-adatbázisokat és -szolgáltatásokat a relevancia javítása és a testre szabott funkciók biztosítása érdekében. Ezek közül a szolgáltatások közül sok natív SDK-t biztosít a .NET-hez, míg mások olyan REST-szolgáltatást kínálnak, amelyhez egyéni kódon keresztül csatlakozhat. A Szemantic Kernel bővíthető összetevőmodellt biztosít, amely lehetővé teszi a különböző vektortárolók használatát anélkül, hogy minden SDK-t meg kellene tanulnia.
A Szemantic Kernel az alábbi vektoradatbázisokhoz és -szolgáltatásokhoz biztosít összekötőket:
A .NET SDK és az API támogatásának felderítéséhez tekintse meg az egyes szolgáltatások dokumentációját.
Egyéb lehetőségek
Ez a cikk összefoglalta a .NET-ökoszisztéma eszközeit és SDK-jait, és a .NET hivatalos támogatását biztosító szolgáltatásokra összpontosított. Az igényektől és az alkalmazásfejlesztés fázisától függően érdemes lehet áttekinteni az ökoszisztéma nyílt forráskódú lehetőségeit a .NET + AI-erőforrások nem hivatalos listájában. A Microsoft nem sok ilyen projekt fenntartója, ezért mindenképpen tekintse át a minőségüket, a licencelésüket és a támogatásukat.