From 639220b371dbc2dc0d87e7d4751750b132794dee Mon Sep 17 00:00:00 2001 From: Nico Martin Date: Fri, 21 Nov 2025 18:15:51 +0100 Subject: [PATCH 1/2] added support for Apertus --- src/configs.js | 1 + src/models.js | 9 +++++++++ 2 files changed, 10 insertions(+) diff --git a/src/configs.js b/src/configs.js index e0976e34e..a6625f2ee 100644 --- a/src/configs.js +++ b/src/configs.js @@ -111,6 +111,7 @@ function getNormalizedConfig(config) { case 'llama': case 'llama4_text': case 'nanochat': + case 'apertus': case 'arcee': case 'lfm2': case 'smollm3': diff --git a/src/models.js b/src/models.js index e12ff978c..33f175b29 100644 --- a/src/models.js +++ b/src/models.js @@ -4752,6 +4752,13 @@ export class NanoChatModel extends NanoChatPreTrainedModel {} export class NanoChatForCausalLM extends NanoChatPreTrainedModel {} ////////////////////////////////////////////////// +////////////////////////////////////////////////// +// Apertus models +export class ApertusPreTrainedModel extends PreTrainedModel {} +export class ApertusModel extends ApertusPreTrainedModel {} +export class ApertusForCausalLM extends ApertusPreTrainedModel {} +////////////////////////////////////////////////// + ////////////////////////////////////////////////// // Arcee models export class ArceePreTrainedModel extends PreTrainedModel {} @@ -8193,6 +8200,7 @@ const MODEL_MAPPING_NAMES_DECODER_ONLY = new Map([ ['gpt_neox', ['GPTNeoXModel', GPTNeoXModel]], ['codegen', ['CodeGenModel', CodeGenModel]], ['llama', ['LlamaModel', LlamaModel]], + ['apertus', ['ApertusModel', ApertusModel]], ['nanochat', ['NanoChatModel', NanoChatModel]], ['arcee', ['ArceeModel', ArceeModel]], ['lfm2', ['Lfm2Model', Lfm2Model]], @@ -8305,6 +8313,7 @@ const MODEL_FOR_CAUSAL_LM_MAPPING_NAMES = new Map([ ['codegen', ['CodeGenForCausalLM', CodeGenForCausalLM]], ['llama', ['LlamaForCausalLM', LlamaForCausalLM]], ['nanochat', ['NanoChatForCausalLM', NanoChatForCausalLM]], + ['apertus', ['ApertusForCausalLM', ApertusForCausalLM]], ['llama4_text', ['Llama4ForCausalLM', Llama4ForCausalLM]], ['arcee', ['ArceeForCausalLM', ArceeForCausalLM]], ['lfm2', ['Lfm2ForCausalLM', Lfm2ForCausalLM]], From e6af552624cb4d01530354737b1b47b353db97d6 Mon Sep 17 00:00:00 2001 From: Nico Martin Date: Sat, 22 Nov 2025 15:40:01 +0100 Subject: [PATCH 2/2] fixed backend loading path --- src/backends/onnx.js | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/backends/onnx.js b/src/backends/onnx.js index 82cb64aae..38e667db9 100644 --- a/src/backends/onnx.js +++ b/src/backends/onnx.js @@ -193,11 +193,13 @@ if (ONNX_ENV?.wasm) { // By default, we only do this if we are not in a service worker and the wasmPaths are not already set. if ( // @ts-ignore Cannot find name 'ServiceWorkerGlobalScope'.ts(2304) - !(typeof ServiceWorkerGlobalScope !== 'undefined' && self instanceof ServiceWorkerGlobalScope) && - env.backends.onnx.versions?.web && - !ONNX_ENV.wasm.wasmPaths + ( + !(typeof ServiceWorkerGlobalScope !== 'undefined' && self instanceof ServiceWorkerGlobalScope) && + ONNX_ENV.versions?.web && + !ONNX_ENV.wasm.wasmPaths + ) ) { - const wasmPathPrefix = `https://cdn.jsdelivr.net/npm/onnxruntime-web@${env.backends.onnx.versions.web}/dist/`; + const wasmPathPrefix = `https://cdn.jsdelivr.net/npm/onnxruntime-web@${ONNX_ENV.versions.web}/dist/`; ONNX_ENV.wasm.wasmPaths = apis.IS_SAFARI ? {