Derinlemesine yazılım eğitimleri için kanalımı takip edebilirsiniz...

Microsoft Agent Framework Nedir? Konseptleri Nelerdir?

Merhaba,

Bu içeriğimizde .NET uygulamalarında yapay zekâ çalışmalarını daha elverişli ve profesyonel bir şekilde yürütmemizi sağlayacak olan, özellikle multi-agent iş akışlarını geliştirmek için optimize edilerek, yeni bir altyapı tasarısıyla bizlere sunulan Microsoft Agent Framework‘ü inceleyecek ve temel yapı taşları eşliğinde, mimarisel unsurlarını ve geliştirme süreçlerinde kritik arz eden konsept kavramlarını değerlendirecek ve daha da önemlisi, bu güne kadar kullandığımız Semantic Kernel ve AutoGen kütüphaneleri varken neden böyle bir kütüphaneye ihtiyaç olduğunu istişare ederek, aralarında mukayesede bulunacak ve bütünsel bir farkındalık oluşturacağız. O halde fazla uzatmaksızın buyurun başlayalım…

Microsoft Agent Framework Nedir?

Microsoft Agent Framework, .NET ve Python ortamlarında yapay zekâ agent’ları ve multi-agent iş akışları geliştirmek için tasarlanmış open source bir geliştirici setidir (development kit) Bu framework ile Semantic Kernel ve AutoGen araçlarının amaç ve yetenekleri bir araya getirilip, genişletilmiş ve özellikle her iki yaklaşımın güçlü yönleri birleştirilerek, yeni yetenekler eşliğinde biz geliştiricilerin el çantasına sunulmuştur.

Semantic Kernel ve AutoGen’i geliştiren aynı ekip tarafından geliştirilmiş olan bu Microsoft Agent Framework, gelecekte yapay zekâ agent’ları inşa etmek için ortak bir temel olarak konumlandırılmayı hedeflemektedir.

Agent Framework, AI Agents ve Workflows olmak üzere iki ana kritik kategoriye ayrılan yetenekler sunmaktadır;

  • AI Agents
    Bu agent’lar, LLM kullanarak kullanıcı girdilerini işlemekte, tools/plugin çağırabilmekte ve MCP Server ile farklı yetenekleri sürece dahil edip eylemler gerçekleştirebilmektedirler.
  • Workflows
    Workflows ise birden fazla agent’ı ve fonksiyonu birbirine bağlayan graf tabanlı iş akışlarını tanımlamaktadır. Bir başka deyişle, birden çok agent ve tool’un birlikte, belirli bir sırada ya da mantık grafiği içinde çalışmasını sağlayan yürütme motorudur.

    Workflows, Agent Framework’te; Semantic Kernel’daki function orchestration mantığıyla, AutoGen’deki multi-agent coordination yaklaşımını alıp, graph-tabanlı yürütme olan workflow orchestration katmanında bir araya getirmektedir.

    Workflows, tür batanlı yönlendirme (type-based routing), iç içe yerleştirme (nesting), kontrol noktaları oluşturma (checkpointing) ve insan müdahalesinin dahil olduğu senaryolarda (human-in-the-loop) request/response modellerini desteklemektedir.

İçeriğimizin sonraki satırlarında ve konuya dair sonradan klavyeye alacağımız makalelerde bu kavramların ne olduğunu daha net anlayacağınıza ve sindiriyor olacağınıza şüpheniz olmasın (inşallah 🙂 ). Bizler şimdilik mevzu bahis framework’e dair kavramları tanımak amaçlı masaya yatırmaya ve genel manada ne olduğunu anlamaya çalışmaya devam edelim.

Temel Yapı Taşları ve Mimari Unsurları Nelerdir?

Agent Framework, geliştiricilere geniş esneklik sağlayan aşağıdaki gibi özetleyebileceğimiz bir dizi temel bileşen içermektedir;

  • Model Clients : Sohbet tamamlama (chat completions) ve yanıt üretimi için kullanılmaktadır.
  • Agent Thread : Durum yönetimi (state management) için kullanılmaktadır.
  • Context Providers : Agent belleğini yönetmektedir.
  • Middleware : Agent eylemlerini yakalayıp işleyebilmektedir.
  • MCP Clients : Harici araçların entegrasyonunu kolaylaştırmaktadır.

