
kernel-memory
给 AI 装上长期记忆,让应用能基于私有知识精准问答
项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 2232
技术标签
使用教程
⚠ 本教程由 AI 依据该项目 README 整理;原始文档不完整,部分步骤为通用流程推断,实际安装请以项目官方文档为准。
⚠ 该项目 README 未提供完整安装说明,以下步骤为通用流程,请以官方文档为准。
环境要求
- Docker 环境(README 提供 kernelmemory/service 容器镜像)
- OpenAI API Key(示例中用 OpenAI 作为文本生成与嵌入模型)
- 一个向量数据库,如 Azure AI Search 或 Qdrant
- 可选:.NET / Aspire、Semantic Kernel 等集成环境
安装与启动步骤
-
1确认项目定位
README 顶部声明这是已归档的研究项目,代码仅作学习参考,不是生产软件,无官方支持,使用风险自负。
-
2准备密钥与向量库
KM 通过 LLM 生成嵌入并写入向量索引,需先准备 OpenAI API Key,以及 Azure AI Search、Qdrant 等向量库之一。
-
3用 Aspire 启动容器
README 给出的 Aspire 示例:以 kernelmemory/service 镜像添加容器,并通过环境变量指定 OpenAI 文本生成、嵌入生成与检索嵌入类型及 API Key。
var builder = DistributedApplication.CreateBuilder(); builder.AddContainer("kernel-memory", "kernelmemory/service") .WithEnvironment("KernelMemory__TextGeneratorType", "OpenAI") .WithEnvironment("KernelMemory__DataIngestion__EmbeddingGeneratorTypes__0", "OpenAI") .WithEnvironment("KernelMemory__Retrieval__EmbeddingGeneratorType", "OpenAI") .WithEnvironment("KernelMemory__Services__OpenAI__APIKey", "sk-xxxxxxxx"); builder.Build().Run(); -
4索引文档数据
通过 Kernel Memory OpenAPI Web Service 调用默认摄入管道:提取文本→分块→生成嵌入→写入向量索引;用 Tags 标注文档归属以隔离私有信息。
-
5按需选择集成方式
KM 还提供 .NET 库(用于嵌入式应用)与 Plugin(用于 ChatGPT/Copilot/Semantic Kernel),README 未给出对应安装命令。
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
KernelMemory__TextGeneratorType | 是 | 指定文本生成(LLM)类型,示例使用 OpenAI | OpenAI |
KernelMemory__DataIngestion__EmbeddingGe | 是 | 指定数据摄入阶段使用的嵌入生成器类型 | OpenAI |
KernelMemory__Retrieval__EmbeddingGenera | 是 | 指定检索阶段使用的嵌入生成器类型 | OpenAI |
KernelMemory__Services__OpenAI__APIKey | 是 | OpenAI 服务的 API Key,用于调用模型 | sk-xxxxxxxx |
如何确认成功
README 未给出启动成功校验方式;服务以 Web Service/OpenAPI 形式对外提供,可据此确认服务已运行。
常见问题
Q:这个项目可以用于生产环境吗?
A:不可以。README 明确说明它是已归档的研究项目,代码仅作为学习资源而非生产软件,不提供任何支持,需自行承担风险。
Q:Kernel Memory 支持哪些运行形式?
A:README 列出四种:Web Service、Docker 容器(kernelmemory/service)、ChatGPT/Copilot/Semantic Kernel 插件,以及用于嵌入式应用的 .NET 库。
Q:支持哪些向量数据库?
A:README 提到 Azure AI Search、Qdrant 或其他数据库,用于保存生成的嵌入向量并支撑检索。
Q:如何隔离不同用户或团队的私有数据?
A:README 示例说明可通过 Tags 指定文档归属并对数据分组,从而保护私有信息并支持分面导航。
注意事项
- 项目已归档,代码仅作演示与学习参考,非官方支持的 Microsoft 产品
- README 未提供 pip/npm/docker run 等具体安装命令,本教程步骤以 README 明确提及的容器镜像与配置项为准
- 示例中的 API Key 请替换为你自己的真实密钥,切勿提交到代码仓库
- 嵌入式应用集成可参考 .NET 库方式,具体用法需查阅仓库文档
核心亮点
- 微软出品,架构清晰,支持多种向量库和嵌入模型,灵活可扩展
- 内置 RAG 管道,从文档摄取到检索问答开箱即用,降低开发门槛
- 支持多租户隔离和增量索引,适合团队与企业级知识管理场景
不足之处
- 项目处于研究阶段,API 和功能可能不稳定,生产使用需谨慎
- 文档偏技术化,示例偏 .NET,对非 C# 开发者不够友好
适用场景
- 构建企业知识库问答助手,让员工用自然语言查询内部文档
- 为聊天机器人或智能代理提供长期记忆,实现跨会话上下文理解
- 搭建基于 RAG 的私有数据检索系统,用于法律、医疗等专业领域
替代项目
LangChain、LlamaIndex、Haystack
上一篇:vearch
下一篇:extractous
同类项目推荐
picollm
开源
让大模型在手机和嵌入式设备上流畅跑起来
On-device LLM Inference Powered by X-Bit Quantization
inference
开源
一行代码部署视觉模型,让任何设备秒变 CV 指挥中心
Turn any computer or edge device into a command center for your computer vision proj···
data-science-best-practices
开源
把数据科学项目从原型打磨成生产级系统
The goal of this repository is to enable data scientists and ML engineers to develop···
rushdb
开源
推送 JSON,秒得可搜索、带关系的 AI 记忆库
RushDB is a self-describing, graph-native database that helps AI agents reason over ···
LLMLingua
开源
把长提示词压到1/20,推理更快更省钱
[EMNLP'23, ACL'24] To speed up LLMs' inference and enhance LLM's perceive of key inf···
llama_deploy
开源
把 LlamaIndex 智能体工作流一键部署成生产级微服务
Deploy your agentic worfklows to production
tma1
开源
让 AI 代理读取自己的运行日志,自动优化下一轮决策。
Local-first observability your agent reads back. TMA1 records every LLM call, then r···
anolisa
开源
用 Rust 打造 AI 代理的底层操作系统,让多代理协同更稳更安全。
ANOLISA (Agentic Nexus Operating Layer & Interface System Architecture) | Agentic OS···
evidently
开源
一站式监控 ML 和 LLM,100+ 指标防模型退化
Evidently is an open-source ML and LLM observability framework. Evaluate, test, ···