Tutorials ASP.NET Core with Agentic AI Tutorial
Kernel Functions — Complete Guide
Kernel Functions — 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
ASP.NET Core with Agentic AI Tutorial · Lesson 23 of 100
Kernel Functions
AI basics → Agents
AI basics · 1 — Setup · ~6 min · Module 3: Semantic Kernel
What is this?
Kernel functions are individual callable tools exposed to the model — get account, post draft journal, search vectors. They map to C# methods the runtime invokes when the model requests a tool.
Why should you care?
ERP close workflows need discrete, testable functions instead of one mega-prompt guessing SQL.
See it live — copy this example
Paste into an ASP.NET Core 8+ / AgentNest project, then run with dotnet run (set your API keys in user-secrets).
// AgentNest.Plugins/Erp/GlPlugin.cs
public sealed class GlPlugin(IGlRepository gl)
{
[KernelFunction("fetch_balance")]
public async Task<decimal> FetchBalanceAsync(string accountCode, int fiscalYear, CancellationToken ct) =>
await gl.GetBalanceAsync(accountCode, fiscalYear, ct);
}
What happened?
- fetch_balance is the stable tool name models see.
- Returning decimal keeps tool results typed before the LLM narrates them.
Practice next
- Name functions with stable snake_case IDs for prompts.
- Keep parameters primitive or DTO-serializable.
- Handle exceptions inside functions — return error strings, not stack traces.
- Add optional asOfDate parameter to fetch_balance.
- Return a BalanceSnapshot record instead of raw decimal.
Remember
KernelFunction methods are AgentNest tools with explicit names. Return small typed results the model can summarize. Test functions independently of chat.
GL balance tool
Finance agent must cite exact ledger balance during variance chat.
Outcome: fetch_balance grounds narratives in SQL, not invented numbers.
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!