Neo4j embeddings error (#2377)
This commit is contained in:
@@ -6,7 +6,7 @@ from typing import Any, Dict, List, Optional, Union
|
|||||||
|
|
||||||
import httpx
|
import httpx
|
||||||
|
|
||||||
from mem0.memory.setup import setup_config, get_user_id
|
from mem0.memory.setup import get_user_id, setup_config
|
||||||
from mem0.memory.telemetry import capture_client_event
|
from mem0.memory.telemetry import capture_client_event
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
@@ -110,7 +110,7 @@ class MemoryClient:
|
|||||||
try:
|
try:
|
||||||
error_data = e.response.json()
|
error_data = e.response.json()
|
||||||
error_message = error_data.get("detail", str(e))
|
error_message = error_data.get("detail", str(e))
|
||||||
except:
|
except Exception:
|
||||||
error_message = str(e)
|
error_message = str(e)
|
||||||
raise ValueError(f"Error: {error_message}")
|
raise ValueError(f"Error: {error_message}")
|
||||||
|
|
||||||
|
|||||||
@@ -16,12 +16,8 @@ from mem0.memory.base import MemoryBase
|
|||||||
from mem0.memory.setup import setup_config
|
from mem0.memory.setup import setup_config
|
||||||
from mem0.memory.storage import SQLiteManager
|
from mem0.memory.storage import SQLiteManager
|
||||||
from mem0.memory.telemetry import capture_event
|
from mem0.memory.telemetry import capture_event
|
||||||
from mem0.memory.utils import (
|
from mem0.memory.utils import (get_fact_retrieval_messages, parse_messages,
|
||||||
get_fact_retrieval_messages,
|
parse_vision_messages, remove_code_blocks)
|
||||||
parse_messages,
|
|
||||||
parse_vision_messages,
|
|
||||||
remove_code_blocks,
|
|
||||||
)
|
|
||||||
from mem0.utils.factory import EmbedderFactory, LlmFactory, VectorStoreFactory
|
from mem0.utils.factory import EmbedderFactory, LlmFactory, VectorStoreFactory
|
||||||
|
|
||||||
# Setup user config
|
# Setup user config
|
||||||
@@ -57,12 +53,27 @@ class Memory(MemoryBase):
|
|||||||
@classmethod
|
@classmethod
|
||||||
def from_config(cls, config_dict: Dict[str, Any]):
|
def from_config(cls, config_dict: Dict[str, Any]):
|
||||||
try:
|
try:
|
||||||
|
config = cls._process_config(config_dict)
|
||||||
config = MemoryConfig(**config_dict)
|
config = MemoryConfig(**config_dict)
|
||||||
except ValidationError as e:
|
except ValidationError as e:
|
||||||
logger.error(f"Configuration validation error: {e}")
|
logger.error(f"Configuration validation error: {e}")
|
||||||
raise
|
raise
|
||||||
return cls(config)
|
return cls(config)
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def _process_config(config_dict: Dict[str, Any]) -> Dict[str, Any]:
|
||||||
|
if "graph_store" in config_dict:
|
||||||
|
if "vector_store" not in config_dict and "embedder" in config_dict:
|
||||||
|
config_dict["vector_store"] = {}
|
||||||
|
config_dict["vector_store"]["config"] = {}
|
||||||
|
config_dict["vector_store"]["config"]["embedding_model_dims"] = config_dict["embedder"]["config"]["embedding_dims"]
|
||||||
|
try:
|
||||||
|
return config_dict
|
||||||
|
except ValidationError as e:
|
||||||
|
logger.error(f"Configuration validation error: {e}")
|
||||||
|
raise
|
||||||
|
|
||||||
|
|
||||||
def add(
|
def add(
|
||||||
self,
|
self,
|
||||||
messages,
|
messages,
|
||||||
@@ -305,16 +316,7 @@ class Memory(MemoryBase):
|
|||||||
).model_dump(exclude={"score"})
|
).model_dump(exclude={"score"})
|
||||||
|
|
||||||
# Add metadata if there are additional keys
|
# Add metadata if there are additional keys
|
||||||
excluded_keys = {
|
excluded_keys = {"user_id", "agent_id", "run_id", "hash", "data", "created_at", "updated_at", "id"}
|
||||||
"user_id",
|
|
||||||
"agent_id",
|
|
||||||
"run_id",
|
|
||||||
"hash",
|
|
||||||
"data",
|
|
||||||
"created_at",
|
|
||||||
"updated_at",
|
|
||||||
"id"
|
|
||||||
}
|
|
||||||
additional_metadata = {k: v for k, v in memory.payload.items() if k not in excluded_keys}
|
additional_metadata = {k: v for k, v in memory.payload.items() if k not in excluded_keys}
|
||||||
if additional_metadata:
|
if additional_metadata:
|
||||||
memory_item["metadata"] = additional_metadata
|
memory_item["metadata"] = additional_metadata
|
||||||
@@ -658,4 +660,4 @@ class Memory(MemoryBase):
|
|||||||
capture_event("mem0.reset", self)
|
capture_event("mem0.reset", self)
|
||||||
|
|
||||||
def chat(self, query):
|
def chat(self, query):
|
||||||
raise NotImplementedError("Chat function not implemented yet.")
|
raise NotImplementedError("Chat function not implemented yet.")
|
||||||
|
|||||||
Reference in New Issue
Block a user