MemoryOS 2.0.19__tar.gz → 2.0.20__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 (383) hide show
  1. {memoryos-2.0.19 → memoryos-2.0.20}/PKG-INFO +1 -1
  2. {memoryos-2.0.19 → memoryos-2.0.20}/pyproject.toml +1 -1
  3. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/__init__.py +1 -1
  4. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/handlers/formatters_handler.py +11 -2
  5. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/handlers/search_handler.py +17 -0
  6. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/product_models.py +13 -0
  7. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/retrieve/searcher.py +79 -21
  8. memoryos-2.0.20/src/memos/plugins/README.md +448 -0
  9. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/plugins/hook_defs.py +16 -0
  10. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/search/search_service.py +1 -0
  11. {memoryos-2.0.19 → memoryos-2.0.20}/LICENSE +0 -0
  12. {memoryos-2.0.19 → memoryos-2.0.20}/README.md +0 -0
  13. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/__init__.py +0 -0
  14. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/client.py +0 -0
  15. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/config.py +0 -0
  16. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/context/dependencies.py +0 -0
  17. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/exceptions.py +0 -0
  18. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/handlers/__init__.py +0 -0
  19. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/handlers/add_handler.py +0 -0
  20. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/handlers/base_handler.py +0 -0
  21. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/handlers/chat_handler.py +0 -0
  22. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/handlers/component_init.py +0 -0
  23. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/handlers/config_builders.py +0 -0
  24. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/handlers/cube_handler.py +0 -0
  25. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/handlers/feedback_handler.py +0 -0
  26. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/handlers/memory_handler.py +0 -0
  27. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/handlers/scheduler_handler.py +0 -0
  28. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/handlers/suggestion_handler.py +0 -0
  29. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/mcp_serve.py +0 -0
  30. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/middleware/__init__.py +0 -0
  31. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/middleware/auth.py +0 -0
  32. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/middleware/rate_limit.py +0 -0
  33. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/middleware/request_context.py +0 -0
  34. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/routers/__init__.py +0 -0
  35. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/routers/admin_router.py +0 -0
  36. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/routers/server_router.py +0 -0
  37. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/server_api.py +0 -0
  38. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/server_api_ext.py +0 -0
  39. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/utils/__init__.py +0 -0
  40. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/api/utils/api_keys.py +0 -0
  41. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/chunkers/__init__.py +0 -0
  42. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/chunkers/base.py +0 -0
  43. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/chunkers/charactertext_chunker.py +0 -0
  44. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/chunkers/factory.py +0 -0
  45. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/chunkers/markdown_chunker.py +0 -0
  46. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/chunkers/sentence_chunker.py +0 -0
  47. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/chunkers/simple_chunker.py +0 -0
  48. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/cli.py +0 -0
  49. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/configs/__init__.py +0 -0
  50. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/configs/base.py +0 -0
  51. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/configs/chunker.py +0 -0
  52. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/configs/embedder.py +0 -0
  53. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/configs/graph_db.py +0 -0
  54. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/configs/internet_retriever.py +0 -0
  55. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/configs/llm.py +0 -0
  56. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/configs/mem_agent.py +0 -0
  57. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/configs/mem_chat.py +0 -0
  58. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/configs/mem_cube.py +0 -0
  59. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/configs/mem_os.py +0 -0
  60. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/configs/mem_reader.py +0 -0
  61. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/configs/mem_scheduler.py +0 -0
  62. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/configs/mem_user.py +0 -0
  63. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/configs/memory.py +0 -0
  64. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/configs/parser.py +0 -0
  65. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/configs/reranker.py +0 -0
  66. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/configs/utils.py +0 -0
  67. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/configs/vec_db.py +0 -0
  68. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/context/context.py +0 -0
  69. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dependency.py +0 -0
  70. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/deprecation.py +0 -0
  71. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/__init__.py +0 -0
  72. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/contextualization.py +0 -0
  73. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/enrichment.py +0 -0
  74. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/hook_defs.py +0 -0
  75. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/hooks.py +0 -0
  76. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/maintenance.py +0 -0
  77. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/pipeline/__init__.py +0 -0
  78. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/pipeline/base.py +0 -0
  79. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/pipeline/diary.py +0 -0
  80. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/pipeline/motive.py +0 -0
  81. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/pipeline/persistence.py +0 -0
  82. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/pipeline/reasoning.py +0 -0
  83. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/pipeline/recall.py +0 -0
  84. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/plugin.py +0 -0
  85. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/prompts/__init__.py +0 -0
  86. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/prompts/context_binding_prompt.py +0 -0
  87. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/prompts/context_summary_prompt.py +0 -0
  88. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/prompts/motive_prompt.py +0 -0
  89. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/prompts/reasoning_prompt.py +0 -0
  90. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/routers/__init__.py +0 -0
  91. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/routers/diary_router.py +0 -0
  92. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/routers/trigger_router.py +0 -0
  93. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/routes.py +0 -0
  94. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/search.py +0 -0
  95. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/signal_store.py +0 -0
  96. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/dream/types.py +0 -0
  97. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/embedders/__init__.py +0 -0
  98. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/embedders/ark.py +0 -0
  99. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/embedders/base.py +0 -0
  100. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/embedders/factory.py +0 -0
  101. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/embedders/ollama.py +0 -0
  102. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/embedders/sentence_transformer.py +0 -0
  103. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/embedders/universal_api.py +0 -0
  104. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/exceptions.py +0 -0
  105. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/extras/__init__.py +0 -0
  106. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/graph_dbs/__init__.py +0 -0
  107. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/graph_dbs/base.py +0 -0
  108. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/graph_dbs/factory.py +0 -0
  109. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/graph_dbs/item.py +0 -0
  110. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/graph_dbs/neo4j.py +0 -0
  111. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/graph_dbs/neo4j_community.py +0 -0
  112. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/graph_dbs/polardb.py +0 -0
  113. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/graph_dbs/postgres.py +0 -0
  114. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/hello_world.py +0 -0
  115. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/llms/__init__.py +0 -0
  116. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/llms/base.py +0 -0
  117. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/llms/deepseek.py +0 -0
  118. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/llms/factory.py +0 -0
  119. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/llms/hf.py +0 -0
  120. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/llms/hf_singleton.py +0 -0
  121. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/llms/minimax.py +0 -0
  122. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/llms/ollama.py +0 -0
  123. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/llms/openai.py +0 -0
  124. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/llms/openai_new.py +0 -0
  125. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/llms/qwen.py +0 -0
  126. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/llms/utils.py +0 -0
  127. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/llms/vllm.py +0 -0
  128. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/log.py +0 -0
  129. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_agent/base.py +0 -0
  130. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_agent/deepsearch_agent.py +0 -0
  131. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_agent/factory.py +0 -0
  132. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_chat/__init__.py +0 -0
  133. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_chat/base.py +0 -0
  134. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_chat/factory.py +0 -0
  135. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_chat/simple.py +0 -0
  136. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_cube/__init__.py +0 -0
  137. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_cube/base.py +0 -0
  138. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_cube/general.py +0 -0
  139. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_cube/navie.py +0 -0
  140. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_cube/utils.py +0 -0
  141. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_feedback/base.py +0 -0
  142. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_feedback/feedback.py +0 -0
  143. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_feedback/simple_feedback.py +0 -0
  144. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_feedback/utils.py +0 -0
  145. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_os/core.py +0 -0
  146. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_os/main.py +0 -0
  147. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_os/utils/default_config.py +0 -0
  148. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_os/utils/format_utils.py +0 -0
  149. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_os/utils/reference_utils.py +0 -0
  150. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/__init__.py +0 -0
  151. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/base.py +0 -0
  152. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/factory.py +0 -0
  153. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/memory.py +0 -0
  154. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/multi_modal_struct.py +0 -0
  155. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/read_multi_modal/__init__.py +0 -0
  156. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/read_multi_modal/assistant_parser.py +0 -0
  157. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/read_multi_modal/base.py +0 -0
  158. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/read_multi_modal/file_content_parser.py +0 -0
  159. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/read_multi_modal/image_parser.py +0 -0
  160. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/read_multi_modal/multi_modal_parser.py +0 -0
  161. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/read_multi_modal/string_parser.py +0 -0
  162. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/read_multi_modal/system_parser.py +0 -0
  163. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/read_multi_modal/text_content_parser.py +0 -0
  164. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/read_multi_modal/tool_parser.py +0 -0
  165. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/read_multi_modal/user_parser.py +0 -0
  166. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/read_multi_modal/utils.py +0 -0
  167. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/read_pref_memory/process_preference_memory.py +0 -0
  168. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/read_skill_memory/process_skill_memory.py +0 -0
  169. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/read_skill_memory/upload_skill_memory.py +0 -0
  170. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/simple_struct.py +0 -0
  171. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/strategy_struct.py +0 -0
  172. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_reader/utils.py +0 -0
  173. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/__init__.py +0 -0
  174. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/analyzer/__init__.py +0 -0
  175. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/analyzer/api_analyzer.py +0 -0
  176. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/analyzer/eval_analyzer.py +0 -0
  177. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/analyzer/mos_for_test_scheduler.py +0 -0
  178. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/analyzer/scheduler_for_eval.py +0 -0
  179. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/base_mixins/__init__.py +0 -0
  180. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/base_mixins/memory_ops.py +0 -0
  181. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/base_mixins/queue_ops.py +0 -0
  182. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/base_mixins/web_log_ops.py +0 -0
  183. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/base_scheduler.py +0 -0
  184. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/general_modules/__init__.py +0 -0
  185. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/general_modules/api_misc.py +0 -0
  186. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/general_modules/base.py +0 -0
  187. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/general_modules/init_components_for_scheduler.py +0 -0
  188. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/general_modules/misc.py +0 -0
  189. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/general_modules/scheduler_logger.py +0 -0
  190. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/general_modules/task_threads.py +0 -0
  191. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/general_scheduler.py +0 -0
  192. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/memory_manage_modules/__init__.py +0 -0
  193. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/memory_manage_modules/activation_memory_manager.py +0 -0
  194. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/memory_manage_modules/enhancement_pipeline.py +0 -0
  195. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/memory_manage_modules/filter_pipeline.py +0 -0
  196. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/memory_manage_modules/memory_filter.py +0 -0
  197. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/memory_manage_modules/post_processor.py +0 -0
  198. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/memory_manage_modules/rerank_pipeline.py +0 -0
  199. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/memory_manage_modules/retriever.py +0 -0
  200. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/memory_manage_modules/search_pipeline.py +0 -0
  201. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/memory_manage_modules/search_service.py +0 -0
  202. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/monitors/__init__.py +0 -0
  203. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/monitors/dispatcher_monitor.py +0 -0
  204. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/monitors/general_monitor.py +0 -0
  205. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/monitors/task_schedule_monitor.py +0 -0
  206. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/optimized_scheduler.py +0 -0
  207. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/orm_modules/__init__.py +0 -0
  208. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/orm_modules/api_redis_model.py +0 -0
  209. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/orm_modules/base_model.py +0 -0
  210. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/orm_modules/monitor_models.py +0 -0
  211. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/orm_modules/redis_model.py +0 -0
  212. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/scheduler_factory.py +0 -0
  213. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/schemas/__init__.py +0 -0
  214. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/schemas/analyzer_schemas.py +0 -0
  215. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/schemas/api_schemas.py +0 -0
  216. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/schemas/general_schemas.py +0 -0
  217. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/schemas/message_schemas.py +0 -0
  218. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/schemas/monitor_schemas.py +0 -0
  219. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/schemas/task_schemas.py +0 -0
  220. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/task_schedule_modules/__init__.py +0 -0
  221. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/task_schedule_modules/base_handler.py +0 -0
  222. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/task_schedule_modules/context.py +0 -0
  223. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/task_schedule_modules/dispatcher.py +0 -0
  224. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/task_schedule_modules/handlers/__init__.py +0 -0
  225. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/task_schedule_modules/handlers/add_handler.py +0 -0
  226. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/task_schedule_modules/handlers/answer_handler.py +0 -0
  227. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/task_schedule_modules/handlers/feedback_handler.py +0 -0
  228. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/task_schedule_modules/handlers/mem_dream_handler.py +0 -0
  229. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/task_schedule_modules/handlers/mem_read_handler.py +0 -0
  230. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/task_schedule_modules/handlers/mem_reorganize_handler.py +0 -0
  231. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/task_schedule_modules/handlers/memory_update_handler.py +0 -0
  232. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/task_schedule_modules/handlers/pref_add_handler.py +0 -0
  233. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/task_schedule_modules/handlers/query_handler.py +0 -0
  234. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/task_schedule_modules/local_queue.py +0 -0
  235. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/task_schedule_modules/orchestrator.py +0 -0
  236. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/task_schedule_modules/redis_queue.py +0 -0
  237. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/task_schedule_modules/registry.py +0 -0
  238. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/task_schedule_modules/task_queue.py +0 -0
  239. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/utils/__init__.py +0 -0
  240. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/utils/api_utils.py +0 -0
  241. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/utils/config_utils.py +0 -0
  242. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/utils/db_utils.py +0 -0
  243. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/utils/filter_utils.py +0 -0
  244. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/utils/metrics.py +0 -0
  245. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/utils/misc_utils.py +0 -0
  246. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/utils/monitor_event_utils.py +0 -0
  247. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/utils/status_tracker.py +0 -0
  248. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/webservice_modules/__init__.py +0 -0
  249. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/webservice_modules/rabbitmq_service.py +0 -0
  250. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_scheduler/webservice_modules/redis_service.py +0 -0
  251. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_user/factory.py +0 -0
  252. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_user/mysql_persistent_user_manager.py +0 -0
  253. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_user/mysql_user_manager.py +0 -0
  254. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_user/persistent_factory.py +0 -0
  255. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_user/persistent_user_manager.py +0 -0
  256. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_user/redis_persistent_user_manager.py +0 -0
  257. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/mem_user/user_manager.py +0 -0
  258. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/__init__.py +0 -0
  259. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/activation/__init__.py +0 -0
  260. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/activation/base.py +0 -0
  261. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/activation/item.py +0 -0
  262. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/activation/kv.py +0 -0
  263. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/activation/vllmkv.py +0 -0
  264. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/base.py +0 -0
  265. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/factory.py +0 -0
  266. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/parametric/__init__.py +0 -0
  267. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/parametric/base.py +0 -0
  268. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/parametric/item.py +0 -0
  269. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/parametric/lora.py +0 -0
  270. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/__init__.py +0 -0
  271. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/base.py +0 -0
  272. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/general.py +0 -0
  273. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/item.py +0 -0
  274. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/naive.py +0 -0
  275. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/prefer_text_memory/__init__.py +0 -0
  276. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/prefer_text_memory/adder.py +0 -0
  277. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/prefer_text_memory/config.py +0 -0
  278. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/prefer_text_memory/extractor.py +0 -0
  279. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/prefer_text_memory/factory.py +0 -0
  280. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/prefer_text_memory/retrievers.py +0 -0
  281. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/prefer_text_memory/spliter.py +0 -0
  282. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/prefer_text_memory/utils.py +0 -0
  283. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/preference.py +0 -0
  284. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/simple_preference.py +0 -0
  285. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/simple_tree.py +0 -0
  286. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree.py +0 -0
  287. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/__init__.py +0 -0
  288. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/organize/__init__.py +0 -0
  289. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/organize/handler.py +0 -0
  290. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/organize/manager.py +0 -0
  291. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/organize/relation_reason_detector.py +0 -0
  292. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/organize/reorganizer.py +0 -0
  293. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/retrieve/__init__.py +0 -0
  294. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/retrieve/advanced_searcher.py +0 -0
  295. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/retrieve/bm25_util.py +0 -0
  296. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/retrieve/bochasearch.py +0 -0
  297. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/retrieve/internet_retriever.py +0 -0
  298. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/retrieve/internet_retriever_factory.py +0 -0
  299. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/retrieve/reasoner.py +0 -0
  300. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/retrieve/recall.py +0 -0
  301. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/retrieve/reranker.py +0 -0
  302. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/retrieve/retrieval_mid_structs.py +0 -0
  303. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/retrieve/retrieve_utils.py +0 -0
  304. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/retrieve/task_goal_parser.py +0 -0
  305. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/retrieve/tavilysearch.py +0 -0
  306. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/retrieve/utils.py +0 -0
  307. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memories/textual/tree_text_memory/retrieve/xinyusearch.py +0 -0
  308. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memos_tools/dinding_report_bot.py +0 -0
  309. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memos_tools/lockfree_dict.py +0 -0
  310. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memos_tools/notification_service.py +0 -0
  311. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memos_tools/notification_utils.py +0 -0
  312. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memos_tools/singleton.py +0 -0
  313. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memos_tools/thread_safe_dict.py +0 -0
  314. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/memos_tools/thread_safe_dict_segment.py +0 -0
  315. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/multi_mem_cube/__init__.py +0 -0
  316. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/multi_mem_cube/composite_cube.py +0 -0
  317. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/multi_mem_cube/single_cube.py +0 -0
  318. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/multi_mem_cube/views.py +0 -0
  319. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/parsers/__init__.py +0 -0
  320. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/parsers/base.py +0 -0
  321. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/parsers/factory.py +0 -0
  322. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/parsers/markitdown.py +0 -0
  323. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/plugins/__init__.py +0 -0
  324. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/plugins/base.py +0 -0
  325. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/plugins/component_bootstrap.py +0 -0
  326. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/plugins/hooks.py +0 -0
  327. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/plugins/manager.py +0 -0
  328. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/reranker/__init__.py +0 -0
  329. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/reranker/base.py +0 -0
  330. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/reranker/concat.py +0 -0
  331. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/reranker/cosine_local.py +0 -0
  332. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/reranker/factory.py +0 -0
  333. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/reranker/http_bge.py +0 -0
  334. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/reranker/http_bge_strategy.py +0 -0
  335. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/reranker/noop.py +0 -0
  336. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/reranker/strategies/__init__.py +0 -0
  337. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/reranker/strategies/base.py +0 -0
  338. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/reranker/strategies/concat_background.py +0 -0
  339. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/reranker/strategies/concat_docsource.py +0 -0
  340. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/reranker/strategies/dialogue_common.py +0 -0
  341. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/reranker/strategies/factory.py +0 -0
  342. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/reranker/strategies/single_turn.py +0 -0
  343. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/reranker/strategies/singleturn_outmem.py +0 -0
  344. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/search/__init__.py +0 -0
  345. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/settings.py +0 -0
  346. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/templates/__init__.py +0 -0
  347. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/templates/advanced_search_prompts.py +0 -0
  348. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/templates/cloud_service_prompt.py +0 -0
  349. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/templates/instruction_completion.py +0 -0
  350. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/templates/mem_agent_prompts.py +0 -0
  351. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/templates/mem_feedback_prompts.py +0 -0
  352. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/templates/mem_reader_prompts.py +0 -0
  353. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/templates/mem_reader_strategy_prompts.py +0 -0
  354. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/templates/mem_scheduler_prompts.py +0 -0
  355. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/templates/mem_search_prompts.py +0 -0
  356. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/templates/mos_prompts.py +0 -0
  357. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/templates/prefer_complete_prompt.py +0 -0
  358. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/templates/skill_mem_prompt.py +0 -0
  359. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/templates/tool_mem_prompts.py +0 -0
  360. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/templates/tree_reorganize_prompts.py +0 -0
  361. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/types/__init__.py +0 -0
  362. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/types/general_types.py +0 -0
  363. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/types/openai_chat_completion_types/__init__.py +0 -0
  364. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/types/openai_chat_completion_types/chat_completion_assistant_message_param.py +0 -0
  365. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/types/openai_chat_completion_types/chat_completion_content_part_image_param.py +0 -0
  366. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/types/openai_chat_completion_types/chat_completion_content_part_input_audio_param.py +0 -0
  367. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/types/openai_chat_completion_types/chat_completion_content_part_param.py +0 -0
  368. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/types/openai_chat_completion_types/chat_completion_content_part_refusal_param.py +0 -0
  369. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/types/openai_chat_completion_types/chat_completion_content_part_text_param.py +0 -0
  370. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/types/openai_chat_completion_types/chat_completion_message_custom_tool_call_param.py +0 -0
  371. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/types/openai_chat_completion_types/chat_completion_message_function_tool_call_param.py +0 -0
  372. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/types/openai_chat_completion_types/chat_completion_message_param.py +0 -0
  373. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/types/openai_chat_completion_types/chat_completion_message_tool_call_union_param.py +0 -0
  374. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/types/openai_chat_completion_types/chat_completion_system_message_param.py +0 -0
  375. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/types/openai_chat_completion_types/chat_completion_tool_message_param.py +0 -0
  376. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/types/openai_chat_completion_types/chat_completion_user_message_param.py +0 -0
  377. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/utils.py +0 -0
  378. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/vec_dbs/__init__.py +0 -0
  379. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/vec_dbs/base.py +0 -0
  380. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/vec_dbs/factory.py +0 -0
  381. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/vec_dbs/item.py +0 -0
  382. {memoryos-2.0.19 → memoryos-2.0.20}/src/memos/vec_dbs/milvus.py +0 -0
  383. {memoryos-2.0.19 → memoryos-2.0.20}/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.19
