MemoryOS 1.1.2__tar.gz → 1.1.3__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.
Files changed (250) hide show
  1. {memoryos-1.1.2 → memoryos-1.1.3}/PKG-INFO +64 -31
  2. {memoryos-1.1.2 → memoryos-1.1.3}/README.md +55 -30
  3. {memoryos-1.1.2 → memoryos-1.1.3}/pyproject.toml +12 -2
  4. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/__init__.py +1 -1
  5. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/api/client.py +3 -0
  6. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/api/config.py +388 -17
  7. memoryos-1.1.3/src/memos/api/exceptions.py +53 -0
  8. memoryos-1.1.3/src/memos/api/middleware/request_context.py +101 -0
  9. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/api/product_api.py +2 -2
  10. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/api/product_models.py +54 -1
  11. memoryos-1.1.3/src/memos/api/routers/server_router.py +822 -0
  12. memoryos-1.1.3/src/memos/api/server_api.py +44 -0
  13. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/chunkers/sentence_chunker.py +1 -1
  14. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/configs/graph_db.py +54 -0
  15. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/configs/mem_cube.py +16 -0
  16. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/configs/mem_os.py +4 -0
  17. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/configs/mem_reader.py +9 -0
  18. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/configs/mem_scheduler.py +147 -23
  19. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/configs/mem_user.py +12 -0
  20. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/configs/memory.py +62 -0
  21. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/configs/vec_db.py +13 -0
  22. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/context/context.py +104 -7
  23. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/embedders/universal_api.py +16 -7
  24. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/graph_dbs/factory.py +2 -0
  25. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/graph_dbs/nebular.py +214 -177
  26. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/graph_dbs/neo4j.py +127 -70
  27. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/graph_dbs/neo4j_community.py +41 -16
  28. memoryos-1.1.3/src/memos/graph_dbs/polardb.py +3039 -0
  29. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/llms/hf.py +48 -6
  30. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/llms/openai.py +11 -5
  31. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/log.py +38 -11
  32. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_cube/base.py +1 -0
  33. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_cube/general.py +39 -8
  34. memoryos-1.1.3/src/memos/mem_cube/navie.py +208 -0
  35. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_cube/utils.py +71 -35
  36. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_os/core.py +204 -96
  37. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_os/main.py +19 -17
  38. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_os/product.py +100 -3
  39. memoryos-1.1.3/src/memos/mem_os/product_server.py +455 -0
  40. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_reader/base.py +8 -1
  41. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_reader/factory.py +2 -0
  42. memoryos-1.1.3/src/memos/mem_reader/simple_struct.py +600 -0
  43. memoryos-1.1.3/src/memos/mem_reader/strategy_struct.py +151 -0
  44. memoryos-1.1.3/src/memos/mem_scheduler/analyzer/api_analyzer.py +717 -0
  45. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/analyzer/mos_for_test_scheduler.py +14 -12
  46. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/base_scheduler.py +457 -77
  47. memoryos-1.1.3/src/memos/mem_scheduler/general_modules/api_misc.py +137 -0
  48. memoryos-1.1.3/src/memos/mem_scheduler/general_modules/dispatcher.py +508 -0
  49. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/general_modules/misc.py +54 -5
  50. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/general_modules/scheduler_logger.py +1 -1
  51. memoryos-1.1.3/src/memos/mem_scheduler/general_modules/task_threads.py +315 -0
  52. memoryos-1.1.3/src/memos/mem_scheduler/general_scheduler.py +635 -0
  53. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/monitors/dispatcher_monitor.py +143 -71
  54. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/monitors/general_monitor.py +5 -4
  55. memoryos-1.1.3/src/memos/mem_scheduler/optimized_scheduler.py +378 -0
  56. memoryos-1.1.3/src/memos/mem_scheduler/orm_modules/api_redis_model.py +517 -0
  57. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/orm_modules/base_model.py +97 -3
  58. memoryos-1.1.3/src/memos/mem_scheduler/orm_modules/redis_model.py +699 -0
  59. memoryos-1.1.3/src/memos/mem_scheduler/schemas/analyzer_schemas.py +52 -0
  60. memoryos-1.1.3/src/memos/mem_scheduler/schemas/api_schemas.py +233 -0
  61. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/schemas/general_schemas.py +29 -2
  62. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/schemas/message_schemas.py +21 -9
  63. memoryos-1.1.3/src/memos/mem_scheduler/schemas/task_schemas.py +68 -0
  64. memoryos-1.1.3/src/memos/mem_scheduler/utils/api_utils.py +76 -0
  65. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/utils/db_utils.py +17 -0
  66. memoryos-1.1.3/src/memos/mem_scheduler/utils/metrics.py +250 -0
  67. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/webservice_modules/rabbitmq_service.py +35 -31
  68. memoryos-1.1.3/src/memos/mem_scheduler/webservice_modules/redis_service.py +359 -0
  69. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_user/mysql_persistent_user_manager.py +2 -2
  70. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_user/persistent_factory.py +2 -0
  71. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_user/persistent_user_manager.py +2 -2
  72. memoryos-1.1.3/src/memos/mem_user/redis_persistent_user_manager.py +225 -0
  73. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/activation/item.py +3 -1
  74. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/activation/kv.py +28 -8
  75. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/factory.py +6 -0
  76. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/textual/base.py +4 -1
  77. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/textual/general.py +2 -0
  78. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/textual/item.py +49 -1
  79. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/textual/naive.py +2 -0
  80. memoryos-1.1.3/src/memos/memories/textual/prefer_text_memory/adder.py +423 -0
  81. memoryos-1.1.3/src/memos/memories/textual/prefer_text_memory/config.py +106 -0
  82. memoryos-1.1.3/src/memos/memories/textual/prefer_text_memory/extractor.py +201 -0
  83. memoryos-1.1.3/src/memos/memories/textual/prefer_text_memory/factory.py +78 -0
  84. memoryos-1.1.3/src/memos/memories/textual/prefer_text_memory/retrievers.py +134 -0
  85. memoryos-1.1.3/src/memos/memories/textual/prefer_text_memory/spliter.py +132 -0
  86. memoryos-1.1.3/src/memos/memories/textual/prefer_text_memory/utils.py +68 -0
  87. memoryos-1.1.3/src/memos/memories/textual/preference.py +283 -0
  88. memoryos-1.1.3/src/memos/memories/textual/simple_preference.py +156 -0
  89. memoryos-1.1.3/src/memos/memories/textual/simple_tree.py +311 -0
  90. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/textual/tree.py +66 -35
  91. memoryos-1.1.3/src/memos/memories/textual/tree_text_memory/organize/manager.py +383 -0
  92. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/textual/tree_text_memory/organize/reorganizer.py +3 -4
  93. memoryos-1.1.3/src/memos/memories/textual/tree_text_memory/retrieve/bm25_util.py +186 -0
  94. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/textual/tree_text_memory/retrieve/recall.py +175 -40
  95. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/textual/tree_text_memory/retrieve/retrieval_mid_structs.py +1 -0
  96. memoryos-1.1.3/src/memos/memories/textual/tree_text_memory/retrieve/retrieve_utils.py +378 -0
  97. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/textual/tree_text_memory/retrieve/searcher.py +193 -26
  98. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/textual/tree_text_memory/retrieve/task_goal_parser.py +33 -13
  99. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/reranker/base.py +2 -1
  100. memoryos-1.1.3/src/memos/reranker/concat.py +95 -0
  101. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/reranker/cosine_local.py +7 -1
  102. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/reranker/factory.py +11 -0
  103. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/reranker/http_bge.py +6 -4
  104. memoryos-1.1.3/src/memos/reranker/http_bge_strategy.py +319 -0
  105. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/reranker/noop.py +3 -0
  106. memoryos-1.1.3/src/memos/reranker/strategies/__init__.py +4 -0
  107. memoryos-1.1.3/src/memos/reranker/strategies/base.py +61 -0
  108. memoryos-1.1.3/src/memos/reranker/strategies/concat_background.py +94 -0
  109. memoryos-1.1.3/src/memos/reranker/strategies/dialogue_common.py +109 -0
  110. memoryos-1.1.3/src/memos/reranker/strategies/factory.py +29 -0
  111. memoryos-1.1.3/src/memos/reranker/strategies/single_turn.py +107 -0
  112. memoryos-1.1.3/src/memos/reranker/strategies/singleturn_outmem.py +98 -0
  113. memoryos-1.1.3/src/memos/templates/instruction_completion.py +66 -0
  114. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/templates/mem_reader_prompts.py +57 -133
  115. memoryos-1.1.3/src/memos/templates/mem_reader_strategy_prompts.py +236 -0
  116. memoryos-1.1.3/src/memos/templates/mem_search_prompts.py +93 -0
  117. memoryos-1.1.3/src/memos/templates/prefer_complete_prompt.py +611 -0
  118. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/types.py +22 -0
  119. memoryos-1.1.3/src/memos/utils.py +29 -0
  120. memoryos-1.1.3/src/memos/vec_dbs/__init__.py +0 -0
  121. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/vec_dbs/factory.py +2 -0
  122. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/vec_dbs/item.py +7 -0
  123. memoryos-1.1.3/src/memos/vec_dbs/milvus.py +496 -0
  124. memoryos-1.1.2/src/memos/api/exceptions.py +0 -28
  125. memoryos-1.1.2/src/memos/api/middleware/request_context.py +0 -63
  126. memoryos-1.1.2/src/memos/mem_reader/simple_struct.py +0 -376
  127. memoryos-1.1.2/src/memos/mem_scheduler/general_modules/dispatcher.py +0 -205
  128. memoryos-1.1.2/src/memos/mem_scheduler/general_scheduler.py +0 -301
  129. memoryos-1.1.2/src/memos/mem_scheduler/optimized_scheduler.py +0 -124
  130. memoryos-1.1.2/src/memos/mem_scheduler/webservice_modules/redis_service.py +0 -156
  131. memoryos-1.1.2/src/memos/memories/textual/tree_text_memory/organize/manager.py +0 -280
  132. memoryos-1.1.2/src/memos/reranker/concat.py +0 -59
  133. memoryos-1.1.2/src/memos/utils.py +0 -19
  134. {memoryos-1.1.2 → memoryos-1.1.3}/LICENSE +0 -0
  135. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/api/context/dependencies.py +0 -0
  136. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/api/mcp_serve.py +0 -0
  137. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/api/routers/__init__.py +0 -0
  138. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/api/routers/product_router.py +0 -0
  139. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/api/start_api.py +0 -0
  140. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/chunkers/__init__.py +0 -0
  141. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/chunkers/base.py +0 -0
  142. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/chunkers/factory.py +0 -0
  143. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/cli.py +0 -0
  144. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/configs/__init__.py +0 -0
  145. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/configs/base.py +0 -0
  146. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/configs/chunker.py +0 -0
  147. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/configs/embedder.py +0 -0
  148. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/configs/internet_retriever.py +0 -0
  149. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/configs/llm.py +0 -0
  150. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/configs/mem_chat.py +0 -0
  151. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/configs/parser.py +0 -0
  152. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/configs/reranker.py +0 -0
  153. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/configs/utils.py +0 -0
  154. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/dependency.py +0 -0
  155. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/deprecation.py +0 -0
  156. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/embedders/__init__.py +0 -0
  157. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/embedders/ark.py +0 -0
  158. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/embedders/base.py +0 -0
  159. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/embedders/factory.py +0 -0
  160. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/embedders/ollama.py +0 -0
  161. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/embedders/sentence_transformer.py +0 -0
  162. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/exceptions.py +0 -0
  163. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/graph_dbs/__init__.py +0 -0
  164. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/graph_dbs/base.py +0 -0
  165. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/graph_dbs/item.py +0 -0
  166. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/hello_world.py +0 -0
  167. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/llms/__init__.py +0 -0
  168. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/llms/base.py +0 -0
  169. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/llms/deepseek.py +0 -0
  170. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/llms/factory.py +0 -0
  171. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/llms/hf_singleton.py +0 -0
  172. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/llms/ollama.py +0 -0
  173. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/llms/qwen.py +0 -0
  174. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/llms/utils.py +0 -0
  175. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/llms/vllm.py +0 -0
  176. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_chat/__init__.py +0 -0
  177. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_chat/base.py +0 -0
  178. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_chat/factory.py +0 -0
  179. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_chat/simple.py +0 -0
  180. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_cube/__init__.py +0 -0
  181. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_os/client.py +0 -0
  182. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_os/utils/default_config.py +0 -0
  183. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_os/utils/format_utils.py +0 -0
  184. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_os/utils/reference_utils.py +0 -0
  185. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_reader/__init__.py +0 -0
  186. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_reader/memory.py +0 -0
  187. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/__init__.py +0 -0
  188. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/analyzer/__init__.py +0 -0
  189. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/analyzer/scheduler_for_eval.py +0 -0
  190. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/general_modules/__init__.py +0 -0
  191. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/general_modules/base.py +0 -0
  192. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/memory_manage_modules/__init__.py +0 -0
  193. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/memory_manage_modules/memory_filter.py +0 -0
  194. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/memory_manage_modules/retriever.py +0 -0
  195. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/monitors/__init__.py +0 -0
  196. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/orm_modules/__init__.py +0 -0
  197. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/orm_modules/monitor_models.py +0 -0
  198. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/scheduler_factory.py +0 -0
  199. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/schemas/__init__.py +0 -0
  200. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/schemas/monitor_schemas.py +0 -0
  201. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/utils/__init__.py +0 -0
  202. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/utils/config_utils.py +0 -0
  203. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/utils/filter_utils.py +0 -0
  204. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/utils/misc_utils.py +0 -0
  205. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_scheduler/webservice_modules/__init__.py +0 -0
  206. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_user/factory.py +0 -0
  207. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_user/mysql_user_manager.py +0 -0
  208. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/mem_user/user_manager.py +0 -0
  209. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/__init__.py +0 -0
  210. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/activation/__init__.py +0 -0
  211. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/activation/base.py +0 -0
  212. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/activation/vllmkv.py +0 -0
  213. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/base.py +0 -0
  214. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/parametric/__init__.py +0 -0
  215. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/parametric/base.py +0 -0
  216. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/parametric/item.py +0 -0
  217. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/parametric/lora.py +0 -0
  218. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/textual/__init__.py +0 -0
  219. {memoryos-1.1.2/src/memos/memories/textual/tree_text_memory → memoryos-1.1.3/src/memos/memories/textual/prefer_text_memory}/__init__.py +0 -0
  220. {memoryos-1.1.2/src/memos/memories/textual/tree_text_memory/organize → memoryos-1.1.3/src/memos/memories/textual/tree_text_memory}/__init__.py +0 -0
  221. {memoryos-1.1.2/src/memos/memories/textual/tree_text_memory/retrieve → memoryos-1.1.3/src/memos/memories/textual/tree_text_memory/organize}/__init__.py +0 -0
  222. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/textual/tree_text_memory/organize/handler.py +0 -0
  223. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/textual/tree_text_memory/organize/relation_reason_detector.py +0 -0
  224. {memoryos-1.1.2/src/memos/parsers → memoryos-1.1.3/src/memos/memories/textual/tree_text_memory/retrieve}/__init__.py +0 -0
  225. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/textual/tree_text_memory/retrieve/bochasearch.py +0 -0
  226. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/textual/tree_text_memory/retrieve/internet_retriever.py +0 -0
  227. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/textual/tree_text_memory/retrieve/internet_retriever_factory.py +0 -0
  228. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/textual/tree_text_memory/retrieve/reasoner.py +0 -0
  229. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/textual/tree_text_memory/retrieve/reranker.py +0 -0
  230. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/textual/tree_text_memory/retrieve/utils.py +0 -0
  231. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memories/textual/tree_text_memory/retrieve/xinyusearch.py +0 -0
  232. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memos_tools/dinding_report_bot.py +0 -0
  233. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memos_tools/lockfree_dict.py +0 -0
  234. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memos_tools/notification_service.py +0 -0
  235. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memos_tools/notification_utils.py +0 -0
  236. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memos_tools/singleton.py +0 -0
  237. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memos_tools/thread_safe_dict.py +0 -0
  238. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/memos_tools/thread_safe_dict_segment.py +0 -0
  239. {memoryos-1.1.2/src/memos/templates → memoryos-1.1.3/src/memos/parsers}/__init__.py +0 -0
  240. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/parsers/base.py +0 -0
  241. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/parsers/factory.py +0 -0
  242. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/parsers/markitdown.py +0 -0
  243. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/reranker/__init__.py +0 -0
  244. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/settings.py +0 -0
  245. {memoryos-1.1.2/src/memos/vec_dbs → memoryos-1.1.3/src/memos/templates}/__init__.py +0 -0
  246. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/templates/mem_scheduler_prompts.py +0 -0
  247. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/templates/mos_prompts.py +0 -0
  248. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/templates/tree_reorganize_prompts.py +0 -0
  249. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/vec_dbs/base.py +0 -0
  250. {memoryos-1.1.2 → memoryos-1.1.3}/src/memos/vec_dbs/qdrant.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: MemoryOS
