Memary

给AI装上长期记忆,让对话越用越懂你

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 搜索知识 🍴 复刻 206 🐛 待处理 15 👀 关注 18
GitHub ↗
GitHub 星标 ★ 2664
维护状态 低维护
是否开源 开源
定价模式 🏷️完全免费 开源项目,MIT许可证,可自由使用和部署,无付费版本。

项目预览

Memary 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类搜索知识
开发团队kingjulio8238
定价模式🏷️完全免费
价格说明开源项目,MIT许可证,可自由使用和部署,无付费版本。
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议MIT
主要语言Jupyter Notebook
技术栈/模型agents,knowledge-graph,memory,multiagent-systems,rag,self-improvement
GitHub 星标★ 2664
上线时间2024-04-10 00:00:00
代码更新2024-10-22
仓库体积12.0 MB
本站数据更新2026-11-08
维护状态低维护
收录时间2026-08-09
浏览次数5

项目介绍

Memary 是一个为自主智能体(Autonomous Agents)提供持久化记忆层的开源框架。它解决了大语言模型在对话或任务执行中缺乏长期记忆、无法积累用户偏好和上下文的问题。其核心能力包括:模拟人类记忆的认知架构,支持短期、长期记忆的自动管理与检索;提供可插拔的记忆存储后端,默认集成图数据库(如 Neo4j),支持知识图谱式的关联记忆;内置记忆衰减和强化机制,模拟遗忘曲线,使记忆更贴近真实使用场景;提供简单的 Python API,方便开发者快速为现有 Agent 添加记忆功能。Memary 旨在让智能体在多次交互中持续学习,提升个性化体验和任务连续性。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 2664

使用教程

难度:进阶 约 20 分钟 部署方式:库/依赖 8 步

环境要求

  • Python 版本需 <= 3.11.9
  • 已安装 pip
  • 使用本地模型时需自行安装 Ollama 并下载模型(如 Llama 3 8B/40B、LLaVA)
  • 准备 OpenAI、Perplexity、Google Maps、Alpha Vantage 等 API Key(部分为可选)
  • 一个图数据库凭证:FalkorDB 或 Neo4j 二选一

安装与启动步骤

  1. 1确认 Python 版本

    Memary 要求 Python 版本不高于 3.11.9,先确认当前版本是否符合,不符合需先切换环境。

    python --version
  2. 2用 pip 安装 memary

    官方推荐的最简安装方式,直接安装 memary 包,无需克隆仓库。

    pip install memary
  3. 3本地安装依赖

    选择本地运行方式时,先创建指定 Python 版本的虚拟环境,再安装 requirements.txt 中的依赖。

    pip install -r requirements.txt
  4. 4创建 .env 凭证文件

    在项目根目录确保存在 .env,填入模型与数据库所需凭证;图数据库填 FalkorDB 或 Neo4j 其中一组即可。

  5. 5获取各平台 API Key

    按 README 给出的入口分别申请:OpenAI、FalkorDB 或 Neo4j、Perplexity、Google Maps、Alpha Vantage。

  6. 6编辑用户画像

    把 streamlit_app/data/user_persona.txt 按同目录下 user_persona_template.txt 的说明,把花括号替换成真实信息。

  7. 7启动 Streamlit 应用

    进入 streamlit_app 目录后启动应用;系统画像 system_persona.txt 需要时也可一并修改。

    cd streamlit_app
    streamlit run app.py
  8. 8代码中调用 ChatAgent

    在自己的项目中导入 ChatAgent,传入画像、历史对话与记忆流等 JSON 路径,即可为 Agent 加上记忆层。

    from memary.agent.chat_agent import ChatAgent
    
    system_persona_txt = "data/system_persona.txt"
    user_persona_txt = "data/user_persona.txt"
    past_chat_json = "data/past_chat.json"
    memory_stream_json = "data/memory_stream.json"
    entity_knowledge_store_json = "data/entity_knowledge_store.json"
    chat_agent = ChatAgent(
        "Personal Agent",
        memory_stream_json,
        entity_knowledge_store_json,
        system_persona_txt,
        user_persona_txt,
        past_chat_json,
    )

关键配置

配置项必填说明示例
OPENAI_API_KEY是OpenAI 接口密钥,用于调用 GPT 系列模型sk-xxxxxxxxxxxxxxxx
NEO4J_URL否Neo4j 图数据库连接地址,与 NEO4J_PW 搭配使用neo4j+s://xxxx.databases.neo4j.io
NEO4J_PW否Neo4j 图数据库密码YOUR_NEO4J_PW
FALKORDB_URL否FalkorDB 连接串,代替 Neo4j 方案使用falkor://username:password@falkor_host_url:port
PERPLEXITY_API_KEY否Perplexity 搜索接口密钥pplx-xxxxxxxx
GOOGLEMAPS_API_KEY否Google Maps 接口密钥,用于定位类工具AIzaSyxxxxxxxx

