diff --git a/private_gpt/components/embedding/embedding_component.py b/private_gpt/components/embedding/embedding_component.py index 1f05223..487e195 100644 --- a/private_gpt/components/embedding/embedding_component.py +++ b/private_gpt/components/embedding/embedding_component.py @@ -31,6 +31,7 @@ class EmbeddingComponent: self.embedding_model = HuggingFaceEmbedding( model_name=settings.huggingface.embedding_hf_model_name, cache_folder=str(models_cache_path), + max_length=settings.huggingface.embedding_hf_max_length, ) case "sagemaker": try: diff --git a/private_gpt/settings/settings.py b/private_gpt/settings/settings.py index e2598b8..408b1ec 100644 --- a/private_gpt/settings/settings.py +++ b/private_gpt/settings/settings.py @@ -151,6 +151,10 @@ class HuggingFaceSettings(BaseModel): embedding_hf_model_name: str = Field( description="Name of the HuggingFace model to use for embeddings" ) + embedding_hf_max_length: int = Field( + None, + description="Some embedding models have a maximum length for input, provide here for not crashing" + ) access_token: str = Field( None, description="Huggingface access token, required to download some models", diff --git a/settings.yaml b/settings.yaml index b524ef6..1765fe4 100644 --- a/settings.yaml +++ b/settings.yaml @@ -69,6 +69,7 @@ embedding: huggingface: embedding_hf_model_name: BAAI/bge-small-en-v1.5 + embedding_hf_max_length: 512 # some models have a maximum length for input access_token: ${HUGGINGFACE_TOKEN:} vectorstore: