MemoryOS 0.2.0__tar.gz → 0.2.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of MemoryOS might be problematic. Click here for more details.

Files changed (184) hide show
  1. {memoryos-0.2.0 → memoryos-0.2.2}/PKG-INFO +67 -26
  2. {memoryos-0.2.0 → memoryos-0.2.2}/README.md +27 -13
  3. memoryos-0.2.2/pyproject.toml +206 -0
  4. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/__init__.py +1 -1
  5. memoryos-0.2.2/src/memos/api/config.py +562 -0
  6. memoryos-0.2.2/src/memos/api/context/context.py +147 -0
  7. memoryos-0.2.2/src/memos/api/context/dependencies.py +90 -0
  8. memoryos-0.2.2/src/memos/api/exceptions.py +28 -0
  9. memoryos-0.2.2/src/memos/api/mcp_serve.py +502 -0
  10. memoryos-0.2.2/src/memos/api/product_api.py +35 -0
  11. memoryos-0.2.2/src/memos/api/product_models.py +163 -0
  12. memoryos-0.2.2/src/memos/api/routers/__init__.py +1 -0
  13. memoryos-0.2.2/src/memos/api/routers/product_router.py +386 -0
  14. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/chunkers/sentence_chunker.py +8 -2
  15. memoryos-0.2.2/src/memos/cli.py +113 -0
  16. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/configs/embedder.py +27 -0
  17. memoryos-0.2.2/src/memos/configs/graph_db.py +174 -0
  18. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/configs/internet_retriever.py +6 -0
  19. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/configs/llm.py +47 -0
  20. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/configs/mem_cube.py +1 -1
  21. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/configs/mem_os.py +5 -0
  22. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/configs/mem_reader.py +9 -0
  23. memoryos-0.2.2/src/memos/configs/mem_scheduler.py +178 -0
  24. memoryos-0.2.2/src/memos/configs/mem_user.py +58 -0
  25. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/configs/memory.py +5 -4
  26. memoryos-0.2.2/src/memos/dependency.py +52 -0
  27. memoryos-0.2.2/src/memos/embedders/ark.py +92 -0
  28. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/embedders/factory.py +4 -0
  29. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/embedders/sentence_transformer.py +8 -2
  30. memoryos-0.2.2/src/memos/embedders/universal_api.py +32 -0
  31. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/graph_dbs/base.py +11 -3
  32. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/graph_dbs/factory.py +4 -0
  33. memoryos-0.2.2/src/memos/graph_dbs/nebular.py +1364 -0
  34. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/graph_dbs/neo4j.py +333 -124
  35. memoryos-0.2.2/src/memos/graph_dbs/neo4j_community.py +300 -0
  36. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/llms/base.py +9 -0
  37. memoryos-0.2.2/src/memos/llms/deepseek.py +54 -0
  38. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/llms/factory.py +10 -1
  39. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/llms/hf.py +170 -13
  40. memoryos-0.2.2/src/memos/llms/hf_singleton.py +114 -0
  41. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/llms/ollama.py +4 -0
  42. memoryos-0.2.2/src/memos/llms/openai.py +101 -0
  43. memoryos-0.2.2/src/memos/llms/qwen.py +63 -0
  44. memoryos-0.2.2/src/memos/llms/vllm.py +153 -0
  45. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/log.py +1 -1
  46. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_cube/general.py +77 -16
  47. memoryos-0.2.2/src/memos/mem_cube/utils.py +133 -0
  48. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_os/core.py +251 -51
  49. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_os/main.py +94 -12
  50. memoryos-0.2.2/src/memos/mem_os/product.py +1266 -0
  51. memoryos-0.2.2/src/memos/mem_os/utils/default_config.py +352 -0
  52. memoryos-0.2.2/src/memos/mem_os/utils/format_utils.py +1401 -0
  53. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_reader/simple_struct.py +18 -10
  54. memoryos-0.2.2/src/memos/mem_scheduler/base_scheduler.py +565 -0
  55. memoryos-0.2.2/src/memos/mem_scheduler/general_scheduler.py +306 -0
  56. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_scheduler/modules/base.py +14 -5
  57. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_scheduler/modules/dispatcher.py +67 -4
  58. memoryos-0.2.2/src/memos/mem_scheduler/modules/misc.py +104 -0
  59. memoryos-0.2.2/src/memos/mem_scheduler/modules/monitor.py +272 -0
  60. memoryos-0.2.2/src/memos/mem_scheduler/modules/rabbitmq_service.py +319 -0
  61. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_scheduler/modules/redis_service.py +32 -22
  62. memoryos-0.2.2/src/memos/mem_scheduler/modules/retriever.py +185 -0
  63. memoryos-0.2.2/src/memos/mem_scheduler/modules/scheduler_logger.py +255 -0
  64. memoryos-0.2.2/src/memos/mem_scheduler/mos_for_test_scheduler.py +140 -0
  65. memoryos-0.2.2/src/memos/mem_scheduler/schemas/general_schemas.py +43 -0
  66. memoryos-0.2.0/src/memos/mem_scheduler/modules/schemas.py → memoryos-0.2.2/src/memos/mem_scheduler/schemas/message_schemas.py +63 -61
  67. memoryos-0.2.2/src/memos/mem_scheduler/schemas/monitor_schemas.py +329 -0
  68. memoryos-0.2.2/src/memos/mem_scheduler/utils/filter_utils.py +176 -0
  69. memoryos-0.2.2/src/memos/mem_scheduler/utils/misc_utils.py +61 -0
  70. memoryos-0.2.2/src/memos/mem_user/factory.py +94 -0
  71. memoryos-0.2.2/src/memos/mem_user/mysql_persistent_user_manager.py +271 -0
  72. memoryos-0.2.2/src/memos/mem_user/mysql_user_manager.py +500 -0
  73. memoryos-0.2.2/src/memos/mem_user/persistent_factory.py +96 -0
  74. memoryos-0.2.2/src/memos/mem_user/persistent_user_manager.py +260 -0
  75. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_user/user_manager.py +4 -4
  76. memoryos-0.2.2/src/memos/memories/activation/item.py +54 -0
  77. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/activation/kv.py +10 -3
  78. memoryos-0.2.2/src/memos/memories/activation/vllmkv.py +219 -0
  79. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/factory.py +2 -0
  80. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/textual/base.py +1 -1
  81. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/textual/general.py +43 -97
  82. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/textual/item.py +5 -33
  83. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/textual/tree.py +22 -12
  84. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/textual/tree_text_memory/organize/conflict.py +9 -5
  85. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/textual/tree_text_memory/organize/manager.py +26 -18
  86. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/textual/tree_text_memory/organize/redundancy.py +25 -44
  87. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/textual/tree_text_memory/organize/relation_reason_detector.py +50 -48
  88. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/textual/tree_text_memory/organize/reorganizer.py +81 -56
  89. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/textual/tree_text_memory/retrieve/internet_retriever.py +6 -3
  90. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/textual/tree_text_memory/retrieve/internet_retriever_factory.py +2 -0
  91. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/textual/tree_text_memory/retrieve/recall.py +0 -1
  92. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/textual/tree_text_memory/retrieve/reranker.py +2 -2
  93. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/textual/tree_text_memory/retrieve/retrieval_mid_structs.py +2 -0
  94. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/textual/tree_text_memory/retrieve/searcher.py +52 -28
  95. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/textual/tree_text_memory/retrieve/task_goal_parser.py +42 -15
  96. memoryos-0.2.2/src/memos/memories/textual/tree_text_memory/retrieve/utils.py +52 -0
  97. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/textual/tree_text_memory/retrieve/xinyusearch.py +62 -58
  98. memoryos-0.2.2/src/memos/memos_tools/dinding_report_bot.py +422 -0
  99. memoryos-0.2.2/src/memos/memos_tools/notification_service.py +44 -0
  100. memoryos-0.2.2/src/memos/memos_tools/notification_utils.py +96 -0
  101. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/parsers/markitdown.py +8 -2
  102. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/settings.py +3 -1
  103. memoryos-0.2.2/src/memos/templates/__init__.py +0 -0
  104. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/templates/mem_reader_prompts.py +66 -23
  105. memoryos-0.2.2/src/memos/templates/mem_scheduler_prompts.py +148 -0
  106. memoryos-0.2.2/src/memos/templates/mos_prompts.py +150 -0
  107. memoryos-0.2.2/src/memos/templates/tree_reorganize_prompts.py +223 -0
  108. memoryos-0.2.2/src/memos/vec_dbs/__init__.py +0 -0
  109. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/vec_dbs/base.py +12 -0
  110. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/vec_dbs/qdrant.py +46 -20
  111. memoryos-0.2.0/pyproject.toml +0 -112
  112. memoryos-0.2.0/src/memos/configs/graph_db.py +0 -45
  113. memoryos-0.2.0/src/memos/configs/mem_scheduler.py +0 -78
  114. memoryos-0.2.0/src/memos/llms/openai.py +0 -35
  115. memoryos-0.2.0/src/memos/mem_cube/utils.py +0 -24
  116. memoryos-0.2.0/src/memos/mem_os/product.py +0 -89
  117. memoryos-0.2.0/src/memos/mem_scheduler/base_scheduler.py +0 -164
  118. memoryos-0.2.0/src/memos/mem_scheduler/general_scheduler.py +0 -305
  119. memoryos-0.2.0/src/memos/mem_scheduler/modules/monitor.py +0 -82
  120. memoryos-0.2.0/src/memos/mem_scheduler/modules/retriever.py +0 -41
  121. memoryos-0.2.0/src/memos/mem_scheduler/utils.py +0 -26
  122. memoryos-0.2.0/src/memos/memories/activation/item.py +0 -25
  123. memoryos-0.2.0/src/memos/memories/textual/tree_text_memory/retrieve/utils.py +0 -48
  124. memoryos-0.2.0/src/memos/templates/mem_scheduler_prompts.py +0 -65
  125. memoryos-0.2.0/src/memos/templates/mos_prompts.py +0 -63
  126. memoryos-0.2.0/src/memos/templates/tree_reorganize_prompts.py +0 -168
  127. {memoryos-0.2.0 → memoryos-0.2.2}/LICENSE +0 -0
  128. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/api/start_api.py +0 -0
  129. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/chunkers/__init__.py +0 -0
  130. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/chunkers/base.py +0 -0
  131. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/chunkers/factory.py +0 -0
  132. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/configs/__init__.py +0 -0
  133. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/configs/base.py +0 -0
  134. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/configs/chunker.py +0 -0
  135. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/configs/mem_chat.py +0 -0
  136. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/configs/parser.py +0 -0
  137. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/configs/utils.py +0 -0
  138. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/configs/vec_db.py +0 -0
  139. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/deprecation.py +0 -0
  140. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/embedders/__init__.py +0 -0
  141. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/embedders/base.py +0 -0
  142. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/embedders/ollama.py +0 -0
  143. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/exceptions.py +0 -0
  144. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/graph_dbs/__init__.py +0 -0
  145. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/graph_dbs/item.py +0 -0
  146. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/hello_world.py +0 -0
  147. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/llms/__init__.py +0 -0
  148. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/llms/utils.py +0 -0
  149. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_chat/__init__.py +0 -0
  150. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_chat/base.py +0 -0
  151. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_chat/factory.py +0 -0
  152. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_chat/simple.py +0 -0
  153. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_cube/__init__.py +0 -0
  154. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_cube/base.py +0 -0
  155. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_os/client.py +0 -0
  156. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_reader/__init__.py +0 -0
  157. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_reader/base.py +0 -0
  158. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_reader/factory.py +0 -0
  159. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_reader/memory.py +0 -0
  160. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_scheduler/__init__.py +0 -0
  161. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_scheduler/modules/__init__.py +0 -0
  162. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/mem_scheduler/scheduler_factory.py +0 -0
  163. {memoryos-0.2.0/src/memos/memories → memoryos-0.2.2/src/memos/mem_scheduler/schemas}/__init__.py +0 -0
  164. {memoryos-0.2.0/src/memos/memories/activation → memoryos-0.2.2/src/memos/mem_scheduler/utils}/__init__.py +0 -0
  165. {memoryos-0.2.0/src/memos/memories/parametric → memoryos-0.2.2/src/memos/memories}/__init__.py +0 -0
  166. {memoryos-0.2.0/src/memos/memories/textual → memoryos-0.2.2/src/memos/memories/activation}/__init__.py +0 -0
  167. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/activation/base.py +0 -0
  168. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/base.py +0 -0
  169. {memoryos-0.2.0/src/memos/memories/textual/tree_text_memory → memoryos-0.2.2/src/memos/memories/parametric}/__init__.py +0 -0
  170. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/parametric/base.py +0 -0
  171. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/parametric/item.py +0 -0
  172. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/parametric/lora.py +0 -0
  173. {memoryos-0.2.0/src/memos/memories/textual/tree_text_memory/organize → memoryos-0.2.2/src/memos/memories/textual}/__init__.py +0 -0
  174. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/textual/naive.py +0 -0
  175. {memoryos-0.2.0/src/memos/memories/textual/tree_text_memory/retrieve → memoryos-0.2.2/src/memos/memories/textual/tree_text_memory}/__init__.py +0 -0
  176. {memoryos-0.2.0/src/memos/parsers → memoryos-0.2.2/src/memos/memories/textual/tree_text_memory/organize}/__init__.py +0 -0
  177. {memoryos-0.2.0/src/memos/templates → memoryos-0.2.2/src/memos/memories/textual/tree_text_memory/retrieve}/__init__.py +0 -0
  178. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/memories/textual/tree_text_memory/retrieve/reasoner.py +0 -0
  179. {memoryos-0.2.0/src/memos/vec_dbs → memoryos-0.2.2/src/memos/parsers}/__init__.py +0 -0
  180. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/parsers/base.py +0 -0
  181. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/parsers/factory.py +0 -0
  182. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/types.py +0 -0
  183. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/vec_dbs/factory.py +0 -0
  184. {memoryos-0.2.0 → memoryos-0.2.2}/src/memos/vec_dbs/item.py +0 -0
