agentic_huge_data_base / wiki
页面 Mem0 · 1.3 部署模型·DeepWiki 中文全文译文

1.3 · 部署模型(Deployment Models)

长期记忆与上下文管理 · 聚焦本章的模块关系、源码依据与实现要点。

项目Mem0 章节1.3 状态全文译文 模块模型调用与提供方适配、界面与交互、系统架构、测试、发布与运维
源码线索
  • docs/api-reference/entities/delete-user.mdx
  • docs/api-reference/entities/get-users.mdx
  • docs/api-reference/events/get-event.mdx
  • docs/api-reference/events/get-events.mdx
  • docs/cookbooks/essentials/building-ai-companion.mdx
  • docs/cookbooks/essentials/controlling-memory-ingestion.mdx
  • docs/cookbooks/essentials/entity-partitioning-playbook.mdx
  • docs/cookbooks/essentials/exporting-memories.mdx
  • docs/cookbooks/integrations/healthcare-google-adk.mdx
  • docs/cookbooks/integrations/openai-tool-calls.mdx
模块标签
  • 模型调用与提供方适配
  • 界面与交互
  • 系统架构
  • 测试、发布与运维
  • 记忆与上下文

章节正文

部署模型

部署模型

相关源文件

本章引用的主要源码文件:

  • docs/api-reference/entities/delete-user.mdx
  • docs/api-reference/entities/get-users.mdx
  • docs/api-reference/events/get-event.mdx
  • docs/api-reference/events/get-events.mdx
  • docs/cookbooks/essentials/building-ai-companion.mdx
  • docs/cookbooks/essentials/controlling-memory-ingestion.mdx
  • docs/cookbooks/essentials/entity-partitioning-playbook.mdx
  • docs/cookbooks/essentials/exporting-memories.mdx
  • docs/cookbooks/integrations/healthcare-google-adk.mdx
  • docs/cookbooks/integrations/openai-tool-calls.mdx
  • docs/cookbooks/overview.mdx
  • docs/core-concepts/memory-operations/add.mdx
  • docs/core-concepts/memory-operations/delete.mdx
  • docs/core-concepts/memory-operations/search.mdx
  • docs/core-concepts/memory-operations/update.mdx
  • docs/core-concepts/memory-types.mdx
  • docs/docs.json
  • docs/llms.txt
  • docs/open-source/configuration.mdx
  • docs/open-source/overview.mdx
  • docs/open-source/python-quickstart.mdx
  • docs/openapi.json
  • docs/platform/advanced-memory-operations.mdx
  • docs/platform/features/contextual-add.mdx
  • docs/platform/features/entity-scoped-memory.mdx
  • docs/platform/features/platform-overview.mdx
  • docs/platform/features/v2-memory-filters.mdx
  • docs/platform/overview.mdx
  • docs/platform/quickstart.mdx
  • mem0/client/main.py

Mem0 提供两种部署模型,分别满足不同的运维需求:平台版(Platform)(全托管)和开源版(Open Source)(自托管)。本页面将对比两者的架构、权衡因素和选型标准,帮助您为工作负载选择最合适的部署模型。

架构总览

Mem0 的双部署模型将基础设施管理与内存功能分离。两种路径都实现了相同的内存操作,但在底层服务的配置和扩展方式上有所不同。

平台版架构(托管服务)

平台版部署使用 MemoryClient 与 Mem0 托管的 API(api.mem0.ai)进行通信。认证通过 API 密钥处理。托管基础设施负责处理向量存储、图数据库、大语言模型(LLM)编排,以及 Webhook 和自定义分类等高级功能。

Mem0 · 平台版架构(托管服务) · 图 1
Mem0 · 平台版架构(托管服务) · 图 1

来源: mem0/client/main.py:62-127, docs/llms.txt:7-11, docs/platform/overview.mdx:7-15, docs/core-concepts/memory-operations/add.mdx:57-74

开源版架构(自托管)

开源版部署直接在您的进程中实例化 Memory 类。您需要自行配置大语言模型(LLM)、嵌入向量生成器和向量存储。默认情况下,它使用 OpenAI 作为大语言模型(LLM)/嵌入向量生成器,并使用本地 Qdrant 实例进行存储。

Mem0 · 开源版架构(自托管) · 图 2
Mem0 · 开源版架构(自托管) · 图 2

