Co to jest Microsoft .NET? AI w C# — poradnik dla firm
Temat: AI SDLC
Microsoft .NET to otwarta platforma Microsoftu do budowy aplikacji w C#, na licencji MIT, działająca na Windows, Linuksie i macOS. Firma, która ma już systemy, zespół i procesy wdrożeń w .NET, zwykle nie musi przechodzić na Pythona, żeby dodać AI. Microsoft.Extensions.AI daje jedną granicę do modelu (IChatClient), Microsoft Agent Framework obsługuje procesy wieloetapowe, a Aspire pokazuje, co dzieje się w kilku usługach naraz. Warunek: świadome zarządzanie wersjami .NET i pakietów, bo te zmieniają się szybciej niż typowy system ERP.
Poradnik jest dla lidera IT, architekta i zarządu firmy od 50 osób, która utrzymuje aplikacje w .NET i planuje w nich pierwsze funkcje AI. Jak takie funkcje przechodzą przez specyfikację, testy i wdrożenie, opisuje poradnik AI SDLC. Szczegóły agentów są w poradniku o Microsoft Agent Framework, a platformę modeli Microsoftu opisuje poradnik o Microsoft Foundry. Na końcu jest mapa wszystkich wpisów o .NET na blogu. Stan wszystkich informacji: 6.10.2026.
Czym jest .NET
.NET to środowisko uruchomieniowe, biblioteki i narzędzia do budowy usług webowych, API, aplikacji desktopowych i mobilnych. Głównym językiem jest C#. Według repozytorium dotnet/runtime platforma jest na licencji MIT, działa na wielu systemach operacyjnych i jest projektem .NET Foundation.
Dla firmy z istniejącym .NET liczy się coś innego niż składnia. To, co już działa: logowanie przez Entra ID, wstrzykiwanie zależności, konfiguracja, potoki CI/CD, monitoring, procedury dyżuru. Funkcja AI w tym samym stosie korzysta z tych mechanizmów od pierwszego dnia. Funkcja w nowym języku musi je zbudować od nowa.
Wersje i cykl wsparcia (stan na 6.10.2026)
Ostatnie wersje główne .NET wychodziły w listopadzie: 2023, 2024 i 2025. Wydania LTS (Long Term Support) mają co najmniej 3 lata wsparcia, wydania STS (Standard Term Support) — 2 lata. Rodzaje wydań występują naprzemiennie (.NET releases and support).
| Wersja | Typ | Wydana | Koniec wsparcia |
|---|---|---|---|
| .NET 10 | LTS | 11.11.2025 | 14.11.2028 |
| .NET 9 | STS | 12.11.2024 | 10.11.2026 |
| .NET 8 | LTS | 14.11.2023 | 10.11.2026 |
| .NET 11 | RC1 (8.09.2026) | — | wersja ostateczna jeszcze niewydana |
Źródło: .NET Support Policy. Dwie rzeczy z tej tabeli są pilne. Po pierwsze, .NET 8 i .NET 9 kończą wsparcie tego samego dnia, 10.11.2026. Aplikacje na tych wersjach przestaną dostawać poprawki bezpieczeństwa. Po drugie, wsparcie dotyczy tylko najnowszej poprawki. Microsoft wydaje poprawki prawie co miesiąc, a te z poprawkami bezpieczeństwa w „Patch Tuesday”, czyli drugi wtorek miesiąca. Ostatnie 6 miesięcy wsparcia to faza utrzymania z samymi poprawkami bezpieczeństwa.
Wniosek autora: nową aplikację AI zaczynajcie na .NET 10. Aplikację na .NET 8, do której chcecie dodać AI, najpierw przenieście na .NET 10. Dwie zmiany naraz — nowa wersja platformy i nowa funkcja z modelem — utrudniają ustalenie, co zepsuło wynik.
.NET czy Python dla projektu AI
Python jest naturalnym językiem badań nad modelami, trenowania i analizy danych w notatnikach. Aplikacja AI w firmie to jednak zwykle coś innego. Korzysta z gotowego modelu przez API, szuka w dokumentach firmy, woła narzędzia i zapisuje wynik w systemach. Te zadania mają w .NET oficjalne biblioteki Microsoftu. Microsoft Agent Framework jest dostępny zarówno w .NET, jak i w Pythonie (dokumentacja Agent Framework).
Rozsądne pytanie nie brzmi więc „który język jest lepszy do AI”. Brzmi: kto ten system utrzyma za trzy lata i z jakimi systemami musi się łączyć.
| Sytuacja | Rekomendacja autora |
|---|---|
| Systemy, API i zespół są w .NET, a AI ma korzystać z gotowego modelu | Aplikacja w .NET z Microsoft.Extensions.AI |
| Trzeba trenować lub stroić model, badać dane w notatnikach | Ta część w Pythonie; aplikacja może zostać w .NET |
| Kluczowa biblioteka lub SDK nie ma odpowiednika w .NET | Osobna usługa w Pythonie za API |
| Zespół zna tylko Pythona, a systemy są w chmurze przez API | Python, z tymi samymi zasadami testów i uprawnień |
Oba języki mogą działać obok siebie. Aspire orkiestruje w jednym AppHost także usługi w Pythonie, JavaScript, Go i Javie (aspire.dev), więc usługa w Pythonie nie musi być osobną wyspą. Porównanie architektury po stronie Pythona opisuje wpis Python w aplikacjach AI.
Warstwy aplikacji AI w .NET
Microsoft opisuje stos .NET dla AI jako zestaw osobnych warstw (.NET + AI ecosystem). Zasada z dokumentacji jest prosta: zacznij od Microsoft.Extensions.AI, a kolejne warstwy dodawaj dopiero wtedy, gdy są potrzebne.
| Potrzeba | Warstwa | Czego nie rozwiązuje |
|---|---|---|
| Rozmowa, podsumowanie, klasyfikacja | Microsoft.Extensions.AI (IChatClient) | Jakości źródeł i reguł procesu |
| Odpowiedzi z dokumentów firmy (RAG) | Microsoft.Extensions.DataIngestion + VectorData | Aktualności dokumentów i uprawnień do nich |
| Narzędzia dla wielu klientów AI | Serwer i klient MCP | Autoryzacji każdej operacji |
| Proces wieloetapowy, kilku agentów | Microsoft Agent Framework | Odpowiedzialności człowieka za decyzję |
| Kilka usług w jednym systemie | Aspire | Hostingu produkcyjnego i skalowania |
| Ochrona przed regresją | Microsoft.Extensions.AI.Evaluation | Wyboru, co jest „dobrą” odpowiedzią |
IChatClient: jedna granica do modelu
Pakiet Microsoft.Extensions.AI.Abstractions definiuje podstawowe typy, m.in. IChatClient do rozmowy z modelem i IEmbeddingGenerator do tworzenia wektorów. Pakiet Microsoft.Extensions.AI dokłada automatyczne wywoływanie narzędzi, telemetrię OpenTelemetry i cache w znanym zespołom .NET modelu wstrzykiwania zależności (Microsoft.Extensions.AI). Najnowsza wersja to 10.10.0 z 9.09.2026, na licencji MIT, i działa także na .NET 8 oraz .NET Framework 4.6.2 (NuGet).
Dla lidera IT ważna jest jedna konsekwencja. Kod aplikacji zależy od interfejsu, a nie od SDK konkretnego vendora modelu. Wokół IChatClient można złożyć potok: cache, limit zapytań, logowanie, ślady (IChatClient). Zmiana modelu nie oznacza przepisania aplikacji. Abstrakcja nie wyrównuje jednak zachowania modeli. Każdy model inaczej używa narzędzi i inaczej formatuje wynik, więc zmiana modelu wymaga tego samego zestawu testów regresji co zmiana kodu.
Reguły biznesowe — limity, ceny, prawa użytkownika — zostają w zwykłym kodzie C#. Prompt nie jest mechanizmem uprawnień. Szczegóły warstw w kodzie opisuje wpis .NET 10 dla aplikacji AI.
Agent Framework dopiero przy procesie wieloetapowym
Microsoft Agent Framework to warstwa orkiestracji: agenci, którzy wybierają narzędzia, oraz workflow z jawną kolejnością kroków. Obsługuje modele m.in. z Microsoft Foundry, Azure OpenAI, OpenAI, Anthropic i Ollama. Dokumentacja mówi wprost, że jeśli zadanie da się zapisać funkcją, należy napisać funkcję zamiast agenta (Agent Framework).
Ważne dla firm z kodem w Semantic Kernel: według Microsoftu Agent Framework jest bezpośrednim następcą Semantic Kernel i AutoGen, tworzonym przez te same zespoły. Są przewodniki migracji. Pakiet Microsoft.Agents.AI ma wersję stabilną 1.23.0 z 29.09.2026, na licencji MIT (NuGet). Kiedy agent ma sens i jak go zbudować, opisuje poradnik o Microsoft Agent Framework.
Aspire: obserwowalność systemu wielu usług
Aplikacja AI szybko przestaje być jedną usługą. Dochodzi indeksowanie dokumentów, serwer narzędzi, kolejka, baza wektorowa. Aspire opisuje te zasoby w kodzie (AppHost), łączy je przez service discovery i pokazuje w jednym dashboardzie logi, ślady i stan usług, na bazie OpenTelemetry (aspire.dev). Aktualna wersja to 13.6.0 z 29.09.2026.
Dla AI to ważne, bo zwykły kod może działać bez błędu, a odpowiedź i tak będzie zła. Ślad, który łączy pytanie użytkownika, wyszukanie w dokumentach, wywołanie modelu i narzędzia, pokazuje, gdzie powstał błąd. Aspire nie zastępuje jednak hostingu produkcyjnego ani platformy modeli. Praktykę opisuje wpis Aspire: AppHost, service discovery i dashboard.
ML.NET: klasyczne uczenie maszynowe, nie modele językowe
ML.NET to otwarty framework Microsoftu na licencji MIT do klasycznego uczenia maszynowego w .NET: klasyfikacji, regresji, wykrywania anomalii, rekomendacji i prognoz (ML.NET). Trenuje własne modele na danych firmy albo wczytuje gotowe modele ONNX i TensorFlow. To dobre narzędzie do prognozy popytu czy wykrywania nietypowych transakcji. Do rozmowy z modelem językowym służy Microsoft.Extensions.AI.
Integracja z Azure i Microsoft Foundry
.NET i Azure pochodzą od tego samego vendora, ale nie są ze sobą sklejone. Dokumentacja Microsoftu rozdziela role: Microsoft.Extensions.AI jest abstrakcją w kodzie aplikacji, a Microsoft Foundry odpowiada na pytanie, gdzie działa model i pod jakimi kontrolami (.NET + AI ecosystem). Do pracy lokalnej i tam, gdzie dane nie mogą opuścić maszyny, Microsoft wskazuje Foundry Local.
Praktycznie oznacza to trzy decyzje, które warto podjąć osobno:
- Gdzie działa model. Foundry, inny vendor przez API albo model lokalny. Ta decyzja wynika z danych, regionu i umowy, nie z języka programowania.
- Jak aplikacja się uwierzytelnia. W Azure — tożsamość zarządzana zamiast kluczy w konfiguracji.
- Gdzie trafia telemetria. Ślady z promptami mogą zawierać dane osobowe. Trzeba ustalić, co się zapisuje, na jak długo i kto ma dostęp.
W przykładzie z dokumentacji pakiet integracji Agent Framework z Foundry (Microsoft.Agents.AI.Foundry) instaluje się jako wersję przedpremierową (--prerelease). Przed użyciem produkcyjnym sprawdźcie aktualny status pakietu, którego naprawdę potrzebujecie, a nie tylko pakietu głównego.
Ryzyka: pakiety, aktualizacje i zależności
Platforma .NET ma politykę wsparcia z konkretnymi datami. Biblioteki AI zmieniają się dużo szybciej. To główne ryzyko dla firmy, która przywykła do aktualizacji raz na rok.
- Tempo wydań. Microsoft.Agents.AI wydał pięć wersji między 22.08 a 29.09.2026. Bez przypiętych wersji i testów regresji każda aktualizacja może zmienić zachowanie agenta.
- Wsparcie tylko najnowszego wydania. Microsoft wspiera wyłącznie najnowsze wydanie Aspire; wsparcie 13.5 skończyło się w dniu wydania 13.6 (Aspire support). To wymaga regularnych, małych aktualizacji.
- Funkcje eksperymentalne. Część mechanizmów Microsoft.Extensions.AI, np. przełączanie między modelami przy awarii, jest oznaczona jako eksperymentalna i może się zmienić.
- Koniec wsparcia platformy. .NET 8 i .NET 9 tracą wsparcie 10.11.2026. Właściwość MSBuild
CheckSdkVulnerabilitieszgłasza ostrzeżenie przy SDK po końcu wsparcia — warto ją włączyć w potoku budowania. - Pakiety firm trzecich. Adaptery modeli, baz wektorowych i serwery MCP mają własnych autorów i własny cykl. C# SDK dla MCP rozwija organizacja Model Context Protocol we współpracy z Microsoftem, na licencji Apache 2.0 (csharp-sdk). Każdy taki pakiet to zależność z właścicielem i datą przeglądu.
Agent kodujący chętnie podbije w piątek po południu wszystkie pakiety do najnowszych wersji i z pełnym przekonaniem napisze, że nic się nie zmieniło. Test regresji zwykle ma inne zdanie. Dlatego aktualizację pakietów AI traktujcie jak zmianę modelu: osobna gałąź, ten sam zestaw przypadków testowych, porównanie jakości, czasu i kosztu z poprzednią wersją.
Od czego zacząć
- Sprawdźcie wersje. Lista aplikacji na .NET 8 i .NET 9 z planem przejścia na .NET 10 przed 10.11.2026.
- Wybierzcie jeden proces z właścicielem. Na przykład odpowiedź na pytanie pracownika z procedur albo klasyfikacja zgłoszeń. Bez zapisu w systemach w pierwszym kroku.
- Zbudujcie pionowy wycinek na
IChatClient. Jeden model, telemetria od pierwszego dnia, zestaw kilkudziesięciu przypadków testowych przygotowany przed pilotem. - Dodawajcie warstwy po pomiarze. Wyszukiwanie w dokumentach, gdy odpowiedź zależy od wiedzy firmy. MCP, gdy narzędzie ma służyć kilku klientom. Agent Framework, gdy prosty przepływ nie wystarcza. Aspire, gdy usług jest więcej niż jedna.
- Ustalcie rytm aktualizacji. Comiesięczne poprawki .NET, przegląd pakietów AI z testami regresji, roczny przegląd wersji głównej.
Taki wycinek buduje zwykle inżynier, który rozumie jednocześnie kod .NET, systemy firmy i zachowanie modelu. Jeśli takiej osoby nie macie, przygotowuje do tej roli kurs Forward Deployed AI Engineer.
Mapa wpisów o .NET w aplikacjach AI
Wszystkie wpisy o .NET na blogu, pogrupowane według warstwy aplikacji.
A. Fundament i warstwy AI
- .NET 10 dla aplikacji AI: warstwy i wybór — Microsoft.Extensions.AI, VectorData, MCP i Agent Framework w kodzie, z testami.
- .NET w AI SDLC — .NET jako element cyklu wytwarzania z agentami AI.
B. Interfejs i architektura usług
- Blazor w .NET 10: renderowanie, stan i AI — interfejs webowy w C# i integracja z usługami AI.
- Aspire: AppHost, service discovery i dashboard — uruchamianie i obserwowanie systemu wielu usług.
- Microsoft Orleans 10: kiedy wybrać virtual actors — rozproszony stan dla wielu niezależnych jednostek.
Powiązane
- Semantic Kernel: kiedy orkiestracja AI ma sens — poprzednik Agent Framework w .NET.
- Microsoft Agent Framework po AutoGen i Semantic Kernel — framework agentów we własnym stosie.
- Python w aplikacjach AI: architektura i test — ta sama decyzja po stronie Pythona.
Najważniejsze w skrócie
- .NET to otwarta platforma na licencji MIT; firma z istniejącym .NET zwykle może budować funkcje AI w C# bez przechodzenia na Pythona.
- Python zostaje dla trenowania modeli, badań danych i bibliotek bez odpowiednika w .NET — obok aplikacji, nie zamiast niej.
IChatClientz Microsoft.Extensions.AI to jedna granica do modelu; zmiana modelu to test regresji, nie przepisanie aplikacji.- Agent Framework dopiero przy procesie wieloetapowym; jest następcą Semantic Kernel.
- Aspire daje ślady przez wszystkie usługi, ale nie jest hostingiem produkcyjnym.
- .NET 10 (LTS) ma wsparcie do 14.11.2028; .NET 8 i .NET 9 kończą je 10.11.2026.
- Największe ryzyko to tempo wydań pakietów AI: przypinajcie wersje i aktualizujcie z testami.
- Agenci AI
- AI SDLC
- Azure
- Strategia