如何确认成功

执行 streamlit run app.py 后终端会输出访问地址,浏览器打开该地址能看到 Memary 的聊天界面即启动成功。

常见问题

Q:必须使用 OpenAI 吗?

A:不必须。Memary 支持 Ollama 本地模型(推荐 Llama 3 8B/40B、LLaVA),也支持 gpt-3.5-turbo 和 gpt-4-vision-preview;默认优先使用本地模型。

Q:Python 版本有什么限制?

A:README 明确要求运行 Python 版本 <= 3.11.9,版本过高可能无法安装或运行。

Q:图数据库该选 FalkorDB 还是 Neo4j?

A:两者任选其一。在 .env 中填写 FALKORDB_URL,或填写 NEO4J_URL 与 NEO4J_PW 即可。

Q:怎么在不写代码的情况下体验?

A:进入 streamlit_app 目录执行 streamlit run app.py,即可通过网页界面与带记忆的 Agent 对话。

Q:如何切换记忆对应的不同 Agent?

A:使用 FalkorDB 的用户可以生成多个 graph 并按 ID 切换,对应不同 Agent 的记忆与知识上下文。

注意事项

  • Memary 默认使用本地 Ollama 模型,除非显式指定使用 OpenAI 模型。
  • 使用 Ollama 属于可选项,需要按 Ollama 官方仓库说明自行安装并拉取模型。
  • user_persona.txt 需按 user_persona_template.txt 的格式,把花括号内容替换为实际信息。
  • README 中未给出固定端口与具体启动参数,实际访问地址以 streamlit 启动后终端输出为准。

核心亮点

  • 模拟人类记忆的认知架构,区分短期/长期记忆,机制新颖
  • 集成图数据库(Neo4j),支持知识图谱式关联记忆,检索更智能
  • 提供记忆衰减和强化机制,模拟遗忘曲线,更贴近真实使用

不足之处

  • 项目仍处于早期,文档和社区生态待完善
  • 对图数据库的依赖可能增加部署和运维成本

适用场景

  • 构建需要长期用户画像的聊天机器人
  • 为多轮任务型 Agent 提供上下文连续性
  • 开发个性化推荐系统,基于历史交互记忆

替代项目

MemGPT、LangChain Memory、Zep

上一篇:EvoAgentX

下一篇:llm-for-zotero

同类项目推荐

dao-code 开源

在终端用 DeepSeek 写代码,跨会话记忆几乎零成本

Open-source TypeScript terminal coding agent for DeepSeek-V4 — builds on DeepSeek's···

★ 787 2026-08-09
hermes-rs 开源

用 Rust 重写 AI 智能体核心循环,让工具调用快如闪电。

A fast, self-contained AI agent runtime

★ 70 2026-08-09
CodeWhale 开源

用 Rust 打造高性能、可观测的 AI 智能体编排框架

Open-source agent for the terminal written in Rust. Use any provider or model. Issue···

★ 41160 2026-08-09
autobrowse 开源

说句话,AI 自动帮你上网办事,省去手动点击。

AutoBrowse is an autonomous AI agent that can perform web browsing tasks.

★ 113 2026-08-09
accessibility-agents 开源

让 AI 写代码时顺手把无障碍做对,少返工

WCAG 2.2 AA accessibility review for AI coding tools: Agent Skills, an edit gate and···

★ 438 2026-09-25
creative-director-skill 开源

把戛纳评委装进 AI,用 571 个获奖案例帮你产出顶级创意。

World-class creative director in a skill. Methodology-driven ideation (SIT, TRIZ, La···

★ 300 2026-08-09
phoenix 开源

给 Hermes 智能体装上不死鸟,任务中断自动复活,风险操作自动拦截。

不死鸟 Phoenix — Hermes Agent 插件:路由分档/风险防线/自愈/存档点提醒/审批策略自适应···

★ 58 2026-08-09
chat-ollama 开源

本地模型也能跑智能体,开箱即用对话界面

ChatOllama is an open source agentic app for running AI agents across local and host···

★ 3523 2026-09-22
hermes-skill-atlas 开源

一张地图,快速找到 Hermes Agent 的 70+ 精选技能

The complete, interactive map of Hermes Agent skills — 70+ curated, verified, open ···

★ 98 2026-08-09