From 28f883295071951fcddae3c7dccd139cbde8ff0d Mon Sep 17 00:00:00 2001 From: Service Account Date: Fri, 29 Dec 2023 09:27:43 +0000 Subject: [PATCH 1/4] janhq/jan: Update README.md with nightly build artifact URL --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 362a8a475..e0b009e73 100644 --- a/README.md +++ b/README.md @@ -70,7 +70,7 @@ Jan is an open-source ChatGPT alternative that runs 100% offline on your compute Experimental (Nighlty Build) - + Github action artifactory From a9579a3cbdf69a2a312667fd67eb76dbb0719169 Mon Sep 17 00:00:00 2001 From: Louis Date: Fri, 29 Dec 2023 16:37:34 +0700 Subject: [PATCH 2/4] fix: remove redundant gpu detection prompt event (#1254) --- .../inference-nitro-extension/src/index.ts | 21 ++++--------------- .../inference-openai-extension/src/index.ts | 3 +-- web/containers/Providers/EventHandler.tsx | 4 ---- 3 files changed, 5 insertions(+), 23 deletions(-) diff --git a/extensions/inference-nitro-extension/src/index.ts b/extensions/inference-nitro-extension/src/index.ts index 3abcfe766..34e95667b 100644 --- a/extensions/inference-nitro-extension/src/index.ts +++ b/extensions/inference-nitro-extension/src/index.ts @@ -59,9 +59,11 @@ export default class JanInferenceNitroExtension implements InferenceExtension { /** * Subscribes to events emitted by the @janhq/core package. */ - async onLoad(): Promise { + async onLoad() { if (!(await fs.existsSync(JanInferenceNitroExtension._homeDir))) { - await fs.mkdirSync(JanInferenceNitroExtension._homeDir).catch((err) => console.debug(err)); + await fs + .mkdirSync(JanInferenceNitroExtension._homeDir) + .catch((err) => console.debug(err)); } if (!(await fs.existsSync(JanInferenceNitroExtension._settingsDir))) @@ -87,21 +89,6 @@ export default class JanInferenceNitroExtension implements InferenceExtension { // Attempt to fetch nvidia info await executeOnMain(MODULE, "updateNvidiaInfo", {}); - - const gpuDriverConf = await fs.readFileSync( - join(JanInferenceNitroExtension._settingsDir, "settings.json") - ); - if (gpuDriverConf.notify && gpuDriverConf.run_mode === "cpu") { - // Driver is fully installed, but not in use - if (gpuDriverConf.nvidia_driver?.exist && gpuDriverConf.cuda?.exist) { - events.emit("OnGPUCompatiblePrompt", {}); - // Prompt user to switch - } else if (gpuDriverConf.nvidia_driver?.exist) { - // Prompt user to install cuda toolkit - events.emit("OnGPUDriverMissingPrompt", {}); - } - } - Promise.resolve() } /** diff --git a/extensions/inference-openai-extension/src/index.ts b/extensions/inference-openai-extension/src/index.ts index 27436749f..246aa124b 100644 --- a/extensions/inference-openai-extension/src/index.ts +++ b/extensions/inference-openai-extension/src/index.ts @@ -53,7 +53,7 @@ export default class JanInferenceOpenAIExtension implements InferenceExtension { /** * Subscribes to events emitted by the @janhq/core package. */ - async onLoad(): Promise { + async onLoad() { if (!(await fs.existsSync(JanInferenceOpenAIExtension._homeDir))) { await fs .mkdirSync(JanInferenceOpenAIExtension._homeDir) @@ -77,7 +77,6 @@ export default class JanInferenceOpenAIExtension implements InferenceExtension { events.on(EventName.OnInferenceStopped, () => { JanInferenceOpenAIExtension.handleInferenceStopped(this); }); - Promise.resolve(); } /** diff --git a/web/containers/Providers/EventHandler.tsx b/web/containers/Providers/EventHandler.tsx index e755804ff..a828a02a1 100644 --- a/web/containers/Providers/EventHandler.tsx +++ b/web/containers/Providers/EventHandler.tsx @@ -119,8 +119,6 @@ export default function EventHandler({ children }: { children: ReactNode }) { } } } - function handleGpuCompatiblePrompt() {} - function handleGpuDriverMissingPrompt() {} useEffect(() => { if (window.core?.events) { @@ -129,8 +127,6 @@ export default function EventHandler({ children }: { children: ReactNode }) { events.on(EventName.OnModelReady, handleModelReady) events.on(EventName.OnModelFail, handleModelFail) events.on(EventName.OnModelStopped, handleModelStopped) - events.on('OnGPUCompatiblePrompt', handleGpuCompatiblePrompt) - events.on('OnGPUDriverMissingPrompt', handleGpuDriverMissingPrompt) } // eslint-disable-next-line react-hooks/exhaustive-deps }, []) From 54750ed315f88e99675b3dd789f729d0da01b304 Mon Sep 17 00:00:00 2001 From: Louis Date: Fri, 29 Dec 2023 16:45:40 +0700 Subject: [PATCH 3/4] fix: mac users should not see GPU settings (#1255) --- web/containers/Providers/index.tsx | 2 +- web/screens/Settings/Advanced/index.tsx | 51 +++++++++++++------------ 2 files changed, 27 insertions(+), 26 deletions(-) diff --git a/web/containers/Providers/index.tsx b/web/containers/Providers/index.tsx index c7e6e26a1..82a855fce 100644 --- a/web/containers/Providers/index.tsx +++ b/web/containers/Providers/index.tsx @@ -75,7 +75,7 @@ const Providers = (props: PropsWithChildren) => { {children} - + {!isMac && } diff --git a/web/screens/Settings/Advanced/index.tsx b/web/screens/Settings/Advanced/index.tsx index 122f3f868..41e903cc8 100644 --- a/web/screens/Settings/Advanced/index.tsx +++ b/web/screens/Settings/Advanced/index.tsx @@ -24,33 +24,34 @@ const Advanced = () => { return (
{/* CPU / GPU switching */} - -
-
-
-
NVidia GPU
+ {!isMac && ( +
+
+
+
NVidia GPU
+
+

+ Enable GPU acceleration for NVidia GPUs. +

-

- Enable GPU acceleration for NVidia GPUs. -

+ { + if (e === true) { + saveSettings({ runMode: 'gpu' }) + setGpuEnabled(true) + setShowNotification(false) + setTimeout(() => { + validateSettings() + }, 300) + } else { + saveSettings({ runMode: 'cpu' }) + setGpuEnabled(false) + } + }} + />
- { - if (e === true) { - saveSettings({ runMode: 'gpu' }) - setGpuEnabled(true) - setShowNotification(false) - setTimeout(() => { - validateSettings() - }, 300) - } else { - saveSettings({ runMode: 'cpu' }) - setGpuEnabled(false) - } - }} - /> -
+ )} {/* Experimental */}
From 8b20f230c50e7b12cf97054968a73f04ccef7a56 Mon Sep 17 00:00:00 2001 From: Service Account Date: Fri, 29 Dec 2023 10:07:34 +0000 Subject: [PATCH 4/4] janhq/jan: Update README.md with nightly build artifact URL --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index e0b009e73..08d7d6d47 100644 --- a/README.md +++ b/README.md @@ -70,7 +70,7 @@ Jan is an open-source ChatGPT alternative that runs 100% offline on your compute Experimental (Nighlty Build) - + Github action artifactory