Microsoft has recently released the release candidate (RC) of its Semantic Kernel .NET SDK, an open-source development kit designed to seamlessly integrate large language models with traditional programming languages like C#, Python, and Java. The announcement of the RC, made on December 5, marks a significant step in Microsoft’s ongoing efforts to facilitate the convergence of advanced language models with conventional programming practices.
As of December 7, the Semantic Kernel had progressed to the RC3 stage, nearing the finalization of its v1.0.0.0 structure. Microsoft has been actively refining the SDK to enhance its user-friendliness for both existing and new users. Noteworthy updates include the renaming of numerous classes and interfaces to better align with industry standards and the incorporation of custom classes into existing .NET implementations. The result is a more streamlined and accessible SDK, with a particular focus on simplifying the integration process.
One notable advancement is the complete automation of function calling with OpenAI, streamlining what was previously a multi-step process. Microsoft’s commitment to user convenience is evident in its efforts to simplify the SDK’s interface, making it more intuitive for developers working on diverse projects.
In a bid to enhance both the functionality and ease of use of the Semantic Kernel, Microsoft has designated it as the “property bag” for entire AI applications. This means that all elements of an application, including multiple AI services, plugins, loggers, and HTTP handlers, can now be seamlessly integrated into the kernel. Consequently, all components of the Semantic Kernel can leverage these elements to execute AI requests efficiently.
Developers can harness the power of dependency injection within the Semantic Kernel to create the kernel itself. Additionally, the process of describing all the necessary components for a prompt function has been streamlined into a single YAML file. Formerly known as semantic functions, this approach provides a more straightforward and consolidated way for developers to define the essential parameters for their applications, showcasing Microsoft’s commitment to fostering a more accessible and efficient development environment.