@@ -1,33 +1,60 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: MemoryOS
3
- Version: 0.2.0
3
+ Version: 0.2.2
4
4
  Summary: Intelligence Begins with Memory
5
5
  License: Apache-2.0
6
- Keywords: memory,llm,language model,memoryOS,agent
6
+ Keywords: memory,llm,language model,memoryOS,agent,kv cache,lora
7
7
  Author: MemTensor
8
- Author-email: lizy@memtensor.cn
9
- Requires-Python: >=3.10,<4.0
8
+ Author-email: MemTensor@memtensor.cn
9
+ Requires-Python: >=3.10
10
+ Classifier: Intended Audience :: Developers
10
11
  Classifier: License :: OSI Approved :: Apache Software License
11
- Classifier: Programming Language :: Python :: 3
12
+ Classifier: Natural Language :: English
13
+ Classifier: Natural Language :: Chinese (Simplified)
14
+ Classifier: Operating System :: OS Independent
15
+ Classifier: Programming Language :: Python :: 3 :: Only
12
16
  Classifier: Programming Language :: Python :: 3.10
13
17
  Classifier: Programming Language :: Python :: 3.11
14
18
  Classifier: Programming Language :: Python :: 3.12
15
19
  Classifier: Programming Language :: Python :: 3.13
16
- Requires-Dist: accelerate (>=1.7.0,<2.0.0)
17
- Requires-Dist: chonkie (>=1.0.7,<2.0.0)
20
+ Classifier: Topic :: Software Development :: Libraries
21
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
22
+ Provides-Extra: all
23
+ Provides-Extra: mem-reader
24
+ Provides-Extra: mem-scheduler
25
+ Provides-Extra: tree-mem
26
+ Requires-Dist: chonkie (>=1.0.7,<2.0.0) ; extra == "all"
27
+ Requires-Dist: chonkie (>=1.0.7,<2.0.0) ; extra == "mem-reader"
18
28
  Requires-Dist: fastapi[all] (>=0.115.12,<0.116.0)
