WIADOMOśCI Z BRANżY

Milan Jovanović tworzy dokumenty PDF w ASP .NET Core - a IronPDF jest jego preferowana biblioteka

Microsoft wydał Agent Framework jako bezpośredniego następcę Semantic Kernel i AutoGen, konsolidując prace nad budowaniem agentów, które zgromadziły się wokół narzędzi AI firmy. Dla zespołów budujących biblioteki .NET, co robimy w Iron Software, to wydanie warte jest dokładnego przyjrzenia się. Frameworki agentowe zasadniczo dotyczą dawania LLMom możliwości korzystania z narzędzi, a narzędzia, które agenci kończą wywołując, to w praktyce biblioteki.

Oto, co zwróciło naszą uwagę w przeglądzie, i jak na to patrzymy z pozycji autora biblioteki.

Czym jest Agent Framework

Framework oferuje dwie podstawowe możliwości. Agenci to indywidualni pracownicy napędzani przez LLM, którzy przetwarzają dane wejściowe, wywołują narzędzia i serwery MCP oraz generują odpowiedzi. Przepływy pracy to orkiestracje oparte na grafach, które łączą wielu agentów i funkcje z bezpiecznym typowo routingiem, punktami kontrolnymi i wsparciem człowieka w pętli.

Wokół tych dwóch powierzchni, framework oferuje bloki budowlane, na które zespoły przywykły spodziewać się od narzędzi AI dla przedsiębiorstw: klienci modelu w całym Azure OpenAI, OpenAI, Anthropic, Ollama i Microsoft Foundry; zarządzanie stanem oparte na sesji; dostawcy kontekstu dla pamięci; oprogramowanie pośrednie do przechwytywania działania agentów; i klienci MCP do integracji narzędzi.

Kontekst 'następcy Semantic Kernel i AutoGen' ma znaczenie. Microsoft konsoliduje zamiast dodawać kolejny framework do menu. Dla zespołów, które czekały na zaangażowanie się w stos agentowy .NET, to jest teraz jaśniejsza odpowiedź.

Najbardziej niedoceniana linia w dokumentacji

Ukryta w sekcji na temat, kiedy używać agentów zamiast przepływów pracy, znajduje się zdanie, które przenosi więcej pracy niż reszta strony:

Jeśli możesz napisać funkcję do obsługi zadania, zrób to zamiast używać agenta AI.

To jest uczciwe uzasadnienie techniczne i powinno być punktem wyjścia dla każdej rozmowy o przyjęciu agenta. Agenci nie są magiczni. Są LLMami z umiejętnością wyboru, które narzędzie wywołać i w jakiej kolejności. Gdy zadanie jest deterministyczne, funkcja jest szybsza, tańsza i bardziej niezawodna. Agenci zasługują na miejsce, gdy ścieżka przez zadanie jest naprawdę otwarta.

Dla zespołów bibliotek, to jest zielone światło. Nasze biblioteki są funkcjami, które agenci wywołują, gdy delegują pracę. Framework nie zastępuje kodu biblioteki; opiera się na nim.

Gdzie pasują biblioteki .NET

Narzędzia to tkanka łącząca agenta i pracę, którą użytkownik naprawdę chce wykonać. Gdy agent decyduje, że "ten użytkownik chce, aby PDF został wygenerowany z danych, które właśnie podsumowaliśmy", nie generuje sam PDF. Wywołuje narzędzie, które to robi.

Większość użytecznych narzędzi w aplikacji AI w środowisku produkcyjnym redukuje się do operacji na dokumentach, danych lub zewnętrznych systemach. Dla zespołów .NET działających w przestrzeni przetwarzania dokumentów, to mapuje się bezpośrednio na biblioteki takie jak IronPDF, IronOCR, i IronXL. Konkretny przykład użycia IronPDF otoczonego jako funkcja, którą agent może wywołać:

[Description("Generates a PDF from HTML content and saves it to disk")]
public static string GenerateHtmlPdf(
    [Description("The HTML content to render")] string html,
    [Description("The output file path")] string outputPath)
{
    var renderer = new ChromePdfRenderer();
    using var pdf = renderer.RenderHtmlAsPdf(html);
    pdf.SaveAs(outputPath);
    return $"PDF saved to {outputPath}";
}
[Description("Generates a PDF from HTML content and saves it to disk")]
public static string GenerateHtmlPdf(
    [Description("The HTML content to render")] string html,
    [Description("The output file path")] string outputPath)
{
    var renderer = new ChromePdfRenderer();
    using var pdf = renderer.RenderHtmlAsPdf(html);
    pdf.SaveAs(outputPath);
    return $"PDF saved to {outputPath}";
}
Imports System.ComponentModel

