9月29日总结

发布时间 2023-10-03 14:32:55作者: lmyyyy

以OpenAI 的ChatGPT 所掀起的GenAI 快速创新浪潮,其中连接LLM 和 应用之间的桥梁的两大开源项目:LangChain[1]和Semantic Kernel[2] ,在半年前写过一篇文章 LangChain vs Semantic Kernel [3],这半年以来Semantic kernel 有了显着改进,这篇文章反应了最新的更新。
Semantic Kernel (SK)是什么?

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 进步并构建复杂和智能的管道。SK 大约 是在 2023 年 3 月下旬开源,大约开源6个多月,比 LangChain 晚开源了5个月。
专为应用程序开发人员和 ML 工程师打造
Semantic Kernel 虽然与LangChain类似,但SK是为应用开发开发人员创建的。SK使构建企业AI编排器变得容易,这是Copilot Stack的中心[4]。Semantic Kernel的清晰文档和代码示例让应用程序开发人员容易理解,很容易就可以将SK 集成到应用程序中。
SK 还支持 ML 工程师和数据科学家喜爱的功能。

将函数链接在一起[5]
使用 Jupyter 笔记本[6]进行实验。 (注意:您可以使用适用于 Python 和 C# 的笔记本。对于 C#,请使用多语言笔记本[7])。

SK Planner :自动函数调用
使用 GPT4 的一个有用技术是生成一个计划,其中包含解决问题的明确步骤。Planner 是一个函数,它接受用户的请求并返回有关如何完成请求的计划。它通过使用AI混合和匹配内核中注册的插件来实现,以便可以将它们重新组合成一系列完成目标的步骤。给定一个问题,SK Planner可以根据您指定的功能创建分步计划,然后执行它们。

SK Planner 与LangChain Agents [8]非常相似。主要区别在于SK Planner 将从一开始就创建一个计划,而LangChain Agent将在每一步确定下一步的行动方案。LangChain的方法听起来更好,但代价是性能低和更高的Token 使用量。Planner 是SK的可扩展部分。这意味着我们有多个Planner 可供选择,如果您有特定需求,您可以创建自定义Planner。有关Planner 更多信息,请参阅此处[9]。
AI 插件:语义和本机函数

Semantic Kernel can orchestrate AI plugins from any provider

“Plugins”只是SK用来表示一组函数的术语。为了推动整个行业的一致性,SK 采用了OpenAI插件规范作为插件[10]的标准。这将有助于创建一个可互操作的插件生态系统,可用于所有主要的AI应用程序和服务,如ChatGPT,Bing和Microsoft 365。

对于使用SK 的开发人员来说,这意味着您可以导出您构建的