From 1a1cfc77b0ca676c97c43badf41d2d384943982a Mon Sep 17 00:00:00 2001 From: Logan <logan.markewich@live.com> Date: Mon, 1 Apr 2024 15:22:03 -0600 Subject: [PATCH] Pydantic Fixes (#12469) --- .../core/instrumentation/events/base.py | 1 + .../llama_index/embeddings/voyageai/base.py | 14 +++++++------- .../llama-index-embeddings-voyageai/pyproject.toml | 2 +- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/llama-index-core/llama_index/core/instrumentation/events/base.py b/llama-index-core/llama_index/core/instrumentation/events/base.py index 4c7636004f..061aea2605 100644 --- a/llama-index-core/llama_index/core/instrumentation/events/base.py +++ b/llama-index-core/llama_index/core/instrumentation/events/base.py @@ -15,6 +15,7 @@ class BaseEvent(BaseModel): class Config: arbitrary_types_allowed = True + copy_on_model_validation = "deep" def dict(self, **kwargs: Any) -> Dict[str, Any]: data = super().dict(**kwargs) diff --git a/llama-index-integrations/embeddings/llama-index-embeddings-voyageai/llama_index/embeddings/voyageai/base.py b/llama-index-integrations/embeddings/llama-index-embeddings-voyageai/llama_index/embeddings/voyageai/base.py index ac9e92797f..efcc8a677f 100644 --- a/llama-index-integrations/embeddings/llama-index-embeddings-voyageai/llama_index/embeddings/voyageai/base.py +++ b/llama-index-integrations/embeddings/llama-index-embeddings-voyageai/llama_index/embeddings/voyageai/base.py @@ -3,11 +3,11 @@ import logging from typing import Any, List, Optional +from llama_index.core.bridge.pydantic import PrivateAttr from llama_index.core.base.embeddings.base import BaseEmbedding from llama_index.core.callbacks.base import CallbackManager import voyageai -from pydantic import PrivateAttr logger = logging.getLogger(__name__) @@ -23,8 +23,8 @@ class VoyageEmbedding(BaseEmbedding): You can either specify the key here or store it as an environment variable. """ - client: voyageai.Client = PrivateAttr(None) - aclient: voyageai.client_async.AsyncClient = PrivateAttr() + _client: voyageai.Client = PrivateAttr(None) + _aclient: voyageai.client_async.AsyncClient = PrivateAttr() truncation: Optional[bool] = None def __init__( @@ -53,8 +53,8 @@ class VoyageEmbedding(BaseEmbedding): **kwargs, ) - self.client = voyageai.Client(api_key=voyage_api_key) - self.aclient = voyageai.AsyncClient(api_key=voyage_api_key) + self._client = voyageai.Client(api_key=voyage_api_key) + self._aclient = voyageai.AsyncClient(api_key=voyage_api_key) self.truncation = truncation @classmethod @@ -62,7 +62,7 @@ class VoyageEmbedding(BaseEmbedding): return "VoyageEmbedding" def _get_embedding(self, texts: List[str], input_type: str) -> List[List[float]]: - return self.client.embed( + return self._client.embed( texts, model=self.model_name, input_type=input_type, @@ -72,7 +72,7 @@ class VoyageEmbedding(BaseEmbedding): async def _aget_embedding( self, texts: List[str], input_type: str ) -> List[List[float]]: - r = await self.aclient.embed( + r = await self._aclient.embed( texts, model=self.model_name, input_type=input_type, diff --git a/llama-index-integrations/embeddings/llama-index-embeddings-voyageai/pyproject.toml b/llama-index-integrations/embeddings/llama-index-embeddings-voyageai/pyproject.toml index ebad2fa805..27e7d784e3 100644 --- a/llama-index-integrations/embeddings/llama-index-embeddings-voyageai/pyproject.toml +++ b/llama-index-integrations/embeddings/llama-index-embeddings-voyageai/pyproject.toml @@ -27,7 +27,7 @@ exclude = ["**/BUILD"] license = "MIT" name = "llama-index-embeddings-voyageai" readme = "README.md" -version = "0.1.3" +version = "0.1.4" [tool.poetry.dependencies] python = ">=3.8.1,<4.0" -- GitLab