MemoryOS 2.0.6__tar.gz → 2.0.8__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 (366) hide show
  1. {memoryos-2.0.6 → memoryos-2.0.8}/PKG-INFO +41 -25
  2. {memoryos-2.0.6 → memoryos-2.0.8}/README.md +40 -25
  3. {memoryos-2.0.6 → memoryos-2.0.8}/pyproject.toml +1 -1
  4. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/__init__.py +1 -1
  5. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/config.py +13 -1
  6. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/handlers/__init__.py +0 -2
  7. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/handlers/add_handler.py +2 -2
  8. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/handlers/component_init.py +2 -83
  9. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/handlers/formatters_handler.py +20 -37
  10. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/handlers/memory_handler.py +53 -172
  11. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/handlers/search_handler.py +59 -20
  12. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/middleware/__init__.py +5 -4
  13. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/product_models.py +7 -7
  14. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/routers/server_router.py +2 -9
  15. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/utils/api_keys.py +1 -1
  16. memoryos-2.0.8/src/memos/chunkers/base.py +65 -0
  17. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/chunkers/charactertext_chunker.py +3 -1
  18. memoryos-2.0.8/src/memos/chunkers/markdown_chunker.py +159 -0
  19. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/chunkers/sentence_chunker.py +3 -1
  20. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/chunkers/simple_chunker.py +9 -6
  21. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/configs/graph_db.py +27 -0
  22. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/configs/mem_scheduler.py +6 -2
  23. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/embedders/universal_api.py +17 -1
  24. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/graph_dbs/base.py +31 -1
  25. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/graph_dbs/neo4j.py +45 -2
  26. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/graph_dbs/neo4j_community.py +100 -9
  27. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/graph_dbs/polardb.py +585 -1071
  28. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_cube/navie.py +10 -29
  29. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_feedback/feedback.py +21 -83
  30. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_feedback/simple_feedback.py +0 -3
  31. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_os/utils/default_config.py +32 -26
  32. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_reader/multi_modal_struct.py +32 -16
  33. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_reader/read_multi_modal/file_content_parser.py +248 -58
  34. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_reader/read_multi_modal/image_parser.py +4 -3
  35. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_reader/read_multi_modal/utils.py +22 -2
  36. memoryos-2.0.8/src/memos/mem_reader/read_pref_memory/process_preference_memory.py +296 -0
  37. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_reader/read_skill_memory/process_skill_memory.py +3 -1
  38. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/general_modules/init_components_for_scheduler.py +1 -106
  39. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/task_schedule_modules/handlers/add_handler.py +21 -19
  40. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/task_schedule_modules/handlers/mem_read_handler.py +50 -17
  41. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/item.py +1 -2
  42. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/prefer_text_memory/retrievers.py +36 -16
  43. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/preference.py +1 -1
  44. memoryos-2.0.8/src/memos/memories/textual/simple_preference.py +36 -0
  45. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree.py +12 -6
  46. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/organize/handler.py +46 -18
  47. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/organize/history_manager.py +3 -1
  48. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/organize/manager.py +31 -12
  49. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/organize/reorganizer.py +57 -20
  50. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/retrieve/recall.py +1 -0
  51. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/retrieve/searcher.py +141 -25
  52. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/retrieve/task_goal_parser.py +1 -1
  53. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memos_tools/thread_safe_dict_segment.py +1 -1
  54. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/multi_mem_cube/single_cube.py +14 -188
  55. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/search/search_service.py +2 -0
  56. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/templates/mem_reader_prompts.py +30 -12
  57. memoryos-2.0.6/src/memos/chunkers/base.py +0 -24
  58. memoryos-2.0.6/src/memos/chunkers/markdown_chunker.py +0 -62
  59. memoryos-2.0.6/src/memos/memories/textual/simple_preference.py +0 -162
  60. {memoryos-2.0.6 → memoryos-2.0.8}/LICENSE +0 -0
  61. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/README_api.md +0 -0
  62. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/__init__.py +0 -0
  63. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/client.py +0 -0
  64. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/context/dependencies.py +0 -0
  65. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/exceptions.py +0 -0
  66. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/handlers/base_handler.py +0 -0
  67. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/handlers/chat_handler.py +0 -0
  68. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/handlers/config_builders.py +0 -0
  69. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/handlers/feedback_handler.py +0 -0
  70. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/handlers/scheduler_handler.py +0 -0
  71. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/handlers/suggestion_handler.py +0 -0
  72. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/mcp_serve.py +0 -0
  73. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/middleware/auth.py +0 -0
  74. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/middleware/rate_limit.py +0 -0
  75. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/middleware/request_context.py +0 -0
  76. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/product_api.py +0 -0
  77. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/routers/__init__.py +0 -0
  78. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/routers/admin_router.py +0 -0
  79. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/routers/product_router.py +0 -0
  80. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/server_api.py +0 -0
  81. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/server_api_ext.py +0 -0
  82. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/start_api.py +0 -0
  83. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/api/utils/__init__.py +0 -0
  84. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/chunkers/__init__.py +0 -0
  85. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/chunkers/factory.py +0 -0
  86. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/cli.py +0 -0
  87. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/configs/__init__.py +0 -0
  88. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/configs/base.py +0 -0
  89. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/configs/chunker.py +0 -0
  90. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/configs/embedder.py +0 -0
  91. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/configs/internet_retriever.py +0 -0
  92. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/configs/llm.py +0 -0
  93. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/configs/mem_agent.py +0 -0
  94. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/configs/mem_chat.py +0 -0
  95. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/configs/mem_cube.py +0 -0
  96. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/configs/mem_os.py +0 -0
  97. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/configs/mem_reader.py +0 -0
  98. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/configs/mem_user.py +0 -0
  99. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/configs/memory.py +0 -0
  100. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/configs/parser.py +0 -0
  101. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/configs/reranker.py +0 -0
  102. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/configs/utils.py +0 -0
  103. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/configs/vec_db.py +0 -0
  104. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/context/context.py +0 -0
  105. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/dependency.py +0 -0
  106. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/deprecation.py +0 -0
  107. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/embedders/__init__.py +0 -0
  108. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/embedders/ark.py +0 -0
  109. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/embedders/base.py +0 -0
  110. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/embedders/factory.py +0 -0
  111. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/embedders/ollama.py +0 -0
  112. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/embedders/sentence_transformer.py +0 -0
  113. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/exceptions.py +0 -0
  114. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/extras/__init__.py +0 -0
  115. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/extras/nli_model/__init__.py +0 -0
  116. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/extras/nli_model/client.py +0 -0
  117. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/extras/nli_model/server/README.md +0 -0
  118. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/extras/nli_model/server/__init__.py +0 -0
  119. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/extras/nli_model/server/config.py +0 -0
  120. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/extras/nli_model/server/handler.py +0 -0
  121. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/extras/nli_model/server/serve.py +0 -0
  122. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/extras/nli_model/types.py +0 -0
  123. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/graph_dbs/__init__.py +0 -0
  124. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/graph_dbs/factory.py +0 -0
  125. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/graph_dbs/item.py +0 -0
  126. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/graph_dbs/nebular.py +0 -0
  127. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/graph_dbs/postgres.py +0 -0
  128. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/hello_world.py +0 -0
  129. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/llms/__init__.py +0 -0
  130. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/llms/base.py +0 -0
  131. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/llms/deepseek.py +0 -0
  132. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/llms/factory.py +0 -0
  133. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/llms/hf.py +0 -0
  134. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/llms/hf_singleton.py +0 -0
  135. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/llms/ollama.py +0 -0
  136. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/llms/openai.py +0 -0
  137. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/llms/openai_new.py +0 -0
  138. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/llms/qwen.py +0 -0
  139. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/llms/utils.py +0 -0
  140. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/llms/vllm.py +0 -0
  141. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/log.py +0 -0
  142. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_agent/base.py +0 -0
  143. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_agent/deepsearch_agent.py +0 -0
  144. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_agent/factory.py +0 -0
  145. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_chat/__init__.py +0 -0
  146. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_chat/base.py +0 -0
  147. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_chat/factory.py +0 -0
  148. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_chat/simple.py +0 -0
  149. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_cube/__init__.py +0 -0
  150. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_cube/base.py +0 -0
  151. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_cube/general.py +0 -0
  152. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_cube/utils.py +0 -0
  153. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_feedback/base.py +0 -0
  154. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_feedback/utils.py +0 -0
  155. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_os/client.py +0 -0
  156. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_os/core.py +0 -0
  157. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_os/main.py +0 -0
  158. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_os/product.py +0 -0
  159. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_os/product_server.py +0 -0
  160. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_os/utils/format_utils.py +0 -0
  161. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_os/utils/reference_utils.py +0 -0
  162. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_reader/__init__.py +0 -0
  163. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_reader/base.py +0 -0
  164. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_reader/factory.py +0 -0
  165. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_reader/memory.py +0 -0
  166. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_reader/read_multi_modal/__init__.py +0 -0
  167. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_reader/read_multi_modal/assistant_parser.py +0 -0
  168. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_reader/read_multi_modal/base.py +0 -0
  169. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_reader/read_multi_modal/multi_modal_parser.py +0 -0
  170. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_reader/read_multi_modal/string_parser.py +0 -0
  171. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_reader/read_multi_modal/system_parser.py +0 -0
  172. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_reader/read_multi_modal/text_content_parser.py +0 -0
  173. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_reader/read_multi_modal/tool_parser.py +0 -0
  174. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_reader/read_multi_modal/user_parser.py +0 -0
  175. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_reader/simple_struct.py +0 -0
  176. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_reader/strategy_struct.py +0 -0
  177. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_reader/utils.py +0 -0
  178. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/__init__.py +0 -0
  179. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/analyzer/__init__.py +0 -0
  180. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/analyzer/api_analyzer.py +0 -0
  181. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/analyzer/eval_analyzer.py +0 -0
  182. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/analyzer/mos_for_test_scheduler.py +0 -0
  183. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/analyzer/scheduler_for_eval.py +0 -0
  184. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/base_mixins/__init__.py +0 -0
  185. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/base_mixins/memory_ops.py +0 -0
  186. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/base_mixins/queue_ops.py +0 -0
  187. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/base_mixins/web_log_ops.py +0 -0
  188. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/base_scheduler.py +0 -0
  189. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/general_modules/__init__.py +0 -0
  190. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/general_modules/api_misc.py +0 -0
  191. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/general_modules/base.py +0 -0
  192. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/general_modules/misc.py +0 -0
  193. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/general_modules/scheduler_logger.py +0 -0
  194. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/general_modules/task_threads.py +0 -0
  195. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/general_scheduler.py +0 -0
  196. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/memory_manage_modules/__init__.py +0 -0
  197. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/memory_manage_modules/activation_memory_manager.py +0 -0
  198. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/memory_manage_modules/enhancement_pipeline.py +0 -0
  199. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/memory_manage_modules/filter_pipeline.py +0 -0
  200. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/memory_manage_modules/memory_filter.py +0 -0
  201. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/memory_manage_modules/post_processor.py +0 -0
  202. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/memory_manage_modules/rerank_pipeline.py +0 -0
  203. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/memory_manage_modules/retriever.py +0 -0
  204. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/memory_manage_modules/search_pipeline.py +0 -0
  205. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/memory_manage_modules/search_service.py +0 -0
  206. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/monitors/__init__.py +0 -0
  207. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/monitors/dispatcher_monitor.py +0 -0
  208. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/monitors/general_monitor.py +0 -0
  209. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/monitors/task_schedule_monitor.py +0 -0
  210. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/optimized_scheduler.py +0 -0
  211. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/orm_modules/__init__.py +0 -0
  212. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/orm_modules/api_redis_model.py +0 -0
  213. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/orm_modules/base_model.py +0 -0
  214. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/orm_modules/monitor_models.py +0 -0
  215. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/orm_modules/redis_model.py +0 -0
  216. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/scheduler_factory.py +0 -0
  217. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/schemas/__init__.py +0 -0
  218. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/schemas/analyzer_schemas.py +0 -0
  219. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/schemas/api_schemas.py +0 -0
  220. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/schemas/general_schemas.py +0 -0
  221. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/schemas/message_schemas.py +0 -0
  222. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/schemas/monitor_schemas.py +0 -0
  223. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/schemas/task_schemas.py +0 -0
  224. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/task_schedule_modules/__init__.py +0 -0
  225. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/task_schedule_modules/base_handler.py +0 -0
  226. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/task_schedule_modules/context.py +0 -0
  227. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/task_schedule_modules/dispatcher.py +0 -0
  228. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/task_schedule_modules/handlers/__init__.py +0 -0
  229. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/task_schedule_modules/handlers/answer_handler.py +0 -0
  230. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/task_schedule_modules/handlers/feedback_handler.py +0 -0
  231. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/task_schedule_modules/handlers/mem_reorganize_handler.py +0 -0
  232. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/task_schedule_modules/handlers/memory_update_handler.py +0 -0
  233. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/task_schedule_modules/handlers/pref_add_handler.py +0 -0
  234. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/task_schedule_modules/handlers/query_handler.py +0 -0
  235. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/task_schedule_modules/local_queue.py +0 -0
  236. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/task_schedule_modules/orchestrator.py +0 -0
  237. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/task_schedule_modules/redis_queue.py +0 -0
  238. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/task_schedule_modules/registry.py +0 -0
  239. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/task_schedule_modules/task_queue.py +0 -0
  240. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/utils/__init__.py +0 -0
  241. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/utils/api_utils.py +0 -0
  242. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/utils/config_utils.py +0 -0
  243. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/utils/db_utils.py +0 -0
  244. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/utils/filter_utils.py +0 -0
  245. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/utils/metrics.py +0 -0
  246. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/utils/misc_utils.py +0 -0
  247. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/utils/monitor_event_utils.py +0 -0
  248. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/utils/status_tracker.py +0 -0
  249. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/webservice_modules/__init__.py +0 -0
  250. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/webservice_modules/rabbitmq_service.py +0 -0
  251. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_scheduler/webservice_modules/redis_service.py +0 -0
  252. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_user/factory.py +0 -0
  253. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_user/mysql_persistent_user_manager.py +0 -0
  254. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_user/mysql_user_manager.py +0 -0
  255. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_user/persistent_factory.py +0 -0
  256. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_user/persistent_user_manager.py +0 -0
  257. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_user/redis_persistent_user_manager.py +0 -0
  258. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/mem_user/user_manager.py +0 -0
  259. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/__init__.py +0 -0
  260. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/activation/__init__.py +0 -0
  261. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/activation/base.py +0 -0
  262. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/activation/item.py +0 -0
  263. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/activation/kv.py +0 -0
  264. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/activation/vllmkv.py +0 -0
  265. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/base.py +0 -0
  266. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/factory.py +0 -0
  267. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/parametric/__init__.py +0 -0
  268. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/parametric/base.py +0 -0
  269. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/parametric/item.py +0 -0
  270. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/parametric/lora.py +0 -0
  271. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/__init__.py +0 -0
  272. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/base.py +0 -0
  273. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/general.py +0 -0
  274. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/naive.py +0 -0
  275. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/prefer_text_memory/__init__.py +0 -0
  276. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/prefer_text_memory/adder.py +0 -0
  277. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/prefer_text_memory/config.py +0 -0
  278. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/prefer_text_memory/extractor.py +0 -0
  279. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/prefer_text_memory/factory.py +0 -0
  280. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/prefer_text_memory/spliter.py +0 -0
  281. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/prefer_text_memory/utils.py +0 -0
  282. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/simple_tree.py +0 -0
  283. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/__init__.py +0 -0
  284. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/organize/__init__.py +0 -0
  285. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/organize/relation_reason_detector.py +0 -0
  286. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/retrieve/__init__.py +0 -0
  287. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/retrieve/advanced_searcher.py +0 -0
  288. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/retrieve/bm25_util.py +0 -0
  289. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/retrieve/bochasearch.py +0 -0
  290. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/retrieve/internet_retriever.py +0 -0
  291. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/retrieve/internet_retriever_factory.py +0 -0
  292. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/retrieve/pre_update.py +0 -0
  293. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/retrieve/reasoner.py +0 -0
  294. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/retrieve/reranker.py +0 -0
  295. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/retrieve/retrieval_mid_structs.py +0 -0
  296. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/retrieve/retrieve_utils.py +0 -0
  297. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/retrieve/utils.py +0 -0
  298. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memories/textual/tree_text_memory/retrieve/xinyusearch.py +0 -0
  299. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memos_tools/dinding_report_bot.py +0 -0
  300. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memos_tools/lockfree_dict.py +0 -0
  301. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memos_tools/notification_service.py +0 -0
  302. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memos_tools/notification_utils.py +0 -0
  303. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memos_tools/singleton.py +0 -0
  304. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/memos_tools/thread_safe_dict.py +0 -0
  305. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/multi_mem_cube/__init__.py +0 -0
  306. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/multi_mem_cube/composite_cube.py +0 -0
  307. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/multi_mem_cube/views.py +0 -0
  308. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/parsers/__init__.py +0 -0
  309. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/parsers/base.py +0 -0
  310. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/parsers/factory.py +0 -0
  311. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/parsers/markitdown.py +0 -0
  312. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/reranker/__init__.py +0 -0
  313. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/reranker/base.py +0 -0
  314. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/reranker/concat.py +0 -0
  315. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/reranker/cosine_local.py +0 -0
  316. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/reranker/factory.py +0 -0
  317. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/reranker/http_bge.py +0 -0
  318. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/reranker/http_bge_strategy.py +0 -0
  319. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/reranker/noop.py +0 -0
  320. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/reranker/strategies/__init__.py +0 -0
  321. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/reranker/strategies/base.py +0 -0
  322. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/reranker/strategies/concat_background.py +0 -0
  323. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/reranker/strategies/concat_docsource.py +0 -0
  324. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/reranker/strategies/dialogue_common.py +0 -0
  325. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/reranker/strategies/factory.py +0 -0
  326. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/reranker/strategies/single_turn.py +0 -0
  327. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/reranker/strategies/singleturn_outmem.py +0 -0
  328. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/search/__init__.py +0 -0
  329. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/settings.py +0 -0
  330. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/templates/__init__.py +0 -0
  331. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/templates/advanced_search_prompts.py +0 -0
  332. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/templates/cloud_service_prompt.py +0 -0
  333. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/templates/instruction_completion.py +0 -0
  334. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/templates/mem_agent_prompts.py +0 -0
  335. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/templates/mem_feedback_prompts.py +0 -0
  336. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/templates/mem_reader_strategy_prompts.py +0 -0
  337. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/templates/mem_scheduler_prompts.py +0 -0
  338. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/templates/mem_search_prompts.py +0 -0
  339. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/templates/mos_prompts.py +0 -0
  340. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/templates/prefer_complete_prompt.py +0 -0
  341. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/templates/skill_mem_prompt.py +0 -0
  342. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/templates/tool_mem_prompts.py +0 -0
  343. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/templates/tree_reorganize_prompts.py +0 -0
  344. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/types/__init__.py +0 -0
  345. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/types/general_types.py +0 -0
  346. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/types/openai_chat_completion_types/__init__.py +0 -0
  347. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/types/openai_chat_completion_types/chat_completion_assistant_message_param.py +0 -0
  348. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/types/openai_chat_completion_types/chat_completion_content_part_image_param.py +0 -0
  349. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/types/openai_chat_completion_types/chat_completion_content_part_input_audio_param.py +0 -0
  350. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/types/openai_chat_completion_types/chat_completion_content_part_param.py +0 -0
  351. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/types/openai_chat_completion_types/chat_completion_content_part_refusal_param.py +0 -0
  352. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/types/openai_chat_completion_types/chat_completion_content_part_text_param.py +0 -0
  353. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/types/openai_chat_completion_types/chat_completion_message_custom_tool_call_param.py +0 -0
  354. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/types/openai_chat_completion_types/chat_completion_message_function_tool_call_param.py +0 -0
  355. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/types/openai_chat_completion_types/chat_completion_message_param.py +0 -0
  356. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/types/openai_chat_completion_types/chat_completion_message_tool_call_union_param.py +0 -0
  357. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/types/openai_chat_completion_types/chat_completion_system_message_param.py +0 -0
  358. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/types/openai_chat_completion_types/chat_completion_tool_message_param.py +0 -0
  359. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/types/openai_chat_completion_types/chat_completion_user_message_param.py +0 -0
  360. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/utils.py +0 -0
  361. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/vec_dbs/__init__.py +0 -0
  362. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/vec_dbs/base.py +0 -0
  363. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/vec_dbs/factory.py +0 -0
  364. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/vec_dbs/item.py +0 -0
  365. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/vec_dbs/milvus.py +0 -0
  366. {memoryos-2.0.6 → memoryos-2.0.8}/src/memos/vec_dbs/qdrant.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: MemoryOS
