From da698cbdae1328f3ac64e24fdd19b0e904d37097 Mon Sep 17 00:00:00 2001 From: Roland Tannous Date: Sun, 24 May 2026 21:14:22 +0400 Subject: [PATCH] Studio: pass trust_remote_code to RAG embedder loader MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit BGE-VL (multimodal) and nomic-embed-text-v1.5 (late chunking) both ship custom modeling code in their model repos; sentence-transformers refuses to import the referenced module (e.g. bge_vl_clip_transformer) without trust_remote_code=True. Safe to enable because the embedder matrix is config-pinned — users don't supply arbitrary names. --- studio/backend/core/rag/embeddings.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/studio/backend/core/rag/embeddings.py b/studio/backend/core/rag/embeddings.py index dac6f0dbc2..57801445a3 100644 --- a/studio/backend/core/rag/embeddings.py +++ b/studio/backend/core/rag/embeddings.py @@ -31,9 +31,15 @@ def _load(model_name: str) -> Any: from unsloth import FastSentenceTransformer logger.info("Loading RAG embedder: %s", model_name) + # trust_remote_code is required for the multimodal / late-chunking + # embedders in RAG_EMBEDDER_MATRIX: BGE-VL ships a custom + # `bge_vl_clip_transformer` module and nomic-embed-text-v1.5 ships + # a custom modeling file. Both repos are pinned in our config — we + # control which names land here — so opting in is safe. return FastSentenceTransformer.from_pretrained( model_name, for_inference = True, + trust_remote_code = True, )