3
+ Version: 2.0.20
4
4
  Summary: Intelligence Begins with Memory
5
5
  License: Apache-2.0
6
6
  License-File: LICENSE
@@ -4,7 +4,7 @@
4
4
  ##############################################################################
5
5
 
6
6
  name = "MemoryOS"
7
- version = "2.0.19"
7
+ version = "2.0.20"
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.19"
1
+ __version__ = "2.0.20"
2
2
 
3
3
  from memos.configs.mem_cube import GeneralMemCubeConfig
4
4
  from memos.configs.mem_os import MOSConfig
@@ -13,6 +13,13 @@ from memos.templates.instruction_completion import instruct_completion
13
13
 
14
14
  logger = get_logger(__name__)
15
15
 
16
+ __all__ = [
17
+ "format_memory_item",
18
+ "post_process_textual_mem",
19
+ "rerank_knowledge_mem",
20
+ "to_iter",
21
+ ]
22
+
16
23
 
17
24
  def to_iter(running: Any) -> list[Any]:
18
25
  """
@@ -164,6 +171,7 @@ def rerank_knowledge_mem(
164
171
  text_mem: list[dict[str, Any]],
165
172
  top_k: int,
166
173
  file_mem_proportion: float = 0.5,
174
+ strip_conversation_sources: bool = False,
167
175
  ) -> list[dict[str, Any]]:
168
176
  """
