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