Bu bileşenler bir araya geldiği taktirde biz geliştiriciler açısından etkileşimli, sağlam ve güvenli yapay zekâ uygulamaları oluşturma gücü ve esnekliği söz konusu olmaktadır.

Neden Semantic Kernel veya AutoGen Varken, Agent Framework Tasarlanmıştır?

Evet… İnsan, Agent Framework’ü duyunca akla direkt Semantic Kernel ve AutoGen gelmekte ve bunların neyimize yetmediğini ister istemez sorgulamaktadır 🙂 Evet… Semantic Kernel ve AutoGen, yapay zekâ agent’larının ve multi-agent orchestration kavramlarının öncüleri olabilirler, lakin bunlar üzerine aynı ekipler tarafından doğrudan halefleri olabilecek Agent Framework geliştirilmiş ve üstteki satırlarda ifade etmeye çalıştığımız gibi iki yapının da iyi ve güzel yanları bu framework’de bambaşka yenilikler eşliğinde birleştirilmiştir.

Hoca, hangi araçtan ne alındı? sorunuzu duyar gibiyim… Bunu aşağıda hemen izah etmeye çalışalım.

AutoGen’den Alınan Özellikler

Malumunuz AutoGen’in felsefesi basitlik ve agent etkileşimi (multi-agent dialog pattern) üzerine kuruluydu. Agent Framework, AutoGen’den şu özellikleri devralmıştır;

Özellik Açıklama
Basit soyutlamalar
(simpe abstraction)
AutoGen’de tek bir agent (single-agent) ya da birden çok agent (multi-agent) senaryosu tanımlamak son derece kolaydır. Agent’lar arasındaki rol ve diyalog tanımı yalın bir API üzerinden yapılabilmektedir.
Agent’lar arası iletişim deseni
(agent-to-agent pattern)
AutoGen, agent’ların birbirine mesaj gönderdiği ‘diyalog tabanlı’ orkestrasyonu başlatan ilk sistemlerden biridir. Bu mantık, Agent Framework’te korunmaktadır.
Tekli ve çoklu agent kalıpları
(single & multi-agent patterns)
Farklı görevleri olan bir veya birden fazla agent’ın aynı sistemde organize çalışabilmesi mantığı doğrudan AutoGen’den gelmektedir.
Semantic Kernel’dan Alınan Özellikler

Semantic Kernel tarafı, malumunuz olduğu üzere çok daha kurumsal düzeyde, mühendislik açısından disiplinli bir altyapıya sahiptir. Agent Framework, Semantic Kernel’dan bu güçlü altyapı unsurlarını almaktadır;

Özellik Açıklama
Thread-based state management Agent durumu (state), bir thread context’inde yönetilmektedir. Bu, uzun süreçlerde context kaybını engelleyen bir unsurdur.
Type safety Geliştirici hatalarını azaltmak için güçlü tip denetimi sağlanmaktadır.
Filters Agent davranışlarını veya model çağrılarını önceden ve sonradan işleyebilen middleware benzeri filtre mekanizmalarıdır.
Telemetry Sistem düzeyinde izleme, hata ayıklama, performans metrikleri toplama yeteneğidir.
Extensive model & embedding support Farklı model sağlayıcıları (Azure OpenAI, OpenAI, Azure AI) ve embedding yapıları için yerleşik destek sağlamaktadır.
Agent Framework’ün Kendi Getirisi Olan Özellikler

Agent Framework, iki dünyayı birleştirmekle kalmıyor, bunların üzerine yepyeni bir katman ekleyerek yeni özellikler sunuyor;

Özellik Açıklama
Graph-based workflows Multi-agent yürütme yollarını grafik olarak tanımlama özelliğidir. Yani bu özellik sayesinde; agent’lar, fonksiyonlar ve tool’lar arası akışı açıkça kontrol edebilmekteyiz.
Gelişmiş state management Uzun soluklu süreçler ve insan müdahalesi gerektiren döngüler (human-in-the loop) için dayanıklı state management sağlamaktadır.
Explicit orchestration control Artık sistem sadece konuşmaları değil, tüm görev akışlarını yönetebilmektedir. Yani, hangi agent ne zaman devreye girecek? gibi kararlar belirlenebilmektedir.

Evet, artık Agent Framework’ün farkındalığını oluşturduğumuza göre şu andan itibaren konseptlerini detaylandırmaya geçebiliriz.

