Releases: microsoft/semantic-kernel
python-1.28.0
New Features
- Python: Introducing SK as a MCP Server by @eavanvalkenburg in #11362
- Python: Support Auto Function Invocation Filter for AzureAIAgent and OpenAIAssistantAgent by @moonbox3 in #11460
- Python: Allow Kernel Functions from Prompt for image and audio content by @eavanvalkenburg in #11403
- Python: sample using GitHub MCP Server and Azure AI Agent by @eavanvalkenburg in #11465
Enhancements and Improvements
- Python: Add ChatCompletionAgent integration tests by @moonbox3 in #11430
- Python: Update Doc Gen demo based on latest agent invocation api pattern by @moonbox3 in #11426
- Python: Update Python min version in README by @moonbox3 in #11428
- Python: Improve agent integration tests by @moonbox3 in #11475
- Python: allow settings to be created directly by @eavanvalkenburg in #11468
- Python: small code improvements in code of call automation sample by @eavanvalkenburg in #11477
- Python: version updated to 1.28.0 by @eavanvalkenburg in #11504
Bug Fixes
- Python: Fix
TypeError
when required is missing in MCP tool's inputSchema by @KanchiShimono in #11458 - Python: Bug fix for azure ai agent truncate strategy. Add sample. by @moonbox3 in #11503
- Added missing import asyncio to agent with plugin python by @sphenry in #11472
Python Package Updates
- Python: Update chromadb requirement from <0.7,>=0.5 to >=0.5,<1.1 in /python by @dependabot in #11420
- Python: Bump google-cloud-aiplatform from 1.86.0 to 1.87.0 in /python by @dependabot in #11423
dotnet-1.46.0
Changes:
- 595cd19 .Net: Sample React App for SK Process Cloud Events demo (#11500) [ #11501 ]
- f155b91 .Net: Update SK MCP samples to the latest MCP C# SDK NuGet package (#11495)
- d9cbb70 .Net: Version 1.46.0 (#11489)
- f820502 .Net: Bump AWSSDK to 4.0.0-preview.13 in /dotnet (#11484)
- de7ef3d .Net: Update Microsoft.Extensions.AI to 9.4.0-preview (#11491)
- cc679c0 .Net: Update README.md (Typo "Azure Open AI"→"Azure OpenAI") (#11386)
- 47f921c .Net: Updates to WebFileDownloadPlugin (#11415)
- d72d74d .Net: Enable DI for SK plugins in MCP demo server (#11478)
- 041504d .Net: Feature declarative agents (#11347)
- 81e9a46 .Net: Updates to HttpPlugin (#11437)
- da116a1 .Net: Updates to FileIOPlugin (#11440)
- 516b6a5 .Net: Update MCP prompt sample (#11449)
- c6f9a81 .Net- Fixed Process Sample Step04 (#11455)
- a12b433 .Net: Added Structured Output example with Azure OpenAI and Function Calling (#11447)
- 072c476 .Net: Samples for MCP Resources and Resource Templates (#11433)
- 7b3c378 .Net: Process: Document generation gRPC sample (#11206) [ #11223 ]
- 3ec6d01 .Net: Expose underlying method from kernel function (#11378)
- 61c3fdc .Net: Extend sample to show how to use MCP Tools from an Agent (#11361)
- 664da12 Updated README.md (#11372)
- dc0a434 .Net: Remove experimental flags for stable items (#11346)
python-1.27.2
Release Notes
New Features
Enhancements and Improvements
Bug Fixes
- Python: fix for enum handling in openai event creation in realtime by @eavanvalkenburg in #11397
- Python: add AzureAIAgent, OpenAIAssistant and OpenAIResponsesAgent Integration tests, AzureAIAgent FCC gen bug fix by @moonbox3 in #11394
Full Changelog: python-1.27.1...python-1.27.2
python-1.27.1
Release Notes
Important
This version contains a regression for AzureAIAgent
function calling paths. Please upgrade to the 1.27.2
or later.
New Features
Enhancements and Improvements
- Python: Updates by @moonbox3 in #11371
- Python: Add
release_candidate
decorator by @moonbox3 in #11368
Bug Fixes
- Python: Use correct env var for AOAI Responses Deployment Name in README, Fix Responses config checks by @moonbox3 in #11379
New Contributors
Full Changelog: python-1.27.0...python-1.27.1
python-1.27.0
Release Notes
New Features
- Python: Allow for Agents as Kernel Functions by @moonbox3 in #11184
- Python: Add AzureAIAgent Structured Outputs sample by @moonbox3 in #11281
- Python: Introduce the OpenAI Responses Agent by @moonbox3 in #11240
- Python: Introducing the SQL Connector by @eavanvalkenburg in #10981
- Python: Introducing support for using a MCP server as a plugin by @eavanvalkenburg in #11334
- Python: Add on_intermediate_message callback to the Agent abstraction by @TaoChenOSU in #11321
Enhancements and Improvements
- Python: Update AzureAIAgent sample by @moonbox3 in #11175
- Python: Update Agent invoke abstraction parameters by @TaoChenOSU in #11192
- Python: Add thread_id to assistant message to avoid duplication by @moonbox3 in #11221
- Python: Common agent invocation API updates by @moonbox3 in #11224
- Python: Improve call_automation demo README by @moonbox3 in #11249
- Python: Pass kernel args through to kernel invoke function call for AzureAIAgent and AssistantAgent by @moonbox3 in #11250
- Python: Restructured data folder and multiple improvements to vector stores by @eavanvalkenburg in #11302
- use env variables for new issue by @eavanvalkenburg in #11327
- Python: Add deprecaton warning to add_chat_message for server agents by @moonbox3 in #11331
- Add Discussion label workflow by @moonbox3 in #11300
Bug Fixes
- Python: Fix agent getting started samples by @TaoChenOSU in #11238
- Python: Fix agent samples by @TaoChenOSU in #11278
- Python: Fix sample and README by @moonbox3 in #11298
- Python: Update sample output by @moonbox3 in #11349
Python Package Updates
- Python: Bump google-cloud-aiplatform from 1.83.0 to 1.85.0 in /python by @dependabot in #11176
- Python: Bump google-cloud-aiplatform from 1.85.0 to 1.86.0 in /python by @dependabot in #11295
- Python: Update sentence-transformers requirement from <4.0,>=2.2 to >=2.2,<5.0 in /python by @dependabot in #11294
- Python: Update pydantic requirement from !=2.10.0,!=2.10.1,!=2.10.2,!=2.10.3,<2.11,>=2.0 to >=2.0,!=2.10.0,!=2.10.1,!=2.10.2,!=2.10.3,<2.12 in /python by @dependabot in #11293
- Python: Update websockets requirement from <15,>=13 to >=13,<16 in /python by @dependabot in #11016
- Python: Bump Python version to 1.27.0 for a release. by @moonbox3 in #11358
Full Changelog: python-1.26.1...python-1.27.0
dotnet-1.45.0
Changes:
- bcedfb6 .Net: Mark ChatHistoryAgent as experimental (#11363)
- 4aac0bc .Net: Version 1.45.0 (#11357)
- ecf5cba .Net: Fix bug in sqlite filter logic (#11356) [ #11132 ]
- 78a6793 .Net: Some changes to add clarity and align with the Blog Post (#11359)
- 1fe0ea6 .Net: MCP prompt sample (#11342)
See More
- 0a94e61 .Net: Add date to obsolete messages for when to expect these methods to be deleted. (#11329) [ #11315 ]
- 14f9e21 .Net: Rename OnNewMessage callback to OnIntermediateMessage (#11328)
- 5f8a56a .Net: Move hybrid search tests to new projects and adopt updated software design. (#11339) [ #11311 ]
- 44370f9 .Net: Removing KernelAgent.cs and moving its functionality into Agent.cs (#11244)
- fa4b64a .Net: Add Audio Input and Output support for OpenAI chat completions (#11279) [ #10493 ]
- ec1222c .Net: Merge Tavily feature branch to main (#11227) [ #11060 ]
- a86b2b9 .Net: Fix mapping of the KernelParameterMetadata.IsRequired property (#11309)
- de8b2ab .Net: Add hybrid search sample (#11262) [ #10896 ]
- 8f0d00a .Net: Refactor MCP client for improved code readability (#11306)
- 6e74be2 .Net: Qdrant CRUD datetime support (#11285) [ #11086 ]
- f4495d9 .Net: Update MCP nuget package (#11288)
- 53a503c .Net: Remove the Agent preview suffix (#11303)
- 6105f91 .Net: Bump AWSSDK.BedrockRuntime and AWSSDK.Core in /dotnet (#11296) [ #3721, #3714 ]
- 635eb24 .Net: Saicharan ms/openapi server override hierarchy support (#11216)
- dd5aa2f .NET: Exclude 'decisions' folder from link check (#11191)
- f75757a .Net: Upgraded Microsoft.CodeAnalysis.Common from 4.11.0 to 4.13.0. (#11168) [ #10868 ]
- 026dc1d .Net: Removing groupchat from samples that have a single agent and aren't demonstrating a groupchat concept (#11261)
- bfb9647 .Net: Fix the unknow typo (#11260)
- 57d1a5e .Net: Switch from hardcoded model id (#11234)
- 038dddd .Net: Add fix to ChatCompletionAgent for function call termination bug (#11235)
- 69e4e6b .Net: Add MCP server/client sample (#11232)
- 38d891e .Net: Add support for getting notified of all messages and obsolete remaining methods using threadId. (#11229)
- 8875f9f .Net: Add support for agent specific params (#11201)
- d35d0c9 .Net: Add invoke overloads for string and no message. (#11219)
- a9b99d4 .Net: Fixing some issues with streaming invoke, obsoleting old invoke metho… (#11218)
- e1c4879 .Net: Fix bug where invoking with no message throws for some agents. (#11217)
- aaf7aa6 .Net: Add additional integration tests for the common agent invoke api (#11186)
- 225a95c .Net: Update README.md (Typo "Azure Open AI"→"Azure OpenAI") (#11193)
- aa50688 .Net: Added missing KernelFunction attribute to DownloadFileAsync in SessionsPythonPlugin (#11215)
This list of changes was auto generated.
dotnet-1.44.0
python-1.26.1
Release Notes
New Features
Important
Please review the updated migration guide for details on updating your agent-related code
Common Agent Invocation API
We introduced a new common abstraction to manage threads for all agents. For each agent we now expose a thread class that implements the AgentThread
base class, allowing context management via methods like create()
and delete()
.
Agent responses get_response(...)
, invoke(...)
, invoke_stream(...)
now return an AgentResponseItem[ChatMessageContent]
, which has two attributes:
message: TMessage # Usually ChatMessageContent
thread: AgentThread # Contains the concrete type for the given agent
It is still possible to get the content
, role
, or items
properties on the response
object:
for user_input in USER_INPUTS:
print(f"# User: {user_input}")
response = await agent.get_response(messages=user_input, thread=thread)
print(f"# {response.name}: {response}"
Agent Invocation Updates
Further, we have updated the previous message
keyword argument on all the agent get_response(...)
, invoke(...)
, and invoke_stream(...)
methods. The new argument is messages
which has the type str | ChatMessageContent | list[str | ChatMessageContent]
.
Agent Imports
All agent import paths have been consolidated under semantic_kernel.agents
.
Updated import style
from semantic_kernel.agents import (
AutoGenConversableAgent,
AzureAIAgent,
AzureAssistantAgent,
BedrockAgent,
ChatCompletionAgent,
OpenAIAssistantAgent,
)
Previous import style (deprecated):
from semantic_kernel.agents import ChatCompletionAgent
from semantic_kernel.agents.autogen import AutoGenConversableAgent
from semantic_kernel.agents.azure_ai import AzureAIAgent
from semantic_kernel.agents.bedrock import BedrockAgent
from semantic_kernel.agents.open_ai import AzureAssistantAgent, OpenAIAssistantAgent
Enhancements and Improvements
- Python: Update README.md by @jun216tee in #11024
- Python: Exclude certain fields from KernelFunction model dump by @moonbox3 in #11081
- Python: removed old search plugins by @eavanvalkenburg in #11035
- Python: Add Copilot Studio Agents and Copilot Studio Skill demos by @unsafecode in #11006
Bug Fixes
- Python: Fix agent_id kwarg in AzureAIAgent retrieval sample by @moonbox3 in #11057
- Python: Pass api_key to azure config base init by @moonbox3 in #11056
- Python: lazy-loading mechanism for agent dependencies by @moonbox3 in #11180
Python Package Updates
- Python: Unit tests for ollama services utils and dapr_actor_registration by @rracanicci in #10849
New Contributors
- @jun216tee made their first contribution in #11024
- @unsafecode made their first contribution in #11006
Full Changelog: python-1.25.0...python-1.26.1
dotnet-1.43.0
Changes:
- 59da20c .Net: Version 1.43.0 (#11170)
- 90b2339 .Net: Agent Framework With Aspire (#11151)
- f858358 .Net: minor readme edits - my first PR to SK (#11120)
- 05d598f .Net: Disable link chekc (#11159)
- c63245d .Net Commenting out Dapr documentation links (#11153)
- f8e1e56 .Net: Structured Data Plugin - Query and CRUD Operations (#10858) [ #10099, #10733, #10734 ]
- 15abebb .Net: Add Ollama ChatCompletion with Vision Sample (#11113)
- e96c693 .Net: Encode Kusto keys that contain a ' (#11114)
- 1322314 .Net: Update AI Clients to defend against URL injection attacks (#11088)
See More
- 9cf1ee2 .Net: Fix unstable {Azure}OpenAI telemetry UT (#11093) [ #11036 ]
- e67c25a .Net - Add Web Search Support to OpenAIPromptExecutionSettings (#10934)
- 8a8b0b5 .Net MEVD: Port the Pinecone connector to use Pinecone.Client (#10952) [ #10788, #10944, #10415 ]
- e48a975 .Net: Fix Amazon Bedrock UT (#11079)
- f80e080 .Net: Remove AllowUnsafeBlocks (#11074)
- 5524b62 .Net: Update Azure and OpenAI to latest beta.4 (#11073) [ #11071 ]
- 7a9ecb8 .Net: Avoid using test.com is samples and tests (#11075)
- 859e82c .Net: Remove old warnings (#11070)
- f85c217 .Net: Fixed links (#11068)
- ba81b70 .Net MEVD: Split batches to account for the SQL Server 2100 parameter limit (#11047) [ #11029 ]
- eae17f9 .Net Agents - Remove default kernel assignment from samples (#11011)
- e521cc1 .Net MEVD: add new test that ensures that UpsertBatchAsync can insert and update records from the same batch (#11038) [ #10979 ]
- 9d027f6 .Net: Fix and put back Ollama tool asserts (#11046)
- fc6c2d4 .Net: Support for configuring dimensions in Google AI embeddings generation (#10489)
- b198d9f .Net Fix #10964 Gemini typeof(T) schema breaks logging (#10993)
python-1.25.0
Release Notes
New Features
Enhancements and Improvements
- Python: small fix for Pinecone integrated embeddings by @eavanvalkenburg in #10953
Python Package Updates
New Contributors
Full Changelog: python-1.24.1...python-1.25.0