Back to Blog
2 min read

Semantic Kernel 2.0: Major Updates and New Features

Semantic Kernel 2.0 was announced at Build 2025 with significant improvements. Here’s what’s new.

Semantic Kernel 2.0 Features

Native Agent Support

import semantic_kernel as sk
from semantic_kernel.agents import Agent, AgentGroup

# Create agents with built-in capabilities
research_agent = Agent(
    name="Researcher",
    instructions="Research topics thoroughly",
    model="gpt-4o",
    plugins=[web_search_plugin, document_plugin]
)

analyst_agent = Agent(
    name="Analyst",
    instructions="Analyze data and provide insights",
    model="gpt-4o",
    plugins=[data_analysis_plugin, chart_plugin]
)

# Agent collaboration
group = AgentGroup([research_agent, analyst_agent])
result = await group.collaborate(
    "Analyze the impact of AI on healthcare in 2025"
)

Enhanced Memory System

from semantic_kernel.memory import SemanticMemory, MemoryStore

# Configure hybrid memory
memory = SemanticMemory(
    stores=[
        MemoryStore.vector("azure-ai-search"),
        MemoryStore.graph("neo4j"),
        MemoryStore.relational("postgres")
    ],
    embedding_model="text-embedding-3-large"
)

# Automatic memory management
kernel.add_memory(memory)

# Memory is automatically updated during conversations
result = await kernel.invoke_prompt(
    "Remember that the project deadline is June 15th"
)

# Later retrieval
result = await kernel.invoke_prompt(
    "What is the project deadline?"
)
# Output: "The project deadline is June 15th"

Process Framework

from semantic_kernel.processes import Process, Step

# Define complex workflows
process = Process("document-processing")

@process.step
async def extract_content(document):
    return await kernel.invoke_function("document", "extract", document)

@process.step
async def analyze_content(content):
    return await kernel.invoke_function("analysis", "analyze", content)

@process.step(condition=lambda r: r.needs_review)
async def human_review(analysis):
    return await request_human_review(analysis)

# Execute process
result = await process.run(input_document)

Semantic Kernel 2.0 provides enterprise-ready AI orchestration with improved developer experience.

Michael John Peña

Michael John Peña

Senior Data Engineer based in Sydney. Writing about data, cloud, and technology.