Agent Framework Konseptleri

İçeriğimizin önceki satırlarında Agent Framework’ün iki kritik kavramını sonradan daha da netleştirip anlayabileceğimizden bahsetmiştik. Evet, bu iki kavram AI Agents ve Workflows kavramlarıdır. Tekrar bu konseptlere dönüp, daha derin inceleyebilmek için hususi olarak masaya yatırmamız, Agent Framework’ün davranışını ve kullanım deneyimini anlamamız için oldukça önem arz etmektedir. Hadi başlayalım;

  • AI Agent Nedir?

    AI Agent, önceki yazılarımızda (bknz : ai agents) bol bol bahsettiğimiz ve üzerine istişarelerde bulunduğumuz bir kavramdır. Agent Framework açısından AI Agent, yine benzer bir tanıma sahip olan bir yapıya sahiptir. Yani, bir LLM kullanarak kullanıcı girdilerini işleyen, kararlar alan, yanıt sürecinde tools’ları kullanabilen ve MCP Server ile yeteneklerini genişletebilen bir yapay zekâ ajanıdır.

    Bir AI Agent’ın temel bileşenlerini ve bu bileşenler arasındaki etkileşimleri aşağıdaki diyagram üzerinden inceleyebilirsiniz:

    Diyagramı incelerseniz eğer, AI Agent’ın görev döngüsü (agentic loop) adım adım gösterilmektedir. Kullanıcıdan gelen bir mesajın sistemin içinde nasıl işlendiği, hangi bileşenlerin ne zaman devreye girdiği ve LLM’in araçlarla (tools/MCP) nasıl etkileşime geçtiği anlatılmaktadır. Burada dikkat edilirse eğer User, Agent, LLM ve Tools/MCP olmak üzere dört temel aktör mevcuttur. Bu aktörler arasında akış;
    kullanıcıdan sistemeagent'tan LLM'egerekirse tools'laratekrardan kullanıcıya
    olacak şekilde bir döngüye sahiptir.

    Kullanıcı önce bir istek veya komut göndermektedir. Ardından agent, ilk ‘prompt’ (başlangıç yönergesi) ve context ile LLM’i hazırlamaktadır. Ardından agent, LLM’e hem kullanıcı girdisini hem de önceki context’i içeren isteği göndermektedir. LLM ise gelen girdiyi işlemekte ve bir sonraki adımı belirlemektedir. Eğer görev tamamlandıysa Task Complete adımına geçilmektedir, yok eğer dış bir eylem gerekiyorsa, Tool/MCP Call Required bloğu devreye girecektir. Diyelim ki Tool/MCP Call Required bloğuna gereksinim oldu, işte o taktirde LLM bir aracı çağırması gerektiğini agent’a bildirecektir. Agent ise ilgili tool’u veya MCP Server’ı çalıştıracaktır. Tool, işlevinin sonucunu döndürecek ve agent ise bu sonucu ve güncellenmiş context’i tekrar LLM’e gönderecektir. LLM bu yeni bilgiyi kullanarak işlevsel döngüsüne devam edecektir.

    Son olarak bir AI Agent, ayrıca yeteneklerini genişletmek amacıyla şu ek bileşenlerle zenginleştirilebilmektedir;

    • Thread
    • Context provider
    • Middleware

    Bu ek unsurlar, agent’ın işlevselliğini ve etkileşim kapasitesini önemli ölçüde artıracaktır.

    AI Agent Ne Zaman Kullanılmalıdır?
    AI Agent’lar, herhangi bir dış müdahaleye gerek kalmaksızın kendi kendine kararların verilmesi gereken özerk karar verme durumlarında (autonomous decision-making), anlık veya duruma göre özel ve dinamik olarak planlama yapılması gereken durumlarda (ad hoc planning), belirsiz ortamlarda hatalardan öğrenme ve çözüm arama süreci olan deneme-yanılma temelli keşif süreçlerinde (trial-and-error exploration) ve diyalog tabanlı kullanıcı etkileşimi (conversation-based user interactions) gerektiren senaryolarda oldukça ideal ve etkili çözümler sunmamızı sağlamaktadır.

    Yine de yaygın senaryoları kategorize etmemiz gerekirse eğer bu durumları aşağıdaki gibi belli başlı başlıklar altında toparlayabiliriz;

    • Müşteri Desteği
      AI Agent’lar, müşterilerden gelen metin, ses ve görsel sorguları hızlıca işleyebilir, hatta gerektiği taktirde tools devreye sokarak süreçteki eylemleri farklı yeteneklerle oldukça zenginleştirebilir.
    • Eğitim ve Öğretim
      Agent’lar, harici kaynakları kullanarak kişiselleştirilmiş öğretim sağlayabilir ve öğrencilerin süreçteki problemlerine eşlik ederek, varsa sorularını cevaplandırabilir.
    • Kod Üretimi ve Hata Ayıklama
      Yazılım geliştiricileri için AI Agent’lar uygulama geliştirebilir, kod inceleme (code review) ve debugging süreçlerinde yardımcı olabilir. Bu doğrultuda çeşitli programlama araçlarını ve ortamlarını etkin şekilde kullanabilir.
    • Araştırma Asistanlığı
      Araştırmacılar ve analistler için agent’lar, web üzerinde arama yapabilir, dokümanları özetleyebilir ve birden çok kaynaktan bilgileri bir araya getirebilir.

    Bu ve bunlara benzer senaryoları daha da artırarak kategorize edebiliriz. Burada görmemiz gereken bu senaryolardaki ortak özelliklerden yapacağımız şu çıkarımdır: AI Agent’lar, dinamik ve belirsiz ortamlarda, kullanıcı isteğini yerine getirmek için gereken adımların önceden tam olarak bilinmediği durumlarda çalışma sergileyebilmek ve insanların hayattaki süreçlerini kolaylaştırmak üzere tasarlanmışlardır.

    Peki AI Agent Ne Zaman Kullanılmamalıdır?
    AI Agent’lar, yüksek derecede yapılandırılmış ve önceden tanımlanmış kurallara sıkı sıkıya bağlı görevler için hiçte uygun değildirler. Eğer uygulamanız belirli bir tür girdiyi bekliyor ve bu girdiye karşılık önceden belirlenmiş, sabit bir işlem dizisi gerektiriyorsa, işte böyle bir durumda AI Agent’ları kullanmak oldukça gereksizdir! Çünkü bu tarz bir durumda AI Agent’lar, yalnızca gecikme (latency) ve maliyet yaratmaktan daha öte bir varlık gösteremeyecektirler.

    Unutmayın!
    Eğer bir görevi basit bir fonksiyon yazarak gerçekleştirebiliyorsanız, agent kullanmak yerine doğrudan o fonksiyonu yazınız! Fonksiyonu yazarken AI’dan yardım almakla, görevi komple agent’a devretmek aynı şey değildir!

    Ayrıca tek bir AI Agent, çok sayıda adım ve karar noktası içeren karmaşık görevlerle mücadele etmekte zorlanabilir. Bu tür görevler, misal olarak 20’den fazla tool gerektiren büyük sistemler olabilir ve tek bir agent’ın yönetemeyeceği kadar kapsamlı hale gelebilirler. İşte bu gibi durumlarda agent yerine workflow kullanmak daha doğru olacaktır!

  • Workflows Nedir?

    Bir workflow, önceden tanımlanmış bir işlem dizisini (predefined sequence of operations) ifade etmektedir ve bu dizinin içerisinde AI Agent’lar bileşen olarak yer alabilmektedir. Workflow’lar, bu yapıyı korurken bir yandan da tutarlılığı (consistency) ve güvenilirliği (reliability) de sağlamaktadırlar.

    Workflow’lar; birden fazla agent’ı, insan etkileşimini (human interaction) ve harici sistemlerle entegrasyonları (integrations with external systems) içerebilen karmaşık ve uzun süreli süreçleri yönetmek üzere tasarlanmışlardır.

    Bizler workflow ile çalışma sırasını (execution sequence) açık bir biçimde tanımlayabilmekte ve geliştirme sürecinde çalışma yolu (execution path) üzerinde daha yüksek düzeyde kontrol sağlayabilmekteyiz.

    Yukarıdaki diyagrama göz atarsanız eğer, iki yapay zekâ agent’ı ile bir fonksiyonu birbirine bağlayan örnek bir workflow göreceksiniz.

    Workflow’lar, koşullu yönlendirme (conditional routing), model tabanlı karar verme (model-based decision making) ve eşzamanlı yürütme (concurrent execution) kullanarak dinamik işlem dizilerini (dynamic sequences) de ifade edebilirler. İşte bu yapı sayesinde bizler, multi-agent orchestration pattern’ları rahatlıkla uygulayabilmekte ve birden fazla AI Agent’ın koordinasyonunu sağlayarak, çok adımlı karar noktaları içeren karmaşık görevler üzerinde birlikte çalışabilen mekanizmalar oluşturabilmekteyiz.

    Workflow, tek bir agent’ın sınırlamalarını aşmak amacıyla geliştirilmiş bir yaklaşımdır.

    Peki bu workflow hangi sorunları çözmektedir?
    Workflow’lar birden fazla adım, karar noktası ve farklı sistemler veya agent’larla etkileşim içeren karmaşık süreçleri yönetmek için yapılandırılmış bir yöntem sunmaktadırlar. Yani workflow’larla, birden fazla AI Agent’ın birlikte çalışması gereken senaryolarda tasarımlarda bulunulmaktadır.

    Workflow’lar, sistemin beyni olmasa da sinir ağı gibi çalışan yapısıdır.

    Agent Framework workflow’larının temel avantajlarını aşağıdaki gibi madde madde sıralayabiliriz;

    • Modülerlik
      Workflow’lar, daha küçük ve yeniden kullanılabilir bileşenlere bölünebilmektedirler. Böylece, tasarımsal sürecin bireysel bölümlerini yönetmeyi ve güncellemeyi kolay kılmaktadırlar.
    • Agent Entegrasyonu
      Workflow’lar, birden fazla AI Agent’ın ve agent olmayan bileşenlerin birlikte sofistike orkestrasyonunu mümkün kılmaktadırlar.
    • Tür Güvenliği
      Strong typing, bileşenler arasındaki mesajların doğru biçimde akmasını ve aktarılmasını sağlamakta ve böylece, runtime error’lar mümkün mertebe önlenebilmektedir.
    • Esnek Akış
      Graf tabanlı mimari (graph-based architecture), karmaşık iş akışlarını sezgisel biçimde modellemeye olanak tanımaktadır.
    • Dış Sistem Entegrasyonu
      Harici API’lerle sorunsuz entegrasyon sağlamakta ve insan faktörlü senaryoları da rahatlıkla desteklemektedir.
    • Durum Kaydı (Checkpointing)
      Workflow durumları, kontrol noktaları (checkpoint) aracılığıyla kaydedilebilmektedir. Bu özellik ile uzun süreli işlemlerin sunucu tarafında yeniden başlatılmasına ve sürdürülebilmesine olanak tanınmaktadır.
    • Multi-Agent Orchestration
      Birden fazla AI Agent’ın koordinasyonu için yerleşik kalıplar sunmaktadır. Bu kalıplar; (önceki Semantic Kernel İle Multi-agent Orchestration başlıklı makalemizde bahsedilen) sequential, concurrent, hand-off ve Magentic gibi davranışları içermektedir.
    • Birleştirilebilirlik
      Workflow’lar, iç içe (nested) veya birleştirilmiş (combined) biçimde tanımlanabilmekte ve böylece süreçler ölçeklenebilir ve uyarlanabilir (adaptable) hale getirilebilmektedir.