3
- Version: 2.0.6
3
+ Version: 2.0.8
4
4
  Summary: Intelligence Begins with Memory
5
5
  License: Apache-2.0
6
6
  License-File: LICENSE
@@ -123,7 +123,7 @@ Description-Content-Type: text/markdown
123
123
  </a>
124
124
  <a href="https://github.com/IAAR-Shanghai/Awesome-AI-Memory">
125
125
  <img alt="Awesome AI Memory" src="https://img.shields.io/badge/Resources-Awesome--AI--Memory-8A2BE2">
126
- </a>
126
+ </a>
127
127
  </p>
128
128
 
129
129
  <p align="center">
@@ -131,30 +131,42 @@ Description-Content-Type: text/markdown
131
131
  <strong>🏆 Top-tier long-term memory + personalization</strong><br/>
132
132
  <strong>💰 Saves 35.24% memory tokens</strong><br/>
133
133
  <sub>LoCoMo 75.80 • LongMemEval +40.43% • PrefEval-10 +2568% • PersonaMem +40.75%</sub>
134
- <a href="https://memos.openmem.net/">
134
+ <!-- <a href="https://memos.openmem.net/">
135
135
  <img src="https://statics.memtensor.com.cn/memos/github_api_free_banner.gif" alt="MemOS Free API Banner">
