ADD file via upload
MemVeritas(Provenance-Aware Temporal Trustworthy Memory for AI Agents)是面向 openKylin 的智能体记忆提取与精准遗忘系统。以 C++17 守护进程为核心,为 OS Agent 提供偏好记忆、知识记忆与短/中/长期记忆的统一沉淀、检索增强生成(RAG)支撑、敏感信息识别与可审计的精准遗忘能力。
src/
src/platform/
src/cli/
src/daemon/
include/kylin_memory/
scripts/
tests/
bpf/
data/
docker/
cmake -S . -B build/debug -DCMAKE_BUILD_TYPE=Debug \ -DKYLIN_MEMORY_BUILD_TESTS=ON -DKYLIN_MEMORY_ENABLE_OPENKYLIN=OFF cmake --build build/debug -j4 ctest --test-dir build/debug --output-on-failure
openKylin 目标环境将 -DKYLIN_MEMORY_ENABLE_OPENKYLIN=ON 以启用 CoreAI 向量化 / 向量数据库 SDK 适配。容器化验证:./scripts/docker-test-env.sh test。Python 改动运行 python3 -m py_compile scripts/*.py。
-DKYLIN_MEMORY_ENABLE_OPENKYLIN=ON
./scripts/docker-test-env.sh test
python3 -m py_compile scripts/*.py
源码 checkout 中的 scripts/install-openkylin.sh 明确选择运行档案并在安装时校验模型; 它不是 CMake/package 安装资产,必须从完整源码树运行。默认是 portable --user;lexical-only 是降级模式,必须显式确认。使用 --destdir 时只写入 staging tree,不会调用 systemd 或写入用户配置:
scripts/install-openkylin.sh
portable --user
lexical-only
--destdir
scripts/install-openkylin.sh --profile lexical-only --allow-lexical-only \ --user --destdir /tmp/kylin-memory-stage --prefix /usr --no-enable
portable/openKylin 安装必须传入经验证的 --reranker-artifact;离线模型包和 wheelhouse 必须成对提供。运行时模型服务保持 HF_HUB_OFFLINE=1 与 TRANSFORMERS_OFFLINE=1。live 安装仅支持 Linux 用户级 systemd;--system 可用于 --destdir 打包,但不会伪装为已启用的系统服务。当前非词法档案的 staging 因尚未将模型、venv 和派生 reranker artifact 复制进 staging tree 而失败关闭;可以在 Linux 上执行 live portable/openKylin 安装。
--reranker-artifact
HF_HUB_OFFLINE=1
TRANSFORMERS_OFFLINE=1
--system
模型服务经 Unix 域套接字接入,全部可选、缺席时守护进程降级运行(词法检索 + 规则分类):
python3 scripts/embedding-service.py --model intfloat/multilingual-e5-small \ --socket /tmp/kylin-memory-embedding.sock --device cpu python3 scripts/reranker-service.py --socket /tmp/kylin-memory-reranker.sock --device cpu python3 scripts/pii-service.py --model urchade/gliner_multi_pii-v1 --socket /tmp/kylin-memory-pii.sock python3 scripts/nli-service.py --socket /tmp/kylin-memory-nli.sock --device cpu
依赖清单:requirements-services.txt(通用 sidecar)与 requirements-reranker.txt(ONNX 重排导出)。模型权重不随仓库分发,清单中固定 revision 与校验和。
requirements-services.txt
requirements-reranker.txt
KYLIN_MEMORY_EMBEDDING_SOCKET
MemoryStore::open_configured
KYLIN_MEMORY_AUTO_ADJUDICATE
0
KYLIN_MEMORY_RERANK_MARGIN
KYLIN_MEMORY_RERANKER_CANDIDATES
KYLIN_MEMORY_KEY_PROVIDER
Apache License 2.0。
版权所有:中国计算机学会技术支持:开源发展技术委员会 京ICP备13000930号-9 京公网安备 11010802047560号
MemVeritas
MemVeritas(Provenance-Aware Temporal Trustworthy Memory for AI Agents)是面向 openKylin 的智能体记忆提取与精准遗忘系统。以 C++17 守护进程为核心,为 OS Agent 提供偏好记忆、知识记忆与短/中/长期记忆的统一沉淀、检索增强生成(RAG)支撑、敏感信息识别与可审计的精准遗忘能力。
核心能力
目录结构
src/:核心实现;src/platform/平台适配(openKylin SDK、BPF、UKUI);src/cli/、src/daemon/入口include/kylin_memory/:公共接口头文件scripts/:Python sidecar 服务(embedding / reranker / PII / NLI / LLM 冲突)与基准评测工具tests/:C++ 与 Python 测试;bpf/:BPF LSM 程序;data/:D-Bus / systemd / 模型清单资产docker/:openKylin 容器测试环境构建与测试
openKylin 目标环境将
-DKYLIN_MEMORY_ENABLE_OPENKYLIN=ON以启用 CoreAI 向量化 / 向量数据库 SDK 适配。容器化验证:./scripts/docker-test-env.sh test。Python 改动运行python3 -m py_compile scripts/*.py。安装
源码 checkout 中的
scripts/install-openkylin.sh明确选择运行档案并在安装时校验模型; 它不是 CMake/package 安装资产,必须从完整源码树运行。默认是portable --user;lexical-only是降级模式,必须显式确认。使用--destdir时只写入 staging tree,不会调用 systemd 或写入用户配置:portable/openKylin 安装必须传入经验证的
--reranker-artifact;离线模型包和 wheelhouse 必须成对提供。运行时模型服务保持HF_HUB_OFFLINE=1与TRANSFORMERS_OFFLINE=1。live 安装仅支持 Linux 用户级 systemd;--system可用于--destdir打包,但不会伪装为已启用的系统服务。当前非词法档案的 staging 因尚未将模型、venv 和派生 reranker artifact 复制进 staging tree 而失败关闭;可以在 Linux 上执行 live portable/openKylin 安装。Sidecar 服务
模型服务经 Unix 域套接字接入,全部可选、缺席时守护进程降级运行(词法检索 + 规则分类):
依赖清单:
requirements-services.txt(通用 sidecar)与requirements-reranker.txt(ONNX 重排导出)。模型权重不随仓库分发,清单中固定 revision 与校验和。关键环境变量
KYLIN_MEMORY_EMBEDDING_SOCKET等MemoryStore::open_configured)KYLIN_MEMORY_AUTO_ADJUDICATE0关闭冲突自动裁决,恢复纯人工评审KYLIN_MEMORY_RERANK_MARGIN0仅跨语言重排)KYLIN_MEMORY_RERANKER_CANDIDATESKYLIN_MEMORY_KEY_PROVIDER许可
Apache License 2.0。