169
177
  Rerank knowledge memories and keep conversation memories.
@@ -193,8 +201,9 @@ def rerank_knowledge_mem(
193
201
  item["memory"] = item["metadata"]["sources"][0]["content"]
194
202
  item["metadata"]["sources"] = []
195
203
 
196
- for item in conversation_mem:
197
- item.setdefault("metadata", {})["sources"] = []
204
+ if strip_conversation_sources:
205
+ for item in conversation_mem:
206
+ item.setdefault("metadata", {})["sources"] = []
198
207
 
199
208
  # deduplicate: remove items with duplicate memory content
200
209
  original_count = len(reranked_knowledge_mem)
@@ -118,6 +118,23 @@ class SearchHandler(BaseHandler):
118
118
  top_k=search_req_local.top_k,
119
119
  file_mem_proportion=0.5,
120
120
  )
121
+ hooked_results = trigger_hook(
122
+ H.SEARCH_RESULTS_AFTER_RERANK,
123
+ handler=self,
124
+ search_req=search_req_local,
125
+ results=results,
126
+ )
127
+ if hooked_results is not None:
128
+ results = hooked_results
129
+
130
+ hooked_results = trigger_hook(
131
+ H.SEARCH_CONTEXT_RENDER,
132
+ handler=self,
133
+ search_req=search_req_local,
134
+ results=results,
135
+ )
136
+ if hooked_results is not None:
137
+ results = hooked_results
121
138
 
