From d51dbded19ef7ea7280c2c14e34c2d8dd9375286 Mon Sep 17 00:00:00 2001 From: electroglyph Date: Tue, 16 Dec 2025 22:52:51 -0800 Subject: [PATCH] propagate trust_remote_code properly --- unsloth/models/sentence_transformer.py | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/unsloth/models/sentence_transformer.py b/unsloth/models/sentence_transformer.py index b73d5f74f6..d47762f0b0 100644 --- a/unsloth/models/sentence_transformer.py +++ b/unsloth/models/sentence_transformer.py @@ -85,7 +85,7 @@ class FastSentenceTransformer(FastModel): return "mean" @staticmethod - def _load_modules(model_name, token, model, tokenizer, max_seq_length, pooling_mode): + def _load_modules(model_name, token, model, tokenizer, max_seq_length, pooling_mode, trust_remote_code = False): modules = OrderedDict() # grope around for modules.json @@ -108,7 +108,12 @@ class FastSentenceTransformer(FastModel): # main module if class_ref == "sentence_transformers.models.Transformer": - transformer_module = Transformer(model_name, max_seq_length=max_seq_length) + transformer_module = Transformer( + model_name, + max_seq_length=max_seq_length, + model_args = {"trust_remote_code" : trust_remote_code}, + config_args = {"trust_remote_code" : trust_remote_code}, + ) transformer_module.auto_model = model transformer_module.tokenizer = tokenizer @@ -163,7 +168,12 @@ class FastSentenceTransformer(FastModel): else: # fallback if no modules.json, is this necessary? print("Unsloth: No modules.json found, falling back to [Transformer, Pooling, Normalize]") - transformer_module = Transformer(model_name, max_seq_length=max_seq_length) + transformer_module = Transformer( + model_name, + max_seq_length=max_seq_length, + model_args = {"trust_remote_code" : trust_remote_code}, + config_args = {"trust_remote_code" : trust_remote_code}, + ) transformer_module.auto_model = model transformer_module.tokenizer = tokenizer @@ -290,7 +300,7 @@ class FastSentenceTransformer(FastModel): # try to load modules, otherwise fallback to old hard-coded modules from sentence_transformers import SentenceTransformer - modules = FastSentenceTransformer._load_modules(model_name, token, model, tokenizer, max_seq_length, pooling_mode) + modules = FastSentenceTransformer._load_modules(model_name, token, model, tokenizer, max_seq_length, pooling_mode, trust_remote_code=trust_remote_code) st_model = SentenceTransformer(modules=modules, device=device_map)