Skip to content

Releases: microsoft/semantic-kernel

python-1.22.0

28 Feb 02:28
fd27470
Compare
Choose a tag to compare

Release Notes

New Features

  • Python: Agent get_response API by @TaoChenOSU in #10701

    We've simplified our APIs to make it easier to quickly get started with agents. You can now directly retrieve an agent response using:

    response = await agent.get_response(chat_history)

    This new API complements the existing invoke and invoke_stream methods you may already be using.

  • Python: Allow plugins via agent constructors. Update samples. by @moonbox3 in #10707

    We've streamlined the way plugins and services can be added to agents. You no longer need to separately define a kernel and manually add plugins before constructing an agent. The simplified constructor looks like this:

    agent = ChatCompletionAgent(
        service=AzureChatCompletion(),
        instructions="Answer questions about the world.",
        plugins=[SamplePlugin()],
    )

    This update enhances usability as we approach our release candidate. The previous approach remains valid, but this new method offers improved simplicity. Please refer to the migration guide for details on updating to SK 1.22.0+.

    The old way is still valid, but this is a much more streamlined approach.

  • Python: Add support for AutoGen's 0.2 ConversableAgent by @moonbox3 in #10607

    Semantic Kernel Python now supports integration with AutoGen 0.2's ConversableAgent, enabling seamless use within the SK ecosystem:

    from autogen import ConversableAgent
    from semantic_kernel.agents.autogen.autogen_conversable_agent import AutoGenConversableAgent
    
    async def main():
        cathy = ConversableAgent(
            "cathy",
            system_message="Your name is Cathy and you are a part of a duo of comedians.",
            llm_config={
                "config_list": [
                    {
                        "model": os.environ["OPENAI_CHAT_MODEL_ID"],
                        "temperature": 0.9,
                        "api_key": os.environ.get("OPENAI_API_KEY"),
                    }
                ]
            },
            human_input_mode="NEVER",  # Never ask for human input.
        )
    
        cathy_autogen_agent = AutoGenConversableAgent(conversable_agent=cathy)
    
        joe = ConversableAgent(
            "Joe",
            system_message="Your name is Joe and you are a part of a duo of comedians.",
            llm_config={
                "config_list": [
                    {
                        "model": os.environ["OPENAI_CHAT_MODEL_ID"],
                        "temperature": 0.7,
                        "api_key": os.environ.get("OPENAI_API_KEY"),
                    }
                ]
            },
            human_input_mode="NEVER",  # Never ask for human input.
        )
    
        joe_autogen_agent = AutoGenConversableAgent(conversable_agent=joe)
    
        async for content in cathy_autogen_agent.invoke(
            recipient=joe_autogen_agent, message="Tell me a joke about the stock market.", max_turns=3
        ):
            print(f"# {content.role} - {content.name or '*'}: '{content.content}'")
    
    
    if __name__ == "__main__":
        asyncio.run(main())
  • Python: Introducing AzureCosmosDBforMongoDB store and collection by @eavanvalkenburg in #10609

  • Python: Introducing the Chroma Connector with the new vector store design by @eavanvalkenburg in #10678

  • Python: Introduce feature decorator to allow for experimental and release candidate decorator usage by @moonbox3 in #10691

Python Package Updates

  • Python: Update boto3 requirement from ~=1.36.4 to >=1.36.4,<1.38.0 in /python by @dependabot in #10660
  • Python: Bump Python version to 1.22.0 for a release. by @moonbox3 in #10718

Enhancements and Fixes

  • Python: Improve/Simplify the Assistant Agents by @moonbox3 in #10666

    We’ve significantly enhanced our AzureAssistantAgent and OpenAIAssistantAgent classes to improve scalability and flexibility. Developers now have direct access to the underlying client and assistant model configurations. Note: this update introduces breaking changes for those upgrading from versions prior to 1.22.0. Please consult our migration guide to assist with the transition.

  • Python: Improve agent getting started samples by @TaoChenOSU in #10667

  • Python: improve feature decorator return type so it doesn't affect Pylance by @moonbox3 in #10704

  • Python: lazy create stores in integration tests by @eavanvalkenburg in #10705