122
139
  self.logger.info(
123
140
  f"[SearchHandler] Final search results: count={len(results)} results={results}"
@@ -422,6 +422,14 @@ class APISearchRequest(BaseRequest):
422
422
  ),
423
423
  )
424
424
 
425
+ rerank: bool = Field(
426
+ True,
427
+ description=(
428
+ "Whether to apply the textual memory reranker during search. "
429
+ "Set false to return retrieval-order candidates before post-search dedup/formatting."
430
+ ),
431
+ )
432
+
425
433
  pref_top_k: int = Field(
426
434
  6,
427
435
  ge=0,
@@ -464,6 +472,11 @@ class APISearchRequest(BaseRequest):
464
472
  description="Number of skill memories to retrieve (top-K). Default: 3.",
465
473
  )
466
474
 
475
+ context_format: str = Field(
476
+ "memory",
477
+ description="Optional search context format passed through to installed plugins.",
478
+ )
479
+
467
480
  # ==== Filter conditions ====
468
481
  # TODO: maybe add detailed description later
469
482
  filter: dict[str, Any] | None = Field(
@@ -77,6 +77,30 @@ class Searcher:
77
77
  self.tokenizer = tokenizer
78
78
  self._usage_executor = ContextThreadPoolExecutor(max_workers=4, thread_name_prefix="usage")
79
79
 
80
+ def _maybe_rerank(
81
+ self,
82
+ enabled: bool,
83
+ *,
84
+ query: str,
85
+ graph_results: list[TextualMemoryItem],
86
+ top_k: int,
87
+ **kwargs,
88
+ ) -> list[tuple[TextualMemoryItem, float]]:
89
+ if not enabled or self.reranker is None:
90
+ return [(item, 0.0) for item in graph_results[:top_k]]
91
+ return self.reranker.rerank(
92
+ query=query,
93
+ graph_results=graph_results,
94
+ top_k=top_k,
95
+ **kwargs,
96
+ )
97
+
98
+ @staticmethod
99
+ def _query_embedding_for_rerank(enabled: bool, query_embedding):
100
+ if not enabled:
101
+ return None
102
+ return query_embedding[0]
103
+
80
104
  @timed
81
105
  def retrieve(
82
106
  self,
@@ -99,6 +123,7 @@ class Searcher:
99
123
  logger.info(
100
124
  f"[RECALL] Start query='{query}', top_k={top_k}, mode={mode}, memory_type={memory_type}, user_name={user_name}"
101
125
  )
126
+ rerank = bool(kwargs.get("rerank", True))
102
127
  parsed_goal, query_embedding, _context, query = self._parse_task(
103
128
  query,
104
129
  info,
@@ -125,6 +150,7 @@ class Searcher:
125
150
  skill_mem_top_k,
126
151
  include_preference_memory,
127
152
  pref_mem_top_k,
153
+ rerank,
128
154
  )
129
155
  return results
130
156
 
@@ -350,6 +376,7 @@ class Searcher:
350
376
  skill_mem_top_k: int = 3,
351
377
  include_preference_memory: bool = False,
352
378
  pref_mem_top_k: int = 6,
379
+ rerank: bool = True,
353
380
  ):
354
381
  """Run A/B/C/D/E/F retrieval paths in parallel"""
355
382
  tasks = []
@@ -372,6 +399,7 @@ class Searcher:
372
399
  search_priority,
373
400
  user_name,
374
401
  id_filter,
402
+ rerank=rerank,
375
403
  )
