Unified Knowledge Management & Retrieval Runtime
统一知识管理与检索运行时
Knowledge Runtime 是面向 Node.js 生态的独立知识基础设施,规划通过融合向量检索、关键词与全文检索、知识图谱和混合检索,提供可关联、可追溯、可扩展的知识管理与检索能力,并支持 GraphRAG。
当前项目处于初始化阶段。0.0.1 为初始文档包,仅包含项目定位、许可证和 npm 包元数据,尚不提供运行时实现或可调用 API。下述能力属于项目规划,具体实现与 API 将在后续开发中确定。
| 项目 | 内容 |
|---|---|
| 名称 | Knowledge Runtime |
| 仓库 | devcodex-labs/knowledge-runtime |
| npm 包名 | @devcodex/knowledge-runtime |
| 技术语言 | Node.js / TypeScript(规划) |
| 类型 | 独立知识基础设施 |
| 许可证 | AGPL-3.0-or-later |
Knowledge Runtime 独立于特定 AI 模型、Agent 框架和宿主环境。它既可以作为 Node.js 模块使用,也可以成为 AI Agent、RAG 应用、企业知识库、代码分析和其他应用的底层知识基础设施。
项目将语义召回与显式关系检索结合:向量检索发现语义相关内容,关键词检索定位精确术语,图关系检索沿知识之间的关联补充相关内容,混合检索统一融合与排序。
GraphRAG 是项目支持的检索方向。运行时不绑定单一 GraphRAG 算法或知识图谱实现,调用方可以根据场景组合检索能力。
支持文档与文本、Markdown、技术规范、API 文档、代码、结构化数据、外部知识源,以及应用提供的自定义知识。
知识管理覆盖导入、解析、切片、索引、更新、删除,以及来源、版本和内容身份管理。数据格式与外部来源可通过适配器逐步扩展。
| 检索方式 | 作用 |
|---|---|
| Vector Retrieval 向量检索 | 通过 Embedding 和向量相似度发现语义相关知识,服务自然语言查询与知识发现。 |
| Keyword Retrieval 关键词与全文检索 | 通过精确词项与全文索引定位 API 名称、技术术语、配置字段及具体内容。 |
| Graph Retrieval 图关系检索 | 沿显式关联检索知识,支持关系类型过滤、邻居查询、关系路径与多跳遍历。 |
| Hybrid Retrieval 混合检索 | 组合检索候选,进行融合、去重、排序以及来源与版本校验。 |
各种检索机制可以独立使用,也可以按调用方需求组合。
知识图谱用于表示以下关联:
- 知识与知识之间的关联。
- 文档与文档片段之间的关联。
- 知识实体与知识内容之间的关联。
- 实体与实体之间的语义关系。
关系保留来源、类型和版本,支持显式建立,并为自动关联扩展提供接口。知识图谱是可选索引结构,未建立关系的内容仍可参与其他检索。
基础方向是先根据查询定位知识,再沿已建立的关系扩展检索范围,返回相关知识与来源证据。
实体关系提取、社区检测、社区摘要和全局检索属于可扩展方向。并非每次检索都需要访问图谱,也不要求所有知识预先完成实体关系抽取。
遵循渐进式知识加载原则:首先返回必要的摘要与元数据,再根据需要读取知识片段和原文。
规划支持分段、分页、大文档读取,以及依据上下文预算控制返回内容,使调用方能够按实际需要获取知识。
知识和检索结果保留来源、版本与内容身份。知识变化后刷新受影响索引,处理失效关系,并校验结果版本,避免过期内容与当前内容混用。
检索证据能够定位原始知识,并说明内容所属版本及关系来源。
- 知识与检索解耦:知识独立于单一索引方式,可同时参与向量、关键词和关系检索。
- 检索与生成解耦:返回知识和证据,由调用方决定后续回答生成方式。
- 语义与关系互补:语义召回与显式关系扩展共同提高知识覆盖。
- 模型无关:通过适配器接入 LLM 或 Embedding Provider。
- 存储可扩展:不强制绑定特定向量数据库、图数据库或存储产品。
- 按需加载:根据检索需求渐进式返回相关内容。
- 来源可追溯:结果能够定位原始内容并识别版本。
- 独立运行:不依赖 Agent、会话、记忆生命周期或特定宿主。
Knowledge Runtime 负责知识导入、组织、解析、切片和索引;向量、关键词、图关系与混合检索;关系、来源和版本管理;内容按需读取;以及结构化检索结果和来源证据。
以下职责由调用方或其他模块承担:
- 用户自然语言意图解析。
- Agent 会话管理与长期会话记忆生命周期。
- Task 状态管理与任务调度。
- Skill 激活和执行。
- Tool 调用与执行。
- Agent 工作流编排。
- 最终自然语言回答生成。
部分索引和检索任务可以使用 LLM 或 Embedding 模型,但不要求所有调用都经过 LLM。
- AI Agent 外部知识检索。
- 技术文档与 API 知识查询。
- 企业内部知识库。
- 代码知识与模块关系检索。
- 跨文档知识关联分析。
- GraphRAG 应用。
- 独立知识搜索服务。
- 需要混合检索的 Node.js 应用。
Knowledge Runtime 是独立基础模块,各运行时通过公开 API 组合使用。
| 模块 | 职责 |
|---|---|
| Intent Runtime | 解析当前用户意图。 |
| Knowledge Runtime | 根据查询条件检索知识与关联内容。 |
| Memory Runtime | 管理历史记忆及其生命周期,可以复用知识检索基础能力。 |
| Skill Runtime | 提供技能指导,并按需获取知识。 |
| Context Runtime | 组织知识、记忆和其他上下文,供模型使用。 |
| Execution Runtime | 执行任务并协调实际工作。 |
Knowledge Runtime 不依赖这些运行时,也不承担它们的职责。
项目计划提供统一的 Node.js / TypeScript API,允许调用方选择独立或混合检索,并按需读取知识。具体 API 与技术选型在后续开发中确定。
npm 包名为 @devcodex/knowledge-runtime,初始版本为 0.0.1,用于分发项目定位和许可证。当前版本不包含运行时功能。
后续发布方向为版本 tag 推送后经验证自动发布 npm,正式版与预发布版使用独立通道。当前尚未配置自动发布工作流。
Knowledge Runtime 采用 GNU Affero General Public License v3.0 or later,SPDX 标识为 AGPL-3.0-or-later,与 DevCodex 项目保持一致。完整许可证正文见 LICENSE。