3
- Version: 1.1.2
3
+ Version: 1.1.3
4
4
  Summary: Intelligence Begins with Memory
5
5
  License: Apache-2.0
6
6
  License-File: LICENSE
@@ -24,11 +24,16 @@ Provides-Extra: all
24
24
  Provides-Extra: mem-reader
25
25
  Provides-Extra: mem-scheduler
26
26
  Provides-Extra: mem-user
27
+ Provides-Extra: pref-mem
27
28
  Provides-Extra: tree-mem
29
+ Requires-Dist: cachetools (>=6.0.0) ; extra == "all"
28
30
  Requires-Dist: chonkie (>=1.0.7,<2.0.0) ; extra == "all"
29
31
  Requires-Dist: chonkie (>=1.0.7,<2.0.0) ; extra == "mem-reader"
32
+ Requires-Dist: datasketch (>=1.6.5,<2.0.0) ; extra == "all"
33
+ Requires-Dist: datasketch (>=1.6.5,<2.0.0) ; extra == "pref-mem"
30
34
  Requires-Dist: fastapi[all] (>=0.115.12,<0.116.0)
31
35
  Requires-Dist: fastmcp (>=2.10.5,<3.0.0)
36
+ Requires-Dist: jieba (>=0.38.1,<0.42.1) ; extra == "all"
32
37
  Requires-Dist: markitdown[docx,pdf,pptx,xls,xlsx] (>=0.1.1,<0.2.0) ; extra == "all"
