diff --git a/mem0/configs/vector_stores/qdrant.py b/mem0/configs/vector_stores/qdrant.py index 556b45ed0f..87ef0e6f47 100644 --- a/mem0/configs/vector_stores/qdrant.py +++ b/mem0/configs/vector_stores/qdrant.py @@ -35,12 +35,13 @@ def check_host_port_or_path(cls, values: Dict[str, Any]) -> Dict[str, Any]: @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 + # Use frozenset for allowed_fields to eliminate unnecessary dictionary lookup + allowed_fields = frozenset(cls.model_fields) + # Use keys() directly since it's already a set-like view in CPython + extra_fields = set(values) - allowed_fields if extra_fields: raise ValueError( - f"Extra fields not allowed: {', '.join(extra_fields)}. Please input only the following fields: {', '.join(allowed_fields)}" + f"Extra fields not allowed: {', '.join(sorted(extra_fields))}. Please input only the following fields: {', '.join(sorted(allowed_fields))}" ) return values