هوش مصنوعی برای توسعهدهندگان داتنت چیست؟
نقشه راه استفاده از هوش مصنوعی مولد (Generative AI) در اپلیکیشنهای داتنت — از فراخوانی ساده API تا ارکستراسیون Agentها.
چرا مهم است؟
امروز تقریباً هر محصول نرمافزاری جدی حداقل یک قابلیت مبتنی بر LLM دارد (چتبات، جستوجوی هوشمند، خلاصهسازی). اکوسیستم داتنت ابزارهای رسمی (Microsoft.Extensions.AI، Semantic Kernel) برای این کار دارد که یادگیریشان مسیر ورود سریعتری از صفر نوشتن HTTP Client برای هر Provider است.
تعریف
افزودن قابلیتهای مبتنی بر مدلهای زبانی بزرگ (LLM) — مثل تولید متن، چت، جستوجوی معنایی و خودکارسازی تصمیمگیری — به اپلیکیشنهای داتنت، معمولاً از طریق فراخوانی یک سرویس ابری (OpenAI، Azure OpenAI) یا اجرای مدل محلی (Ollama).
لایههای اکوسیستم داتنت برای AI
| لایه | نقش | مثال |
|---|---|---|
| Provider | خود مدل زبانی | OpenAI، Azure OpenAI، Ollama |
| Abstraction | رابط یکسان بالای Providerها | Microsoft.Extensions.AI (IChatClient) |
| Orchestration | ترکیب چند فراخوانی، Plugin و حافظه | Semantic Kernel |
| Data | دانش اختصاصی برای RAG | Vector Database (Qdrant، Azure AI Search) |
یک فراخوانی ساده
using Microsoft.Extensions.AI;
IChatClient client = new OpenAIClient(apiKey)
.AsChatClient("gpt-4o-mini");
var response = await client.GetResponseAsync("پایتخت ایران کجاست؟");
Console.WriteLine(response.Text);
اشتباه رایج
❌ نوشتن مستقیم HttpClient برای هر Provider بهجای استفاده از Microsoft.Extensions.AI — با تغییر Provider (مثلاً از OpenAI به Azure OpenAI) کل کد باید از نو نوشته شود، درحالیکه با انتزاع مشترک فقط تنظیمات DI عوض میشود.
منبع و مطالعه بیشتر
خلاصه
توسعهدهنده داتنت امروز برای افزودن قابلیت AI نیازی به نوشتن HTTP Client خام ندارد؛ Microsoft.Extensions.AI رابط یکسان بالای هر Provider و Semantic Kernel لایه ارکستراسیون آن است. برای دانش اختصاصی هم باید RAG را با یک Vector Database ترکیب کرد. مرجع کامل: Microsoft Learn.