33
38
  Requires-Dist: markitdown[docx,pdf,pptx,xls,xlsx] (>=0.1.1,<0.2.0) ; extra == "mem-reader"
34
39
  Requires-Dist: neo4j (>=5.28.1,<6.0.0) ; extra == "all"
@@ -37,11 +42,14 @@ Requires-Dist: ollama (>=0.4.8,<0.5.0)
37
42
  Requires-Dist: openai (>=1.77.0,<2.0.0)
38
43
  Requires-Dist: pika (>=1.3.2,<2.0.0) ; extra == "all"
39
44
  Requires-Dist: pika (>=1.3.2,<2.0.0) ; extra == "mem-scheduler"
45
+ Requires-Dist: pymilvus (>=2.6.1,<3.0.0) ; extra == "all"
46
+ Requires-Dist: pymilvus (>=2.6.1,<3.0.0) ; extra == "pref-mem"
40
47
  Requires-Dist: pymysql (>=1.1.0,<2.0.0)
41
48
  Requires-Dist: pymysql (>=1.1.0,<2.0.0) ; extra == "all"
42
49
  Requires-Dist: pymysql (>=1.1.0,<2.0.0) ; extra == "mem-user"
43
50
  Requires-Dist: python-dateutil (>=2.9.0.post0,<3.0.0)
