kernel-memory

给 AI 装上长期记忆,让应用能基于私有知识精准问答

kernel-memory 是微软开源的认知记忆服务,专为 AI 应用和智能代理设计。它解决的是大语言模型缺乏长期记忆和私有知识检索的问题,允许开发者将文档、网页、数据库等非结构化数据通过索引管道(如文本提取、分块、向量化)转化为可检索的记忆。核心能力包括:支持多种向量数据库(如 Azure AI Search、Qdrant、Redis)和嵌入模型,提供 RAG(检索增强生成)模式,能实现带事实依据的问答;提供 REST API 和 .NET SDK,方便集成;支持文档实时变更的增量索引;内置多用户/多租户隔离,适合团队和企业场景。项目处于研究阶段,但架构清晰,适合作为构建知识助手、企业搜索和记忆增强型 Agent 的底层基础设施。

开源 free 搜索知识
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 2235
维护状态 低维护
是否开源
定价模式 free

项目数据

分类搜索知识
开发团队microsoft
所属国家
官网地址
定价模式free
价格说明开源项目,MIT许可证,完全免费,可自行部署使用。
访问状态
是否开源
开源协议MIT
主要语言C#
技术栈/模型indexing,llm,memory,rag,semantic-search
GitHub 星标★ 2235
30天Star增速
HF 下载量
上线时间2023-07-13 00:00:00
最近更新2026-09-18 00:00:00
维护状态低维护
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数1

使用教程

难度:进阶 约 20 分钟 部署方式:Docker 5 步

⚠ 该项目 README 未提供完整安装说明,以下步骤为通用流程,请以官方文档为准。

环境要求

  • Docker 环境(README 提供 kernelmemory/service 容器镜像)
  • OpenAI API Key(示例中用 OpenAI 作为文本生成与嵌入模型)
  • 一个向量数据库,如 Azure AI Search 或 Qdrant
  • 可选:.NET / Aspire、Semantic Kernel 等集成环境

安装与启动步骤

  1. 1确认项目定位

    README 顶部声明这是已归档的研究项目,代码仅作学习参考,不是生产软件,无官方支持,使用风险自负。

  2. 2准备密钥与向量库

    KM 通过 LLM 生成嵌入并写入向量索引,需先准备 OpenAI API Key,以及 Azure AI Search、Qdrant 等向量库之一。

  3. 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. 4索引文档数据

    通过 Kernel Memory OpenAPI Web Service 调用默认摄入管道:提取文本→分块→生成嵌入→写入向量索引;用 Tags 标注文档归属以隔离私有信息。

  5. 5按需选择集成方式

    KM 还提供 .NET 库(用于嵌入式应用)与 Plugin(用于 ChatGPT/Copilot/Semantic Kernel),README 未给出对应安装命令。

关键配置

配置项必填说明示例
KernelMemory__TextGeneratorType指定文本生成(LLM)类型,示例使用 OpenAIOpenAI
KernelMemory__DataIngestion__EmbeddingGe指定数据摄入阶段使用的嵌入生成器类型OpenAI
KernelMemory__Retrieval__EmbeddingGenera指定检索阶段使用的嵌入生成器类型OpenAI
KernelMemory__Services__OpenAI__APIKeyOpenAI 服务的 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

项目介绍

kernel-memory 是基础设施领域的开源项目,由 microsoft 开发,2023 年首次发布。

在全站 13,014 个收录项目中,它的 GitHub 星标数(2,235)位列前 30%,在基础设施分类中处于中上游。

近 42 天,它的 GitHub 星标从 2,174 增加到 2,235,净增 61。

项目已超过三个月没有代码更新,维护节奏明显放缓,最近一次代码更新于 2026-09-18。MIT许可证,完全免费,可自行部署使用。

它主要面向的使用场景是:构建企业知识库问答助手,让员工用自然语言查询内部文档。同类可对比的替代方案包括 LangChain、LlamaIndex、Haystack。

上一篇:vearch

下一篇:extractous

同类项目推荐

freebuff-proxy 开源

聚合多账号,一键接入 OpenAI 兼容 API,轻松管理会话。

Multi-account OpenAI-compatible gateway for coding models. Pooled keys, session life···

★ 213 2026-08-20
microduck 开源

用 Rust 造一只会走路的桌面小鸭,快速上手双足机器人。

A Tiny biped duck robot

★ 8684 2026-09-10
soperator 开源

用 Kubernetes 原生方式运行 Slurm,简化 HPC 集群管理。

Run Slurm in Kubernetes

★ 439 2026-08-10
ollama 开源

一条命令本地跑起大模型,免费、私密、不卡顿

Get up and running with Kimi, GLM, MiniMax, DeepSeek, gpt-oss, Qwen, Gemma and other···

★ 181484 2026-08-09