From bb50447a9817a276fcc4b9ae2bffbb7ee298f0c2 Mon Sep 17 00:00:00 2001 From: kangfenmao Date: Mon, 6 Jan 2025 15:43:20 +0800 Subject: [PATCH] fix: Ollama is unable to create a knowledge base using a local embedding model #630 --- .../src/pages/knowledge/components/AddKnowledgePopup.tsx | 1 + src/renderer/src/services/KnowledgeService.ts | 8 ++------ 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/src/renderer/src/pages/knowledge/components/AddKnowledgePopup.tsx b/src/renderer/src/pages/knowledge/components/AddKnowledgePopup.tsx index 964904ea..f2f55e8e 100644 --- a/src/renderer/src/pages/knowledge/components/AddKnowledgePopup.tsx +++ b/src/renderer/src/pages/knowledge/components/AddKnowledgePopup.tsx @@ -72,6 +72,7 @@ const PopupContainer: React.FC = ({ title, resolve }) => { } catch (error) { console.error('Error getting embedding dimensions:', error) window.message.error(t('message.error.get_embedding_dimensions')) + setLoading(false) return } diff --git a/src/renderer/src/services/KnowledgeService.ts b/src/renderer/src/services/KnowledgeService.ts index 31aa8ec9..aa16086f 100644 --- a/src/renderer/src/services/KnowledgeService.ts +++ b/src/renderer/src/services/KnowledgeService.ts @@ -1,7 +1,7 @@ import type { ExtractChunkData } from '@llm-tools/embedjs-interfaces' import AiProvider from '@renderer/providers/AiProvider' import { FileType, KnowledgeBase, KnowledgeBaseParams, Message } from '@renderer/types' -import { isEmpty, take } from 'lodash' +import { take } from 'lodash' import { getProviderByModel } from './AssistantService' import FileManager from './FileManager' @@ -10,10 +10,6 @@ export const getKnowledgeBaseParams = (base: KnowledgeBase): KnowledgeBaseParams const provider = getProviderByModel(base.model) const aiProvider = new AiProvider(provider) - if (provider.id === 'ollama' && isEmpty(provider.apiKey)) { - provider.apiKey = 'empty' - } - let host = aiProvider.getBaseURL() if (provider.type === 'gemini') { @@ -24,7 +20,7 @@ export const getKnowledgeBaseParams = (base: KnowledgeBase): KnowledgeBaseParams id: base.id, model: base.model.id, dimensions: base.dimensions, - apiKey: aiProvider.getApiKey(), + apiKey: aiProvider.getApiKey() || 'secret', apiVersion: provider.apiVersion, baseURL: host }