44
51
  Requires-Dist: qdrant-client (>=1.14.2,<2.0.0) ; extra == "all"
52
+ Requires-Dist: rank-bm25 (>=0.2.2) ; extra == "all"
45
53
  Requires-Dist: redis (>=6.2.0,<7.0.0) ; extra == "all"
46
54
  Requires-Dist: redis (>=6.2.0,<7.0.0) ; extra == "mem-scheduler"
47
55
  Requires-Dist: schedule (>=1.2.2,<2.0.0) ; extra == "all"
@@ -107,7 +115,7 @@ Description-Content-Type: text/markdown
107
115
 
108
116
  ---
109
117
 
110
- <img src="https://statics.memtensor.com.cn/memos/sota_score.jpg" alt="SOTA SCORE">
118
+ <img src="https://cdn.memtensor.com.cn/img/1762436050812_3tgird_compressed.png" alt="SOTA SCORE">
111
119
 
112
120
  **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.
113
121
 
@@ -116,24 +124,44 @@ Description-Content-Type: text/markdown
116
124
  - **API Reference**: https://memos-docs.openmem.net/docs/api/info/
117
125
  - **Source Code**: https://github.com/MemTensor/MemOS
118
126
 
119
- ## 📈 Performance Benchmark
127
+ ## 📰 News
120
128
 
121
- MemOS demonstrates significant improvements over baseline memory solutions in multiple reasoning tasks.
129
+ Stay up to date with the latest MemOS announcements, releases, and community highlights.
122
130
 
123
- | Model | Avg. Score | Multi-Hop | Open Domain | Single-Hop | Temporal Reasoning |
124
- |-------------|------------|-----------|-------------|------------|---------------------|
125
- | **OpenAI** | 0.5275 | 0.6028 | 0.3299 | 0.6183 | 0.2825 |
126
- | **MemOS** | **0.7331** | **0.6430** | **0.5521** | **0.7844** | **0.7321** |
127
- | **Improvement** | **+38.98%** | **+6.67%** | **+67.35%** | **+26.86%** | **+159.15%** |
128
131
 
