microsoft/kernel-memory
Research project. A Memory solution for users, teams, and applications.
What it solves
Kernel Memory(KM)提供了一种结构化方式来索引大型、多模态数据集,并将其用于推动 Retrieval Augmented Generation(RAG)。它解决了构建数据摄取管道的复杂性——处理文件提取、文本分块与向量化——同时允许用户以自然语言查询数据,并附上引用和来源链接。
How it works
KM 作为多模态 AI 服务运行,可部署为 Web 服务、Docker 容器或嵌入式 .NET 库。它使用持续数据混合管道来处理文档(PDF、Word、Excel 等),通过提取文本、划分为块、使用 LLM 生成嵌入,并将其存储在向量数据库中。用户随后提出问题,系统检索相关数据以生成有依据的答案。
Who it’s for
此服务面向需要 RAG 能力的 AI 应用开发者,特别是与 Semantic Kernel、Microsoft Copilot 或 ChatGPT 集成的开发者。适用于需要可扩展、异步后端进行文档处理的团队,或希望在 .NET 应用中使用轻量无服务器组件的场景。
Highlights
- Flexible Deployment: Available as a Web Service, Docker container, or embedded .NET library.
- Customizable Pipelines: Supports custom handlers to modify how data is extracted, chunked, and stored.
- Multi-modal Support: Handles various formats including web pages, PDF, Images, Word, PowerPoint, Excel, Markdown, and JSON.
- Broad Integration: Extensive extensions for AI providers (OpenAI, Ollama, Anthropic), vector stores (Azure AI Search, Postgres, Qdrant, Redis), and file storage (Azure Blob, AWS S3).
- Security & Organization: Supports document ownership and tagging for faceted navigation and security filtering.