Görünen o ki, artık Microsoft Agent Framework’e ilişkin farkındalık kazanılmış ve özellikle AI Agent ile Workflow kavramlarının teorik temelleri anlaşılmış durumdadır diyebiliriz. Bu noktada, içeriğimizin sonuna yaklaşırken, Agent Framework’e hızlı bir başlangıç yapmamıza imkân tanıyacak uygulamalı bir örnek üzerinde durmak yararlı olacaktır.

Hızlı Başlangıç

İçeriğimizin nihai noktasında, Agent Framework’ün pratik kullanımına temas ederek konuyu bütünlemek yerinde olacaktır kanaatindeyim.

Evet… Her şeyden önce Microsoft Agent Framework‘ü kullanabilmek için ilgili projeye Microsoft.Agents.AI ve Microsoft.Agents.AI.OpenAI kütüphanelerinin dahil edilmesi gerekmektedir.

Bu işlemden sonra basit bir AI Agent mantığında çalışmayı aşağıdaki gibi sergileyebilirsiniz;

using Microsoft.Agents.AI;
using OpenAI;

string key = "sk-or-v1-0b*****71c960907";
string model = "qwen/qwen3-vl-8b-instruct";
string endpoint = "https://openrouter.ai/api/v1";

AIAgent agent = new OpenAIClient(
    credential: new System.ClientModel.ApiKeyCredential(key: key),
    options: new OpenAIClientOptions { Endpoint = new Uri(endpoint) })
        .GetChatClient(model: model)
        .CreateAIAgent(name: "Assistant", instructions: "Sen bir asistansın...");

