首页 > 其他分享 >文章《Semantic Kernel -- LangChain 的替代品?》的错误和疑问 探讨

文章《Semantic Kernel -- LangChain 的替代品?》的错误和疑问 探讨

时间:2023-10-04 10:33:32浏览次数:35  
标签:Kernel Semantic kernel -- C# https com

微信公众号文章 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、文心一言、通一千问等不集成到SK仓库,社区各自维护,具体可看我整理的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 工程师和数据科学家喜爱的功能。


相关链接:

标签:Kernel,Semantic,kernel,--,C#,https,com
From: https://www.cnblogs.com/shanyou/p/17742002.html

相关文章

  • RabbitMQ 消息发送和消费的可靠性保障
    在一些比较重要的场景中,我们必须要保障RabbitMQ消息的可靠性,也就是发送给rabbitmq的消息必须最终成功,消费者接收消息进行处理也必须最终成功。即使是中间失败了,也必须要有其它保障措施,哪怕最后进行人工进行干预处理。消息出现丢失的场景主要有:发送消息时丢失:比如消息发送到......
  • 铺先生:门店选址要观察什么?都清楚更方便经营
    关于门店选址要观察什么这个问题,一直都是困扰着很多想创业的朋友们的一个问题,但是只要大家多留意那些新门店选择的位置,大家就会发现,其实他们选址观察的因素也都大差不差。其实门店选址是一个需要考虑细节方面的问题,在选址上其实大方向都是一致的。下面就让小编来跟大家说一下那些门......
  • 445端口被屏蔽的解决办法(已测试)
         为了节省大家宝贵的时间,特收集了一些解决屏蔽445端口的方法,网上的方法很多,对于一些像我一样的小白来说,还真有点不知道具体如何操作,看了很多大神的解决方法后,于是总结了一下具体的操作流程,用以方便像我一样的小白,期望达到小白共勉的目的!1、原因说明:前两年勒索病毒WannaCr......
  • 库函数之字符函数与字符串函数(上)
    前言......
  • '''实验1 只有温度和时间 每个物料的初始温度和初始时间不一样 无分类变量需转为读热
    '''目标:拟合物料冷却规律分类变量:物料规格,冷却方式连续变量:温度,时间其他因素:车间温度现实因素:初始温度,初始时间需求因素:目标温度的时间,目标温度的时长(时间-初始时间),当前时间的温度不加入分类变量则为单个线性模型''''''实验1只有温度和时间每个物料的初始温......
  • 华为、华三、思科和锐捷网管型交换机常用命令大全(1)
    基础命令说明华为H3C思科锐捷补全命令按Tab键按Tab键按Tab键按Tab键查看配置命令displaydisplayshowshow进入配置模式system-viewsystem-view先enable再configterminal先enable再configterminal退回上级quitquitexitexit直接返回第1级视图returnreturnendend取消某些配置undou......
  • coreldraw是什么软件?2023有哪些功能特色呢?
    很多人都听过CorelDraw的名字,但不知道CorelDraw是什么样的软件。下面就让小编为大家详细介绍一下。coreldraw是什么软件CorelDraw2023是一款专业的图形设计软件。它的主要功能包括矢量图形和位图的编辑。用户可以利用其矢量图形编辑能力,设计各种图标、Logo等精细图形。同时,它也......
  • python 中 re模块
     正则表达式其本身就是一种小型的,高度专业化的编程语言。在Python中,它被内嵌在了re模块里面,正则表达式模式被编译成一系列的字节码,然后由用C编写的匹配引擎执行。 001、re.searcha、>>>re.search('www','www.runoob.com')##返回了匹配的范围和匹配的字......
  • 一种免除多测清空后顾之忧的方法
    #include<cstdio>#include<cstring>boolMbe[1];intArcaea[114514];structOp{inta,b;}Genshin_Impact[114514];unionPhip{inta,b;}Phigros[114514];//...boolMed[1];voidclear(){ memset(Med,0,Mbe-Med);}intmain(){ printf("%l......
  • UML教程3历史4关系
    3历史20世纪90年代是C++等面向对象语言发展的时代。由于所开发的系统复杂难懂,导致系统部署后面临设计和分析问题。很难向他人解释系统。UML一经问世,许多改变游戏规则的实验和方法便应运而生,从而简化了分析系统的艰巨任务。UML是一种面向对象的统一建模语言。它是由Rational软......