From 377fc67a1890064184d74f00eebcdc24203d7726 Mon Sep 17 00:00:00 2001 From: Mic Date: Tue, 22 Apr 2025 00:11:00 +0200 Subject: [PATCH] Add ollama_num_ctx support in API and worker initialization. see #351 --- api_webchat/controller.js | 4 ++-- js/workers/model-worker-ollama.js | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/api_webchat/controller.js b/api_webchat/controller.js index ec23e569..5e3e6b22 100644 --- a/api_webchat/controller.js +++ b/api_webchat/controller.js @@ -90,13 +90,13 @@ switch (llm) { break; } case "ollama_api": { - let prefs_api = await browser.storage.sync.get({ollama_host: '', ollama_model: '', do_debug: false}); + let prefs_api = await browser.storage.sync.get({ollama_host: '', ollama_model: '', ollama_num_ctx: 0, do_debug: false}); let i18nStrings = {}; i18nStrings["ollama_api_request_failed"] = browser.i18n.getMessage('ollama_api_request_failed'); i18nStrings["error_connection_interrupted"] = browser.i18n.getMessage('error_connection_interrupted'); messageInput.setModel(prefs_api.ollama_model); messagesArea.setLLMName("Ollama Local"); - worker.postMessage({ type: 'init', ollama_host: prefs_api.ollama_host, ollama_model: prefs_api.ollama_model, do_debug: prefs_api.do_debug, i18nStrings: i18nStrings}); + worker.postMessage({ type: 'init', ollama_host: prefs_api.ollama_host, ollama_model: prefs_api.ollama_model, ollama_num_ctx: prefs_api.ollama_num_ctx, do_debug: prefs_api.do_debug, i18nStrings: i18nStrings}); browser.runtime.sendMessage({command: "ollama_api_ready_" + call_id, window_id: (await browser.windows.getCurrent()).id}); messagesArea.appendUserMessage(browser.i18n.getMessage("ollama_api_connecting") + " \"" + prefs_api.ollama_host + "\" " +browser.i18n.getMessage("AndModel") + " \"" + prefs_api.ollama_model + "\"...", "info"); break; diff --git a/js/workers/model-worker-ollama.js b/js/workers/model-worker-ollama.js index 21396f5d..f29bab62 100644 --- a/js/workers/model-worker-ollama.js +++ b/js/workers/model-worker-ollama.js @@ -25,6 +25,7 @@ import { taLogger } from '../mzta-logger.js'; let ollama_host = null; let ollama_model = ''; +let ollama_num_ctx = 0; let ollama = null; let stopStreaming = false; let i18nStrings = null; @@ -39,8 +40,9 @@ self.onmessage = async function(event) { case 'init': ollama_host = event.data.ollama_host; ollama_model = event.data.ollama_model; + ollama_num_ctx = event.data.ollama_num_ctx; //console.log(">>>>>>>>>>> ollama_host: " + ollama_host); - ollama = new Ollama(ollama_host, ollama_model, true); + ollama = new Ollama(ollama_host, ollama_model, true, ollama_num_ctx); do_debug = event.data.do_debug; i18nStrings = event.data.i18nStrings; taLog = new taLogger('model-worker-ollama', do_debug);