<Description("Generates a PDF from HTML content and saves it to disk")>
Public Shared Function GenerateHtmlPdf(
    <Description("The HTML content to render")> html As String,
    <Description("The output file path")> outputPath As String) As String

    Dim renderer = New ChromePdfRenderer()
    Using pdf = renderer.RenderHtmlAsPdf(html)
        pdf.SaveAs(outputPath)
    End Using
    Return $"PDF saved to {outputPath}"
End Function
$vbLabelText   $csharpLabel

Zarejestruj tę funkcję jako narzędzie z agentem, a agent teraz ma możliwość produkcji stylizowanych raportów PDF na żądanie. To samo wzorce zastosowuje się do OCR (wydobycie tekstu z zeskanowanego dokumentu), operacji na arkuszach kalkulacyjnych (czytanie lub pisanie danych XLSX) i konwersji dokumentów. Każda biblioteka eksponuje zdolność, a każda zdolność staje się narzędziem agenta.

Przepływy pracy dla potoków dokumentów

Powierzchnia przepływów pracy zasługuje na oddzielne spojrzenie. Przetwarzanie dokumentów w produkcji rzadko jest pojedynczym krokiem. Typowy realny potok wygląda tak: OCR zeskanowanej faktury, wyodrębnienie ustrukturyzowanych pól, sprawdź ich zgodność z zasadami biznesowymi, zapisz potwierdzone dane do księgi Excel i wygeneruj paragon PDF dla klienta.

Ta sekwencja mapuje się czysto na przepływ pracy oparty na grafach z bezpiecznym routingiem między krokami. Każdy węzeł to funkcja lub agent, każda przejście ma dobrze zdefiniowane typy danych wejściowych i wyjściowych, a przepływ pracy wspiera punkty kontrolne dla długotrwałych operacji i przegląd przez człowieka na każdym etapie.

Dla zespołów, które ręcznie tworzą tę orkiestrację w kodzie niestandardowym, powierzchnia przepływów pracy to część Agent Framework, która najbardziej warto zbadać.

Dla zespołów, które potrzebują funkcji PDF, OCR, Excel, Word lub kodów kreskowych do wsparcia wywołań narzędzi lub węzłów przepływu pracy, Iron Suite dostarcza produkcyjnie testowane implementacje wszystkich pięciu. Rozpocznij bezpłatną wersję próbną, nie wymaga karty kredytowej.

Ograniczenia i rozważania

Kilka rzeczy, które warto mieć na uwadze przed zaangażowaniem się:

  • Framework jest nowy. Konsoliduje dojrzałe koncepcje z Semantic Kernel i AutoGen, ale skonsolidowana powierzchnia API jest sama w sobie nowa. API będą nadal ewoluować.
  • Ryzyko modeli i narzędzi firm trzecich. Dokumentacja Microsoft wyraźnie stwierdza, że każde zintegrowane systemy firm trzecich (modele inne niż Azure, zewnętrzni agenci, narzędzia firm trzecich) pozostają twoją odpowiedzialnością w zakresie obsługi danych, kosztów i bezpieczeństwa. To jest odpowiednie ujęcie i warto uważnie je przeczytać.
  • Ochraniacze produkcyjne są wciąż twoją odpowiedzialnością. Filtry treści, złagodzenie odpowiedzialnej AI, telemetria i testowanie jakości dla konkretnego przypadku użycia nie są dostarczane przez framework. Daje ci to elementy budowlane; system wokół nich należy zbudować samodzielnie.

Podsumowanie

Microsoft Agent Framework to wiarygodna konsolidacja prac nad agentami AI firmy, pojawiająca się w momencie, gdy zespoły .NET szukają stabilnego fundamentu do tworzenia produkcyjnych aplikacji AI. Najważniejsze ujęcie jest również najbardziej przeoczone: agenci są najbardziej przydatni, gdy obejmują funkcje i biblioteki, które rzeczywiście wykonują pracę.

Dla zespołów bibliotecznych to jest pozycja, na którą czekaliśmy.