19
- Requires-Dist: markitdown[docx,pdf,pptx,xls,xlsx] (>=0.1.1,<0.2.0)
20
- Requires-Dist: neo4j (>=5.28.1,<6.0.0)
29
+ Requires-Dist: fastmcp (>=2.10.5,<3.0.0)
30
+ Requires-Dist: markitdown[docx,pdf,pptx,xls,xlsx] (>=0.1.1,<0.2.0) ; extra == "all"
31
+ Requires-Dist: markitdown[docx,pdf,pptx,xls,xlsx] (>=0.1.1,<0.2.0) ; extra == "mem-reader"
32
+ Requires-Dist: neo4j (>=5.28.1,<6.0.0) ; extra == "all"
33
+ Requires-Dist: neo4j (>=5.28.1,<6.0.0) ; extra == "tree-mem"
21
34
  Requires-Dist: ollama (>=0.4.8,<0.5.0)
22
35
  Requires-Dist: openai (>=1.77.0,<2.0.0)
23
- Requires-Dist: qdrant-client (>=1.14.2,<2.0.0)
24
- Requires-Dist: redis (>=6.2.0,<7.0.0)
25
- Requires-Dist: schedule (>=1.2.2,<2.0.0)
26
- Requires-Dist: sentence-transformers (>=4.1.0,<5.0.0)
36
+ Requires-Dist: pika (>=1.3.2,<2.0.0) ; extra == "all"
37
+ Requires-Dist: pika (>=1.3.2,<2.0.0) ; extra == "mem-scheduler"
38
+ Requires-Dist: python-dateutil (>=2.9.0.post0,<3.0.0)
39
+ Requires-Dist: qdrant-client (>=1.14.2,<2.0.0) ; extra == "all"
40
+ Requires-Dist: redis (>=6.2.0,<7.0.0) ; extra == "all"
41
+ Requires-Dist: redis (>=6.2.0,<7.0.0) ; extra == "mem-scheduler"
42
+ Requires-Dist: schedule (>=1.2.2,<2.0.0) ; extra == "all"
43
+ Requires-Dist: schedule (>=1.2.2,<2.0.0) ; extra == "tree-mem"
44
+ Requires-Dist: scikit-learn (>=1.7.0,<2.0.0)
45
+ Requires-Dist: sentence-transformers (>=4.1.0,<5.0.0) ; extra == "all"
27
46
  Requires-Dist: sqlalchemy (>=2.0.41,<3.0.0)