var result = await agent.RunAsync("Nasılsın?");
Console.WriteLine(result.Text);

Evet, en yalın haliyle bir AI Agent’ı oluşturmak esasında bu kadar basit 🙂

Hazır el atmışken olayı biraz daha komplike hale getirelim ve MCP Server kullanabilen bir AI Agent geliştirelim derim. Bunun için de AutoGen İle Semantic Kernel Kullanımı ve MCP Desteği başlıklı makalemizde yaptığımız gibi mcpverse.dev platformu üzerinden Todoist MCP Server’ına bağlantı sağlayalım. Tabi bu çalışma için ilgili platform ve Todoist üzerinden MCP Server için gerekli yapılandırmaları tekrar etmeyecek, bizzat referans ettiğim yazıdaki gibi konfigürasyonlarda bulunup, bu kısımları bildiğinizi ve uyguladığınızı varsayacağım.

string todoistEndpoint = "https://api.mcpverse.dev/api/mcp/sse?server_id=61*****c94a11c";
string mcpverseKey = "sk_HCUVYVaHqcNi_WUN7HMv***********5VhPzUFSL";
string key = "sk-or-v1-0b5c714d5ff3b4*********3b77671c960907";
string model = "qwen/qwen3-vl-8b-instruct";
string endpoint = "https://openrouter.ai/api/v1";


