Skip to main content

一个智能记忆管理系统,支持短期、中期和长期记忆存储与检索

Project description

MemoryOS

Python License

一个智能记忆管理系统,为对话式 AI 提供短期、中期和长期记忆存储与检索功能。

✨ 特性

  • 多层记忆架构:短期记忆、中期记忆、长期记忆的分层管理
  • 智能检索:基于语义相似度和时间衰减的记忆检索
  • 用户画像:自动分析用户特性和偏好
  • 知识提取:从对话中提取用户私有数据和助手知识
  • 热点分析:基于访问频率和交互强度的记忆热度计算
  • OpenAI 集成:完全兼容 OpenAI API
  • 向量搜索:基于 FAISS 的高效向量检索
  • Web 支持:内置 Flask 支持,便于集成

🚀 快速开始

安装

pip install memoryos

安装时会自动安装所有必需的依赖包:

  • openai - OpenAI API 客户端
  • numpy - 数值计算
  • sentence-transformers - 文本向量化
  • faiss-gpu - 高效向量搜索
  • Flask - Web 框架支持
  • httpx[socks] - HTTP 客户端

基本使用

from memoryos import Memoryos

# 初始化记忆系统
memory = Memoryos(
    user_id="user123",
    openai_api_key="your-openai-api-key",
    data_storage_path="./data"
)

# 添加对话记忆
memory.add_memory(
    user_input="你好,我是张三",
    agent_response="你好张三,很高兴认识你!"
)

# 生成响应(会自动检索相关记忆)
response = memory.get_response(
    query="我之前告诉过你我的名字吗?",
    relationship_with_user="friend"
)
print(response)

📖 详细配置

memory = Memoryos(
    user_id="user123",                    # 用户标识
    assistant_id="assistant_v1",          # 助手标识
    openai_api_key="sk-xxx",             # OpenAI API 密钥
    openai_base_url="https://api.openai.com/v1",  # API 基地址(可选)
    data_storage_path="./data",          # 数据存储路径
    short_term_capacity=10,              # 短期记忆容量
    mid_term_capacity=2000,              # 中期记忆容量
    long_term_knowledge_capacity=100,    # 长期记忆知识容量
    llm_model="gpt-4o-mini"             # 使用的 LLM 模型
)

🏗️ 系统要求

  • Python 3.8+
  • 支持 GPU 的环境(推荐,用于 FAISS 加速)
  • OpenAI API 密钥

📁 数据存储结构

data/
├── users/
│   └── user123/
│       ├── short_term.json     # 短期记忆
│       ├── mid_term.json       # 中期记忆
│       └── long_term_user.json # 用户长期记忆
└── assistants/
    └── assistant_v1/
        └── long_term_assistant.json  # 助手知识库

📄 许可证

MIT License


如有问题,请通过邮件联系:your.email@example.com

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

memoryos_baijia-0.1.1.tar.gz (29.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

memoryos_baijia-0.1.1-py3-none-any.whl (28.4 kB view details)

Uploaded Python 3

File details

Details for the file memoryos_baijia-0.1.1.tar.gz.

File metadata

  • Download URL: memoryos_baijia-0.1.1.tar.gz
  • Upload date:
  • Size: 29.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.8

File hashes

Hashes for memoryos_baijia-0.1.1.tar.gz
Algorithm Hash digest
SHA256 f0a3c0be5263970695b65fdead6bc3f5b7c051e72fd765db1f2c14967ccf2c76
MD5 1b6b6d3666c1d3a92c99c69bc4f702ab
BLAKE2b-256 ba35e5cc46120cf73923e44cbf636f04606371ecbf1386b8536d7fae61033c04

See more details on using hashes here.

File details

Details for the file memoryos_baijia-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for memoryos_baijia-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b13f692ebf92390f32378527653b6bae81717788ce1b50ba4b7596e13a14f0f7
MD5 ae562c0aa40164fbc279f47c155f4b96
BLAKE2b-256 b5ecc3f0fff0e648e489c1a24df96383fb1e9a05cfae0a3a0567cf699f727fe6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page