Kernel Memory 入门系列: Kernel Memory Service


风晓
风晓 2023-12-30 09:49:43 55953 赞同 0 反对 0
分类: 资源
在 Kernel Memory 的 GitHub 仓库中有一个单独的项目 Service , 用于提供独立的Kernel Memory OpenAPI 服务。可以用于独立的部署后台,也可以为其他语言提供接口调用服务。

1. 初始化

使用 Kernel Memory Service 需要先下载该项目的源码。使用Git Clone 命令下载源码到本地即可。

 
 
git clone https://github.com/microsoft/kernel-memory.git
 

然后打开/service/Service目录,根据操作系统选择执行使用setup.sh或者setup.cmd,就可以进行快速的初始化了。
也可以直接执行dotnet run setup命令进行初始化。

这个过程会调用初始化服务,将所有选择的配置项都存储到appsettings.Development.json文件中。

当然也可以直接通过修改appsettings.json文件,来修改配置项。该文件中包含详细的配置说明。

这其中的大部分的配置项都和Kernel Memory的组件有关,例如ContentStorageTypeTextGeneratorType
MemoryDbTypes等等。大部分的组件将会在后续的文章中进行介绍。如果测试的话,可以选择Simple开头的选项,基本都是使用本地文件作为存储。

这其中需要注意的 TextGeneratorType 和 EmbeddingGeneratorType 及其相关配置是必须的,因为这部分是调用大语言模型的需要的配置。

2. 启动服务

完成配置之后,就可以启动服务了。运行项目下的run.cmd或者run.sh即可启动服务。

Alt text

这里为了演示方便,启用了Swagger和同步处理,使用了本地的文件存储和向量存储。

3. 使用服务

服务其中后,如果是在本地运行,可以通过http://localhost:9001/swagger/index.html访问服务的Swagger页面。

Alt text

其他语言可以使用Swagger.json 生成OpenAPI的客户端代码,也可以直接使用HTTP请求调用接口。

C# 可以使用 Microsoft.KernelMemory.WebClient 包来调用接口。

 
 
var memory = new MemoryWebClient("http://127.0.0.1:9001");
 

这里的memory 的使用和 ServerlessMemory 一样。

4. 一些其他的工具脚本

在该项目的另外一个目录下提供了一些工具脚本,可以更加方便的使用 Kernel Memory Service。

  • run-qdrant.sh 用于启动 Qdrant 服务,该服务是用于提供向量数据库,用于存储生成的向量。使用Docker 运行,因此需要提前安装好Docker。

  • run-rabbitmq.sh 用于启动 RabbitMQ 服务,该服务是用于提供消息队列服务,用于异步管理文件上传和处理进度。也是使用Docker 运行。

  • setup-service.sh 用于初始化 Kernel Memory Service,和上面的setup.sh是一样的。

  • run-service.sh 用于启动 Kernel Memory Service,和上面的run.sh是一样的。

  • upload-file.sh 用于上传文件到 Kernel Memory Service,需要提供服务地址(默认是http://localhost:9001)和文件路径。

  • ask.sh 用于向 Kernel Memory Service 提问,需要提供服务地址和问题文本。

  • search.sh 用于向 Kernel Memory Service 搜索,需要提供服务地址和问题文本。

如果您发现该资源为电子书等存在侵权的资源或对该资源描述不正确等,可点击“私信”按钮向作者进行反馈;如作者无回复可进行平台仲裁,我们会在第一时间进行处理!

评价 0 条
风晓L1
粉丝 1 资源 2038 + 关注 私信
最近热门资源
桌面通用(全架构)【在双系统环境下隐藏Windows启动菜单】操作指南  2092
银河麒麟桌面操作系统V10(SP1)2203-如何进行远程桌面互访?  2012
银河麒麟桌面操作系统【保留数据盘重装系统】  1822
麒麟系统各种原因开不了机解决(合集)  1628
桌面通用(全架构)【rpm包转成deb包】操作方法  933
银河麒麟桌面操作系统 V10-SP1 双系统安装 efi 分区问题  917
统信系统安装(合集)  863
统信桌面专业版【手动分区安装UOS系统】介绍  849
统启动异常几种类型(initramfs 模式)  691
银河麒麟服务器操作系统V10(X86|ARM)【进入单用户模式】操作方法  20
最近下载排行榜
桌面通用(全架构)【在双系统环境下隐藏Windows启动菜单】操作指南 0
银河麒麟桌面操作系统V10(SP1)2203-如何进行远程桌面互访? 0
银河麒麟桌面操作系统【保留数据盘重装系统】 0
麒麟系统各种原因开不了机解决(合集) 0
桌面通用(全架构)【rpm包转成deb包】操作方法 0
银河麒麟桌面操作系统 V10-SP1 双系统安装 efi 分区问题 0
统信系统安装(合集) 0
统信桌面专业版【手动分区安装UOS系统】介绍 0
统启动异常几种类型(initramfs 模式) 0
银河麒麟服务器操作系统V10(X86|ARM)【进入单用户模式】操作方法 0
作者收入月榜
1

prtyaa 收益393.72元

2

zlj141319 收益221.42元

3

1843880570 收益214.2元

4

IT-feng 收益213.03元

5

风晓 收益208.24元

6

777 收益172.82元

7

Fhawking 收益106.6元

8

信创来了 收益105.89元

9

克里斯蒂亚诺诺 收益91.08元

10

技术-小陈 收益79.65元

请使用微信扫码

加入交流群

请使用微信扫一扫!