You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
## Description
<!--
Please include a summary of the changes below;
Fill in the issue number that this PR addresses (if applicable);
Fill in the related MemOS-Docs repository issue or PR link (if
applicable);
Mention the person who will review this PR (if you know who it is);
Replace (summary), (issue), (docs-issue-or-pr-link), and (reviewer) with
the appropriate information.
请在下方填写更改的摘要;
填写此 PR 解决的问题编号(如果适用);
填写相关的 MemOS-Docs 仓库 issue 或 PR 链接(如果适用);
提及将审查此 PR 的人(如果您知道是谁);
替换 (summary)、(issue)、(docs-issue-or-pr-link) 和 (reviewer) 为适当的信息。
-->
Summary: (summary)
Fix: #(issue)
Docs Issue/PR: (docs-issue-or-pr-link)
Reviewer: @(reviewer)
## Checklist:
- [ ] I have performed a self-review of my own code | 我已自行检查了自己的代码
- [ ] I have commented my code in hard-to-understand areas |
我已在难以理解的地方对代码进行了注释
- [ ] I have added tests that prove my fix is effective or that my
feature works | 我已添加测试以证明我的修复有效或功能正常
- [ ] I have created related documentation issue/PR in
[MemOS-Docs](https://github.com/MemTensor/MemOS-Docs) (if applicable) |
我已在 [MemOS-Docs](https://github.com/MemTensor/MemOS-Docs) 中创建了相关的文档
issue/PR(如果适用)
- [ ] I have linked the issue to this PR (if applicable) | 我已将 issue
链接到此 PR(如果适用)
- [ ] I have mentioned the person who will review this PR | 我已提及将审查此 PR
的人
Copy file name to clipboardExpand all lines: README.md
+18-3Lines changed: 18 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,13 +3,15 @@
3
3
MemOS is an open-source **Agent Memory framework** that empowers AI agents with **long-term memory, personality consistency, and contextual recall**. It enables agents to **remember past interactions**, **learn over time**, and **build evolving identities** across sessions.
4
4
5
5
Designed for **AI companions, role-playing NPCs, and multi-agent systems**, MemOS provides a unified API for **memory representation, retrieval, and update** — making it the foundation for next-generation **memory-augmented AI agents**.
6
+
7
+
🆕 **MemOS 2.0** introduces **knowledge base system**, **multi-modal memory** (images & documents), **tool memory** for Agent optimization, **memory feedback mechanism** for precise control, and **enterprise-grade architecture** with Redis Streams scheduler and advanced DB optimizations.
**MemOS** is an operating system for Large Language Models (LLMs) that enhances them with long-term memory capabilities. It allows LLMs to store, retrieve, and manage information, enabling more context-aware, consistent, and personalized interactions.
65
+
**MemOS** is an operating system for Large Language Models (LLMs) that enhances them with long-term memory capabilities. It allows LLMs to store, retrieve, and manage information, enabling more context-aware, consistent, and personalized interactions.**MemOS 2.0** features comprehensive knowledge base management, multi-modal memory support, tool memory for Agent enhancement, and enterprise-grade architecture optimizations.
Major upgrade featuring comprehensive Knowledge Base system with automatic document/URL parsing and cross-project sharing; Memory feedback mechanism for correction and precise deletion; Multi-modal memory supporting images and charts; Tool Memory to enhance Agent planning; Full architecture upgrade with Redis Streams multi-level queue scheduler and DB optimizations; New streaming/non-streaming Chat interfaces; Complete MCP upgrade; Lightweight deployment modes (quick & full).
- Service is running: `python -m uvicorn memos.api.server_api:app --host 0.0.0.0 --port 8001`
7
+
-`.env` is configured for Redis, embeddings, and the vector DB (current test setup: Redis reachable, Qdrant Cloud connected).
8
+
9
+
### 1) /product/add
10
+
- Purpose: Write a memory (sync/async).
11
+
- Example request (sync):
12
+
13
+
```bash
14
+
curl -s -X POST http://127.0.0.1:8001/product/add \
15
+
-H 'Content-Type: application/json' \
16
+
-d '{
17
+
"user_id": "tester",
18
+
"mem_cube_id": "default_cube",
19
+
"memory_content": "Apple is a fruit rich in fiber.",
20
+
"async_mode": "sync"
21
+
}'
22
+
```
23
+
24
+
- Observed result: `200`, message: "Memory added successfully", returns the written `memory_id` and related info.
25
+
26
+
### 2) /product/get_all
27
+
- Purpose: List all memories for the user/type to confirm writes.
28
+
- Example request:
29
+
30
+
```bash
31
+
curl -s -X POST http://127.0.0.1:8001/product/get_all \
32
+
-H 'Content-Type: application/json' \
33
+
-d '{
34
+
"user_id": "tester",
35
+
"memory_type": "text_mem",
36
+
"mem_cube_ids": ["default_cube"]
37
+
}'
38
+
```
39
+
40
+
- Observed result: `200`, shows the recently written apple memories (WorkingMemory/LongTermMemory/UserMemory present, `vector_sync=success`).
41
+
42
+
### 3) /product/search
43
+
- Purpose: Vector search memories.
44
+
- Example request:
45
+
46
+
```bash
47
+
curl -s -X POST http://127.0.0.1:8001/product/search \
48
+
-H 'Content-Type: application/json' \
49
+
-d '{
50
+
"query": "What fruit is rich in fiber?",
51
+
"user_id": "tester",
52
+
"mem_cube_id": "default_cube",
53
+
"top_k": 5,
54
+
"pref_top_k": 3,
55
+
"include_preference": false
56
+
}'
57
+
```
58
+
59
+
- Observed result: previously returned 400 because payload indexes (e.g., `vector_sync`) were missing in Qdrant. Index creation is now automatic during Qdrant initialization (memory_type/status/vector_sync/user_name).
60
+
- If results are empty or errors persist, verify indexes exist (auto-created on restart) or recreate/clean the collection.
61
+
62
+
### Notes / Next steps
63
+
-`/product/add` and `/product/get_all` are healthy.
64
+
-`/product/search` still returns empty results even with vectors present; likely related to search filters or vector retrieval.
65
+
- Suggested follow-ups: inspect `SearchHandler` flow, filter conditions (user_id/session/cube_name), and vector DB search calls; capture logs or compare with direct `VecDBFactory.search` calls.
0 commit comments