Semantic Kernel در مستندات رسمی بهعنوان یک SDK model-agnostic برای ساخت agentها و برنامههای هوش مصنوعی معرفی میشود که هسته آن بر kernel، pluginها، function calling و abstraction سرویسهای AI بنا شده است. این پروژه به توسعهدهنده اجازه میدهد سرویسهای مدل، pluginها، prompt templateها و در برخی سناریوها agent و process framework را در یک چارچوب واحد ترکیب کند، اما خودِ پروژه بهتنهایی معادل یک راهحل کامل RAG، orchestration runtime نهایی یا زیرساخت عملیاتی کامل نیست.
معماری Semantic Kernel حول kernel بهعنوان مرکز مدیریت سرویسها و pluginها شکل میگیرد. AI service connectorها لایهای مشترک برای چند نوع سرویس AI فراهم میکنند، pluginها مجموعهای از functionها را برای فراخوانی مدل یا template rendering در اختیار kernel میگذارند، و prompt templateها و agent abstractionها روی همین هسته سوار میشوند. در لایههای جدیدتر نیز agent framework و process framework نقشهای جداگانهتری برای سناریوهای agentic و workflow-oriented تعریف میکنند؛ بنابراین مرز میان framework عمومی، orchestration و process modeling در این پروژه چندلایه است و باید صریح توضیح داده شود.
در Semantic Kernel، loop اجرای agent یا task معمولاً حول function calling و chat completion شکل میگیرد. مستندات planning توضیح میدهند که Semantic Kernel اکنون از function calling بهعنوان مسیر اصلی plan-and-execute استفاده میکند و بخشهایی مانند ساخت schema، ارسال functionها، parsing پاسخ مدل، اجرای function و بازگرداندن نتیجه را خودکار میکند. این یعنی پروژه برای جریانهای tool-augmented و task-oriented مناسب است، اما کیفیت نهایی loop همچنان به طراحی pluginها، توصیف semantic functionها و انتخاب سرویس مدل بستگی دارد.
Plugin و function در Semantic Kernel نقش مرکزی دارند. pluginها میتوانند از کد native، OpenAPI specification، MCP server یا حتی prompt template ساخته شوند و functionها را برای استفاده مدل یا template در اختیار kernel قرار دهند. مستندات رسمی تصریح میکنند که pluginها برای خودکارسازی taskها و retrieval functionها با function calling بهکار میروند، بنابراین tool use در این پروژه بیشتر بهصورت plugin/function orchestration دیده میشود تا صرفاً تعریف مستقیم ابزارهای منفرد.
Semantic Kernel برای memory و retrieval چند لایه متفاوت دارد. مستندات componentها توضیح میدهند که vector store connectorها یک abstraction مشترک برای کار با چند provider فراهم میکنند و text search یا vector search میتواند از طریق plugin در اختیار kernel قرار گیرد. در عین حال، برخی بخشهای vector store و agent RAG هنوز preview یا experimental هستند؛ بنابراین توصیف دقیقتر این است که Semantic Kernel برای retrieval-aware application design و اتصال به لایههای vector/text search مفید است، اما بهتنهایی یک RAG platform کامل و نهایی محسوب نمیشود.
مستندات Agent Framework و README رسمی پروژه نشان میدهند که Semantic Kernel اکنون لایههایی برای ساخت agent و حتی multi-agent systemها دارد. با این حال، این بخش باید با احتیاط توصیف شود: وجود agent framework و orchestration package بهمعنای آن نیست که هر سناریوی multi-agent بهصورت پیشفرض حل شده است. هماهنگی agentها، مرزبندی مسئولیتها و انتخاب orchestration pattern همچنان به طراحی معمارانه بیرونی وابسته است.
Semantic Kernel در اصل یک framework عمومی برای composition سرویسها، pluginها و function calling است، نه یک orchestration-first graph runtime مانند LangGraph. با این حال، در مستندات رسمی لایههایی مانند planning، agent orchestration و process framework برای flowهای چندمرحلهای و business-process-oriented نیز دیده میشود. مرز مهم اینجاست که orchestration در Semantic Kernel بیشتر در قالب function calling loop، agent packages و process modeling توضیح داده میشود، نه در قالب یک graph-based runtime واحد و صریح.