fix: update dimensions handling in KnowledgeBaseParams (#6417)

fix: update dimensions handling in KnowledgeBaseParams and add supported dimension providers
This commit is contained in:
SuYao 2025-05-25 13:07:21 +08:00 committed by GitHub
parent 9428461fb7
commit cd0329e0cf
4 changed files with 6 additions and 4 deletions

View File

@ -23,14 +23,14 @@ export default class EmbeddingsFactory {
azureOpenAIApiVersion: apiVersion,
azureOpenAIApiDeploymentName: model,
azureOpenAIApiInstanceName: getInstanceName(baseURL),
// dimensions,
dimensions,
batchSize
})
}
return new OpenAiEmbeddings({
model,
apiKey,
// dimensions,
dimensions,
batchSize,
configuration: { baseURL }
})

View File

@ -103,6 +103,7 @@ export function getProviderLogo(providerId: string) {
// export const SUPPORTED_REANK_PROVIDERS = ['silicon', 'jina', 'voyageai', 'dashscope', 'aihubmix']
export const NOT_SUPPORTED_REANK_PROVIDERS = ['ollama']
export const ONLY_SUPPORTED_DIMENSION_PROVIDERS = ['ollama', 'infini']
export const PROVIDER_CONFIG = {
openai: {

View File

@ -2,6 +2,7 @@ import type { ExtractChunkData } from '@cherrystudio/embedjs-interfaces'
import { DEFAULT_KNOWLEDGE_DOCUMENT_COUNT, DEFAULT_KNOWLEDGE_THRESHOLD } from '@renderer/config/constant'
import { getEmbeddingMaxContext } from '@renderer/config/embedings'
import Logger from '@renderer/config/logger'
import { ONLY_SUPPORTED_DIMENSION_PROVIDERS } from '@renderer/config/providers'
import AiProvider from '@renderer/providers/AiProvider'
import store from '@renderer/store'
import { FileType, KnowledgeBase, KnowledgeBaseParams, KnowledgeReference } from '@renderer/types'
@ -38,7 +39,7 @@ export const getKnowledgeBaseParams = (base: KnowledgeBase): KnowledgeBaseParams
return {
id: base.id,
model: base.model.id,
dimensions: base.dimensions,
dimensions: ONLY_SUPPORTED_DIMENSION_PROVIDERS.includes(base.model.provider) ? base.dimensions : undefined,
apiKey: aiProvider.getApiKey() || 'secret',
apiVersion: provider.apiVersion,
baseURL: host,

View File

@ -393,7 +393,7 @@ export interface KnowledgeBase {
export type KnowledgeBaseParams = {
id: string
model: string
dimensions: number
dimensions?: number
apiKey: string
apiVersion?: string
baseURL: string