• Semantic Kernel .NET SDK 的 v1.0.0 Beta1 发布


    介绍

    Semantic Kernel (SK) 是一个开源的将大型语言模型(LLM)与流行的编程语言相结合的SDK,Microsoft将Semantic Kernel(简称SK)称为轻量级SDK,结合了OpenAI,Azure OpenAI和Hugging Face等AI LLM的集成。它使开发人员能够通过编排 AI 组件并将其与现有代码集成来创建 AI 应用。SDK 提供对 Java、Python 和 C# 的支持。它提供了用于添加内存和AI服务的连接器,为应用程序创建模拟的“大脑”。语义内核支持来自不同提供商的插件,为开发人员提供自己的 API,并简化 AI 服务的集成,使开发人员能够利用最新的 AI 进步并构建复杂和智能的管道。

    Semantic Kernel的.NET SDK 的 v1.0.0 Beta1 已经发布。此更新包括对 SDK 的多项更改和改进。一些关键更改包括将包和类从“技能”重命名为“插件”,添加对多个AI模型的支持,重构规划器和内存配置,以及引入新的结果类型(PromptTemplateConfig  FunctionResult  KernelResult)

    如果你需要的是从0.24 版本升级到v1.0.0 Beta1 ,执行以下操作:

    更新 NuGet 包

    若要更新 NuGet 包,需要进行以下更改:

    • 更新Meta package 以包含Semantic kernel的核心功能。
    • 重命名多个包以匹配新的命名约定。
    • 某些功能已提取到单独的包中。

    有关特定软件包名称更改的更多详细信息,请参阅提供的文章:介绍  Semantic kernel  .NET SDK 的 v1.0.0 Beta1[1]。

    更新您的代码

    若要更新代码,需要进行以下更改:

    • 将方法ImportAIPluginAsync重命名ImportPlugin为并更新插件导入方法和计划器。
    • Kernel.Core中提取语义函数。
    • 重构规划器、内存配置和函数扩展。
    • 将 GRPC 导入方法从ImportXXXPlugins 重命名为ImportXXXFunctions
    • 将Planner 包合并到单个包中。
    • 执行各种重命名操作以与新的“插件”命名约定保持一致。

    有关具体的代码更改和说明,请参阅提供的文档:介绍  Semantic kernel  .NET SDK 的 v1.0.0 Beta[1]。

    这些更新旨在改进Semantic kernel SDK 的整体组织和功能。请确保仔细按照说明进行操作,以避免在更新过程中出现任何问题。


    如果你还没有用上Semantic kernel,那么它的入门也是非常简单的:

    步骤

    1. 创建 GitHub 存储库
    2. 切换到存储库本地目录
    3. 使用 创建项目 dotnet new console
    4. 添加下面列出的一堆包
    5. 获取RepoUtils 要添加到项目中的文件夹
    6. 获取一个简单的程序,该程序取自KernelSyntaxExamples[2]
    7. 删除周围的所有垃圾,如下例所示
    8. 你应该能够dotnet run

    必需的 Nuget 包

    % dotnet add package Microsoft.SemanticKernel --version 1.0.0-beta1
    % dotnet add package Microsoft.Extensions.Configuration
    % dotnet add package Microsoft.Extensions.Logging
    % dotnet add package Microsoft.Extensions.Configuration.UserSecrets
    % dotnet add package Microsoft.Extensions.Logging.Console

    上面增加的这些是最核心的包,我们甚至都没有连接到任何大语言模型, 需要添加大模型,向量数据库以及插件等,需要另外按需添加对应的nuget包:

    25ec802e2dc40757908d10534fec9a9

    您的Program.cs

    using System;
    using System.Threading.Tasks;
    using Microsoft.SemanticKernel.Plugins.Core;
    using RepoUtils;
    
    Console.WriteLine("======== Functions ========");
    
    // Load native plugin
    var text = new TextPlugin();
    
    // Use function without kernel
    var result = text.Uppercase("Ai4c research institute!");
    
    Console.WriteLine(result);

    相关链接:

  • 相关阅读:
    Linux篇【5】:Linux 进程概念(二)
    车辆调度算法
    1.2 无监督学习和强化学习
    降维算法实战项目(1)—使用PCA对二维数据降维(Python代码+数据集)
    RabbitMQ常见操作命令
    使用.Net对图片进行裁剪、缩放、与加水印
    leetcode:231. 2 的幂(位运算)
    java计算机毕业设计基于springboo+vue的电脑城销售系统
    js判断是对象还是数组的方法
    深入Flink系列——watermark使用与源码详解
  • 原文地址:https://www.cnblogs.com/shanyou/p/17758153.html