28
47
  Requires-Dist: tenacity (>=9.1.2,<10.0.0)
48
+ Requires-Dist: torch (>=2.7.1,<3.0.0) ; extra == "all"
29
49
  Requires-Dist: transformers (>=4.51.3,<5.0.0)
50
+ Requires-Dist: volcengine-python-sdk (>=4.0.4,<5.0.0) ; extra == "all"
51
+ Project-URL: Documentation, https://memos-docs.openmem.net/home/overview/
52
+ Project-URL: Homepage, https://memos.openmem.net/
30
53
  Project-URL: Repository, https://github.com/MemTensor/MemOS
54
+ Project-URL: changelog, https://github.com/MemTensor/MemOS/releases
55
+ Project-URL: download, https://pypi.org/project/MemoryOS/#files
56
+ Project-URL: issues, https://github.com/MemTensor/MemOS/issues
57
+ Project-URL: releasenotes, https://github.com/MemTensor/MemOS/releases
31
58
  Description-Content-Type: text/markdown
32
59
 
33
60
  <div align="center">
@@ -49,6 +76,9 @@ Description-Content-Type: text/markdown
49
76
  <a href="https://pypi.org/project/MemoryOS">
50
77
  <img src="https://img.shields.io/pypi/pyversions/MemoryOS.svg" alt="Supported Python versions">
