明志唯新

Semantic Kernel .NET 1.0 Beta3 发布了

发表于

今天 Semantic Kernel dotnet 1.0 beta3 发布了!

这个版本带来了一些重要的变化和改进:

  1. 破坏性变更:我们修复了 Text 和 Chat 结果在继承 StreamingResult 方面的问题

这个修复是为了解决以下问题和改进用户体验:

  • 当你想要使用流式传输时,很容易误调用非流式传输API。
  • 这样还解决了将非流式行为/实现强加于流式对象的问题。
  • 调用者应该更容易地调用预期的流式传输API。

为了解决这个问题,我们移除了从 ITextResultIChatResult 到流式传输对应接口的继承。这样做可以避免将非流式对象派生为流式传输对象。

  1. 升级 NuGet 版本至 1.0.0-beta3

更新了 NuGet 的版本,以增强整体性能和稳定性。

  1. PromptTemplateEngine 使用 FunctionRunner

改进了 PromptTemplateEngine,现在它使用了 FunctionRunner。这个改进的原因:

  • 在调用模板中的函数引用时能够触发 Hooks。
  • 进一步向 Kernel.RunAsync 迈进一步。

为了实现这个目标,将模板引擎逻辑迁移到使用 context.FunctionRunner.RunAsync 而不是 function.InvokeAsync。这样做可以将函数查找的责任从 PromptTemplateEngine 中移除。

  1. KernelOpenAIExtensions 改名为 OpenAIKernelExtensions

为了与包内其他类的命名规则保持一致,重命名为 OpenAIKernelExtensions。这将提高代码的一致性和可读性。

  1. Semanitc Functions 重构到 SK Core

将 Semantic Functions 重构到 SK Core 中,使用 SemanticKernel.Core 项目代替 Functions.Semantic 项目。

  • SemanticKernel.Core 项目用于 SemanticFunctionPromptTemplatePromptTemplateConfig 类。
  • Plugins.Core 项目不再引用 Functions.Semantic 项目。
  1. 更新依赖包

更新了一些依赖包的版本,包括 xunit、DuckDB.NET.Data.Full 和 DuckDB.NET.Data。这将带来更好的兼容性和性能等。

  1. 更新 dotnet 版 README

以与 SK 1.0.0-beta2 保持一致。这将提供更准确的文档和指导。

以上就是 Semantic Kernel dotnet 1.0 beta3 的主要变化和更新。

今天官方也同时发布了 python-0.3.14.dev,因为 python 的版本还比较早期,暂时不做过多介绍,感兴趣的朋友可以移步到官方代码库https://github.com/microsoft/semantic-kernel了解。Semantic Kernel 技术社区将持续关注官方的相关信息,及时跟大家汇报。

感谢 Semantic Kernel 项目团队的辛苦付出,期待 Semantic Kernel .NET 1.0 正式版早日发布。