From f9832a186083aeff6d1fc7b7081c7ed680f5cbc1 Mon Sep 17 00:00:00 2001 From: mic Date: Tue, 1 Oct 2024 22:44:24 +0200 Subject: [PATCH] uising the optional api key in the openai comp api see #144 --- api_webchat/controller.js | 4 ++-- api_webchat/model-worker-openai_comp.js | 6 ++++-- options/mzta-options.js | 2 +- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/api_webchat/controller.js b/api_webchat/controller.js index d1a4f674..180ccdf3 100644 --- a/api_webchat/controller.js +++ b/api_webchat/controller.js @@ -97,13 +97,13 @@ switch (llm) { break; } case "openai_comp_api": { - let prefs_api = await browser.storage.sync.get({openai_comp_host: '', openai_comp_model: '', openai_comp_chat_name: ''}); + let prefs_api = await browser.storage.sync.get({openai_comp_host: '', openai_comp_model: '', openai_comp_api_key: '', openai_comp_chat_name: ''}); let i18nStrings = {}; i18nStrings["OpenAIComp_api_request_failed"] = browser.i18n.getMessage('OpenAIComp_api_request_failed'); i18nStrings["error_connection_interrupted"] = browser.i18n.getMessage('error_connection_interrupted'); messageInput.setModel(prefs_api.openai_comp_model); messagesArea.setLLMName(prefs_api.openai_comp_chat_name); - worker.postMessage({ type: 'init', openai_comp_host: prefs_api.openai_comp_host, openai_comp_model: prefs_api.openai_comp_model, i18nStrings: i18nStrings}); + worker.postMessage({ type: 'init', openai_comp_host: prefs_api.openai_comp_host, openai_comp_model: prefs_api.openai_comp_model, openai_comp_api_key: prefs_api.openai_comp_api_key, i18nStrings: i18nStrings}); messagesArea.appendUserMessage(browser.i18n.getMessage("OpenAIComp_api_connecting") + " \"" + prefs_api.openai_comp_host + "\" " +browser.i18n.getMessage("AndModel") + " \"" + prefs_api.openai_comp_model + "\"...", "info"); break; } diff --git a/api_webchat/model-worker-openai_comp.js b/api_webchat/model-worker-openai_comp.js index 8d8c971f..1fe439b6 100644 --- a/api_webchat/model-worker-openai_comp.js +++ b/api_webchat/model-worker-openai_comp.js @@ -24,6 +24,7 @@ import { OpenAIComp } from '../js/api/openai_comp.js'; let openai_comp_host = null; let openai_comp_model = ''; +let openai_comp_api_key = ''; let openai_comp = null; let stopStreaming = false; @@ -34,11 +35,12 @@ self.onmessage = async function(event) { if (event.data.type === 'init') { openai_comp_host = event.data.openai_comp_host; openai_comp_model = event.data.openai_comp_model; - openai_comp = new OpenAIComp(openai_comp_host, openai_comp_model, true); + openai_comp_api_key = event.data.openai_comp_api_key; + openai_comp = new OpenAIComp(openai_comp_host, openai_comp_model, openai_comp_api_key, true); } else if (event.data.type === 'chatMessage') { conversationHistory.push({ role: 'user', content: event.data.message }); - const response = await openai.fetchResponse(conversationHistory); //4096); + const response = await openai_comp.fetchResponse(conversationHistory); //4096); postMessage({ type: 'messageSent' }); if (!response.ok) { diff --git a/options/mzta-options.js b/options/mzta-options.js index 086ce446..83dde131 100644 --- a/options/mzta-options.js +++ b/options/mzta-options.js @@ -330,7 +330,7 @@ select_openai_comp_model.addEventListener("change", warn_OpenAIComp_HostEmpty); document.getElementById('btnUpdateOpenAICompModels').addEventListener('click', async () => { document.getElementById('openai_comp_model_fetch_loading').style.display = 'inline'; - let openai_comp = new OpenAIComp(document.getElementById("openai_comp_host").value, true); + let openai_comp = new OpenAIComp(document.getElementById("openai_comp_host").value , null, document.getElementById("openai_comp_api_key").value, true); openai_comp.fetchModels().then((data) => { if(!data.ok){ let errorDetail = JSON.parse(data.error);