376
404
  )
377
405
  tasks.append(
@@ -387,6 +415,7 @@ class Searcher:
387
415
  user_name,
388
416
  id_filter,
389
417
  mode=mode,
418
+ rerank=rerank,
390
419
  )
391
420
  )
392
421
  tasks.append(
@@ -400,6 +429,7 @@ class Searcher:
400
429
  mode,
401
430
  memory_type,
402
431
  user_name,
432
+ rerank=rerank,
403
433
  )
404
434
  )
405
435
  if self.use_fulltext:
@@ -415,6 +445,7 @@ class Searcher:
415
445
  search_priority,
416
446
  user_name,
417
447
  id_filter,
448
+ rerank=rerank,
418
449
  )
419
450
  )
420
451
  if search_tool_memory:
@@ -431,6 +462,7 @@ class Searcher:
431
462
  user_name,
432
463
  id_filter,
433
464
  mode=mode,
465
+ rerank=rerank,
434
466
  )
435
467
  )
436
468
  if include_skill_memory:
@@ -447,6 +479,7 @@ class Searcher:
447
479
  user_name,
448
480
  id_filter,
449
481
  mode=mode,
482
+ rerank=rerank,
450
483
  )
451
484
  )
452
485
  if include_preference_memory:
@@ -463,6 +496,7 @@ class Searcher:
463
496
  user_name,