51
78
  </a>
79
+ <a href="https://pypi.org/project/MemoryOS">
80
+ <img src="https://img.shields.io/badge/Platform-Linux%20%7C%20macOS%20%7C%20Windows-lightgrey" alt="Supported Platforms">
81
+ </a>
52
82
  <a href="https://memos-docs.openmem.net/home/overview/">
53
83
  <img src="https://img.shields.io/badge/Documentation-view-blue.svg" alt="Documentation">
54
84
  </a>
@@ -170,34 +200,37 @@ For more detailed examples, please check out the [`examples`](./examples) direct
170
200
 
171
201
  ## 📦 Installation
172
202
 
173
- > [!WARNING]
174
- > MemOS is compatible with Linux, Windows, and macOS.
175
- >
176
- > However, if you're using macOS, please note that there may be dependency issues that are difficult to resolve.
177
- >
178
- > For example, compatibility with macOS 13 Ventura is currently challenging.
179
-
180
203
  ### Install via pip
181
204
 
182
205
  ```bash
183
206
  pip install MemoryOS
184
207
  ```
185
208
 
186
- ### Development Install
209
+ ### Optional Dependencies
187
210
 
188
- To contribute to MemOS, clone the repository and install it in editable mode:
211
+ MemOS provides several optional dependency groups for different features. You can install them based on your needs.
212
+
213
+ | Feature | Package Name |
214
+ | --------------------- | ------------------------- |
215
+ | Tree Memory | `MemoryOS[tree-mem]` |
216
+ | Memory Reader | `MemoryOS[mem-reader]` |
217
+ | Memory Scheduler | `MemoryOS[mem-scheduler]` |
218
+
219
+ Example installation commands:
189
220
 
190
221
  ```bash
191
- git clone https://github.com/MemTensor/MemOS.git
192
- cd MemOS
193
- make install
222
+ pip install MemoryOS[tree-mem]
223
+ pip install MemoryOS[tree-mem,mem-reader]
224
+ pip install MemoryOS[mem-scheduler]
225
+ pip install MemoryOS[tree-mem,mem-reader,mem-scheduler]
194
226
  ```
195
227
 
196
- ### Optional Dependencies
228
+ ### External Dependencies
197
229
 
198
230
  #### Ollama Support
199
231
 
200
232
  To use MemOS with [Ollama](https://ollama.com/), first install the Ollama CLI:
233
+
201
234
  ```bash
202
235
  curl -fsSL https://ollama.com/install.sh | sh
203
236
  ```
@@ -206,6 +239,14 @@ curl -fsSL https://ollama.com/install.sh | sh
206
239
 
207
240
  To use functionalities based on the `transformers` library, ensure you have [PyTorch](https://pytorch.org/get-started/locally/) installed (CUDA version recommended for GPU acceleration).
208
241
 
242
+ #### Download Examples
243
+
244
+ To download example code, data and configurations, run the following command:
245
+
246
+ ```bash
247
+ memos download_examples
248
+ ```
249
+
209
250
  ## 💬 Community & Support
210
251
 
211
252
  Join our community to ask questions, share your projects, and connect with other developers.
@@ -17,6 +17,9 @@
17
17
  <a href="https://pypi.org/project/MemoryOS">
18
18
  <img src="https://img.shields.io/pypi/pyversions/MemoryOS.svg" alt="Supported Python versions">
19
19
  </a>
20
+ <a href="https://pypi.org/project/MemoryOS">
21
+ <img src="https://img.shields.io/badge/Platform-Linux%20%7C%20macOS%20%7C%20Windows-lightgrey" alt="Supported Platforms">
22
+ </a>
20
23
  <a href="https://memos-docs.openmem.net/home/overview/">
21
24
  <img src="https://img.shields.io/badge/Documentation-view-blue.svg" alt="Documentation">
22
25
  </a>
@@ -138,34 +141,37 @@ For more detailed examples, please check out the [`examples`](./examples) direct
138
141
 
139
142
  ## 📦 Installation
140
143
 
141
- > [!WARNING]
142
- > MemOS is compatible with Linux, Windows, and macOS.
143
- >
144
- > However, if you're using macOS, please note that there may be dependency issues that are difficult to resolve.
145
- >
146
- > For example, compatibility with macOS 13 Ventura is currently challenging.
147
-
148
144
  ### Install via pip
149
145
 
150
146
  ```bash
151
147
  pip install MemoryOS
152
148
  ```
153
149
 
154
- ### Development Install
150
+ ### Optional Dependencies
155
151
 
156
- To contribute to MemOS, clone the repository and install it in editable mode:
152
+ MemOS provides several optional dependency groups for different features. You can install them based on your needs.
153
+
154
+ | Feature | Package Name |
155
+ | --------------------- | ------------------------- |
156
+ | Tree Memory | `MemoryOS[tree-mem]` |
157
+ | Memory Reader | `MemoryOS[mem-reader]` |
158
+ | Memory Scheduler | `MemoryOS[mem-scheduler]` |
159
+
160
+ Example installation commands:
157
161
 
158
162
  ```bash
159
- git clone https://github.com/MemTensor/MemOS.git
160
- cd MemOS
161
- make install
163
+ pip install MemoryOS[tree-mem]
164
+ pip install MemoryOS[tree-mem,mem-reader]
165
+ pip install MemoryOS[mem-scheduler]
166
+ pip install MemoryOS[tree-mem,mem-reader,mem-scheduler]
162
167
  ```
163
168
 
164
- ### Optional Dependencies
169
+ ### External Dependencies
165
170
 
166
171
  #### Ollama Support
167
172
 
168
173
  To use MemOS with [Ollama](https://ollama.com/), first install the Ollama CLI:
174
+
169
175
  ```bash
170
176
  curl -fsSL https://ollama.com/install.sh | sh
171
177
  ```
@@ -174,6 +180,14 @@ curl -fsSL https://ollama.com/install.sh | sh
174
180
 
175
181
  To use functionalities based on the `transformers` library, ensure you have [PyTorch](https://pytorch.org/get-started/locally/) installed (CUDA version recommended for GPU acceleration).
176
182
 
183
+ #### Download Examples
184
+
185
+ To download example code, data and configurations, run the following command:
186
+
187
+ ```bash
188
+ memos download_examples
189
+ ```
190
+
177
191
  ## 💬 Community & Support
178
192
 
179
193
  Join our community to ask questions, share your projects, and connect with other developers.
@@ -0,0 +1,206 @@
1
+ [project]
2
+ ##############################################################################
3
+ # Here define the project metadata and dependencies for the MemoryOS package.
4
+ ##############################################################################
5
+
6
+ name = "MemoryOS"
7
+ version = "0.2.2"
8
+ description = "Intelligence Begins with Memory"
9
+ license = {text = "Apache-2.0"}
10
+ readme = "README.md"
11
+ requires-python = ">=3.10"
12
+ authors = [
13
+ {name = "MemTensor", email = "MemTensor@memtensor.cn"}
14
+ ]
15
+ keywords = [
16
+ "memory",
17
+ "llm",
18
+ "language model",
19
+ "memoryOS",
20
+ "agent",
21
+ "kv cache",
22
+ "lora",
23
+ ]
24
+ classifiers = [
25
+ "Intended Audience :: Developers",
26
+ "License :: OSI Approved :: Apache Software License",
27
+ "Natural Language :: English",
28
+ "Natural Language :: Chinese (Simplified)",
29
+ "Operating System :: OS Independent",
30
+ "Programming Language :: Python :: 3 :: Only",
31
+ "Programming Language :: Python :: 3.10",
32
+ "Programming Language :: Python :: 3.11",
33
+ "Programming Language :: Python :: 3.12",
34
+ "Programming Language :: Python :: 3.13",
35
+ "Topic :: Software Development :: Libraries",
36
+ "Topic :: Software Development :: Libraries :: Python Modules",
37
+ ]
38
+ dependencies = [
39
+ "openai (>=1.77.0,<2.0.0)",
40
+ "ollama (>=0.4.8,<0.5.0)",
41
+ "transformers (>=4.51.3,<5.0.0)",
42
+ "tenacity (>=9.1.2,<10.0.0)", # Error handling and retrying library
43
+ "fastapi[all] (>=0.115.12,<0.116.0)", # Web framework for building APIs
44
+ "sqlalchemy (>=2.0.41,<3.0.0)", # SQL toolkit
45
+ "scikit-learn (>=1.7.0,<2.0.0)", # Machine learning
46
+ "fastmcp (>=2.10.5,<3.0.0)",
47
+ "python-dateutil (>=2.9.0.post0,<3.0.0)",
48
+ ]
49
+
50
+ [project.urls]
51
+ homepage = "https://memos.openmem.net/"
52
+ repository = "https://github.com/MemTensor/MemOS"
53
+ download = "https://pypi.org/project/MemoryOS/#files"
54
+ changelog = "https://github.com/MemTensor/MemOS/releases"
55
+ releasenotes = "https://github.com/MemTensor/MemOS/releases"
56
+ documentation = "https://memos-docs.openmem.net/home/overview/"
57
+ issues = "https://github.com/MemTensor/MemOS/issues"
58
+
59
+ [project.scripts]
60
+ memos = "memos.cli:main"
61
+
62
+ [project.optional-dependencies]
63
+ # These are optional dependencies for various features of MemoryOS.
64
+ # Developers install: `poetry install --extras <feature>`. e.g., `poetry install --extras general-mem`
65
+ # Users install: `pip install MemoryOS[<feature>]`. e.g., `pip install MemoryOS[general-mem]`
66
+
67
+ # TreeTextualMemory
68
+ tree-mem = [
69
+ "neo4j (>=5.28.1,<6.0.0)", # Graph database
70
+ "schedule (>=1.2.2,<2.0.0)", # Task scheduling
71
+ ]
72
+
73
+ # MemScheduler
74
+ mem-scheduler = [
75
+ "redis (>=6.2.0,<7.0.0)", # Key-value store
76
+ "pika (>=1.3.2,<2.0.0)", # RabbitMQ client
77
+ ]
78
+
79
+ # MemReader
80
+ mem-reader = [
81
+ "chonkie (>=1.0.7,<2.0.0)", # Sentence chunking library
82
+ "markitdown[docx,pdf,pptx,xls,xlsx] (>=0.1.1,<0.2.0)", # Markdown parser for various file formats
83
+ ]
84
+
85
+ # All optional dependencies
86
+ # Allow users to install with `pip install MemoryOS[all]`
87
+ all = [
88
+ # Exist in the above optional groups
89
+ "neo4j (>=5.28.1,<6.0.0)",
90
+ "schedule (>=1.2.2,<2.0.0)",
91
+ "redis (>=6.2.0,<7.0.0)",
92
+ "pika (>=1.3.2,<2.0.0)",
93
+ "chonkie (>=1.0.7,<2.0.0)",
94
+ "markitdown[docx,pdf,pptx,xls,xlsx] (>=0.1.1,<0.2.0)",
95
+
96
+ # NOT exist in the above optional groups
97
+ # Because they are either huge-size dependencies or infrequently used dependencies.
98
+ # We kindof don't want users to install them.
99
+ "torch (>=2.7.1,<3.0.0)",
100
+ "sentence-transformers (>=4.1.0,<5.0.0)",
101
+ "qdrant-client (>=1.14.2,<2.0.0)",
102
+ "volcengine-python-sdk (>=4.0.4,<5.0.0)",
103
+
104
+ # Uncategorized dependencies
105
+ ]
106
+
107
+
108
+ [build-system]
109
+ ##############################################################################
110
+ # Python package build system requirements.
111
+ ##############################################################################
112
+
113
+ requires = ["poetry-core"]
114
+ build-backend = "poetry.core.masonry.api"
115
+
116
+
117
+ [tool.poetry]
118
+ ##############################################################################
119
+ # Here mainly define dependencies for development, testing, and evaluation.
120
+ # These dependencies will NOT be included in the MemoryOS package itself.
121
+ # They will be installed when you run `poetry install --with dev,test,eval`.
122
+ #
123
+ # More about version specifiers (e.g. "^0.1.0" or ">=0.1.0,<0.2.0"):
124
+ # https://python-poetry.org/docs/dependency-specification#caret-requirements
125
+ ##############################################################################
126
+
127
+ packages = [{include = "memos", from = "src"}]
128
+ requires-poetry = ">=2.0"
129
+ dependencies = { "python" = ">=3.10,<4.0" }
130
+
131
+ [tool.poetry.group.dev]
132
+ optional = true
133
+
134
+ [tool.poetry.group.dev.dependencies]
135
+ pre-commit = "^4.2.0"
136
+
137
+
138
+ [tool.poetry.group.test]
139
+ optional = true
140
+
141
+ [tool.poetry.group.test.dependencies]
142
+ pytest = "^8.3.5"
143
+ pytest-asyncio = "^0.23.5"
144
+ ruff = "^0.11.8"
145
+
146
+ [tool.poetry.group.eval]
147
+ optional = true
148
+
149
+ [tool.poetry.group.eval.dependencies]
150
+ dotenv = "^0.9.9"
151
+ mem0ai = "^0.1.109"
152
+ zep-cloud = "^2.15.0"
153
+ rouge-score = "^0.1.2"
154
+ nltk = "^3.9.1"
155
+ bert-score = "^0.3.13"
156
+ scipy = "^1.10.1"
157
+ python-dotenv = "^1.1.1"
158
+ langgraph = "^0.5.1"
159
+ langmem = "^0.0.27"
160
+
161
+ [[tool.poetry.source]]
162
+ name = "mirrors"
163
+ url = "https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple/"
164
+ priority = "supplemental"
165
+
166
+
167
+ [tool.pytest.ini_options]
168
+ ##############################################################################
169
+ # PyTest settings for running tests/
170
+ ##############################################################################
171
+
172
+ asyncio_mode = "auto"
173
+ pythonpath = "src"
174
+ filterwarnings = [
175
+ "ignore::DeprecationWarning:qdrant_client.*",
176
+ ]
177
+
178
+
179
+ [tool.ruff]
180
+ ##############################################################################
181
+ # Ruff is a fast Python linter and formatter.
182
+ ##############################################################################
183
+
184
+ fix = true
185
+ line-length = 100
186
+ target-version = "py310"
187
+ lint.extend-select = [
188
+ "B", # flake8-bugbear
189
+ "C4", # flake8-comprehensions
190
+ "ERA", # flake8-eradicate/eradicate
191
+ "I", # isort
192
+ "N", # pep8-naming
193
+ "PIE", # flake8-pie
194
+ "PGH", # pygrep
195
+ "RUF", # ruff checks
196
+ "SIM", # flake8-simplify
197
+ "TC", # flake8-type-checking
198
+ "TID", # flake8-tidy-imports
199
+ "UP", # pyupgrade
200
+ ]
201
+ lint.ignore = [
202
+ "RUF001", # ambiguous-unicode-character-string
203
+ "PGH003", # blanket-type-ignore
204
+ ]
205
+ lint.isort.lines-between-types = 1
206
+ lint.isort.lines-after-imports = 2
@@ -1,4 +1,4 @@
1
- __version__ = "0.2.0"
1
+ __version__ = "0.2.2"
2
2
 
3
3
  from memos.configs.mem_cube import GeneralMemCubeConfig
4
4
  from memos.configs.mem_os import MOSConfig