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_bailab-0.1.0.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_bailab-0.1.0-py3-none-any.whl (28.4 kB view details)

Uploaded Python 3

File details

Details for the file memoryos_bailab-0.1.0.tar.gz.

File metadata

  • Download URL: memoryos_bailab-0.1.0.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_bailab-0.1.0.tar.gz
Algorithm Hash digest
SHA256 08692cef214364f05ad348cad0b37d7111c0056b259680436b5d7714f85ac5dc
MD5 1257e4b91df72a07733587e43657ee53
BLAKE2b-256 a3ac952e224267c29fe25dfffe32d43e887ab9c2ac353a3739e7d887099a1df2

See more details on using hashes here.

File details

Details for the file memoryos_bailab-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for memoryos_bailab-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c3b9c2a9180289a3150f4460a1f04eeb2f972aee0626a6c57f57abca60bd90b9
MD5 73927b85afdb06de035b390eb651eac3
BLAKE2b-256 a7d7202e7a388a09298a582e9bc2cae4a2a4bccb67a5e59ffe264dc0e55be0f4

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