Kernel Memory 入门系列:Kernel Memory Service
Kernel Memory 入門系列:Kernel Memory Service
在 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的組件有關,例如ContentStorageType、TextGeneratorType、MemoryDbTypes等等。大部分的組件將會在后續的文章中進行介紹。如果測試的話,可以選擇Simple開頭的選項,基本都是使用本地文件作為存儲。
這其中需要注意的 TextGeneratorType 和 EmbeddingGeneratorType 及其相關配置是必須的,因為這部分是調用大語言模型的需要的配置。
2. 啟動服務
完成配置之后,就可以啟動服務了。運行項目下的run.cmd或者run.sh即可啟動服務。
這里為了演示方便,啟用了Swagger和同步處理,使用了本地的文件存儲和向量存儲。
3. 使用服務
服務其中后,如果是在本地運行,可以通過http://localhost:9001/swagger/index.html訪問服務的Swagger頁面。
其他語言可以使用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 搜索,需要提供服務地址和問題文本。
參考
- Kernel Memory Service
- Kernel Memory Tools
總結
以上是生活随笔為你收集整理的Kernel Memory 入门系列:Kernel Memory Service的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 4399功夫派密室鼠尾鱼攻略
- 下一篇: java信息管理系统总结_java实现科