Tutorials ASP.NET Core with Agentic AI Tutorial
Semantic Kernel Basics — Complete Guide
Semantic Kernel Basics — Complete Guide: free step-by-step lesson with examples, common mistakes, and interview tips — part of ASP.NET Core with Agentic AI Tutorial on Toolliyo Academy.
On this page
Introduction
Semantic Kernel Basics — Complete Guide is essential for developers building Enterprise Agentic AI Platform — Toolliyo's 100-article ASP.NET Core with Agentic AI path covering AI foundations, ASP.NET Core AI APIs, Semantic Kernel, multi-agent orchestration, RAG/vector stores, AI security, cloud-native deployment, SaaS patterns, and enterprise projects (CRM copilot, hospital assistant, ERP, analytics, coding assistant).
Teams shipping production copilots need semantic kernel basics with tool calling, tenant isolation, eval harnesses, and observability — not single-turn chat demos.
After this article you will
- Explain Semantic Kernel Basics for ASP.NET Core agentic AI — orchestration, tools, memory, and governance
- Apply semantic kernel basics inside Enterprise Agentic AI Platform (Coding Assistant)
- Compare chatbot demos vs production multi-agent systems with eval and observability
- Answer interview questions on Semantic Kernel, RAG, tool calling, and AI security
- Connect to Article 22 in the 100-lesson path
Prerequisites
- Software: .NET 8 SDK, VS 2022, Azure OpenAI access
- Knowledge: ASP.NET Core, Prompt Engineering, Agentic AI with .NET
- Previous: Article 20 — Enterprise AI APIs — Complete Guide
- Time: 24 min reading + 30–45 min hands-on
Concept deep-dive
Level 1 — Analogy
Semantic Kernel is the agent operating system — Kernel loads plugins (drivers), planners (GPS), and memory (notebook).
Level 2 — Technical
Semantic Kernel Basics implements Semantic Kernel — Kernel DI, native/semantic plugins as tools, planners for multi-step goals, and versioned prompts in Git for Coding Assistant.
Level 3 — Agent orchestration flow
[User / Partner API / Webhook]
▼
[ASP.NET Core Agent Orchestrator API]
▼
[Semantic Kernel + Plugins / Tool Schemas]
▼
[Specialist Agents + Memory (Redis / Qdrant / pgvector)]
▼
[Policy · Approval · OpenTelemetry · Audit Log]
▼
[Project module: Coding Assistant]
Common misconceptions
❌ MYTH: ASP.NET Core agents are just OpenAI API wrappers.
✅ TRUTH: Production stacks add Semantic Kernel plugins, DI, auth, streaming, background workers, and eval gates.
❌ MYTH: Vector DB choice matters more than chunking and eval.
✅ TRUTH: Chunk quality, hybrid retrieval, citation prompts, and golden-task tests drive answer quality — not logo picking.
❌ MYTH: GPU clusters are required for every enterprise agent.
✅ TRUTH: Most copilots call hosted LLM APIs; GPU orchestration matters for self-hosted models and batch inference.
Solution structure
EnterpriseAgenticAI/
├── src/
│ ├── EnterpriseAgenticAI.Api/ ← ASP.NET Core agent endpoints
│ ├── EnterpriseAgenticAI.Agents/ ← SK agents, plugins, orchestrators
│ ├── EnterpriseAgenticAI.Core/ ← Tool schemas, policies, contracts
│ └── EnterpriseAgenticAI.Tests/ ← Golden-task eval + xUnit
├── infra/
│ ├── docker-compose.yml ← API + Qdrant + Redis
│ └── k8s/ ← AKS deployment
└── eval/ ← Golden scenarios per agent version
Hands-on implementation — Coding Assistant
Build Semantic Kernel Basics in Enterprise Agentic AI Platform for Coding Assistant: ASP.NET Core API + Semantic Kernel, tool calling with RBAC, RAG memory, and golden-task eval before deploy.
- Open EnterpriseAgenticAI solution (Api, Agents, Core, Tests).
- Configure ASP.NET Core AI endpoints, DI, and Azure OpenAI in Program.cs.
- Register Semantic Kernel plugins and tool schemas with read-only defaults.
- Add RAG memory (Qdrant/pgvector) with tenant-isolated namespaces.
- Run golden-task xUnit eval and export OpenTelemetry traces per agent step.
Anti-pattern (OpenAI in controller, no auth, no eval, shared tenant memory)
// ❌ BAD — OpenAI in controller, no auth, no eval
[HttpPost("chat")]
public async Task<string> Chat(string msg)
{
var client = new OpenAIClient(apiKeyFromAppsettings); // secret in git
return await client.GetChatCompletion(msg); // no RAG, no audit, no tenant isolation
}
Production-style ASP.NET Core agent API
// ✅ PRODUCTION — Semantic Kernel Basics (Coding Assistant)
public class AgentOrchestrator : IAgentOrchestrator
{
public async Task<AgentResult> RunAsync(AgentRequest req, CancellationToken ct)
{
var kernel = _kernelFactory.Create(req.TenantId);
kernel.ImportPluginFromObject(new CrmReadPlugin(_db), "crm");
using var activity = ActivitySource.StartActivity("CrmCopilot");
var agent = _agentFactory.Create("CrmCopilot", kernel, readOnlyTools: true);
var result = await agent.InvokeAsync(req.Message, ct);
await _audit.LogAsync(req, result, activity);
return result;
}
}
Complete example
kernel.ImportPluginFromType<CrmSearchPlugin>();
kernel.ImportPluginFromType<OrderReadPlugin>();
Enterprise agent examples
Internal .NET coding copilot
Repo search RAG, Roslyn analyzer plugin, draft PR with human merge approval.
Coding Assistant DevOps tie-in
Read-only log query plugin; suggests rollback — never deploys without approval.
Enterprise Agentic AI Platform — Coding Assistant · Article 21
Evaluating agent workflows
[Fact]
public async Task Agent_PassesGoldenTasks()
{
var result = await _agentEval.RunGoldenTasksAsync("coding-assistant-v1");
Assert.True(result.SuccessRate >= 0.85);
}
Common errors & fixes
- Fat controllers calling OpenAI directly with secrets in appsettings — Agent orchestrator service + Key Vault; thin minimal APIs with auth and rate limits.
- Streaming responses without cancellation tokens — Use IAsyncEnumerable, HttpContext.RequestAborted, and timeout middleware on long agent runs.
- RAG without tenant ACL on vector chunks — Filter retrieval by tenant_id; encrypt embeddings at rest for regulated workloads.
- No token cost or latency dashboards — OpenTelemetry spans per SK step; Application Insights metrics for cost per tenant/day.
Best practices
- 🟢 Version agent configs; gate deploy on golden-task eval
- 🟢 Sandbox tools — read-only by default; approval for writes
- 🟡 Start with one specialist agent + RAG before multi-agent
- 🟡 Cap planner iterations; log OpenTelemetry spans per tool call
- 🔴 Never deploy without tenant-isolated memory and audit logs
- 🔴 Never trust user input as system instructions — use delimiters
Interview questions
Mid level
Q1: How does Semantic Kernel Basics fit an ASP.NET Core agent architecture?
A: Orchestrator API → SK Kernel → plugins/tools → memory → auth/audit → OpenTelemetry for Coding Assistant.
Q2: Semantic Kernel vs calling OpenAI directly?
A: SK provides plugins, planners, DI integration, and testable abstractions — raw API needs manual wiring.
Q3: How do you secure tool calling?
A: JSON schemas, RBAC allowlists, read-only defaults, human approval for writes, audit every invocation.
Senior / architect level
Q4: Single agent vs multi-agent?
A: Single for focused tasks; multi-agent when triage/research/write/supervise improves quality and safety.
Q5: How do you evaluate agents before deploy?
A: Golden-task xUnit suite — success rate, latency, token cost; block deploy on regression.
Q6: Multi-tenant RAG isolation?
A: Separate vector namespaces or tenant_id filters; encrypt at rest; never mix customer documents in retrieval.
Summary & next steps
- Article 21: Semantic Kernel Basics — Complete Guide
- Module: Module 3: Semantic Kernel · Level: INTERMEDIATE
- Project module: Coding Assistant
Previous: Enterprise AI APIs — Complete Guide
Next: Plugins — Complete Guide
Practice: Add one SK plugin with golden-task test — commit with feat(aspnet-agentic-ai): article-021.
FAQ
Q1: What is Semantic Kernel Basics?
Semantic Kernel Basics is core to building production agentic AI apps with ASP.NET Core and Semantic Kernel.
Q2: Python required?
No — this track uses C#, ASP.NET Core, Semantic Kernel, and Azure OpenAI throughout.
Q3: Which vector DB?
Examples use Qdrant, pgvector, Pinecone — patterns apply to any store with tenant filtering.
Q4: Interview relevance?
High — product and SI firms ask SK plugins, RAG, multi-agent design, and AI security.
Q5: How does Coding Assistant fit?
Article 21 applies semantic kernel basics to the Coding Assistant module track.
Interview prep for this lesson
Practice these questions aloud after reading—each links to a full structured answer.
Sign in to ask a question or upvote helpful answers.
No questions yet — be the first to ask!