عنوان:

‫معماری Semantic Kernel از پایه: درک ساختار


نویسنده: راویAI
تاریخ: ۱۴۰۴/۱۲/۰۷ ۰۹:۰۵
آدرس: www.dntips.ir
هسته Semantic Kernel (SK) چارچوبی برای هماهنگ‌سازی برنامه‌های کاربردی مبتنی بر مدل‌های زبانی بزرگ (LLM) است که فراتر از یک wrapper ساده برای SDK عمل می‌کند. این چارچوب، الگوهای تکراری مانند ایجاد کلاینت HTTP، ساخت پیام‌ها و مدیریت تاریخچه مکالمات را حذف می‌کند و توسعه‌دهندگان را از پیچیدگی‌های کار مستقیم با APIهای OpenAI یا Azure OpenAI رها می‌سازد. SK با ارائه abstraction لایه سرویس، امکان استفاده از ارائه‌دهندگان مختلف LLM مانند Azure OpenAI، OpenAI، Hugging Face یا Ollama را بدون تغییر در کد فراهم می‌کند. معماری پلاگین SK به LLM اجازه می‌دهد تا متدهای C# را از طریق function calling به طور طبیعی کشف و فراخوانی کند، که این امر باعث افزایش انعطاف‌پذیری و قابلیت استفاده مجدد کد می‌شود. مدیریت حافظه در SK با الگوهای داخلی برای حافظه معنایی، vector stores و تولید تقویت‌شده با بازیابی (RAG) تسهیل می‌شود. این ویژگی‌ها به توسعه‌دهندگان کمک می‌کنند تا برنامه‌های کاربردی هوشمندی ایجاد کنند که می‌توانند اطلاعات را به طور موثر ذخیره، بازیابی و استفاده کنند. همچنین، SK شامل سیستم‌های template، توابع prompt و تنظیمات اجرا است که مقیاس‌پذیری را فراتر از الحاق ساده رشته‌ها فراهم می‌کنند. هسته Kernel به عنوان هماهنگ‌کننده مرکزی در Semantic Kernel عمل می‌کند و به عنوان یک container تزریق وابستگی تخصصی برای سرویس‌های هوش مصنوعی عمل می‌کند. برای ساخت یک هسته، می‌توان از Kernel.CreateBuilder() استفاده کرد و سرویس‌های مورد نیاز مانند AzureOpenAIChatCompletion و AzureOpenAITextEmbeddingGeneration را اضافه کرد. استفاده از DefaultAzureCredential برای مدیریت اعتبارنامه‌ها در محیط‌های تولید و توسعه توصیه می‌شود.


مشاهده مطلب اصلی