129
- > 💡 **Temporal reasoning accuracy improved by 159% compared to the OpenAI baseline.**
132
+ - **2025-11-06** - 🎉 MemOS v1.1.3 (Async Memory & Preference):
133
+ Millisecond-level async memory add (support plain-text-memory and
134
+ preference memory); enhanced BM25, graph recall, and mixture search; full
135
+ results & code for LoCoMo, LongMemEval, PersonaMem, and PrefEval released.
136
+ - **2025-10-30** - 🎉 MemOS v1.1.2 (API & MCP Update):
137
+ API architecture overhaul and full MCP (Model Context Protocol) support — enabling models, IDEs, and agents to read/write external memory directly.
138
+ - **2025-09-10** - 🎉 *MemOS v1.0.1 (Group Q&A Bot)*: Group Q&A bot based on MemOS Cube, updated KV-Cache performance comparison data across different GPU deployment schemes, optimized test benchmarks and statistics, added plaintext memory Reranker sorting, optimized plaintext memory hallucination issues, and Playground version updates. [Try PlayGround](https://memos-playground.openmem.net/login/)
139
+ - **2025-08-07** - 🎉 *MemOS v1.0.0 (MemCube Release)*: First MemCube with word game demo, LongMemEval evaluation, BochaAISearchRetriever integration, NebulaGraph support, enhanced search capabilities, and official Playground launch.
140
+ - **2025-07-29** – 🎉 *MemOS v0.2.2 (Nebula Update)*: Internet search+Nebula DB integration, refactored memory scheduler, KV Cache stress tests, MemCube Cookbook release (CN/EN), and 4b/1.7b/0.6b memory ops models.
141
+ - **2025-07-21** – 🎉 *MemOS v0.2.1 (Neo Release)*: Lightweight Neo version with plaintext+KV Cache functionality, Docker/multi-tenant support, MCP expansion, and new Cookbook/Mud game examples.
142
+ - **2025-07-11** – 🎉 *MemOS v0.2.0 (Cross-Platform)*: Added doc search/bilingual UI, MemReader-4B (local deploy), full Win/Mac/Linux support, and playground end-to-end connection.
143
+ - **2025-07-07** – 🎉 *MemOS 1.0 (Stellar) Preview Release*: A SOTA Memory OS for LLMs is now open-sourced.
144
+ - **2025-07-04** – 🎉 *MemOS Paper Released*: [MemOS: A Memory OS for AI System](https://arxiv.org/abs/2507.03724) was published on arXiv.
145
+ - **2025-05-28** – 🎉 *Short Paper Uploaded*: [MemOS: An Operating System for Memory-Augmented Generation (MAG) in Large Language Models](https://arxiv.org/abs/2505.22101) was published on arXiv.
146
+ - **2024-07-04** – 🎉 *Memory3 Model Released at WAIC 2024*: The new memory-layered architecture model was unveiled at the 2024 World Artificial Intelligence Conference.
147
+ - **2024-07-01** – 🎉 *Memory3 Paper Released*: [Memory3: Language Modeling with Explicit Memory](https://arxiv.org/abs/2407.01178) introduces the new approach to structured memory in LLMs.
130
148
 
131
- ### Details of End-to-End Evaluation on LOCOMO
149
+ ## 📈 Performance Benchmark
132
150
 
133
- > [!NOTE]
134
- > Comparison of LLM Judge Scores across five major tasks in the LOCOMO benchmark. Each bar shows the mean evaluation score judged by LLMs for a given method-task pair, with standard deviation as error bars. MemOS-0630 consistently outperforms baseline methods (LangMem, Zep, OpenAI, Mem0) across all task types, especially in multi-hop and temporal reasoning scenarios.
151
+ MemOS demonstrates significant improvements over baseline memory solutions in multiple memory tasks,
152
+ showcasing its capabilities in **information extraction**, **temporal and cross-session reasoning**, and **personalized preference responses**.
153
+
154
+ | Model | LOCOMO | LongMemEval | PrefEval-10 | PersonaMem |
155
+ |-----------------|-------------|-------------|-------------|-------------|
156
+ | **GPT-4o-mini** | 52.75 | 55.4 | 2.8 | 43.46 |
157
+ | **MemOS** | **75.80** | **77.80** | **71.90** | **61.17** |
158
+ | **Improvement** | **+43.70%** | **+40.43%** | **+2568%** | **+40.75%** |
135
159
 
136
- <img src="https://statics.memtensor.com.cn/memos/score_all_end2end.jpg" alt="END2END SCORE">
160
+ ### Detailed Evaluation Results
161
+ - We use gpt-4o-mini as the processing and judging LLM and bge-m3 as embedding model in MemOS evaluation.
162
+ - The evaluation was conducted under conditions that align various settings as closely as possible. Reproduce the results with our scripts at [`evaluation`](./evaluation).
163
+ - Check the full search and response details at huggingface https://huggingface.co/datasets/MemTensor/MemOS_eval_result.
164
+ > 💡 **MemOS outperforms all other methods (Mem0, Zep, Memobase, SuperMemory et al.) across all benchmarks!**
137
165
 
138
166
  ## ✨ Key Features
139
167
 
@@ -147,6 +175,27 @@ MemOS demonstrates significant improvements over baseline memory solutions in mu
147
175
 
148
176
  ## 🚀 Getting Started
149
177
 
178
+ ### ⭐️ MemOS online API
179
+ The easiest way to use MemOS. Equip your agent with memory **in minutes**!
180
+
181
+ Sign up and get started on[`MemOS dashboard`](https://memos-dashboard.openmem.net/cn/quickstart/?source=landing).
182
+
183
+
184
+ ### Self-Hosted Server
185
+ 1. Get the repository.
186
+ ```bash
187
+ git clone https://github.com/MemTensor/MemOS.git
188
+ cd MemOS
189
+ pip install -r ./docker/requirements.txt
190
+ ```
191
+
192
+ 2. Configure `docker/.env.example` and copy to `MemOS/.env`
193
+ 3. Start the service.
194
+ ```bash
195
+ uvicorn memos.api.server_api:app --host 0.0.0.0 --port 8001 --workers 8
196
+ ```
197
+
198
+ ### Local SDK
150
199
  Here's a quick example of how to create a **`MemCube`**, load it from a directory, access its memories, and save it.
151
200
 
152
201
  ```python
@@ -168,7 +217,7 @@ for item in mem_cube.act_mem.get_all():
168
217
  mem_cube.dump("tmp/mem_cube")
169
218
  ```
170
219
 
171
- What about **`MOS`** (Memory Operating System)? It's a higher-level orchestration layer that manages multiple MemCubes and provides a unified API for memory operations. Here's a quick example of how to use MOS:
220
+ **`MOS`** (Memory Operating System) is a higher-level orchestration layer that manages multiple MemCubes and provides a unified API for memory operations. Here's a quick example of how to use MOS:
172
221
 
173
222
  ```python
174
223
  from memos.configs.mem_os import MOSConfig
@@ -311,19 +360,3 @@ We welcome contributions from the community! Please read our [contribution guide
311
360
 
312
361
  MemOS is licensed under the [Apache 2.0 License](./LICENSE).
313
362
 
314
- ## 📰 News
315
-
316
- Stay up to date with the latest MemOS announcements, releases, and community highlights.
317
-
318
-
319
- - **2025-09-10** - 🎉 *MemOS v1.0.1 (Group Q&A Bot)*: Group Q&A bot based on MemOS Cube, updated KV-Cache performance comparison data across different GPU deployment schemes, optimized test benchmarks and statistics, added plaintext memory Reranker sorting, optimized plaintext memory hallucination issues, and Playground version updates. [Try PlayGround](https://memos-playground.openmem.net/login/)
320
- - **2025-08-07** - 🎉 *MemOS v1.0.0 (MemCube Release)*: First MemCube with word game demo, LongMemEval evaluation, BochaAISearchRetriever integration, NebulaGraph support, enhanced search capabilities, and official Playground launch.
321
- - **2025-07-29** – 🎉 *MemOS v0.2.2 (Nebula Update)*: Internet search+Nebula DB integration, refactored memory scheduler, KV Cache stress tests, MemCube Cookbook release (CN/EN), and 4b/1.7b/0.6b memory ops models.
322
- - **2025-07-21** – 🎉 *MemOS v0.2.1 (Neo Release)*: Lightweight Neo version with plaintext+KV Cache functionality, Docker/multi-tenant support, MCP expansion, and new Cookbook/Mud game examples.
323
- - **2025-07-11** – 🎉 *MemOS v0.2.0 (Cross-Platform)*: Added doc search/bilingual UI, MemReader-4B (local deploy), full Win/Mac/Linux support, and playground end-to-end connection.
324
- - **2025-07-07** – 🎉 *MemOS 1.0 (Stellar) Preview Release*: A SOTA Memory OS for LLMs is now open-sourced.
325
- - **2025-07-04** – 🎉 *MemOS Paper Released*: [MemOS: A Memory OS for AI System](https://arxiv.org/abs/2507.03724) was published on arXiv.
326
- - **2025-05-28** – 🎉 *Short Paper Uploaded*: [MemOS: An Operating System for Memory-Augmented Generation (MAG) in Large Language Models](https://arxiv.org/abs/2505.22101) was published on arXiv.
327
- - **2024-07-04** – 🎉 *Memory3 Model Released at WAIC 2024*: The new memory-layered architecture model was unveiled at the 2024 World Artificial Intelligence Conference.
328
- - **2024-07-01** – 🎉 *Memory3 Paper Released*: [Memory3: Language Modeling with Explicit Memory](https://arxiv.org/abs/2407.01178) introduces the new approach to structured memory in LLMs.
329
-
@@ -43,7 +43,7 @@
43
43
 
44
44
  ---
45
45
 
46
- <img src="https://statics.memtensor.com.cn/memos/sota_score.jpg" alt="SOTA SCORE">
46
+ <img src="https://cdn.memtensor.com.cn/img/1762436050812_3tgird_compressed.png" alt="SOTA SCORE">
47
47
 
48
48
  **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.
49
49
 
@@ -52,24 +52,44 @@
52
52
  - **API Reference**: https://memos-docs.openmem.net/docs/api/info/
53
53
  - **Source Code**: https://github.com/MemTensor/MemOS
54
54
 
55
- ## 📈 Performance Benchmark
55
+ ## 📰 News
56
56
 
57
- MemOS demonstrates significant improvements over baseline memory solutions in multiple reasoning tasks.
57
+ Stay up to date with the latest MemOS announcements, releases, and community highlights.
58
58
 
59
- | Model | Avg. Score | Multi-Hop | Open Domain | Single-Hop | Temporal Reasoning |
60
- |-------------|------------|-----------|-------------|------------|---------------------|
61
- | **OpenAI** | 0.5275 | 0.6028 | 0.3299 | 0.6183 | 0.2825 |
62
- | **MemOS** | **0.7331** | **0.6430** | **0.5521** | **0.7844** | **0.7321** |
63
- | **Improvement** | **+38.98%** | **+6.67%** | **+67.35%** | **+26.86%** | **+159.15%** |
64
59
 
65
- > 💡 **Temporal reasoning accuracy improved by 159% compared to the OpenAI baseline.**
60
+ - **2025-11-06** - 🎉 MemOS v1.1.3 (Async Memory & Preference):
61
+ Millisecond-level async memory add (support plain-text-memory and
62
+ preference memory); enhanced BM25, graph recall, and mixture search; full
63
+ results & code for LoCoMo, LongMemEval, PersonaMem, and PrefEval released.
64
+ - **2025-10-30** - 🎉 MemOS v1.1.2 (API & MCP Update):
65
+ API architecture overhaul and full MCP (Model Context Protocol) support — enabling models, IDEs, and agents to read/write external memory directly.
66
+ - **2025-09-10** - 🎉 *MemOS v1.0.1 (Group Q&A Bot)*: Group Q&A bot based on MemOS Cube, updated KV-Cache performance comparison data across different GPU deployment schemes, optimized test benchmarks and statistics, added plaintext memory Reranker sorting, optimized plaintext memory hallucination issues, and Playground version updates. [Try PlayGround](https://memos-playground.openmem.net/login/)
67
+ - **2025-08-07** - 🎉 *MemOS v1.0.0 (MemCube Release)*: First MemCube with word game demo, LongMemEval evaluation, BochaAISearchRetriever integration, NebulaGraph support, enhanced search capabilities, and official Playground launch.
68
+ - **2025-07-29** – 🎉 *MemOS v0.2.2 (Nebula Update)*: Internet search+Nebula DB integration, refactored memory scheduler, KV Cache stress tests, MemCube Cookbook release (CN/EN), and 4b/1.7b/0.6b memory ops models.
69
+ - **2025-07-21** – 🎉 *MemOS v0.2.1 (Neo Release)*: Lightweight Neo version with plaintext+KV Cache functionality, Docker/multi-tenant support, MCP expansion, and new Cookbook/Mud game examples.
70
+ - **2025-07-11** – 🎉 *MemOS v0.2.0 (Cross-Platform)*: Added doc search/bilingual UI, MemReader-4B (local deploy), full Win/Mac/Linux support, and playground end-to-end connection.
71
+ - **2025-07-07** – 🎉 *MemOS 1.0 (Stellar) Preview Release*: A SOTA Memory OS for LLMs is now open-sourced.
72
+ - **2025-07-04** – 🎉 *MemOS Paper Released*: [MemOS: A Memory OS for AI System](https://arxiv.org/abs/2507.03724) was published on arXiv.
73
+ - **2025-05-28** – 🎉 *Short Paper Uploaded*: [MemOS: An Operating System for Memory-Augmented Generation (MAG) in Large Language Models](https://arxiv.org/abs/2505.22101) was published on arXiv.
74
+ - **2024-07-04** – 🎉 *Memory3 Model Released at WAIC 2024*: The new memory-layered architecture model was unveiled at the 2024 World Artificial Intelligence Conference.
75
+ - **2024-07-01** – 🎉 *Memory3 Paper Released*: [Memory3: Language Modeling with Explicit Memory](https://arxiv.org/abs/2407.01178) introduces the new approach to structured memory in LLMs.
66
76
 
67
- ### Details of End-to-End Evaluation on LOCOMO
77
+ ## 📈 Performance Benchmark
68
78
 
69
- > [!NOTE]
70
- > Comparison of LLM Judge Scores across five major tasks in the LOCOMO benchmark. Each bar shows the mean evaluation score judged by LLMs for a given method-task pair, with standard deviation as error bars. MemOS-0630 consistently outperforms baseline methods (LangMem, Zep, OpenAI, Mem0) across all task types, especially in multi-hop and temporal reasoning scenarios.
79
+ MemOS demonstrates significant improvements over baseline memory solutions in multiple memory tasks,
80
+ showcasing its capabilities in **information extraction**, **temporal and cross-session reasoning**, and **personalized preference responses**.
81
+
82
+ | Model | LOCOMO | LongMemEval | PrefEval-10 | PersonaMem |
83
+ |-----------------|-------------|-------------|-------------|-------------|
84
+ | **GPT-4o-mini** | 52.75 | 55.4 | 2.8 | 43.46 |
85
+ | **MemOS** | **75.80** | **77.80** | **71.90** | **61.17** |
86
+ | **Improvement** | **+43.70%** | **+40.43%** | **+2568%** | **+40.75%** |
71
87
 
72
- <img src="https://statics.memtensor.com.cn/memos/score_all_end2end.jpg" alt="END2END SCORE">
88
+ ### Detailed Evaluation Results
89
+ - We use gpt-4o-mini as the processing and judging LLM and bge-m3 as embedding model in MemOS evaluation.
90
+ - The evaluation was conducted under conditions that align various settings as closely as possible. Reproduce the results with our scripts at [`evaluation`](./evaluation).
91
+ - Check the full search and response details at huggingface https://huggingface.co/datasets/MemTensor/MemOS_eval_result.
92
+ > 💡 **MemOS outperforms all other methods (Mem0, Zep, Memobase, SuperMemory et al.) across all benchmarks!**
73
93
 
74
94
  ## ✨ Key Features
75
95
 
@@ -83,6 +103,27 @@ MemOS demonstrates significant improvements over baseline memory solutions in mu
83
103
 
84
104
  ## 🚀 Getting Started
85
105
 
106
+ ### ⭐️ MemOS online API
107
+ The easiest way to use MemOS. Equip your agent with memory **in minutes**!
108
+
109
+ Sign up and get started on[`MemOS dashboard`](https://memos-dashboard.openmem.net/cn/quickstart/?source=landing).
110
+
111
+
112
+ ### Self-Hosted Server
113
+ 1. Get the repository.
114
+ ```bash
115
+ git clone https://github.com/MemTensor/MemOS.git
116
+ cd MemOS
117
+ pip install -r ./docker/requirements.txt
118
+ ```
119
+
120
+ 2. Configure `docker/.env.example` and copy to `MemOS/.env`
121
+ 3. Start the service.
122
+ ```bash
123
+ uvicorn memos.api.server_api:app --host 0.0.0.0 --port 8001 --workers 8
124
+ ```
125
+
126
+ ### Local SDK
86
127
  Here's a quick example of how to create a **`MemCube`**, load it from a directory, access its memories, and save it.
87
128
 
88
129
  ```python
@@ -104,7 +145,7 @@ for item in mem_cube.act_mem.get_all():
104
145
  mem_cube.dump("tmp/mem_cube")
105
146
  ```
106
147
 
107
- What about **`MOS`** (Memory Operating System)? It's a higher-level orchestration layer that manages multiple MemCubes and provides a unified API for memory operations. Here's a quick example of how to use MOS:
148
+ **`MOS`** (Memory Operating System) is a higher-level orchestration layer that manages multiple MemCubes and provides a unified API for memory operations. Here's a quick example of how to use MOS:
108
149
 
109
150
  ```python
110
151
  from memos.configs.mem_os import MOSConfig
@@ -246,19 +287,3 @@ We welcome contributions from the community! Please read our [contribution guide
246
287
  ## 📄 License
247
288
 
248
289
  MemOS is licensed under the [Apache 2.0 License](./LICENSE).
249
-
250
- ## 📰 News
251
-
252
- Stay up to date with the latest MemOS announcements, releases, and community highlights.
253
-
254
-
255
- - **2025-09-10** - 🎉 *MemOS v1.0.1 (Group Q&A Bot)*: Group Q&A bot based on MemOS Cube, updated KV-Cache performance comparison data across different GPU deployment schemes, optimized test benchmarks and statistics, added plaintext memory Reranker sorting, optimized plaintext memory hallucination issues, and Playground version updates. [Try PlayGround](https://memos-playground.openmem.net/login/)
256
- - **2025-08-07** - 🎉 *MemOS v1.0.0 (MemCube Release)*: First MemCube with word game demo, LongMemEval evaluation, BochaAISearchRetriever integration, NebulaGraph support, enhanced search capabilities, and official Playground launch.
257
- - **2025-07-29** – 🎉 *MemOS v0.2.2 (Nebula Update)*: Internet search+Nebula DB integration, refactored memory scheduler, KV Cache stress tests, MemCube Cookbook release (CN/EN), and 4b/1.7b/0.6b memory ops models.
258
- - **2025-07-21** – 🎉 *MemOS v0.2.1 (Neo Release)*: Lightweight Neo version with plaintext+KV Cache functionality, Docker/multi-tenant support, MCP expansion, and new Cookbook/Mud game examples.
259
- - **2025-07-11** – 🎉 *MemOS v0.2.0 (Cross-Platform)*: Added doc search/bilingual UI, MemReader-4B (local deploy), full Win/Mac/Linux support, and playground end-to-end connection.
260
- - **2025-07-07** – 🎉 *MemOS 1.0 (Stellar) Preview Release*: A SOTA Memory OS for LLMs is now open-sourced.
261
- - **2025-07-04** – 🎉 *MemOS Paper Released*: [MemOS: A Memory OS for AI System](https://arxiv.org/abs/2507.03724) was published on arXiv.
262
- - **2025-05-28** – 🎉 *Short Paper Uploaded*: [MemOS: An Operating System for Memory-Augmented Generation (MAG) in Large Language Models](https://arxiv.org/abs/2505.22101) was published on arXiv.
263
- - **2024-07-04** – 🎉 *Memory3 Model Released at WAIC 2024*: The new memory-layered architecture model was unveiled at the 2024 World Artificial Intelligence Conference.
264
- - **2024-07-01** – 🎉 *Memory3 Paper Released*: [Memory3: Language Modeling with Explicit Memory](https://arxiv.org/abs/2407.01178) introduces the new approach to structured memory in LLMs.
@@ -4,7 +4,7 @@
4
4
  ##############################################################################
5
5
 
6
6
  name = "MemoryOS"
7
- version = "1.1.2"
7
+ version = "1.1.3"
8
8
  description = "Intelligence Begins with Memory"
9
9
  license = {text = "Apache-2.0"}
10
10
  readme = "README.md"
@@ -88,6 +88,12 @@ mem-reader = [
88
88
  "markitdown[docx,pdf,pptx,xls,xlsx] (>=0.1.1,<0.2.0)", # Markdown parser for various file formats
89
89
  ]
90
90
 
91
+ # PreferenceTextMemory
92
+ pref-mem = [
93
+ "pymilvus (>=2.6.1,<3.0.0)", # Milvus Vector DB
94
+ "datasketch (>=1.6.5,<2.0.0)", # MinHash library
95
+ ]
96
+
91
97
  # All optional dependencies
92
98
  # Allow users to install with `pip install MemoryOS[all]`
93
99
  all = [
@@ -99,7 +105,11 @@ all = [
99
105
  "pymysql (>=1.1.0,<2.0.0)",
100
106
  "chonkie (>=1.0.7,<2.0.0)",
101
107
  "markitdown[docx,pdf,pptx,xls,xlsx] (>=0.1.1,<0.2.0)",
102
-
108
+ "pymilvus (>=2.6.1,<3.0.0)",
109
+ "datasketch (>=1.6.5,<2.0.0)",
110
+ "jieba (>=0.38.1,<0.42.1)",
111
+ "rank-bm25 (>=0.2.2)",
112
+ "cachetools (>=6.0.0)",
103
113
  # NOT exist in the above optional groups
104
114
  # Because they are either huge-size dependencies or infrequently used dependencies.
105
115
  # We kindof don't want users to install them.
@@ -1,4 +1,4 @@
1
- __version__ = "1.1.2"
1
+ __version__ = "1.1.3"
2
2
 
3
3
  from memos.configs.mem_cube import GeneralMemCubeConfig
4
4
  from memos.configs.mem_os import MOSConfig
@@ -50,6 +50,7 @@ class MemOSClient:
50
50
  )
51
51
  response.raise_for_status()
52
52
  response_data = response.json()
53
+
53
54
  return MemOSGetMessagesResponse(**response_data)
54
55
  except Exception as e:
55
56
  logger.error(f"Failed to get messages (retry {retry + 1}/3): {e}")
@@ -74,6 +75,7 @@ class MemOSClient:
74
75
  )
75
76
  response.raise_for_status()
76
77
  response_data = response.json()
78
+
77
79
  return MemOSAddResponse(**response_data)
78
80
  except Exception as e:
79
81
  logger.error(f"Failed to add memory (retry {retry + 1}/3): {e}")
@@ -102,6 +104,7 @@ class MemOSClient:
102
104
  )
103
105
  response.raise_for_status()
104
106
  response_data = response.json()
107
+
105
108
  return MemOSSearchResponse(**response_data)
106
109
  except Exception as e:
107
110
  logger.error(f"Failed to search memory (retry {retry + 1}/3): {e}")