fix: Use ConfigDict instead of class-based Config (#3409)

Signed-off-by: Gabe Goodhart <ghart@us.ibm.com>
This commit is contained in:
Gabe Goodhart
2025-09-04 20:18:25 +05:30
committed by GitHub
parent f0e8c3f760
commit b27879bfd4
16 changed files with 32 additions and 61 deletions
+2 -4
View File
@@ -3,7 +3,7 @@ from abc import ABC, abstractmethod
from typing import Any, Dict, List, Optional
import httpx
from pydantic import BaseModel, Field
from pydantic import BaseModel, ConfigDict, Field
from mem0.client.utils import api_error_handler
from mem0.memory.telemetry import capture_client_event
@@ -20,9 +20,7 @@ class ProjectConfig(BaseModel):
project_id: Optional[str] = Field(default=None, description="Project ID")
user_email: Optional[str] = Field(default=None, description="User email")
class Config:
validate_assignment = True
extra = "forbid"
model_config = ConfigDict(validate_assignment=True, extra="forbid")
class BaseProject(ABC):
@@ -1,6 +1,6 @@
from typing import Any, Dict, Optional
from pydantic import BaseModel, Field, model_validator
from pydantic import BaseModel, ConfigDict, Field, model_validator
class AzureAISearchConfig(BaseModel):
@@ -54,6 +54,4 @@ class AzureAISearchConfig(BaseModel):
return values
model_config = {
"arbitrary_types_allowed": True,
}
model_config = ConfigDict(arbitrary_types_allowed=True)
+2 -4
View File
@@ -1,6 +1,6 @@
from typing import Any, Dict
from pydantic import BaseModel, Field, model_validator
from pydantic import BaseModel, ConfigDict, Field, model_validator
class BaiduDBConfig(BaseModel):
@@ -24,6 +24,4 @@ class BaiduDBConfig(BaseModel):
)
return values
model_config = {
"arbitrary_types_allowed": True,
}
model_config = ConfigDict(arbitrary_types_allowed=True)
+2 -4
View File
@@ -1,6 +1,6 @@
from typing import Any, ClassVar, Dict, Optional
from pydantic import BaseModel, Field, model_validator
from pydantic import BaseModel, ConfigDict, Field, model_validator
class ChromaDbConfig(BaseModel):
@@ -35,6 +35,4 @@ class ChromaDbConfig(BaseModel):
)
return values
model_config = {
"arbitrary_types_allowed": True,
}
model_config = ConfigDict(arbitrary_types_allowed=True)
+2 -4
View File
@@ -1,6 +1,6 @@
from typing import Any, Dict, Optional
from pydantic import BaseModel, Field, model_validator
from pydantic import BaseModel, ConfigDict, Field, model_validator
from databricks.sdk.service.vectorsearch import EndpointType, VectorIndexType, PipelineType
@@ -58,6 +58,4 @@ class DatabricksConfig(BaseModel):
return self
model_config = {
"arbitrary_types_allowed": True,
}
model_config = ConfigDict(arbitrary_types_allowed=True)
+2 -4
View File
@@ -1,6 +1,6 @@
from typing import Any, Dict, Optional
from pydantic import BaseModel, Field, model_validator
from pydantic import BaseModel, ConfigDict, Field, model_validator
class FAISSConfig(BaseModel):
@@ -34,6 +34,4 @@ class FAISSConfig(BaseModel):
)
return values
model_config = {
"arbitrary_types_allowed": True,
}
model_config = ConfigDict(arbitrary_types_allowed=True)
+2 -4
View File
@@ -1,6 +1,6 @@
from typing import Any, ClassVar, Dict
from pydantic import BaseModel, Field, model_validator
from pydantic import BaseModel, ConfigDict, Field, model_validator
class LangchainConfig(BaseModel):
@@ -27,6 +27,4 @@ class LangchainConfig(BaseModel):
)
return values
model_config = {
"arbitrary_types_allowed": True,
}
model_config = ConfigDict(arbitrary_types_allowed=True)
+2 -4
View File
@@ -1,7 +1,7 @@
from enum import Enum
from typing import Any, Dict
from pydantic import BaseModel, Field, model_validator
from pydantic import BaseModel, ConfigDict, Field, model_validator
class MetricType(str, Enum):
@@ -39,6 +39,4 @@ class MilvusDBConfig(BaseModel):
)
return values
model_config = {
"arbitrary_types_allowed": True,
}
model_config = ConfigDict(arbitrary_types_allowed=True)
+2 -4
View File
@@ -1,7 +1,7 @@
import os
from typing import Any, Dict, Optional
from pydantic import BaseModel, Field, model_validator
from pydantic import BaseModel, ConfigDict, Field, model_validator
class PineconeConfig(BaseModel):
@@ -52,6 +52,4 @@ class PineconeConfig(BaseModel):
)
return values
model_config = {
"arbitrary_types_allowed": True,
}
model_config = ConfigDict(arbitrary_types_allowed=True)
+2 -4
View File
@@ -1,6 +1,6 @@
from typing import Any, ClassVar, Dict, Optional
from pydantic import BaseModel, Field, model_validator
from pydantic import BaseModel, ConfigDict, Field, model_validator
class QdrantConfig(BaseModel):
@@ -44,6 +44,4 @@ class QdrantConfig(BaseModel):
)
return values
model_config = {
"arbitrary_types_allowed": True,
}
model_config = ConfigDict(arbitrary_types_allowed=True)
+2 -4
View File
@@ -1,6 +1,6 @@
from typing import Any, Dict
from pydantic import BaseModel, Field, model_validator
from pydantic import BaseModel, ConfigDict, Field, model_validator
# TODO: Upgrade to latest pydantic version
@@ -21,6 +21,4 @@ class RedisDBConfig(BaseModel):
)
return values
model_config = {
"arbitrary_types_allowed": True,
}
model_config = ConfigDict(arbitrary_types_allowed=True)
+2 -4
View File
@@ -1,6 +1,6 @@
from typing import Any, Dict, Optional
from pydantic import BaseModel, Field, model_validator
from pydantic import BaseModel, ConfigDict, Field, model_validator
class S3VectorsConfig(BaseModel):
@@ -29,6 +29,4 @@ class S3VectorsConfig(BaseModel):
)
return values
model_config = {
"arbitrary_types_allowed": True,
}
model_config = ConfigDict(arbitrary_types_allowed=True)
+2 -4
View File
@@ -1,7 +1,7 @@
import os
from typing import Any, ClassVar, Dict, Optional
from pydantic import BaseModel, Field, model_validator
from pydantic import BaseModel, ConfigDict, Field, model_validator
try:
from upstash_vector import Index
@@ -31,6 +31,4 @@ class UpstashVectorConfig(BaseModel):
raise ValueError("Either a client or URL and token must be provided.")
return values
model_config = {
"arbitrary_types_allowed": True,
}
model_config = ConfigDict(arbitrary_types_allowed=True)
@@ -1,6 +1,6 @@
from typing import Optional
from pydantic import BaseModel, Field
from pydantic import BaseModel, ConfigDict, Field
class GoogleMatchingEngineConfig(BaseModel):
@@ -14,7 +14,7 @@ class GoogleMatchingEngineConfig(BaseModel):
credentials_path: Optional[str] = Field(None, description="Path to service account credentials file")
vector_search_api_endpoint: Optional[str] = Field(None, description="Vector search API endpoint")
model_config = {"extra": "forbid"}
model_config = ConfigDict(extra="forbid")
def __init__(self, **kwargs):
super().__init__(**kwargs)
+2 -4
View File
@@ -1,6 +1,6 @@
from typing import Any, ClassVar, Dict, Optional
from pydantic import BaseModel, Field, model_validator
from pydantic import BaseModel, ConfigDict, Field, model_validator
class WeaviateConfig(BaseModel):
@@ -38,6 +38,4 @@ class WeaviateConfig(BaseModel):
return values
model_config = {
"arbitrary_types_allowed": True,
}
model_config = ConfigDict(arbitrary_types_allowed=True)
+2 -3
View File
@@ -2,7 +2,7 @@ from datetime import datetime
from typing import List, Optional
from uuid import UUID
from pydantic import BaseModel, Field, validator
from pydantic import BaseModel, ConfigDict, Field, validator
class MemoryBase(BaseModel):
@@ -33,8 +33,7 @@ class Memory(MemoryBase):
categories: Optional[List[Category]] = None
app: App
class Config:
from_attributes = True
model_config = ConfigDict(from_attributes=True)
class MemoryUpdate(BaseModel):
content: Optional[str] = None