136
- </a>
136
+ </a> -->
137
137
 
138
138
  </p>
139
-
139
+
140
140
  </div>
141
141
 
142
- Get Free API: [Try API](https://memos-dashboard.openmem.net/quickstart/?source=github)
142
+ <!-- Get Free API: [Try API](https://memos-dashboard.openmem.net/quickstart/?source=github) -->
143
143
 
144
- ---
144
+ <!-- --- -->
145
145
 
146
- <br>
146
+ <!-- <br> -->
147
147
 
148
148
  ## 🦞 Enhanced OpenClaw with MemOS Plugin
149
+
149
150
  ![](https://cdn.memtensor.com.cn/img/1770612303123_mnaisk_compressed.png)
150
151
 
151
- - [**72% lower token usage**](https://x.com/MemOS_dev/status/2020854044583924111) intelligent memory retrieval instead of loading full chat history
152
- - [**Multi-agent memory sharing**](https://x.com/MemOS_dev/status/2020538135487062094) – multi-instance agents share memory via same user_id. Automatic context handoff.
152
+ 🦞 Your lobster now has a working memory system choose **Cloud** or **Local** to get started.
153
153
 
154
- 🦞 Your lobster now has a working memory system.
154
+ ### ☁️ Cloud Plugin Hosted Memory Service
155
+
156
+ - [**72% lower token usage**](https://x.com/MemOS_dev/status/2020854044583924111) — intelligent memory retrieval instead of loading full chat history
157
+ - [**Multi-agent memory sharing**](https://x.com/MemOS_dev/status/2020538135487062094) — multi-instance agents share memory via same user_id, automatic context handoff
155
158
 
156
159
  Get your API key: [MemOS Dashboard](https://memos-dashboard.openmem.net/cn/login/)
157
- Try it: Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTensor/MemOS-Cloud-OpenClaw-Plugin)
160
+ Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTensor/MemOS-Cloud-OpenClaw-Plugin)
161
+
162
+ ### 🧠 Local Plugin — 100% On-Device Memory
163
+
164
+ - **Zero cloud dependency** — all data stays on your machine, persistent local SQLite storage
165
+ - **Hybrid search + task & skill evolution** — FTS5 + vector search, auto task summarization, reusable skills that self-upgrade
166
+ - **Multi-agent collaboration + Memory Viewer** — memory isolation, skill sharing, full web dashboard with 7 management pages
167
+
168
+ 🌐 [Homepage](https://memos-claw.openmem.net) ·
169
+ 📖 [Documentation](https://memos-claw.openmem.net/docs/index.html) · 📦 [NPM](https://www.npmjs.com/package/@memtensor/memos-local-openclaw-plugin)
158
170
 
159
171
  ## 📌 MemOS: Memory Operating System for AI Agents
160
172
 
@@ -173,6 +185,9 @@ Try it: Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTe
173
185
 
174
186
  ### News
175
187
 
188
+ - **2026-03-08** · 🦞 **MemOS OpenClaw Plugin — Cloud & Local**
189
+ Official OpenClaw memory plugins launched. **Cloud Plugin**: hosted memory service with 72% lower token usage and multi-agent memory sharing ([MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTensor/MemOS-Cloud-OpenClaw-Plugin)). **Local Plugin** (`v1.0.0`): 100% on-device memory with persistent SQLite, hybrid search (FTS5 + vector), task summarization & skill evolution, multi-agent collaboration, and a full Memory Viewer dashboard.
190
+
176
191
  - **2025-12-24** · 🎉 **MemOS v2.0: Stardust (星尘) Release**
177
192
  Comprehensive KB (doc/URL parsing + cross-project sharing), memory feedback & precise deletion, multi-modal memory (images/charts), tool memory for agent planning, Redis Streams scheduling + DB optimizations, streaming/non-streaming chat, MCP upgrade, and lightweight quick/full deployment.
178
193
  <details>
@@ -220,7 +235,7 @@ Try it: Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTe
220
235
 
221
236
  </details>
222
237
 
223
- - **2025-08-07** · 🎉 **MemOS v1.0.0 (MemCube) Release**
238
+ - **2025-08-07** · 🎉 **MemOS v1.0.0 (MemCube) Release**
224
239
  First MemCube release with a word-game demo, LongMemEval evaluation, BochaAISearchRetriever integration, NebulaGraph support, improved search capabilities, and the official Playground launch.
225
240
 
226
241
  <details>
@@ -258,11 +273,11 @@ Try it: Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTe
258
273
 
259
274
  </details>
260
275
 
261
- - **2025-07-07** · 🎉 **MemOS v1.0: Stellar (星河) Preview Release**
276
+ - **2025-07-07** · 🎉 **MemOS v1.0: Stellar (星河) Preview Release**
262
277
  A SOTA Memory OS for LLMs is now open-sourced.
263
- - **2025-07-04** · 🎉 **MemOS Paper Release**
278
+ - **2025-07-04** · 🎉 **MemOS Paper Release**
264
279
  [MemOS: A Memory OS for AI System](https://arxiv.org/abs/2507.03724) is available on arXiv.
265
- - **2024-07-04** · 🎉 **Memory3 Model Release at WAIC 2024**
280
+ - **2024-07-04** · 🎉 **Memory3 Model Release at WAIC 2024**
266
281
  The Memory3 model, featuring a memory-layered architecture, was unveiled at the 2024 World Artificial Intelligence Conference.
267
282
 
268
283
  <br>
@@ -275,9 +290,9 @@ Try it: Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTe
275
290
  - Go to **API Keys** and copy your key
276
291
 
277
292
  #### Next Steps
278
- - [MemOS Cloud Getting Started](https://memos-docs.openmem.net/memos_cloud/quick_start/)
293
+ - [MemOS Cloud Getting Started](https://memos-docs.openmem.net/memos_cloud/quick_start/)
279
294
  Connect to MemOS Cloud and enable memory in minutes.
280
- - [MemOS Cloud Platform](https://memos.openmem.net/?from=/quickstart/)
295
+ - [MemOS Cloud Platform](https://memos.openmem.net/?from=/quickstart/)
281
296
  Explore the Cloud dashboard, features, and workflows.
282
297
 
283
298
  ### 🖥️ 2、Self-Hosted (Local/Private)
@@ -315,7 +330,7 @@ Try it: Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTe
315
330
  ```python
316
331
  import requests
317
332
  import json
318
-
333
+
319
334
  data = {
320
335
  "user_id": "8736b16e-1d20-4163-980b-a5063c3facdc",
321
336
  "mem_cube_id": "b32d0977-435d-4828-a86f-4f47f8b55bca",
@@ -331,7 +346,7 @@ Try it: Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTe
331
346
  "Content-Type": "application/json"
332
347
  }
333
348
  url = "http://localhost:8000/product/add"
334
-
349
+
335
350
  res = requests.post(url=url, headers=headers, data=json.dumps(data))
336
351
  print(f"result: {res.json()}")
337
352
  ```
@@ -339,7 +354,7 @@ Try it: Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTe
339
354
  ```python
340
355
  import requests
341
356
  import json
342
-
357
+
343
358
  data = {
344
359
  "query": "What do I like",
345
360
  "user_id": "8736b16e-1d20-4163-980b-a5063c3facdc",
@@ -349,7 +364,7 @@ Try it: Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTe
349
364
  "Content-Type": "application/json"
350
365
  }
351
366
  url = "http://localhost:8000/product/search"
352
-
367
+
353
368
  res = requests.post(url=url, headers=headers, data=json.dumps(data))
354
369
  print(f"result: {res.json()}")
355
370
  ```
@@ -358,8 +373,8 @@ Try it: Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTe
358
373
 
359
374
  ## 📚 Resources
360
375
 
361
- - **Awesome-AI-Memory**
362
- This is a curated repository dedicated to resources on memory and memory systems for large language models. It systematically collects relevant research papers, frameworks, tools, and practical insights. The repository aims to organize and present the rapidly evolving research landscape of LLM memory, bridging multiple research directions including natural language processing, information retrieval, agentic systems, and cognitive science.
376
+ - **Awesome-AI-Memory**
377
+ This is a curated repository dedicated to resources on memory and memory systems for large language models. It systematically collects relevant research papers, frameworks, tools, and practical insights. The repository aims to organize and present the rapidly evolving research landscape of LLM memory, bridging multiple research directions including natural language processing, information retrieval, agentic systems, and cognitive science.
363
378
  - **Get started** 👉 [IAAR-Shanghai/Awesome-AI-Memory](https://github.com/IAAR-Shanghai/Awesome-AI-Memory)
364
379
  - **MemOS Cloud OpenClaw Plugin**
365
380
  Official OpenClaw lifecycle plugin for MemOS Cloud. It automatically recalls context from MemOS before the agent starts and saves the conversation back to MemOS after the agent finishes.
@@ -426,10 +441,11 @@ url = {https://global-sci.com/article/91443/memory3-language-modeling-with-expli
426
441
 
427
442
  ## 🙌 Contributing
428
443
 
429
- We welcome contributions from the community! Please read our [contribution guidelines](https://memos-docs.openmem.net/contribution/overview) to get started.
444
+ We welcome contributions from the community! Please read our [contribution guidelines](https://memos-docs.openmem.net/open_source/contribution/overview/) to get started.
430
445
 
431
446
  <br>
432
447
 
433
448
  ## 📄 License
434
449
 
435
450
  MemOS is licensed under the [Apache 2.0 License](./LICENSE).
451
+
@@ -42,7 +42,7 @@
42
42
  </a>
43
43
  <a href="https://github.com/IAAR-Shanghai/Awesome-AI-Memory">
44
44
  <img alt="Awesome AI Memory" src="https://img.shields.io/badge/Resources-Awesome--AI--Memory-8A2BE2">
45
- </a>
45
+ </a>
46
46
  </p>
47
47
 
48
48
  <p align="center">
@@ -50,30 +50,42 @@
50
50
  <strong>🏆 Top-tier long-term memory + personalization</strong><br/>
51
51
  <strong>💰 Saves 35.24% memory tokens</strong><br/>
52
52
  <sub>LoCoMo 75.80 • LongMemEval +40.43% • PrefEval-10 +2568% • PersonaMem +40.75%</sub>
53
- <a href="https://memos.openmem.net/">
53
+ <!-- <a href="https://memos.openmem.net/">
54
54
  <img src="https://statics.memtensor.com.cn/memos/github_api_free_banner.gif" alt="MemOS Free API Banner">
55
- </a>
55
+ </a> -->
56
56
 
57
57
  </p>
58
-
58
+
59
59
  </div>
60
60
 
61
- Get Free API: [Try API](https://memos-dashboard.openmem.net/quickstart/?source=github)
61
+ <!-- Get Free API: [Try API](https://memos-dashboard.openmem.net/quickstart/?source=github) -->
62
62
 
63
- ---
63
+ <!-- --- -->
64
64
 
65
- <br>
65
+ <!-- <br> -->
66
66
 
67
67
  ## 🦞 Enhanced OpenClaw with MemOS Plugin
68
+
68
69
  ![](https://cdn.memtensor.com.cn/img/1770612303123_mnaisk_compressed.png)
69
70
 
70
- - [**72% lower token usage**](https://x.com/MemOS_dev/status/2020854044583924111) intelligent memory retrieval instead of loading full chat history
71
- - [**Multi-agent memory sharing**](https://x.com/MemOS_dev/status/2020538135487062094) – multi-instance agents share memory via same user_id. Automatic context handoff.
71
+ 🦞 Your lobster now has a working memory system choose **Cloud** or **Local** to get started.
72
72
 
73
- 🦞 Your lobster now has a working memory system.
73
+ ### ☁️ Cloud Plugin Hosted Memory Service
74
+
75
+ - [**72% lower token usage**](https://x.com/MemOS_dev/status/2020854044583924111) — intelligent memory retrieval instead of loading full chat history
76
+ - [**Multi-agent memory sharing**](https://x.com/MemOS_dev/status/2020538135487062094) — multi-instance agents share memory via same user_id, automatic context handoff
74
77
 
75
78
  Get your API key: [MemOS Dashboard](https://memos-dashboard.openmem.net/cn/login/)
76
- Try it: Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTensor/MemOS-Cloud-OpenClaw-Plugin)
79
+ Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTensor/MemOS-Cloud-OpenClaw-Plugin)
80
+
81
+ ### 🧠 Local Plugin — 100% On-Device Memory
82
+
83
+ - **Zero cloud dependency** — all data stays on your machine, persistent local SQLite storage
84
+ - **Hybrid search + task & skill evolution** — FTS5 + vector search, auto task summarization, reusable skills that self-upgrade
85
+ - **Multi-agent collaboration + Memory Viewer** — memory isolation, skill sharing, full web dashboard with 7 management pages
86
+
87
+ 🌐 [Homepage](https://memos-claw.openmem.net) ·
88
+ 📖 [Documentation](https://memos-claw.openmem.net/docs/index.html) · 📦 [NPM](https://www.npmjs.com/package/@memtensor/memos-local-openclaw-plugin)
77
89
 
78
90
  ## 📌 MemOS: Memory Operating System for AI Agents
79
91
 
@@ -92,6 +104,9 @@ Try it: Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTe
92
104
 
93
105
  ### News
94
106
 
107
+ - **2026-03-08** · 🦞 **MemOS OpenClaw Plugin — Cloud & Local**
108
+ Official OpenClaw memory plugins launched. **Cloud Plugin**: hosted memory service with 72% lower token usage and multi-agent memory sharing ([MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTensor/MemOS-Cloud-OpenClaw-Plugin)). **Local Plugin** (`v1.0.0`): 100% on-device memory with persistent SQLite, hybrid search (FTS5 + vector), task summarization & skill evolution, multi-agent collaboration, and a full Memory Viewer dashboard.
109
+
95
110
  - **2025-12-24** · 🎉 **MemOS v2.0: Stardust (星尘) Release**
96
111
  Comprehensive KB (doc/URL parsing + cross-project sharing), memory feedback & precise deletion, multi-modal memory (images/charts), tool memory for agent planning, Redis Streams scheduling + DB optimizations, streaming/non-streaming chat, MCP upgrade, and lightweight quick/full deployment.
97
112
  <details>
@@ -139,7 +154,7 @@ Try it: Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTe
139
154
 
140
155
  </details>
141
156
 
142
- - **2025-08-07** · 🎉 **MemOS v1.0.0 (MemCube) Release**
157
+ - **2025-08-07** · 🎉 **MemOS v1.0.0 (MemCube) Release**
143
158
  First MemCube release with a word-game demo, LongMemEval evaluation, BochaAISearchRetriever integration, NebulaGraph support, improved search capabilities, and the official Playground launch.
144
159
 
145
160
  <details>
@@ -177,11 +192,11 @@ Try it: Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTe
177
192
 
178
193
  </details>
179
194
 
180
- - **2025-07-07** · 🎉 **MemOS v1.0: Stellar (星河) Preview Release**
195
+ - **2025-07-07** · 🎉 **MemOS v1.0: Stellar (星河) Preview Release**
181
196
  A SOTA Memory OS for LLMs is now open-sourced.
182
- - **2025-07-04** · 🎉 **MemOS Paper Release**
197
+ - **2025-07-04** · 🎉 **MemOS Paper Release**
183
198
  [MemOS: A Memory OS for AI System](https://arxiv.org/abs/2507.03724) is available on arXiv.
184
- - **2024-07-04** · 🎉 **Memory3 Model Release at WAIC 2024**
199
+ - **2024-07-04** · 🎉 **Memory3 Model Release at WAIC 2024**
185
200
  The Memory3 model, featuring a memory-layered architecture, was unveiled at the 2024 World Artificial Intelligence Conference.
186
201
 
187
202
  <br>
@@ -194,9 +209,9 @@ Try it: Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTe
194
209
  - Go to **API Keys** and copy your key
195
210
 
196
211
  #### Next Steps
197
- - [MemOS Cloud Getting Started](https://memos-docs.openmem.net/memos_cloud/quick_start/)
212
+ - [MemOS Cloud Getting Started](https://memos-docs.openmem.net/memos_cloud/quick_start/)
198
213
  Connect to MemOS Cloud and enable memory in minutes.
199
- - [MemOS Cloud Platform](https://memos.openmem.net/?from=/quickstart/)
214
+ - [MemOS Cloud Platform](https://memos.openmem.net/?from=/quickstart/)
200
215
  Explore the Cloud dashboard, features, and workflows.
201
216
 
202
217
  ### 🖥️ 2、Self-Hosted (Local/Private)
@@ -234,7 +249,7 @@ Try it: Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTe
234
249
  ```python
235
250
  import requests
236
251
  import json
237
-
252
+
238
253
  data = {
239
254
  "user_id": "8736b16e-1d20-4163-980b-a5063c3facdc",
240
255
  "mem_cube_id": "b32d0977-435d-4828-a86f-4f47f8b55bca",
@@ -250,7 +265,7 @@ Try it: Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTe
250
265
  "Content-Type": "application/json"
251
266
  }
252
267
  url = "http://localhost:8000/product/add"
253
-
268
+
254
269
  res = requests.post(url=url, headers=headers, data=json.dumps(data))
255
270
  print(f"result: {res.json()}")
256
271
  ```
@@ -258,7 +273,7 @@ Try it: Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTe
258
273
  ```python
259
274
  import requests
260
275
  import json
261
-
276
+
262
277
  data = {
263
278
  "query": "What do I like",
264
279
  "user_id": "8736b16e-1d20-4163-980b-a5063c3facdc",
@@ -268,7 +283,7 @@ Try it: Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTe
268
283
  "Content-Type": "application/json"
269
284
  }
270
285
  url = "http://localhost:8000/product/search"
271
-
286
+
272
287
  res = requests.post(url=url, headers=headers, data=json.dumps(data))
273
288
  print(f"result: {res.json()}")
274
289
  ```
@@ -277,8 +292,8 @@ Try it: Full tutorial → [MemOS-Cloud-OpenClaw-Plugin](https://github.com/MemTe
277
292
 
278
293
  ## 📚 Resources
279
294
 
280
- - **Awesome-AI-Memory**
281
- This is a curated repository dedicated to resources on memory and memory systems for large language models. It systematically collects relevant research papers, frameworks, tools, and practical insights. The repository aims to organize and present the rapidly evolving research landscape of LLM memory, bridging multiple research directions including natural language processing, information retrieval, agentic systems, and cognitive science.
295
+ - **Awesome-AI-Memory**
296
+ This is a curated repository dedicated to resources on memory and memory systems for large language models. It systematically collects relevant research papers, frameworks, tools, and practical insights. The repository aims to organize and present the rapidly evolving research landscape of LLM memory, bridging multiple research directions including natural language processing, information retrieval, agentic systems, and cognitive science.
282
297
  - **Get started** 👉 [IAAR-Shanghai/Awesome-AI-Memory](https://github.com/IAAR-Shanghai/Awesome-AI-Memory)
283
298
  - **MemOS Cloud OpenClaw Plugin**
284
299
  Official OpenClaw lifecycle plugin for MemOS Cloud. It automatically recalls context from MemOS before the agent starts and saves the conversation back to MemOS after the agent finishes.
@@ -345,10 +360,10 @@ url = {https://global-sci.com/article/91443/memory3-language-modeling-with-expli
345
360
 
346
361
  ## 🙌 Contributing
347
362
 
348
- We welcome contributions from the community! Please read our [contribution guidelines](https://memos-docs.openmem.net/contribution/overview) to get started.
363
+ We welcome contributions from the community! Please read our [contribution guidelines](https://memos-docs.openmem.net/open_source/contribution/overview/) to get started.
349
364
 
350
365
  <br>
351
366
 
352
367
  ## 📄 License
353
368
 
354
- MemOS is licensed under the [Apache 2.0 License](./LICENSE).
369
+ MemOS is licensed under the [Apache 2.0 License](./LICENSE).
@@ -4,7 +4,7 @@
4
4
  ##############################################################################
5
5
 
6
6
  name = "MemoryOS"
7
- version = "2.0.6"
7
+ version = "2.0.8"
8
8
  description = "Intelligence Begins with Memory"
9
9
  license = {text = "Apache-2.0"}
10
10
  readme = "README.md"
@@ -1,4 +1,4 @@
1
- __version__ = "2.0.6"
1
+ __version__ = "2.0.8"
2
2
 
3
3
  from memos.configs.mem_cube import GeneralMemCubeConfig
4
4
  from memos.configs.mem_os import MOSConfig
@@ -675,7 +675,17 @@ class APIConfig:
675
675
  "user_name": user_name,
676
676
  "use_multi_db": use_multi_db,
677
677
  "auto_create": True,
678
- "embedding_dimension": int(os.getenv("EMBEDDING_DIMENSION", 1024)),
678
+ "embedding_dimension": int(os.getenv("EMBEDDING_DIMENSION", "1024")),
679
+ # .env: CONNECTION_WAIT_TIMEOUT, SKIP_CONNECTION_HEALTH_CHECK, WARM_UP_ON_STARTUP_BY_FULL, WARM_UP_ON_STARTUP_BY_ALL
680
+ "connection_wait_timeout": int(os.getenv("CONNECTION_WAIT_TIMEOUT", "60")),
681
+ "skip_connection_health_check": os.getenv(
682
+ "SKIP_CONNECTION_HEALTH_CHECK", "false"
683
+ ).lower()
684
+ == "true",
685
+ "warm_up_on_startup_by_full": os.getenv("WARM_UP_ON_STARTUP_BY_FULL", "false").lower()
686
+ == "true",
687
+ "warm_up_on_startup_by_all": os.getenv("WARM_UP_ON_STARTUP_BY_ALL", "false").lower()
688
+ == "true",
679
689
  }
680
690
 
681
691
  @staticmethod
@@ -1014,6 +1024,7 @@ class APIConfig:
1014
1024
  "fast_graph": bool(os.getenv("FAST_GRAPH", "false") == "true"),
1015
1025
  "bm25": bool(os.getenv("BM25_CALL", "false") == "true"),
1016
1026
  "cot": bool(os.getenv("VEC_COT_CALL", "false") == "true"),
1027
+ "fulltext": bool(os.getenv("FULLTEXT_CALL", "false") == "true"),
1017
1028
  },
1018
1029
  "include_embedding": bool(
1019
1030
  os.getenv("INCLUDE_EMBEDDING", "false") == "true"
@@ -1096,6 +1107,7 @@ class APIConfig:
1096
1107
  "fast_graph": bool(os.getenv("FAST_GRAPH", "false") == "true"),
1097
1108
  "bm25": bool(os.getenv("BM25_CALL", "false") == "true"),
1098
1109
  "cot": bool(os.getenv("VEC_COT_CALL", "false") == "true"),
1110
+ "fulltext": bool(os.getenv("FULLTEXT_CALL", "false") == "true"),
1099
1111
  },
1100
1112
  "mode": os.getenv("ASYNC_MODE", "sync"),
1101
1113
  "include_embedding": bool(
@@ -32,7 +32,6 @@ from memos.api.handlers.config_builders import (
32
32
  )
33
33
  from memos.api.handlers.formatters_handler import (
34
34
  format_memory_item,
35
- post_process_pref_mem,
36
35
  to_iter,
37
36
  )
38
37
 
@@ -54,7 +53,6 @@ __all__ = [
54
53
  "formatters_handler",
55
54
  "init_server",
56
55
  "memory_handler",
57
- "post_process_pref_mem",
58
56
  "scheduler_handler",
59
57
  "search_handler",
60
58
  "suggestion_handler",
@@ -22,7 +22,7 @@ class AddHandler(BaseHandler):
22
22
  """
23
23
  Handler for memory addition operations.
24
24
 
25
- Handles both text and preference memory additions with sync/async support.
25
+ Handles text memory additions with sync/async support.
26
26
  """
27
27
 
28
28
  def __init__(self, dependencies: HandlerDependencies):
@@ -41,7 +41,7 @@ class AddHandler(BaseHandler):
41
41
  """
42
42
  Main handler for add memories endpoint.
43
43
 
44
- Orchestrates the addition of both text and preference memories,
44
+ Orchestrates the addition of text memories,
45
45
  supporting concurrent processing.
46
46
 
47
47
  Args:
@@ -19,11 +19,7 @@ from memos.api.handlers.config_builders import (
19
19
  build_llm_config,
20
20
  build_mem_reader_config,
21
21
  build_nli_client_config,
22
- build_pref_adder_config,
23
- build_pref_extractor_config,
24
- build_pref_retriever_config,
25
22
  build_reranker_config,
26
- build_vec_db_config,
27
23
  )
28
24
  from memos.configs.mem_scheduler import SchedulerConfigFactory
29
25
  from memos.embedders.factory import EmbedderFactory
@@ -36,12 +32,6 @@ from memos.mem_os.product_server import MOSServer
36
32
  from memos.mem_reader.factory import MemReaderFactory
37
33
  from memos.mem_scheduler.orm_modules.base_model import BaseDBManager
38
34
  from memos.mem_scheduler.scheduler_factory import SchedulerFactory
39
- from memos.memories.textual.prefer_text_memory.factory import (
40
- AdderFactory,
41
- ExtractorFactory,
42
- RetrieverFactory,
43
- )
44
- from memos.memories.textual.simple_preference import SimplePreferenceTextMemory
45
35
  from memos.memories.textual.simple_tree import SimpleTreeTextMemory
46
36
  from memos.memories.textual.tree_text_memory.organize.history_manager import MemoryHistoryManager
47
37
  from memos.memories.textual.tree_text_memory.organize.manager import MemoryManager
@@ -56,7 +46,6 @@ from memos.memories.textual.tree_text_memory.retrieve.internet_retriever_factory
56
46
  InternetRetrieverFactory,
57
47
  )
58
48
  from memos.reranker.factory import RerankerFactory
59
- from memos.vec_dbs.factory import VecDBFactory
60
49
 
61
50
 
62
51
  if TYPE_CHECKING:
@@ -125,7 +114,7 @@ def init_server() -> dict[str, Any]:
125
114
  required by the MemOS server, including:
126
115
  - Database connections (graph DB, vector DB)
127
116
  - Language models and embedders
128
- - Memory systems (text, preference)
117
+ - Memory systems (text)
129
118
  - Scheduler and related modules
130
119
 
131
120
  Returns:
@@ -169,20 +158,11 @@ def init_server() -> dict[str, Any]:
169
158
  reranker_config = build_reranker_config()
170
159
  feedback_reranker_config = build_feedback_reranker_config()
171
160
  internet_retriever_config = build_internet_retriever_config()
172
- vector_db_config = build_vec_db_config()
173
- pref_extractor_config = build_pref_extractor_config()
174
- pref_adder_config = build_pref_adder_config()
175
- pref_retriever_config = build_pref_retriever_config()
176
161
 
177
162
  logger.debug("Component configurations built successfully")
178
163
 
179
164
  # Create component instances
180
165
  graph_db = GraphStoreFactory.from_config(graph_db_config)
181
- vector_db = (
182
- VecDBFactory.from_config(vector_db_config)
183
- if os.getenv("ENABLE_PREFERENCE_MEMORY", "false") == "true"
184
- else None
185
- )
186
166
  llm = LLMFactory.from_config(llm_config)
187
167
  chat_llms = (
188
168
  _init_chat_llms(chat_llm_config)
@@ -231,61 +211,6 @@ def init_server() -> dict[str, Any]:
231
211
 
232
212
  logger.debug("Text memory initialized")
233
213
 
234
- # Initialize preference memory components
235
- pref_extractor = (
236
- ExtractorFactory.from_config(
237
- config_factory=pref_extractor_config,
238
- llm_provider=llm,
239
- embedder=embedder,
240
- vector_db=vector_db,
241
- )
242
- if os.getenv("ENABLE_PREFERENCE_MEMORY", "false") == "true"
243
- else None
244
- )
245
-
246
- pref_adder = (
247
- AdderFactory.from_config(
248
- config_factory=pref_adder_config,
249
- llm_provider=llm,
250
- embedder=embedder,
251
- vector_db=vector_db,
252
- text_mem=text_mem,
253
- )
254
- if os.getenv("ENABLE_PREFERENCE_MEMORY", "false") == "true"
255
- else None
256
- )
257
-
258
- pref_retriever = (
259
- RetrieverFactory.from_config(
260
- config_factory=pref_retriever_config,
261
- llm_provider=llm,
262
- embedder=embedder,
263
- reranker=feedback_reranker,
264
- vector_db=vector_db,
265
- )
266
- if os.getenv("ENABLE_PREFERENCE_MEMORY", "false") == "true"
267
- else None
268
- )
269
-
270
- logger.debug("Preference memory components initialized")
271
-
272
- # Initialize preference memory
273
- pref_mem = (
274
- SimplePreferenceTextMemory(
275
- extractor_llm=llm,
276
- vector_db=vector_db,
277
- embedder=embedder,
278
- reranker=feedback_reranker,
279
- extractor=pref_extractor,
280
- adder=pref_adder,
281
- retriever=pref_retriever,
282
- )
283
- if os.getenv("ENABLE_PREFERENCE_MEMORY", "false") == "true"
284
- else None
285
- )
286
-
287
- logger.debug("Preference memory initialized")
288
-
289
214
  # Initialize MOS Server
290
215
  mos_server = MOSServer(
291
216
  mem_reader=mem_reader,
@@ -298,7 +223,6 @@ def init_server() -> dict[str, Any]:
298
223
  # Create MemCube with pre-initialized memory instances
299
224
  naive_mem_cube = NaiveMemCube(
300
225
  text_mem=text_mem,
301
- pref_mem=pref_mem,
302
226
  act_mem=None,
303
227
  para_mem=None,
304
228
  )
@@ -325,7 +249,7 @@ def init_server() -> dict[str, Any]:
325
249
  mem_reader=mem_reader,
326
250
  searcher=searcher,
327
251
  reranker=feedback_reranker,
328
- pref_mem=pref_mem,
252
+ pref_feedback=True,
329
253
  )
330
254
 
331
255
  # Initialize Scheduler
@@ -384,12 +308,7 @@ def init_server() -> dict[str, Any]:
384
308
  "naive_mem_cube": naive_mem_cube,
385
309
  "searcher": searcher,
386
310
  "api_module": api_module,
387
- "vector_db": vector_db,
388
- "pref_extractor": pref_extractor,
389
- "pref_adder": pref_adder,
390
- "pref_retriever": pref_retriever,
391
311
  "text_mem": text_mem,
392
- "pref_mem": pref_mem,
393
312
  "online_bot": online_bot,
394
313
  "feedback_server": feedback_server,
395
314
  "redis_client": redis_client,
@@ -65,49 +65,14 @@ def format_memory_item(
65
65
  return memory
66
66
 
67
67
 
68
- def post_process_pref_mem(
69
- memories_result: dict[str, Any],
70
- pref_formatted_mem: list[dict[str, Any]],
71
- mem_cube_id: str,
72
- include_preference: bool,
73
- ) -> dict[str, Any]:
74
- """
75
- Post-process preference memory results.
76
-
77
- Adds formatted preference memories to the result dictionary and generates
78
- instruction completion strings if preferences are included.
79
-
80
- Args:
81
- memories_result: Result dictionary to update
82
- pref_formatted_mem: List of formatted preference memories
83
- mem_cube_id: Memory cube ID
84
- include_preference: Whether to include preferences in result
85
-
86
- Returns:
87
- Updated memories_result dictionary
88
- """
89
- if include_preference:
90
- memories_result["pref_mem"].append(
91
- {
92
- "cube_id": mem_cube_id,
93
- "memories": pref_formatted_mem,
94
- "total_nodes": len(pref_formatted_mem),
95
- }
96
- )
97
- pref_instruction, pref_note = instruct_completion(pref_formatted_mem)
98
- memories_result["pref_string"] = pref_instruction
99
- memories_result["pref_note"] = pref_note
100
-
101
- return memories_result
102
-
103
-
104
68
  def post_process_textual_mem(
105
69
  memories_result: dict[str, Any],
106
70
  text_formatted_mem: list[dict[str, Any]],
107
71
  mem_cube_id: str,
108
72
  ) -> dict[str, Any]:
109
73
  """
110
- Post-process text and tool memory results.
74
+ Post-process text, tool, skill and preference memory results.
75
+ Now automatically handles preference memories.
111
76
  """
112
77
  fact_mem = [
113
78
  mem
@@ -124,6 +89,11 @@ def post_process_textual_mem(
124
89
  mem for mem in text_formatted_mem if mem["metadata"]["memory_type"] == "SkillMemory"
125
90
  ]
126
91
 
92
+ # Extract preference memories
93
+ pref_mem = [
94
+ mem for mem in text_formatted_mem if mem["metadata"]["memory_type"] == "PreferenceMemory"
95
+ ]
96
+
127
97
  memories_result["text_mem"].append(
128
98
  {
129
99
  "cube_id": mem_cube_id,
@@ -145,6 +115,19 @@ def post_process_textual_mem(
145
115
  "total_nodes": len(skill_mem),
146
116
  }
147
117
  )
118
+
119
+ memories_result["pref_mem"].append(
120
+ {
121
+ "cube_id": mem_cube_id,
122
+ "memories": pref_mem,
123
+ "total_nodes": len(pref_mem),
124
+ }
125
+ )
126
+ if pref_mem:
127
+ pref_instruction, pref_note = instruct_completion(pref_mem)
128
+ memories_result["pref_string"] = pref_instruction
129
+ memories_result["pref_note"] = pref_note
130
+
148
131
  return memories_result
149
132
 
150
133