Skip to content

Commit e8346fc

Browse files
authored
Feat: add neo4j db for user_name (#365)
* feat: add server api prd * feat: update memcube for api * feat: add run server api md and change user_id to user_id * fix: code format * fix:code * fix: fix code format * feat: remove ids * fix: working ids * feat: add_memreader config and change neo4j db user_name
1 parent 675eeca commit e8346fc

File tree

4 files changed

+167
-92
lines changed

4 files changed

+167
-92
lines changed

src/memos/api/config.py

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,24 @@ def get_activation_config() -> dict[str, Any]:
7676
},
7777
}
7878

79+
@staticmethod
80+
def get_memreader_config() -> dict[str, Any]:
81+
"""Get MemReader configuration."""
82+
return {
83+
"backend": "openai",
84+
"config": {
85+
"model_name_or_path": os.getenv("MEMRADER_MODEL", "gpt-4o-mini"),
86+
"temperature": 0.6,
87+
"max_tokens": int(os.getenv("MEMRADER_MAX_TOKENS", "5000")),
88+
"top_p": 0.95,
89+
"top_k": 20,
90+
"api_key": os.getenv("MEMRADER_API_KEY", "EMPTY"),
91+
"api_base": os.getenv("MEMRADER_API_BASE"),
92+
"remove_think_prefix": True,
93+
"extra_body": {"chat_template_kwargs": {"enable_thinking": False}},
94+
},
95+
}
96+
7997
@staticmethod
8098
def get_activation_vllm_config() -> dict[str, Any]:
8199
"""Get Ollama configuration."""
@@ -351,10 +369,7 @@ def get_product_default_config() -> dict[str, Any]:
351369
"mem_reader": {
352370
"backend": "simple_struct",
353371
"config": {
354-
"llm": {
355-
"backend": "openai",
356-
"config": openai_config,
357-
},
372+
"llm": APIConfig.get_memreader_config(),
358373
"embedder": APIConfig.get_embedder_config(),
359374
"chunker": {
360375
"backend": "sentence",
@@ -447,10 +462,7 @@ def create_user_config(user_name: str, user_id: str) -> tuple[MOSConfig, General
447462
"mem_reader": {
448463
"backend": "simple_struct",
449464
"config": {
450-
"llm": {
451-
"backend": "openai",
452-
"config": openai_config,
453-
},
465+
"llm": APIConfig.get_memreader_config(),
454466
"embedder": APIConfig.get_embedder_config(),
455467
"chunker": {
456468
"backend": "sentence",

src/memos/graph_dbs/nebular.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -432,7 +432,7 @@ def remove_oldest_memory(
432432

433433
optional_condition = f"AND n.user_name = '{user_name}'"
434434
query = f"""
435-
MATCH (n@Memory)
435+
MATCH (n@Memory /*+ INDEX(idx_memory_user_name) */)
436436
WHERE n.memory_type = '{memory_type}'
437437
{optional_condition}
438438
ORDER BY n.updated_at DESC
@@ -1158,7 +1158,7 @@ def get_grouped_counts(
11581158
group_by_fields.append(alias)
11591159
# Full GQL query construction
11601160
gql = f"""
1161-
MATCH (n)
1161+
MATCH (n /*+ INDEX(idx_memory_user_name) */)
11621162
{where_clause}
11631163
RETURN {", ".join(return_fields)}, COUNT(n) AS count
11641164
GROUP BY {", ".join(group_by_fields)}

0 commit comments

Comments
 (0)