使用 Memori Python 库实现记忆增强与大模型调用拦截,可选集成智谱 API。
Memori扩展扩展技能.是一项面向实际任务的技能,主要用于Memory 增强和 LLM 调用 Memori Python 库进行截取,可选 Zhipu AI API 集成.;Overview.;
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。
执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
使用 Memori Python 库实现记忆增强与大语言模型(LLM)调用拦截,并可选集成 Zhipu AI API。
该技能基于 Memori Python 库,提供记忆增强与 LLM 调用拦截能力。它使智能体能够从本地记忆数据库中检索相关知识,并将这些信息注入对话上下文中。
⚠️ 重要提示:本技能执行以下操作:
./memori.db)./config/tech_terms.txt)ZHIPUAI_API_KEY 时生效ZHIPUAI_API_KEY,该技能将 100% 在本地运行,不发起任何外部网络请求ZHIPUAI_API_KEY,以验证本地功能是否正常ZHIPUAI_API_KEY本技能需安装以下 Python 包:
pip install memori
memori 库采用 Apache License Version 2.0 许可协议。
如需启用 Zhipu AI API 增强功能(可选):
pip install zhipuai
警告:安装 zhipuai 并配置 ZHIPUAI_API_KEY 后,对话内容将被发送至外部服务器。
| 变量名 | 说明 | 是否必需 | 默认值 | 隐私说明 |
|---|---|---|---|---|
ZHIPUAI_API_KEY |
Zhipu AI API 密钥,用于对话增强 | 否 | - | ⚠️ 启用外部 API 调用 — 对话文本将被发送至 Zhipu AI 服务器 |
ZHIPUAI_MODEL |
Zhipu AI 模型名称 | 否 | glm-4.7 |
仅当 ZHIPUAI_API_KEY 已设置时生效 |
MEMORI_TECH_TERMS |
逗号分隔的技术术语列表,用于 LLM 调用拦截 | 否 | - | 仅限本地使用 |
MEMORI_TECH_TERMS_FILE |
技术术语文件路径(每行一个术语) | 否 | ./config/tech_terms.txt |
仅限本地使用 — 支持读写 |
MEMORI_DB_PATH |
Memori 数据库路径 | 否 | ./memori.db |
仅限本地使用 — 支持读写 |
隐私与数据流向说明:
ZHIPUAI_API_KEY 变量会触发外部网络请求;其余变量仅控制本地文件操作。ZHIPUAI_API_KEY,该技能将完全在本地运行,不对外传输任何数据。memori.db),并可选地读写技术术语文件(tech_terms.txt)。所有文件均保存于您的本地文件系统中。ZHIPUAI_API_KEY,先验证本地功能;仅在确有增强需求且已接受对应数据传输条款时,再启用外部 API。系统环境变量配置:
# 可选:启用 Zhipu API 增强功能 export ZHIPUAI_API_KEY="your-api-key" export ZHIPUAI_MODEL="glm-4.7" # 可选:自定义技术术语 export MEMORI_TECH_TERMS="FFI,Rust,Linux,kernel,spinlock" # 可选:指定自定义数据库路径 export MEMORI_DB_PATH="/path/to/memori.db"
OpenClaw 配置(openclaw.json):
{
"skills": {
"entries": {
"memori-extension": {
"enabled": true,
"env": {
"ZHIPUAI_API_KEY": "your-api-key",
"ZHIPUAI_MODEL": "glm-4.7",
"MEMORI_TECH_TERMS": "FFI,Rust,Linux,kernel",
"MEMORI_DB_PATH": "./memori.db"
}
}
}
}
}
技术术语文件(可选):
# 创建配置目录 mkdir -p config # 创建术语文件 cat > config/tech_terms.txt << EOF FFI Rust Linux kernel spinlock mutex unsafe EOF # 设置环境变量 export MEMORI_TECH_TERMS_FILE="config/tech_terms.txt"
from memori import Memori
memori = Memori(
db_path="memori.db",
entity_id="knowledge-base"
)
# 检索记忆
memories = memori.search("query", limit=5)
# 增强查询
context = memori.augment("如何处理自旋锁冲突?", limit=3)
# 存储新记忆
memory_id = memori.store("新内容")
# 获取统计信息
stats = memori.get_stats()
# 关闭连接
memori.close()
from skills.memori_extension import search, augment, intercept_llm
# 检索
memories = search("FFI 绑定", limit=5)
# 增强
enhanced = augment("如何处理自旋锁冲突?")
if enhanced:
print(enhanced)
# 拦截 LLM 调用
messages = [{"role": "user", "content": "FFI 相关问题"}]
enhanced = intercept_llm(messages)
__init__(db_path, entity_id)初始化 Memori 实例。
参数:
db_path(str | Path,可选):数据库路径entity_id(str,可选):实体 ID,默认为 "default"search(query, limit, entity_id)检索相关记忆。
返回值:List[Memory]
augment(query, limit, entity_id)使用检索到的记忆增强原始查询。
返回值:AugmentedContext
store(content, entity_id, metadata)存储一条新记忆。
返回值:int —— 记忆 ID
get_stats(entity_id)获取统计信息。
返回值:dict
close()关闭数据库连接。
记忆对象包含以下属性:
id(int):记忆 IDentity_id(str):所属实体 IDcontent(str):记忆内容created_at(str):创建时间戳metadata(dict,可选):元数据增强后的上下文对象包含以下字段:
original_query(str):原始查询retrieved_memories(List[Memory]):检索到的记忆列表enhanced_prompt(str):增强后的提示词has_memories(bool):是否成功检索到记忆memories_count(int):检索到的记忆数量默认数据库路径:./memori.db
该技能将执行以下操作:
该技能使用可配置的技术术语来实现 LLM 调用拦截。您可通过以下方式自定义术语:
1. 环境变量方式(逗号分隔):
export MEMORI_TECH_TERMS="FFI,Rust,Linux,kernel,spinlock,mutex,unsafe"
2. 配置文件方式(每行一个术语):
# 创建配置文件 mkdir -p config cat > config/tech_terms.txt << EOF FFI Rust Linux kernel spinlock mutex unsafe EOF # 设置环境变量 export MEMORI_TECH_TERMS_FILE="config/tech_terms.txt"
注意:若未通过任一方式配置技术术语,该技能仍可正常运行,但对技术类查询的拦截效果可能下降。
该技能执行如下文件操作:
| 操作类型 | 文件路径 | 说明 |
|---|---|---|
| 读取 | ./memori.db(默认) |
检索已存储的记忆 |
| 写入 | ./memori.db(默认) |
存储新记忆 |
| 读取 | MEMORI_TECH_TERMS_FILE |
加载技术术语 |
| 写入 | MEMORI_TECH_TERMS_FILE |
持久化术语(如启用该功能) |
⚠️ 重要提示:若设置了 ZHIPUAI_API_KEY,该技能可能会将对话文本发送至 Zhipu AI 服务器进行增强处理。
禁用外部 API 调用的方法:
ZHIPUAI_API_KEY 环境变量即可skills/memori_extension/ ├── __init__.py # 技能入口文件 ├── memori_extension.py # 技能实现逻辑 ├── SKILL.md # 本文档 └── README.md # 快速入门指南
本技能采用 Apache License Version 2.0 许可协议。
本技能所依赖的 memori Python 库同样采用 Apache License Version 2.0 许可协议。
本技能集成了 Memori Python 库,该库遵循 Apache License 2.0 协议。
完整许可文本请参见 LICENSE 文件。
Memori 库相关信息:
相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 134万人学习
共49课时 | 82.5万人学习
最新文章