semantic-kernel - 将LLM 技术快速轻松地集成到您的应用程序中

Created at: 2023-02-28 01:39:42
Language: C#
License: MIT

语义内核

蟒蛇包 Nuget 包 dotnet Docker 点网窗口 授权协议: MIT 不和

Semantic Kernel 是一个 SDK,它将 OpenAI、Azure OpenAIHugging Face大型语言模型 (LLM) 与 C#、Python 和 Java 等传统编程语言集成在一起。语义内核通过允许你定义可以在几行代码中链接在一起的插件来实现这一点。

然而,语义内核的特别之处在于它能够自动编排带有AI的插件。使用语义内核规划器,你可以要求LLM生成实现用户独特目标的计划。之后,语义内核将为用户执行计划。

请为回购加星标以表示你对此计划的支持!

使用规划器编排插件

语义内核入门

Semantic Kernel SDK 在 C#、Python 和 Java 中可用。要开始使用,请在下面选择你的首选语言。请参阅功能矩阵,查看我们当前支持的语言之间的功能奇偶校验细分。

爪哇徽标

开始使用基础知识的最快方法是从OpenAI或Azure OpenAI获取API密钥,并运行下面的C#,Python和Java控制台应用程序/脚本之一。

对于 C#:

  1. 创建新的控制台应用。
  2. 添加语义内核 nuget 。
    Microsoft.SemanticKernel
  3. 此处的代码复制到应用文件中。
    Program.cs
  4. 将 API 密钥和其他参数的配置占位符替换为你的密钥和设置。
  5. 运行方式为 或
    F5
    dotnet run

对于 Python:

  1. 安装 pip 包: .
    python -m pip install semantic-kernel
  2. 创建一个新脚本,例如 .
    hello-world.py
  3. 按照此处所述将你的 API 密钥和设置存储在文件中。
    .env
  4. 此处的代码复制到脚本中。
    hello-world.py
  5. 运行 python 脚本。

对于爪哇:

  1. 克隆并签出实验性 Java 分支:
    git clone -b experimental-java https://github.com/microsoft/semantic-kernel.git
  2. 按照此处的说明进行操作

学习如何使用语义内核

学习如何使用语义内核的最快方法是使用我们的 C# 和 Python Jupyter 笔记本。这些笔记本演示了如何将语义内核与只需按一下按钮即可运行的代码片段一起使用。

完成入门笔记本后,可以在我们的 Learn 网站上查看主要演练。每个示例都附带一个完整的 C# 和 Python 项目,你可以在本地运行该项目。

  1. 📖 内核概述
  2. 🔌 了解 AI 插件
  3. 👄 创建语义函数
  4. 💽 创建本机函数
  5. ⛓️ 将函数链接在一起
  6. 🤖 使用计划器自动创建计划
  7. 💡 创建并运行 ChatGPT 插件

最后,有关 C# 和 Python API 的更多详细信息,请参阅我们的 API 参考:

聊天协同驾驶:看看语义内核有什么可能

如果你有兴趣查看有关如何使用语义内核的完整端到端示例,请查看我们的聊天 Copilot 参考应用程序。聊天Copilot是一个聊天机器人,展示了语义内核的强大功能。通过结合插件、规划器和角色,我们演示了如何构建一个聊天机器人,该聊天机器人可以保持与用户的长期对话,同时利用插件与其他服务集成。

聊天副驾驶回答问题

可以通过从其 GitHub 存储库下载应用来自行运行应用。

Visual Studio Code 扩展:轻松设计语义函数

Visual Studio Code 的语义内核扩展使设计和测试语义函数变得容易。该扩展提供了一个用于设计语义函数的接口,并允许你使用现有模型和数据按一下按钮来测试它们。

Visual Studio Code 的语义内核扩展

在上面的屏幕截图中,你可以看到扩展程序的实际效果:

  • 语义函数的语法突出显示
  • 语义函数的代码完成
  • LLM 模型选择器
  • “运行”按钮,使用输入数据测试语义函数

查看我们的其他存储库!

如果你喜欢语义内核,你可能还对语义内核团队支持的其他存储库感兴趣:

回购 描述
聊天副驾驶 演示如何使用语义内核构建聊天机器人的参考应用程序。
语义内核文档 Microsoft学习站点上显示的语义内核文档的主页。
语义内核启动器 语义内核的入门项目,使其更容易入门。
语义记忆 一种服务,可用于创建用于引入、存储和查询知识的管道。

加入社区

我们欢迎你对SK社区的贡献和建议!最简单的参与方法之一是参与 GitHub 存储库中的讨论。欢迎错误报告和修复!

对于新功能、组件或扩展,请在发送 PR 之前提出问题并与我们讨论。这是为了避免被拒绝,因为我们可能将核心带到不同的方向,但也要考虑对更大生态系统的影响。

要了解更多信息并开始使用,请执行以下操作:

行为准则

该项目采用了Microsoft开源行为准则。有关更多信息,请参阅行为准则常见问题解答或联系 opencode@microsoft.com 提出任何其他问题或意见。

许可证

版权所有 (c) Microsoft公司。保留所有权利。

根据 MIT 许可证获得许可。