来源: docs/open-source/python-quickstart.mdx:80-87, docs/llms.txt:85-108, docs/open-source/overview.mdx:1-10

部署对比

功能对等矩阵
能力平台版(托管)开源版(OSS)实现细节
事实提取使用大语言模型(LLM)从消息中提取事实 docs/core-concepts/memory-operations/add.mdx:40-42
冲突解决检查现有记忆是否存在重复/矛盾 docs/core-concepts/memory-operations/add.mdx:43-45
图记忆支持 Neo4j、Kuzu、Neptune 等 docs/platform/features/platform-overview.mdx:24-25
异步支持AsyncMemoryClient(平台版)vs AsyncMemory(开源版) docs/llms.txt:170-171
Webhook仅平台版提供的事件通知系统 docs/llms.txt:103-107
自定义分类在项目级别定义的 AI 分配分类 docs/cookbooks/essentials/building-ai-companion.mdx:185-195
批量删除batch_delete 支持最多 1000 条记忆 docs/core-concepts/memory-operations/delete.mdx:22-23
历史追踪托管本地 SQLite开源版将历史存储在 ~/.mem0/history.db docs/open-source/python-quickstart.mdx:85

来源: docs/llms.txt:7-12, docs/core-concepts/memory-operations/add.mdx:170-177, docs/open-source/python-quickstart.mdx:80-87, docs/core-concepts/memory-operations/delete.mdx:10-24

客户端代码对比

SDK 为每种模型提供了不同的入口点。MemoryClient 面向托管的 API,而 Memory 则在本地运行逻辑。

平台版(托管):

from mem0 import MemoryClient

# 使用 API 密钥向 api.mem0.ai 进行认证
client = MemoryClient(api_key="your-api-key")
client.add([{"role": "user", "content": "我是素食主义者"}], user_id="user123")

开源版(自托管):

from mem0 import Memory

# 本地运行;需要提供商 API 密钥(例如 OPENAI_API_KEY)
m = Memory()
m.add("我是素食主义者", user_id="user123")

来源: mem0/client/main.py:75-127, docs/llms.txt:25-51, docs/llms.txt:85-108

决策矩阵

何时使用平台版(托管)

选择平台版,如果:

  • 零基础设施: 您希望避免管理向量数据库、图存储和扩展问题 docs/platform/overview.mdx:22-23
  • 高级功能: 您需要托管的重新排序器、Webhook 或 AI 驱动的自定义分类 docs/llms.txt:7-8
  • 企业级管控: 您需要 SOC 2 Type II 合规性、审计日志和组织级治理 docs/platform/overview.mdx:25
  • 性能要求: 您需要由 Mem0 团队优化的亚 50 毫秒检索 docs/llms.txt:23
何时使用开源版(自托管)

选择开源版,如果:

  • 数据隐私: 您必须将所有数据保留在自己的基础设施或 VPC 内 docs/llms.txt:23
  • 本地模型: 您希望使用本地大语言模型(LLM)(通过 Ollama)或特定的开源向量存储 docs/cookbooks/essentials/building-ai-companion.mdx:16-17
  • 完全自定义: 您需要修改提取提示或内部记忆逻辑 docs/open-source/overview.mdx:160-161
  • 成本敏感: 您的使用量极高,托管 API 成本超过了自托管基础设施的成本。

来源: docs/llms.txt:21-24, docs/platform/overview.mdx:20-27, docs/cookbooks/essentials/building-ai-companion.mdx:86-120

技术实现细节

平台版验证流程

MemoryClient 初始化时,它会通过 /v1/ping/ 端点验证 API 密钥,以获取组织和项目上下文。

Mem0 · 平台版验证流程 · 图 3
Mem0 · 平台版验证流程 · 图 3

来源: mem0/client/main.py:105-154

开源版组件默认值

开源版 Memory 类默认使用一套技术栈,只需 OpenAI API 密钥即可立即使用。

组件默认提供商配置 docs/open-source/python-quickstart.mdx:80-87
大语言模型(LLM)OpenAIgpt-4o-mini 用于事实提取
嵌入向量生成器OpenAItext-embedding-3-small(1536 维)
向量存储Qdrant本地存储于 /tmp/qdrant
历史记录SQLite本地数据库位于 ~/.mem0/history.db

来源: docs/open-source/python-quickstart.mdx:80-87, mem0/client/main.py:29-30