探索 SK 示例 -- GitHub 存储库中的机器人

探索,sk,示例,github,存储,机器人 · 浏览次数 : 661

小编点评

**微软文章介绍** 文章介绍了如何使用 Semantic-kernel 嵌入和记忆来探索 GitHub Repos。 **主要内容:** * **Semantic-kernel 嵌入和记忆**是用于在 SK 存储器中提供更广泛的上下文的工具。 * **SK 存储器**是一种嵌入集合,它包含了各种预训练的模型和知识。 * **嵌入**是将来自不同数据来源的向量连接起来的过程。 * **记忆**是将来自多个嵌入的向量存储在内存中,以加快检索。 * **本文展示了如何使用** Semantic-kernel 嵌入和记忆**来: * 提出有关 GitHub 存储库的问题。 * 使用自然语言查询探索 GitHub 存储库。 **示例:** 文章提供了以下示例,以展示如何使用 Semantic-kernel 嵌入和记忆探索 GitHub Repos: * **浏览 GitHub 中的示例**:https://aka.ms/sk/repo/samples/github-repo-qa-bot * **代码示例**: ``` // 克隆 Semantic-kernel 示例代码 clone_url = "https://aka.ms/sk/sk/repo/samples/github-repo-qa-bot"; clone_dir = "./sk/repo/samples/github-repo-qa-bot"; git clone -l --depth-1 $clone_url $clone_dir; // 启动 API 服务 func start() { // 启动 Azure Functions 服务 // ... } ``` **结论:** Semantic-kernel 嵌入和记忆是探索 GitHub Repos 中关键工具,可以提供更广泛的上下文和帮助用户进行自然语言查询。

正文

微软 3月22日 一篇文章“Semantic-kernel 嵌入和记忆:使用聊天UI探索GitHub Repos”[1] ,文章中进行了展示了嵌入,该文章解释了他们如何帮助开发人员提出有关GitHub存储库的问题或使用自然语言查询探索GitHub存储库。与嵌入一起,这是在SK存储器[2](嵌入集合)的帮助下完成的,这有助于为提示(或SK世界中的ASK)提供更广泛的上下文。

浏览 GitHub 中的示例:https://aka.ms/sk/repo/samples/github-repo-qa-bot

阅读有关示例的文档:https://aka.ms/sk/github-bot

首先把https://github.com/microsoft/semantic-kernel 克隆到本地。

第一步是运行 本地 API 服务,是基于 Azure function v4 用 C# 编写的,并公开了一些Semantic-kernel API。 运行这个服务,需要安装 Azure Functions Core Tools:https://learn.microsoft.com/zh-cn/azure/azure-functions/functions-run-local?tabs=v4%2Cwindows%2Ccsharp%2Cportal%2Cbash,下载工具本地安装,Azure function是用.NET 构建的:

image

安装好后,切换到目录samples\dotnet\KernelHttpServer 目录下运行 func start --csharp:

image

这个表示成功运行了Api服务,接着我们去把 React的 前端应用运行起来,切换到目录 samples\apps\github-qna-webapp-react,运行之前需要安装好工具yarn。

运行 yarn install  和 yarn start,看到类似输出,同时打开了浏览器 http://localhost:3000:

image


这个示例的聊天模型选择 text-davinci-003:

image

Embedding 模型选择text-embedding-ada-002:

image

这个示例向量化的文档是Markdown的文件,我这里使用金融大数据量化分析:https://github.com/plouto-quants/FBDQA-2019A 来做体验一下

image

把github 仓库中的markdown 文件下载下来后,我们就可以开始体验问答了:

image

image

从上面这两个截图你可以看到这个机器人还是很聪明的了,我们问他这个仓库里的文档里的相关问题,都能够回答得很好,这个示例没有记忆功能,也没有持久化,每次运行要重新配置。 实际得产品环境下可以继续基于这样的示例进行加强,把记忆 和 知识库向量持久化做好,那么就可以很轻松的应对以下场景:

  • 程序文档
  • 学生教育材料
  • 公司合同
  • 产品文档


