微信公众号文章 Semantic Kernel —— LangChain 的替代品?[1] ,它使用的示例代码是Python ,他却发了这么一个疑问:

支持的语言对比(因为 Semantic Kernel 是用 C#开发的,所以它对 C#比较支持)如上所示。不清楚 Semantic Kernel 为什么要用 C#来开发,C#相比 Python 和 JavaScript 来说使用的人会少很多。

Semantic Kernel是微软在实践GPT 改造现有产品的过程中经验的总结,微软的产品: Bing.com , Office 365 等都是使用C# 开发的, Semantic Kernel 采用C#来开发就很自然了,大量的商业系统是使用C#、Java这样的强类型语言构建的,采用Python这样的弱类型语言构建商业系统并不多。随着ChatGPT的火爆,Prompt-tuning已经成为当前大语言模型(Large Lanugage Model,LLM)时代最流行的生产技术,使得很多人一夜之间似乎有了编程的能力。微软在这个背景下推出的一个结合LLM与传统编程技术的开源的编程框架Semantic Kernel更加切合应用开发的需求。SK 大约 是在 2023 年 3 月下旬开源,大约开源6个多月,比 LangChain 晚开源了4个月 ,其实SK 在微软内部的开发时间上要比Langchain 早的多,这也正是SK 的优良的架构和代码质量,同时制定了更为合理的插件开发规范,马上就要发布1.0 版本了。

文章在大模型支持的描述也是错误的:

Semantic Kernel 只支持 OpenAI,Azure OpenAI,HuggingFace 上的模型,而 LangChain 支持的模型要多得多。

Semantic kernel 不仅支持OpenAI, Azure OpenAI,HuggingFace上的模型, 它可以支持任何LLM, 社区已经做了很多的支持库,例如llama2、文心一言、通一千问等,具体可看我整理的Semantic kernel资源:https://github.com/geffzhang/awesome-semantickernel[2]:

Semantic kernel 鼓励对大模型的支持作为单独插件独立维护,增强SK 模块化和 可维护性: https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md#adding-plugins-and-memory-connectors[3]。

文章在对比Planner 和 Langchain Agent 时候的描述也是对Semantic Kernel有所微词:

目前 Semantic Kernel 就只有几种 Planner,对比 LangChain 还是比较少的,但一般的应用场景也足够用了。

Semantic kernel 还有一个基于 YAML 的 DSL 定义和执行复杂工作流的流业务流程协调程序扩展,提供灵活性,支持通用技能,包括语义函数、原生函数和需要聊天交互的技能,以更易于使用的方式进行交互。

Semantic Kernel 代表了微软在 AI 应用开发领域的探索,其功能和 LangChain 有所相似,但Semantic Kernel 是为应用开发开发人员创建的。Semantic Kernel 使构建企业AI编排器变得容易,这是Copilot Stack的中心[4]。Semantic Kernel的清晰文档和代码示例让应用程序开发人员容易理解,很容易就可以将Semantic Kernel 集成到应用程序中。

Semantic Kernel 还支持 ML 工程师和数据科学家喜爱的功能。

相关链接:

文章《Semantic Kernel —— LangChain 的替代品?》的错误和疑问 探讨的更多相关文章

  1. LangChain vs Semantic Kernel

    每当向他人介绍 Semantic Kernel, 会得到的第一个问题就是 Semantic Kernel 类似于LangChain吗,或者是c# 版本的LangChain吗? 为了全面而不想重复的回答 ...

  2. Semantic Kernel 知多少 | 开启面向AI编程新篇章

    引言 在ChatGPT 火热的当下, 即使没有上手亲自体验,想必也对ChatGPT的强大略有耳闻.当一些人在对ChatGPT犹犹豫豫之时,一些敏锐的企业主和开发者们已经急不可耐的开展基于ChatGPT ...

  3. Semantic Kernel 入门系列:🛸LLM降临的时代

    不论你是否关心,不可否认,AGI的时代即将到来了. 在这个突如其来的时代中,OpenAI的ChatGPT无疑处于浪潮之巅.而在ChatGPT背后,我们不能忽视的是LLM(Large Language ...

  4. Semantic Kernel 入门系列:📅 Planner 计划管理

    Semantic Kernel 的一个核心能力就是实现"目标导向"的AI应用. 目标导向 "目标导向"听起来是一个比较高大的词,但是却是实际生活中我们处理问题的 ...

  5. Semantic Kernel 入门系列:🪄LLM的魔法

    ChatGPT 只是LLM 的小试牛刀,让人类能够看到的是机器智能对于语言系统的理解和掌握. 如果只是用来闲聊,而且只不过是将OpenAI的接口封装一下,那么市面上所有的ChatGPT的换皮应用都差不 ...

  6. Semantic Kernel 入门系列:🔥Kernel 内核和🧂Skills 技能

    理解了LLM的作用之后,如何才能构造出与LLM相结合的应用程序呢? 首先我们需要把LLM AI的能力和原生代码的能力区分开来,在Semantic Kernel(以下简称SK),LLM的能力称为 sem ...

  7. Semantic Kernel 入门系列:💬Semantic Function

    如果把提示词也算作一种代码的话,那么语义技能所带来的将会是全新编程方式,自然语言编程. 通常情况下一段prompt就可以构成一个Semantic Function,如此这般简单,如果我们提前可以组织好 ...

  8. Semantic Kernel 入门系列:💾Native Function

    语义的归语义,语法的归语法. 基础定义 最基本的Native Function定义只需要在方法上添加 SKFunction 的特性即可. using Microsoft.SemanticKernel. ...

  9. Semantic Kernel 入门系列:🥑突破提示词的限制

    无尽的上下文 LLM的语言理解和掌握能力在知识内容的解读和总结方面提供了强大的能力. 但是由于训练数据本身来自于公共领域,也就注定了无法在一些小众或者私有的领域能够足够的好的应答. 因此如何给LLM ...

  10. Semantic Kernel 入门系列:🥑Memory内存

    了解的运作原理之后,就可以开始使用Semantic Kernel来制作应用了. Semantic Kernel将embedding的功能封装到了Memory中,用来存储上下文信息,就好像电脑的内存一样 ...

随机推荐

  1. CKS 考试题整理 (05)-Container 安全上下文

    Context Container Security Context 应在特定 namespace 中修改 Deployment. Task 按照如下要求修改 sec-ns 命名空间里的 Deploy ...

  2. Devexpress如何获取RadioGroup选中项的值和显示值

    分享一个小技巧,如题目所示,DEV控件如何获取RadioGroup选中项的值和显示值.也是在网上找了很久,看了大家都是通过SelectIndex的值定位选中的按钮,并没有说取选中项的值,所以自己研究了 ...

  3. Selenium:设置元素等待、上传文件、下载文件

    前言:在工作和学习selenium自动化过程中记录学习知识点,深化知识点 1. 设置元素等待 元素定位之元素等待-- WebDriver提供了两种类型的等待:显示等待和隐式等待. 1.1 显示等待 显 ...

  4. 前端Vue自定义带历史记录的搜索框组件searchBar 支持搜索输入框清空 搜索历史存储记录清除

    前端Vue自定义带历史记录的搜索框组件searchBar 支持搜索输入框清空 搜索历史存储记录清除,下载完整代码请访问uni-app插件市场地址:https://ext.dcloud.net.cn/p ...

  5. 知识图谱之《海贼王-ONEPICE》领域图谱项目实战(含码源):数据采集、知识存储、知识抽取、知识计算、知识应用、图谱可视化、问答系统(KBQA)等

    知识图谱之<海贼王-ONEPICE>领域图谱项目实战(含码源):数据采集.知识存储.知识抽取.知识计算.知识应用.图谱可视化.问答系统(KBQA)等 实体关系可视化页面可视化页面尝鲜 1. ...

  6. 用写代码的方式画图-试下PlantUML吧

    1 序言 所谓一图胜千言,大家平日在工作中编写文档时,往往都需要画各种图来表达中心思想,比如流程图.时序图.UML 图,很多人选择使用 Axure .PrecessOn.Diagrams(darw.i ...

  7. .NET 8 Preview 6发布,支持新的了Blazor呈现方案 和 VS Code .NET MAUI 扩展

    2023年7月11日 .NET 8 Preview 6,.NET 团队在官方博客发布了系列文章: Announcing .NET 8 Preview 6[1] ASP.NET Core updates ...

  8. 面由 AI 生|ZegoAvatar 捏脸技术解析

    一.AI"卷"进实时互动 2021年,元宇宙概念席卷全球,国内各大厂加速赛道布局,通过元宇宙为不同的应用场景的相关内容生态进行赋能.针对"身份"."沉 ...

  9. JDBC的增删改-结果集的元数据-Class反射-JDBC查询封装

    一.使用JDBC批量添加 ​ 知识点复习: ​1.JDBC的六大步骤 (导入jar包, 加载驱动类,获取连接对象, 获取sql执行器.执行sql与并返回结果, 关闭数据库连接) 2.​封装了一个DBU ...

  10. 《最新出炉》系列入门篇-Python+Playwright自动化测试-8-上下文(Context)

    1.简介 其实前边的文章中也提到过Context,只不过是 一笔带过,但是宏哥觉得在playwright中挺重要的,所以宏哥今天单独将其拎出来讲解和分享一下,希望对您有所帮助或者参考. 2.前言 Pl ...