From 1458f79a47347b20e12e24c7a7cd9ef2e8f3c98f Mon Sep 17 00:00:00 2001 From: Omar Chouikha Date: Tue, 30 Sep 2025 11:21:34 +0200 Subject: [PATCH 1/2] added vertexai location variable --- README.md | 1 + app/config.py | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index d76aab84..ca309201 100644 --- a/README.md +++ b/README.md @@ -91,6 +91,7 @@ The following environment variables are required to run the application: - `GOOGLE_API_KEY`, `GOOGLE_KEY`, `RAG_GOOGLE_API_KEY`: (Optional) Google API key for Google GenAI embeddings. Priority order: RAG_GOOGLE_API_KEY > GOOGLE_KEY > GOOGLE_API_KEY - `AWS_SESSION_TOKEN`: (Optional) may be needed for bedrock embeddings - `GOOGLE_APPLICATION_CREDENTIALS`: (Optional) needed for Google VertexAI embeddings. This should be a path to a service account credential file in JSON format, as accepted by [langchain](https://python.langchain.com/api_reference/google_vertexai/index.html) +- `VERTEXAI_LOCATION`: (Optional) needed for Google VertexAI embeddings. Defaults to `us-central1`. - `RAG_CHECK_EMBEDDING_CTX_LENGTH` (Optional) Default is true, disabling this will send raw input to the embedder, use this for custom embedding models. Make sure to set these environment variables before running the application. You can set them in a `.env` file or as system environment variables. diff --git a/app/config.py b/app/config.py index de2701bb..af72c933 100644 --- a/app/config.py +++ b/app/config.py @@ -245,7 +245,7 @@ def init_embeddings(provider, model): elif provider == EmbeddingsProvider.GOOGLE_VERTEXAI: from langchain_google_vertexai import VertexAIEmbeddings - return VertexAIEmbeddings(model=model) + return VertexAIEmbeddings(model=model, location=VERTEXAI_LOCATION) elif provider == EmbeddingsProvider.BEDROCK: from langchain_aws import BedrockEmbeddings @@ -290,6 +290,7 @@ def init_embeddings(provider, model): ) elif EMBEDDINGS_PROVIDER == EmbeddingsProvider.GOOGLE_VERTEXAI: EMBEDDINGS_MODEL = get_env_variable("EMBEDDINGS_MODEL", "text-embedding-004") + VERTEXAI_LOCATION = get_env_variable("VERTEXAI_LOCATION", "us-central1") elif EMBEDDINGS_PROVIDER == EmbeddingsProvider.OLLAMA: EMBEDDINGS_MODEL = get_env_variable("EMBEDDINGS_MODEL", "nomic-embed-text") elif EMBEDDINGS_PROVIDER == EmbeddingsProvider.GOOGLE_GENAI: From 71221c1800e249d15153bbdfd1add803a549a158 Mon Sep 17 00:00:00 2001 From: Omar Chouikha Date: Tue, 30 Sep 2025 11:22:46 +0200 Subject: [PATCH 2/2] upgraded the vertexai embedding model from 004 to 005 --- README.md | 2 +- app/config.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index ca309201..cf68862f 100644 --- a/README.md +++ b/README.md @@ -71,7 +71,7 @@ The following environment variables are required to run the application: - azure: "text-embedding-3-small" (will be used as your Azure Deployment) - huggingface: "sentence-transformers/all-MiniLM-L6-v2" - huggingfacetei: "http://huggingfacetei:3000". Hugging Face TEI uses model defined on TEI service launch. - - vertexai: "text-embedding-004" + - vertexai: "text-embedding-005" - ollama: "nomic-embed-text" - bedrock: "amazon.titan-embed-text-v1" - google_genai: "gemini-embedding-001" diff --git a/app/config.py b/app/config.py index af72c933..13515e43 100644 --- a/app/config.py +++ b/app/config.py @@ -289,7 +289,7 @@ def init_embeddings(provider, model): "EMBEDDINGS_MODEL", "http://huggingfacetei:3000" ) elif EMBEDDINGS_PROVIDER == EmbeddingsProvider.GOOGLE_VERTEXAI: - EMBEDDINGS_MODEL = get_env_variable("EMBEDDINGS_MODEL", "text-embedding-004") + EMBEDDINGS_MODEL = get_env_variable("EMBEDDINGS_MODEL", "text-embedding-005") VERTEXAI_LOCATION = get_env_variable("VERTEXAI_LOCATION", "us-central1") elif EMBEDDINGS_PROVIDER == EmbeddingsProvider.OLLAMA: EMBEDDINGS_MODEL = get_env_variable("EMBEDDINGS_MODEL", "nomic-embed-text")