From a3cc64ebba4a4d628d1d4c4eb7ed6aa4fc856034 Mon Sep 17 00:00:00 2001 From: Jupiter1995 Date: Sun, 26 Nov 2023 18:23:31 -0500 Subject: [PATCH 1/2] solved for TypeError: issubclass() arg 1 must be a class --- .gitignore | 2 ++ gentopia/memory/embeddings.py | 9 +++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 351a282..c3dc6ce 100644 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,8 @@ test.py notebooks/test.ipynb .chroma node_modules/ +debugging_test/ +assemble.py # Byte-compiled / optimized / DLL files __pycache__/ diff --git a/gentopia/memory/embeddings.py b/gentopia/memory/embeddings.py index 3055b74..4136530 100644 --- a/gentopia/memory/embeddings.py +++ b/gentopia/memory/embeddings.py @@ -27,6 +27,8 @@ ) from gentopia.memory.utils import get_from_dict_or_env +from enum import Enum + logger = logging.getLogger(__name__) @@ -156,6 +158,9 @@ async def _async_embed_with_retry(**kwargs: Any) -> Any: return await _async_embed_with_retry(**kwargs) +class SpecialAllow: + class ValueField(str, Enum): + VALID_VALUE = "all" class OpenAIEmbeddings(BaseModel, Embeddings): """Wrapper around OpenAI embedding models.""" @@ -173,8 +178,8 @@ class OpenAIEmbeddings(BaseModel, Embeddings): embedding_ctx_length: int = 8191 openai_api_key: Optional[str] = None openai_organization: Optional[str] = None - allowed_special: Union[Literal["all"], Set[str]] = set() - disallowed_special: Union[Literal["all"], Set[str], Sequence[str]] = "all" + allowed_special: Union[SpecialAllow.ValueField, Set[str]] = set() + disallowed_special: Union[SpecialAllow.ValueField, Set[str], Sequence[str]] = "all" chunk_size: int = 1000 """Maximum number of texts to embed in each batch""" max_retries: int = 6 From 1c773fbbe6626db9403f463e70b083eb8dccce4e Mon Sep 17 00:00:00 2001 From: Jupiter1995 <35663003+Jupiter1995@users.noreply.github.com> Date: Sun, 26 Nov 2023 21:42:18 -0500 Subject: [PATCH 2/2] Update .gitignore --- .gitignore | 2 -- 1 file changed, 2 deletions(-) diff --git a/.gitignore b/.gitignore index c3dc6ce..351a282 100644 --- a/.gitignore +++ b/.gitignore @@ -5,8 +5,6 @@ test.py notebooks/test.ipynb .chroma node_modules/ -debugging_test/ -assemble.py # Byte-compiled / optimized / DLL files __pycache__/