Bug Fixes and Improvements

Full Changelog: python-1.21.3...python-1.22.0

dotnet-1.40.0

28 Feb 01:30
5e8fc1e
Compare
Choose a tag to compare

Changes:

  • 0235f2b .Net: Adding preview package suffix to Agents.OpenAI. (#10719)
  • 9d746f6 .Net: Updated package version (#10717)
  • 9401760 .Net Agents: Update experimental meta-data for graduation (#10600)
  • de22689 .Net: Use Contoso endpoints (#10711)
  • 9048d15 .Net: Concept sample showing how to switch deployments based on functions being called (#10480) [ #10466 ]
  • 583db49 .Net: Update sample to demonstrate how hybrid AI orchestration can be used with Kernel (#10684)
  • bd22ea3 .Net: Add support for OpenAPI parameters defined with schema but without a type (#10682)

This list of changes was auto generated.

dotnet-1.39.0

25 Feb 17:39
2c73059
Compare
Choose a tag to compare

Changes:

  • 2c73059 .Net: Updated package version (#10677)
  • a24de53 .Net: Bump Microsoft.ML.Tokenizers and Microsoft.ML.Tokenizers.Data.Cl100kBase in /dotnet (#10665)
  • f5480e9 .Net: Fix Usage Tokens in AzureOpenAI Connector - Added UT + IT's (#10657) [ #10636 ]
  • 7b83ffd .Net: Add prompt execution settings to AutoFunctionInvocationContext (#10551)
  • 4c91cfd .Net: Adds Process Framework with Aspire demo (#10614)
  • f431685 .Net Agents - Update Templating Pattern (#10633)
  • ef56875 .Net: Added traces for OpenAI Assistant and Azure AI channels (#10630)
  • 5c7e759 .Net: Change Agents.Abstractions to depend on SemanticKernel.Abstractions instead of SemanticKernel.Core (#10574) [ #10571 ]
See More

This list of changes was auto generated.

dotnet-1.38.0

20 Feb 18:46
2482cb9
Compare
Choose a tag to compare

Changes:

  • 2482cb9 Version 1.38.0 (#10625)
  • 82aafd3 .Net Agents - Refine client provider/factory (#10616)
  • 7137770 .Net: Add Bedrock Agent to .Net SDK (#10443)
  • a9b20b1 .Net Agents - Support role-override for ChatCompletionAgent (#10601)
  • b6e4e66 .Net: Bump System.Formats.Asn1 from 8.0.1 to 8.0.2 in /dotnet (#10579) [ #97110, #97065, #96838, #96566 ]
  • e183399 .Net Agents - Fix and streamlining for OpenAIAssistantAgent (#10583)
See More

python-1.21.3

19 Feb 23:45
e36c08a
Compare
Choose a tag to compare

Release notes

Python Package Updates

  • Python: Bump Python version to 1.21.3 for a release. by @moonbox3 in #10617

Bug Fixes and Improvements

  • Python: Fix kernel parameter metadata input type arg to call type_ by @moonbox3 in #10603

Full Changelog: python-1.21.2...python-1.21.3

python-1.21.2

19 Feb 00:58
b8835d2
Compare
Choose a tag to compare

Release Notes

Python Package Updates

  • Python: Bump google-cloud-aiplatform from 1.79.0 to 1.80.0 in /python by @dependabot (#10576)
  • Python: Bump Python version to 1.21.2 for a release by @moonbox3 (#10599)

Enhancements and Fixes

Bug Fixes and Improvements

  • Python: Fix Potential Infinite Recursion in Hashing Logic by Tracking Visited Objects by @moonbox3 (#10598)

Full Changelog: python-1.21.1...python-1.21.2

python-1.21.1

14 Feb 05:56
cd84e87
Compare
Choose a tag to compare

Release Notes

New Features

Python Package Updates

  • Python: Update motor requirement from <3.7.0,>=3.3.2 to <3.8.0,>=3.3.2 in /python.
    #10378 by @dependabot
  • Python: Bump Python version to 1.21.1 for a release.
    #10539 by @moonbox3

Enhancements and Fixes

  • Python: add AzureAIAgent client creation method. Handle user_agent.
    #10538 by @moonbox3

    Introduced a convenience method for creating an AIProjectClient via a class method on AzureAIAgent. This requires a minor update:

    async with (
        DefaultAzureCredential() as creds,
        AzureAIAgent.create_client(  # <-- Updated to call `create_client` on the agent
            credential=creds,
            conn_str=ai_agent_settings.project_connection_string.get_secret_value(),
        ) as client,
    ):
        # Operational code here
  • Python: removes AWS "us." region prefix from model id.
    #10329 by @gtang31-te

Bug Fixes and Improvements

  • Python: Fix Chat History Agent format instructions regression.
    #10512 by @moonbox3

New Contributors

Full Changelog: python-1.21.0...python-1.21.1

python-1.21.0

12 Feb 21:23
88fbaf8
Compare
Choose a tag to compare

Release Notes

New Features

  • Add support for Azure AI Agent Service (#10414)

  • Add Bedrock Agent (#10307)

  • Add vector search to Postgres connector (#10213)

  • Document generator agent framework demo (#10184)

  • Implement MongoDB Atlas store (#10177)

  • Allow AI Inference connector to use Azure AI Services resource (#10427)

  • Allow factory callbacks in the process framework (#10451)

    • See an example on how to configure a factory callback.
    • An example of providing the factory to the ProcessBuilder can be found here.
  • Add Azure AI Agent AI Search Sample. Update memory sample with README. (#10497)

    • Refer to the sample here.

Python Package Updates

  • Bump torch from 2.5.1 to 2.6.0 (#10380)
  • Update pymongo requirement from <4.11,>=4.8.0 to >=4.8.0,<4.12 (#10379)
  • Bump google-cloud-aiplatform from 1.60 to 1.79.0 (#10377)
  • Set openai package to newer version and remove default value of parallel tool calls (#10502)
  • Experimental Python 3.13 support (#10276)
  • Bump Python version to 1.21.0 for a release (#10500)

Enhancements and Fixes

  • Introduce allowed content types in chat history channel receive. Add mixed chat image sample. (#10347)
  • Update README.md to add clarity regarding .env file (#10360)
  • Update document generator demo README (#10386)
  • Update agent tracing span name and attributes (#10398)
  • Improve streaming output formatting with code present and fix CSV file paths for learn site sample (#10498)
  • Improved content initializations, added ndarray support for binary content, and small fixes to defaults (#10469)
  • Remove old references of plugin import (#10462)
  • Fixes to Cosmos DB NoSQL query syntax generation (#10373)

Bug Fixes and Improvements

  • Bug fix for issue #10340 (#10341)
  • Fix OpenAI assistant metadata type (#10383)
  • Fixed Python bug when enable_json_response=True (#10376)
  • Skip Ollama integration tests temporarily to unblock PRs (#10405)
  • Bug fix: Type Definition Error ImageContent (#10395)
  • Add unit tests for Bedrock agent integration (#10362)
  • Add Bedrock agent integration tests (#10400)

New Contributors

Full Changelog: python-1.20.0...python-1.21.0

Full Changelog: python-1.20.0...python-1.21.0

dotnet-1.37.0

12 Feb 20:51
87d5a50
Compare
Choose a tag to compare

Changes:

See More

This list of changes was auto generated.

dotnet-1.36.1

07 Feb 13:35
a2f335e
Compare
Choose a tag to compare

Changes:

See More
  • a6edd98 .Net: Avoid sending duplicate function tools when creating a thread (#10413)
  • 7ffd8b8 .Net: replaces message creation by send messages in CAP and API manifest samples and tests (#10357)
  • c938c18 .Net: Bump DuckDB.NET.Data from 1.1.2.1 to 1.1.3 in /dotnet (#10385)
  • e4b83ee .NET Agents - Fix updated grouping for Getting Started samples (#10402)
  • fd2d2c8 .Net: Bump Roslynator.Formatting.Analyzers from 4.12.9 to 4.12.11 in /dotnet (#10382) [ #1611, #1605, #1604, #1599, #1597, #1591, #1590, #1588, #1585, #1576 ]