SEKTöR HABERLERI

Milan Jovanović, ASP .NET Core'da PDF Belgeleri Oluşturuyor - Ve IronPDF Onun Tercih Ettiği Kütüphane

Agent Framework'ü, Semantic Kernel ve AutoGen'in doğrudan halef olarak yayınladı. Şirketin AI araç seti boyunca birikmiş olan ajan oluşturma çalışmasını birleştiriyor. .NET kütüphaneleri oluşturmakta olan ekipler için, ki bu da bizim Iron Software'de yaptığımız şeydir, bu sürüm yakından bakmaya değer. Temel olarak, Agent Framework, LLM'lere araçları kullanma yeteneği kazandırmakla ilgilidir ve sonuç olarak çağrılan araçlar pratikte kütüphanelerdir.

İşte bize dikkat çekenler ve kütüphane yazarının koltuğundan bunu nasıl düşündüğümüz hakkında.

Agent Framework nedir?

Çerçeve iki ana yetenek sunar. Ajanlar, girdileri işleyen, araçları ve MCP sunucularını çağıran ve yanıtlar üreten bireysel LLM tahrikli çalışanlardır. İş akışları, birden fazla ajanın ve işlevin tür güvenli yönlendirme, kontrol noktası oluşturma ve insan devre içi destekle birleştirildiği grafik tabanlı orkestrasyonlardır.

Bu iki yüzeyin etrafına, çerçeve, kurumsal AI araçlarından beklenen yapı taşlarını sunar: Azure OpenAI, OpenAI, Anthropic, Ollama ve Microsoft Foundry üzerinden model istemcileri; oturum tabanlı durum yönetimi; hafıza için bağlam sağlayıcıları; ajan eylemlerini kesmek için ara yazılım; ve araç entegrasyonu için MCP istemcileri.

"Semantic Kernel ve AutoGen'in halefi" çerçevesi önemlidir. Microsoft, menüye başka bir çerçeve eklemek yerine birleştirmektedir. .NET ajan yığınına bağlı kalmayı bekleyen ekipler için, bu şimdi daha açık bir cevaptır.

Dokümantasyondaki en hafife alınan satır

ajanlar ile iş akışlarını ne zaman kullanmanız gerektiği bölümünde gizlenmiş bir cümle var ki sayfanın geri kalanından daha fazla iş yapmaktadır:

Görevi işlemek için bir işlev yazabiliyorsanız, bir AI ajanı kullanmak yerine bunu yapın.

Bu dürüst mühendislik çerçevesidir ve her ajan benimseme konuşmasının başlangıç noktası olmalıdır. Ajanlar sihirli değildir. Hangi aracı ne zaman çağıracağını seçme yeteneği olan LLM'lerdir. Görev deterministik olduğunda, bir işlev daha hızlı, daha ucuz ve daha güvenilir. Görev üzerinden yolun gerçekten açık uçlu olduğu durumlarda ajanlar yer edinir.

Kütüphane ekipleri için bu yeşil ışık. Kütüphanelerimiz, ajanların iş devrettiğinde çağırdığı işlevlerdir. Çerçeve, kütüphane kodunu değiştirmez; buna dayanır.

.NET kütüphaneleri nerede yer alır

Araçlar, bir ajan ile kullanıcının gerçekten yapılan iş arasında bağlayıcı dokudur. Bir ajan "bu kullanıcı, biraz önce özetlediğimiz verilerden bir PDF oluşturulmasını istiyor" dediğinde, PDF'yi kendi başına oluşturmaz. Bunu yapan bir aracı çağırır.

Üretim AI uygulamasında en yararlı araçlar, belgeler, veriler veya harici sistemler üzerinde gerçekleştirilen işlemlere indirgenir. Belge işleme alanında çalışan .NET ekipleri için bu, doğrudan IronPDF, IronOCR ve IronXL gibi kütüphanelerle eşleşir. Bir ajan tarafından çağrılabilecek bir işlev olarak sarılmış IronPDF kullanılan somut bir örnek:

[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

Bu işlevi bir ajan ile bir araç olarak kaydedin ve ajan artık isteğe bağlı olarak stilize edilmiş PDF raporları üretebilme yeteneğine sahiptir. Aynı desen, OCR (tarayıcıdan metin çıkarma), elektronik tablo işlemleri (XLSX verilerini okuma veya yazma) ve belge dönüştürme için de geçerlidir. Her kütüphane bir yetenek sunar ve her yetenek bir ajan aracı haline gelir.

Belge işleme hatları için iş akışları

İş akışları yüzeyi ayrı bir görünümü hak ediyor. Üretimde belge işleme nadiren tek adımlıdır. Tipik bir gerçek dünya hattı şöyle görünür: taranan faturayı OCR ile işleyin, yapılandırılmış alanları çıkarın, bunları işletme kurallarına uygun olarak doğrulayın, doğrulanmış verileri bir Excel defterine yazın ve müşteri için bir PDF makbuzu oluşturun.

Bu sıra, adımlar arasında tür-safe yönlendirme ile bir grafik tabanlı iş akışına temiz bir şekilde eşleşir. Her düğüm bir işlev veya ajandır, her geçiş iyi tanımlanmış giriş ve çıkış türlerine sahiptir ve iş akışı, uzun süreli işlemler için kontrol noktası oluşturmayı ve herhangi bir adımda insan incelemesini destekler.

Bu orkestrasyonu özelleştirilmiş kodda el yordamıyla yapan ekipler için, iş akışları yüzeyi, Agent Framework'ünde en fazla incelenmesi gereken kısımdır.

Araç çağrılarını veya iş akışı düğümlerini desteklemek için PDF, OCR, Excel, Word veya barkod yeteneklerine ihtiyaç duyan ekipler için, Iron Suite bu beşinin üretimde test edilmiş uygulamalarını sunar. Ücretsiz deneme sürümüne başlayın, kredi kartı gerekmiyor.

Sınırlamalar ve düşünceler

Bağlanmadan önce düşünülmeye değer birkaç şey:

  • Çerçeve yenidir. Semantic Kernel ve AutoGen'den olgun kavramları birleştirir, ancak birleşik API yüzeyi kendisi yenidir. API'ler gelişmeye devam edecektir.
  • Üçüncü taraf model ve araç riski. Microsoft'un kendi dokümantasyonu, entegre ettiğiniz her üçüncü taraf sisteminin (Azure dışı modeller, harici ajanlar, üçüncü taraf araçlar) veri işleme, maliyet ve güvenlik açısından sorumluluğunuzda olduğunu açıkça belirtiyor. Bu doğru çerçeve, dikkatlice okunmaya değer.
  • Üretim koruma güvenlik duvarları hala sizin sorumluluğunuzdadır. İçerik filtreleri, sorumlu-AI hafifletmeleri, telemetri ve belirli kullanım durumunuza yönelik kalite testleri çerçeve tarafından sağlanmaz. Yapı taşlarını size verir; çevresindeki sistemi sizin inşa etmeniz gerekir.

Özet

Microsoft Agent Framework, şirketin AI-ajan çalışmalarının inandırıcı bir konsolidasyonu ve .NET ekiplerinin üretim AI uygulamaları inşa etmek için stabil bir temel aradığı bir anda geliyor. En önemli çerçevesi aynı zamanda en göz ardı edilenidir: ajanlar, işi gerçekten yapan işlevler ve kütüphaneler etrafında sarıldığında en kullanışlıdır.

Kütüphane ekipleri için beklediğimiz pozisyon budur.