与探索 SK 示例 -- GitHub 存储库中的机器人相似的内容:

探索 SK 示例 -- GitHub 存储库中的机器人

微软 3月22日 一篇文章“Semantic-kernel 嵌入和记忆:使用聊天UI探索GitHub Repos”[1] ,文章中进行了展示了嵌入,该文章解释了他们如何帮助开发人员提出有关GitHub存储库的问题或使用自然语言查询探索GitHub存储库。与嵌入一起,这是在SK存储器[2](嵌入集合)

.NET周报 【4月第1期 2023-04-02】

国内文章 探索 SK 示例 -- GitHub 存储库中的机器人 https://www.cnblogs.com/shanyou/p/17280627.html 微软 3月22日 一篇文章“Semantic-kernel 嵌入和记忆:使用聊天UI探索GitHub Repos”[1] ,文章中进行了展

[转帖]探索惊群 ①

https://wenfh2020.com/2021/09/25/thundering-herd/ 惊群比较抽象,类似于抢红包 😁。它多出现在高性能的多进程/多线程服务中,例如:nginx。 探索惊群 系列文章将深入 Linux (5.0.1) 内核,透过 多进程模型 去剖析惊群现象、惊群原理、惊

探索贪心算法:解决优化问题的高效策略

贪心算法是一种在每一步选择中都采取当前最佳选择的算法,以期在整体上达到最优解。它广泛应用于各种优化问题,如最短路径、最小生成树、活动选择等。本文将介绍贪心算法的基本概念、特点、应用场景及其局限性。 贪心算法的基本概念 贪心算法的核心思想是局部最优策略,即在每一步选择中都选择当前看起来最优的选项,希望

《探索Python Requests中的代理应用与实践》

本文详细介绍了如何在Python的requests库中使用高匿代理和隧道代理,以及如何部署一个简易的代理IP池来提高爬虫的稳定性和匿名性。同时,文章还深入探讨了野生代理的来源及其潜在的安全风险和使用限制。这篇文章适合希望进一步了解代理技术及其在网络爬虫开发中应用的读者。

Linux-Cgroup V2 初体验

本文主要记录 Linux Cgroup V2 版本基本使用操作,包括 cpu、memory 子系统演示。 1. 开启 Cgroup V2 版本检查 通过下面这条命令来查看当前系统使用的 Cgroups V1 还是 V2 stat -fc %T /sys/fs/cgroup/ 如果输出是cgroup2

MinIO使用记录

探索MinIO:高性能、分布式对象存储解决方案 注:本文除代码外多数为AI生成 最近因为有项目需要换成Amazon S3的云存储,所以把之前做过的minio部分做一个记录,后面也会把基于这版改造的S3方法发出来记录。 MinIO简介 MinIO是一款高性能、分布式对象存储服务器,设计用于在大规模环境

探索Semantic Kernel内置插件:深入了解HttpPlugin的应用

前言 上一章我们熟悉了Semantic Kernel中的内置插件和对ConversationSummaryPlugin插件进行了实战,本章我们讲解一下另一个常用的内置插件HttpPlugin的应用。 上一章对ConversationSummaryPlugin总结进行了调整之后,顺便给Semantic

基于 Cloudflare Workers 和 cloudflare-docker-proxy 搭建镜像加速服务

本文主要介绍了如何基于 Cloudflare Workers 和 cloudflare-docker-proxy 搭建 dockerhub、gcr、quay 等镜像加速服务。 最近,受限于各种情况,部分主流镜像站都关了,为了能够正常使用,建议自己搭建一个加速器。 写文之前,也已经部署好了一个,可以直

探索Semantic Kernel内置插件:深入了解ConversationSummaryPlugin的应用

前言 经过前几章的学习我们已经熟悉了Semantic Kernel 插件的概念,以及基于Prompts构造的Semantic Plugins和基于本地方法构建的Native Plugins。本章我们来讲解一下在Semantic Kernel 中内置的一些插件,让我们避免重复造轮子。 内置插件 Sem