@@ -300,7 +300,6 @@ def get_start_default_config() -> dict[str, Any]:
300300 def create_user_config (user_name : str , user_id : str ) -> tuple [MOSConfig , GeneralMemCube ]:
301301 """Create configuration for a specific user."""
302302 openai_config = APIConfig .get_openai_config ()
303-
304303 qwen_config = APIConfig .qwen_config ()
305304 vllm_config = APIConfig .vllm_config ()
306305 backend = os .getenv ("MOS_CHAT_MODEL_PROVIDER" , "openai" )
@@ -351,8 +350,15 @@ def create_user_config(user_name: str, user_id: str) -> tuple[MOSConfig, General
351350
352351 default_config = MOSConfig (** config_dict )
353352
354- if os .getenv ("NEO4J_BACKEND" , "neo4j_community" ).lower () == "neo4j_community" :
355- neo4j_community_config = APIConfig .get_neo4j_community_config (user_id )
353+ neo4j_community_config = APIConfig .get_neo4j_community_config (user_id )
354+ neo4j_config = APIConfig .get_neo4j_config (user_id )
355+
356+ graph_db_backend_map = {
357+ "neo4j-community" : neo4j_community_config ,
358+ "neo4j" : neo4j_config ,
359+ }
360+ graph_db_backend = os .getenv ("NEO4J_BACKEND" , "neo4j-community" ).lower ()
361+ if graph_db_backend in graph_db_backend_map :
356362 # Create MemCube config
357363 default_cube_config = GeneralMemCubeConfig .model_validate (
358364 {
@@ -364,8 +370,8 @@ def create_user_config(user_name: str, user_id: str) -> tuple[MOSConfig, General
364370 "extractor_llm" : {"backend" : "openai" , "config" : openai_config },
365371 "dispatcher_llm" : {"backend" : "openai" , "config" : openai_config },
366372 "graph_db" : {
367- "backend" : "neo4j-community" ,
368- "config" : neo4j_community_config ,
373+ "backend" : graph_db_backend ,
374+ "config" : graph_db_backend_map [ graph_db_backend ] ,
369375 },
370376 "embedder" : APIConfig .get_embedder_config (),
371377 },
@@ -377,30 +383,7 @@ def create_user_config(user_name: str, user_id: str) -> tuple[MOSConfig, General
377383 }
378384 )
379385 else :
380- neo4j_config = APIConfig .get_neo4j_config (user_id )
381- # Create MemCube config
382- default_cube_config = GeneralMemCubeConfig .model_validate (
383- {
384- "user_id" : user_id ,
385- "cube_id" : f"{ user_name } _default_cube" ,
386- "text_mem" : {
387- "backend" : "tree_text" ,
388- "config" : {
389- "extractor_llm" : {"backend" : "openai" , "config" : openai_config },
390- "dispatcher_llm" : {"backend" : "openai" , "config" : openai_config },
391- "graph_db" : {
392- "backend" : "neo4j" ,
393- "config" : neo4j_config ,
394- },
395- "embedder" : APIConfig .get_embedder_config (),
396- },
397- },
398- "act_mem" : {}
399- if os .getenv ("ENABLE_ACTIVATION_MEMORY" , "false" ).lower () == "false"
400- else APIConfig .get_activation_vllm_config (),
401- "para_mem" : {},
402- }
403- )
386+ raise ValueError (f"Invalid Neo4j backend: { graph_db_backend } " )
404387
405388 default_mem_cube = GeneralMemCube (default_cube_config )
406389 return default_config , default_mem_cube
@@ -416,9 +399,14 @@ def get_default_cube_config() -> GeneralMemCubeConfig | None:
416399 return None
417400
418401 openai_config = APIConfig .get_openai_config ()
419-
420- if os .getenv ("NEO4J_BACKEND" , "neo4j_community" ).lower () == "neo4j_community" :
421- neo4j_community_config = APIConfig .get_neo4j_community_config (user_id = "default" )
402+ neo4j_community_config = APIConfig .get_neo4j_community_config (user_id = "default" )
403+ neo4j_config = APIConfig .get_neo4j_config (user_id = "default" )
404+ graph_db_backend_map = {
405+ "neo4j-community" : neo4j_community_config ,
406+ "neo4j" : neo4j_config ,
407+ }
408+ graph_db_backend = os .getenv ("NEO4J_BACKEND" , "neo4j-community" ).lower ()
409+ if graph_db_backend in graph_db_backend_map :
422410 return GeneralMemCubeConfig .model_validate (
423411 {
424412 "user_id" : "default" ,
@@ -429,8 +417,8 @@ def get_default_cube_config() -> GeneralMemCubeConfig | None:
429417 "extractor_llm" : {"backend" : "openai" , "config" : openai_config },
430418 "dispatcher_llm" : {"backend" : "openai" , "config" : openai_config },
431419 "graph_db" : {
432- "backend" : "neo4j-community" ,
433- "config" : neo4j_community_config ,
420+ "backend" : graph_db_backend ,
421+ "config" : graph_db_backend_map [ graph_db_backend ] ,
434422 },
435423 "embedder" : APIConfig .get_embedder_config (),
436424 "reorganize" : os .getenv ("MOS_ENABLE_REORGANIZE" , "false" ).lower ()
@@ -444,28 +432,4 @@ def get_default_cube_config() -> GeneralMemCubeConfig | None:
444432 }
445433 )
446434 else :
447- neo4j_config = APIConfig .get_neo4j_config (user_id = "default" )
448- return GeneralMemCubeConfig .model_validate (
449- {
450- "user_id" : "default" ,
451- "cube_id" : "default_cube" ,
452- "text_mem" : {
453- "backend" : "tree_text" ,
454- "config" : {
455- "extractor_llm" : {"backend" : "openai" , "config" : openai_config },
456- "dispatcher_llm" : {"backend" : "openai" , "config" : openai_config },
457- "graph_db" : {
458- "backend" : "neo4j" ,
459- "config" : neo4j_config ,
460- },
461- "embedder" : APIConfig .get_embedder_config (),
462- "reorganize" : os .getenv ("MOS_ENABLE_REORGANIZE" , "false" ).lower ()
463- == "true" ,
464- },
465- },
466- "act_mem" : {}
467- if os .getenv ("ENABLE_ACTIVATION_MEMORY" , "false" ).lower () == "false"
468- else APIConfig .get_activation_vllm_config (),
469- "para_mem" : {},
470- }
471- )
435+ raise ValueError (f"Invalid Neo4j backend: { graph_db_backend } " )
0 commit comments