464
497
  id_filter,
465
498
  mode=mode,
499
+ rerank=rerank,
466
500
  )
467
501
  )
468
502
  results = []
@@ -485,6 +519,7 @@ class Searcher:
485
519
  search_priority: dict | None = None,
486
520
  user_name: str | None = None,
487
521
  id_filter: dict | None = None,
522
+ rerank: bool = True,
488
523
  ):
489
524
  """Retrieve and rerank from WorkingMemory"""
490
525
  if memory_type not in ["All", "WorkingMemory"]:
@@ -501,9 +536,10 @@ class Searcher:
501
536
  id_filter=id_filter,
502
537
  use_fast_graph=self.use_fast_graph,
503
538
  )
504
- return self.reranker.rerank(
539
+ return self._maybe_rerank(
540
+ rerank,
505
541
  query=query,
506
- query_embedding=query_embedding[0],
542
+ query_embedding=self._query_embedding_for_rerank(rerank, query_embedding),
507
543
  graph_results=items,
508
544
  top_k=top_k,
509
545
  parsed_goal=parsed_goal,
@@ -613,6 +649,7 @@ class Searcher:
613
649
  search_priority: dict | None = None,
614
650
  user_name: str | None = None,
615
651
  id_filter: dict | None = None,
652
+ rerank: bool = True,
616
653
  ) -> list[tuple[TextualMemoryItem, float]]:
617
654
  """Keyword/fulltext path that directly calls graph DB fulltext search."""
618
655
 
@@ -687,9 +724,10 @@ class Searcher:
687
724
  ordered_nodes.append(node)
688
725
 
689
726
  results = [TextualMemoryItem.from_dict(n) for n in ordered_nodes]
690
- return self.reranker.rerank(
727
+ return self._maybe_rerank(
728
+ rerank,
691
729
  query=query,
692
- query_embedding=query_embedding[0],
730
+ query_embedding=self._query_embedding_for_rerank(rerank, query_embedding),
693
731
  graph_results=results,
694
732
  top_k=top_k,
695
733
  parsed_goal=parsed_goal,
@@ -710,6 +748,7 @@ class Searcher:
710
748
  user_name: str | None = None,
711
749
  id_filter: dict | None = None,
712
750
  mode: str = "fast",
751
+ rerank: bool = True,
713
752
  ):
714
753
  """Retrieve and rerank from LongTermMemory and UserMemory"""
715
754
  results = []
@@ -781,9 +820,10 @@ class Searcher:
781
820
  results = self._deduplicate_rawfile_results(results, user_name=user_name)
782
821
  results = self._filter_intermediate_content(results)
783
822
 
784
- return self.reranker.rerank(
823
+ return self._maybe_rerank(
824
+ rerank,
785
825
  query=query,
786
- query_embedding=query_embedding[0],
826
+ query_embedding=self._query_embedding_for_rerank(rerank, query_embedding),
787
827
  graph_results=results,
788
828
  top_k=top_k,
789
829
  parsed_goal=parsed_goal,
@@ -792,7 +832,13 @@ class Searcher:
792
832
 
793
833
  @timed
794
834
  def _retrieve_from_memcubes(
795
- self, query, parsed_goal, query_embedding, top_k, cube_name="memos_cube01"
835
+ self,
836
+ query,
837
+ parsed_goal,
838
+ query_embedding,
839
+ top_k,
840
+ cube_name="memos_cube01",
841
+ rerank: bool = True,
796
842
  ):
797
843
  """Retrieve and rerank from LongTermMemory and UserMemory"""
798
844
  results = self.graph_retriever.retrieve_from_cube(
@@ -802,9 +848,10 @@ class Searcher:
802
848
  cube_name=cube_name,
803
849
  user_name=cube_name,
804
850
  )
805
- return self.reranker.rerank(
851
+ return self._maybe_rerank(
852
+ rerank,
806
853
  query=query,
807
- query_embedding=query_embedding[0],
854
+ query_embedding=self._query_embedding_for_rerank(rerank, query_embedding),
808
855
  graph_results=results,
809
856
  top_k=top_k,
810
857
  parsed_goal=parsed_goal,
@@ -822,6 +869,7 @@ class Searcher:
822
869
  mode,
823
870
  memory_type,
824
871
  user_id: str | None = None,
872
+ rerank: bool = True,
825
873
  ):
826
874
  """Retrieve and rerank from Internet source"""
827
875
  if not self.internet_retriever:
@@ -838,9 +886,10 @@ class Searcher:
838
886
  query=query, top_k=2 * top_k, parsed_goal=parsed_goal, info=info, mode=mode
839
887
  )
840
888
  logger.info(f"[PATH-C] '{query}' Retrieved from internet {len(items)} items: {items}")
841
- return self.reranker.rerank(
889
+ return self._maybe_rerank(
890
+ rerank,
842
891
  query=query,
843
- query_embedding=query_embedding[0],
892
+ query_embedding=self._query_embedding_for_rerank(rerank, query_embedding),
844
893
  graph_results=items,
845
894
  top_k=top_k,
846
895
  parsed_goal=parsed_goal,
@@ -860,6 +909,7 @@ class Searcher:
860
909
  user_name: str | None = None,
861
910
  id_filter: dict | None = None,
862
911
  mode: str = "fast",
912
+ rerank: bool = True,
863
913
  ):
864
914
  """Retrieve and rerank from ToolMemory"""
865
915
  results = {
@@ -920,17 +970,19 @@ class Searcher:
920
970
  elif rsp and rsp[0].metadata.memory_type == "ToolTrajectoryMemory":
921
971
  results["ToolTrajectoryMemory"].extend(rsp)
922
972
 
923
- schema_reranked = self.reranker.rerank(
973
+ schema_reranked = self._maybe_rerank(
974
+ rerank,
924
975
  query=query,
925
- query_embedding=query_embedding[0],
976
+ query_embedding=self._query_embedding_for_rerank(rerank, query_embedding),
926
977
  graph_results=results["ToolSchemaMemory"],
927
978
  top_k=top_k,
928
979
  parsed_goal=parsed_goal,
929
980
  search_filter=search_filter,
930
981
  )
931
- trajectory_reranked = self.reranker.rerank(
982
+ trajectory_reranked = self._maybe_rerank(
983
+ rerank,
932
984
  query=query,
933
- query_embedding=query_embedding[0],
985
+ query_embedding=self._query_embedding_for_rerank(rerank, query_embedding),
934
986
  graph_results=results["ToolTrajectoryMemory"],
935
987
  top_k=top_k,
936
988
  parsed_goal=parsed_goal,
@@ -952,6 +1004,7 @@ class Searcher:
952
1004
  user_name: str | None = None,
953
1005
  id_filter: dict | None = None,
954
1006
  mode: str = "fast",
1007
+ rerank: bool = True,
955
1008
  ):
956
1009
  """Retrieve and rerank from SkillMemory"""
957
1010
 
@@ -982,9 +1035,10 @@ class Searcher:
982
1035
  use_fast_graph=self.use_fast_graph,
983
1036
  )
984
1037
 
985
- return self.reranker.rerank(
1038
+ return self._maybe_rerank(
1039
+ rerank,
986
1040
  query=query,
987
- query_embedding=query_embedding[0],
1041
+ query_embedding=self._query_embedding_for_rerank(rerank, query_embedding),
988
1042
  graph_results=items,
989
1043
  top_k=top_k,
990
1044
  parsed_goal=parsed_goal,
@@ -1004,6 +1058,7 @@ class Searcher:
1004
1058
  user_name: str | None = None,
1005
1059
  id_filter: dict | None = None,
1006
1060
  mode: str = "fast",
1061
+ rerank: bool = True,
1007
1062
  ):
1008
1063
  """Retrieve and rerank from PreferenceMemory"""
1009
1064
  if memory_type not in ["All", "PreferenceMemory"]:
@@ -1033,9 +1088,10 @@ class Searcher:
1033
1088
  use_fast_graph=self.use_fast_graph,
1034
1089
  )
1035
1090
 
1036
- return self.reranker.rerank(
1091
+ return self._maybe_rerank(
1092
+ rerank,
1037
1093
  query=query,
1038
- query_embedding=query_embedding[0],
1094
+ query_embedding=self._query_embedding_for_rerank(rerank, query_embedding),
1039
1095
  graph_results=items,
1040
1096
  top_k=top_k,
1041
1097
  parsed_goal=parsed_goal,
@@ -1086,9 +1142,11 @@ class Searcher:
1086
1142
  logger.info(
1087
1143
  f"[SIMPLESEARCH] after unrelated subgroup selection items count: {len(selected_items)}"
1088
1144
  )
1089
- return self.reranker.rerank(
1145
+ rerank = bool(kwargs.get("rerank", True))
1146
+ return self._maybe_rerank(
1147
+ rerank,
1090
1148
  query=query,
1091
- query_embedding=query_embeddings[0],
1149
+ query_embedding=self._query_embedding_for_rerank(rerank, query_embeddings),
1092
1150
  graph_results=selected_items,
1093
1151
  top_k=top_k,
1094
1152
  )