diff --git a/mem0/configs/vector_stores/redis.py b/mem0/configs/vector_stores/redis.py index 6ae3a56f7..485833dad 100644 --- a/mem0/configs/vector_stores/redis.py +++ b/mem0/configs/vector_stores/redis.py @@ -1,24 +1,9 @@ -from typing import Any, Dict - -from pydantic import BaseModel, ConfigDict, Field, model_validator +from pydantic import BaseModel, ConfigDict, Field -# TODO: Upgrade to latest pydantic version class RedisDBConfig(BaseModel): + model_config = ConfigDict(extra="forbid", arbitrary_types_allowed=True) + redis_url: str = Field(..., description="Redis URL") collection_name: str = Field("mem0", description="Collection name") embedding_model_dims: int = Field(1536, description="Embedding model dimensions") - - @model_validator(mode="before") - @classmethod - def validate_extra_fields(cls, values: Dict[str, Any]) -> Dict[str, Any]: - allowed_fields = set(cls.model_fields.keys()) - input_fields = set(values.keys()) - extra_fields = input_fields - allowed_fields - if extra_fields: - raise ValueError( - f"Extra fields not allowed: {', '.join(extra_fields)}. Please input only the following fields: {', '.join(allowed_fields)}" - ) - return values - - model_config = ConfigDict(arbitrary_types_allowed=True)