var clientTransport = new HttpClientTransport(new HttpClientTransportOptions
{
    Endpoint = new Uri(todoistEndpoint),
    Name = "Todolist",
    AdditionalHeaders = new Dictionary<string, string>() { ["Authorization"] = $"Bearer {mcpverseKey}" }
});

var clientOptions = new McpClientOptions()
{
    ClientInfo = new Implementation()
    {
        Name = "TodolistClient",
        Version = "1.0.0"
    }
};


McpClient _mcpClient = await McpClient.CreateAsync(clientTransport: clientTransport, clientOptions: clientOptions);
var tools = await _mcpClient.ListToolsAsync();

AIAgent agent = new OpenAIClient(
    credential: new System.ClientModel.ApiKeyCredential(key: key),
    options: new OpenAIClientOptions { Endpoint = new Uri(endpoint) })
        .GetChatClient("qwen/qwen3-vl-8b-instruct")
        .CreateAIAgent(name: "Assistant", instructions: "Sen bir asistansın...", tools: tools.Cast<AITool>().ToList());

while (true)
{
    Console.Write("Talimat ver : ");
    string prompt = Console.ReadLine();
    var result = await agent.RunAsync(prompt);
    Console.WriteLine($"Cevap : {result.Text}");
}

Burada MCP Server’dan gelen tool’ların 32. satırda ‘tools’ parametresine eklendiğine dikkatinizi çekerim. İşte bu kadar basit 🙂Microsoft Agent Framework Nedir? Konseptleri Nelerdir?Evet, buradaki basit dokunuşlardan yola çıkarak Agent Framework‘ün, Semantic Kernel ve AutoGen‘e nazaran daha hızlı yapılandırılabildiğini ve bu doğrultuda basit olsa da oldukça etkili olduğunu söyleyebiliriz.

Nihai olarak,

Sonraki yazılarımda özellikle workflow yapılanmasını pratiksel olarak ele alacak ve farklı davranışlar ve pattern’lar eşliğinde AI Agent’ların nasıl geliştirileceğine bu framework çerçevesinde temas ediyor olacağız. Bizler şimdilik bu giriş yazısını burada nihayete erdirip, noktalayalım…

İlgilenenlerin faydalanması dileğiyle…
Sonraki yazılarımda görüşmek üzere…
İyi çalışmalar…

Not : Örnek çalışmaya aşağıdaki GitHub adresinden erişebilirsiniz.
https://github.com/gncyyldz/Microsoft_Agent_Framework_Quick_Start

Bunlar da hoşunuza gidebilir...

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir