一、项目简介:MemoRizz 是什么?

MemoRizz 是一个用于构建具有“记忆能力”的 AI 智能体(Agent)的 Python 实验库,旨在帮助开发者探索 上下文记忆、语义搜索、角色设定与工具调用 等智能体关键能力。它主要用于学习和研究,不推荐用于生产环境或敏感数据处理


二、核心功能

2.1. 多类型记忆管理

支持不同类型的记忆模块,例如:

  • 对话记忆(Conversation Memory)
  • 长期记忆(Long-Term Memory)
  • 工作流记忆(Workflow Memory)

2.2. 语义搜索与向量记忆

  • 使用 OpenAI 的嵌入模型将信息向量化
  • 支持基于 MongoDB Atlas Vector SearchPostgreSQL + pgvector 的记忆检索

2.3. 智能体架构(MemAgent)

整合:

  • 语言模型(如 GPT-4)
  • 记忆后端
  • 工具箱(调用函数)
  • 角色设定(Persona)

2.4. 角色系统(Persona)

可以给每个 Agent 定义名字、身份、目标、背景,形成更连贯的交互风格。

2.5. 工具注册机制(Toolbox)

允许开发者用装饰器 @toolbox 注册函数,智能体可以语义理解并调用工具函数


三、使用示例

3.1 创建一个具备记忆的智能体:

from memorizz.memagent import MemAgent
from memorizz.memory_provider.mongodb.provider import MongoDBConfig, MongoDBProvider
from memorizz.llms.openai import OpenAI

memory = MongoDBProvider(MongoDBConfig(uri="你的MongoDB连接串"))

agent = MemAgent(
    model=OpenAI(model="gpt-4"),
    instruction="你是一个有帮助的助手。",
    memory_provider=memory
)

agent.run("你好,我是John,一名软件工程师。")
agent.run("我之前告诉你了什么?")

→ 第二句中,Agent 可以记住 John 的身份。


3.2 添加角色和工具:

from memorizz.persona import Persona
agent.set_persona(Persona(
    name="TechExpert",
    role="技术专家",
    goals="帮助用户解决技术问题",
    background="多年软件开发经验"
))

from memorizz.toolbox import toolbox

@toolbox
def add(a: int, b: int) -> int:
    return a + b

agent.add_tool(toolbox)

→ Agent 不仅有角色个性,还能通过自然语言触发 add 工具。


四、支持的存储后端

  • MongoDB Atlas + Vector Search(云端推荐)
  • PostgreSQL + pgvector(本地开发友好)

五、项目结构与学习资源

  • 📁 examples/ 文件夹:包含多个 Jupyter Notebook 示例

    • 多智能体交互
    • 工具调用
    • 长期记忆演示
    • Persona 构建
    • 向量检索
    • 工作流记忆支持

六、延伸资源:作者演讲

🎙️ Richmond Alake 的 MongoDB 大会演讲:构建具备记忆的智能体

深入讲解了智能体记忆的架构原则与设计模式,非常推荐观看!


七、适合谁用?

  • 想构建具备长期记忆能力的 AI Agent
  • 语义搜索、Persona 角色设定、Agent 工具链感兴趣的研究者或开发者
  • 有意探索**下一代 AI 助手架构(如 RAG + Agent)**的团队或个人

总结

特性说明
项目名称MemoRizz
作者Richmond Alake
项目状态实验性、活跃更新中
应用场景AI 智能体开发、RAG 记忆、角色化助手、工具调用系统
不推荐场景生产环境、大规模用户数据处理

标签:infra, Ai

你的评论