Agentic AI Notebook
Phase 9

Semantic Kernel (Legacy)

~4 min read

Concept & How It Works

  • Key points are in the visual diagram above.

Why Does It Exist?

Enterprise teams need a production-grade framework that integrates with existing Microsoft ecosystems (Azure OpenAI, Cosmos DB, Entra ID) while supporting multiple languages (.NET, Python, Java). Semantic Kernel provides the plugin architecture, planning, and memory abstractions for enterprise agent development.

Real-World Analogy

Semantic Kernel is like an enterprise service bus for AI — it connects LLMs to your existing systems through standardized plugins, with the governance and integration patterns enterprises require.
Loading diagram...

Visual Workflows

What is Semantic Kernel (Legacy)?

Loading diagram...

Example

Scenario

Enterprise HR bot on Semantic Kernel: user asks about benefits → planner selects BenefitsPlugin → native function queries HR database → semantic plugin formats response → responsible AI filter checks output → Entra ID validates user access → response with telemetry logged.

Solution

In Agent Framework Landscape, apply Semantic Kernel (Legacy) to this scenario: Enterprise HR bot on Semantic Kernel: user asks about benefits → planner selects BenefitsPlugin → native function queries HR database → semantic plugin formats response → responsible AI filter checks output → Entra ID validates user access → response with telemetry logged. Identify the inputs, run the technique, validate the output, and note one thing you would monitor in production.

Practice Task

Do this before moving to the next module — reading alone is not enough.

Open the Code Walkthrough below and run it locally. Change one parameter related to Semantic Kernel (Legacy) (e.g. model, temperature, top_k, or tool name), observe the difference in output, and write 2–3 sentences explaining what changed.

Code Walkthrough

Highlighted lines show where Semantic Kernel (Legacy) happens in the code.

Semantic Kernel (Legacy)
1from semantic_kernel import Kernel  # import dependencies2from semantic_kernel.connectors.ai.open_ai import AzureChatCompletion  # import dependencies3from semantic_kernel.functions import kernel_function  # import dependencies4from semantic_kernel.planning import HandlebarsPlanner  # import dependencies5
6kernel = Kernel()  # key line for Semantic Kernel (Legacy)7kernel.add_service(AzureChatCompletion(  # key line for Semantic Kernel (Legacy)8    deployment_name="gpt-4o",9    endpoint="https://your-endpoint.openai.azure.com",10))11
12class HRPlugin:  # define a data structure or component13    @kernel_function(name="get_benefits", description="Get employee benefits info")  # key line for Semantic Kernel (Legacy)14    def get_benefits(self, employee_id: str) -> str:  # define a reusable function15        return hr_database.query(employee_id)  # return the result16
17kernel.add_plugin(HRPlugin(), plugin_name="hr")  # key line for Semantic Kernel (Legacy)18
19planner = HandlebarsPlanner(service_id="gpt-4o")20plan = await planner.create_plan("What are my health benefits?", kernel)  # key line for Semantic Kernel (Legacy)21result = await plan.invoke(kernel)  # key line for Semantic Kernel (Legacy)

Commands to Remember

Commands to Remember

  • pip install llama-index # LlamaIndex workflows
  • pip install semantic-kernel # Microsoft Semantic Kernel
  • pip install smolagents # Hugging Face agents

Common Mistakes

  • Only semantic plugins — missing native code integration
  • No responsible AI filters in production
  • Ignoring Process Framework for long-running tasks
  • Not leveraging Entra ID for enterprise auth
  • Using SK without Azure integration — loses key benefits

Cheat Sheet

Quick recap — the most important points from this module.

Cheat Sheet

quick ref
  • Kernel = central orchestrator
  • Native + semantic plugins
  • HandlebarsPlanner
  • Process Framework = durable
  • Entra ID + RAI filters
  • .NET + Python support