mirror of
https://github.com/hellodigua/ChatLab.git
synced 2026-05-02 19:21:54 +08:00
feat: 支持向量模型配置和相关检索
This commit is contained in:
93
electron/preload/index.d.ts
vendored
93
electron/preload/index.d.ts
vendored
@@ -437,6 +437,91 @@ interface LlmApi {
|
||||
) => Promise<{ success: boolean; error?: string }>
|
||||
}
|
||||
|
||||
// ==================== Embedding 多配置相关类型 ====================
|
||||
|
||||
interface EmbeddingServiceConfig {
|
||||
id: string
|
||||
name: string
|
||||
apiSource: 'reuse_llm' | 'custom'
|
||||
model: string
|
||||
baseUrl?: string
|
||||
apiKey?: string
|
||||
createdAt: number
|
||||
updatedAt: number
|
||||
}
|
||||
|
||||
interface EmbeddingServiceConfigDisplay {
|
||||
id: string
|
||||
name: string
|
||||
apiSource: 'reuse_llm' | 'custom'
|
||||
model: string
|
||||
baseUrl?: string
|
||||
apiKeySet: boolean
|
||||
createdAt: number
|
||||
updatedAt: number
|
||||
}
|
||||
|
||||
interface EmbeddingApi {
|
||||
getAllConfigs: () => Promise<EmbeddingServiceConfigDisplay[]>
|
||||
getConfig: (id: string) => Promise<EmbeddingServiceConfig | null>
|
||||
getActiveConfigId: () => Promise<string | null>
|
||||
isEnabled: () => Promise<boolean>
|
||||
setEnabled: (enabled: boolean) => Promise<{ success: boolean; error?: string }>
|
||||
addConfig: (
|
||||
config: Omit<EmbeddingServiceConfig, 'id' | 'createdAt' | 'updatedAt'>
|
||||
) => Promise<{ success: boolean; config?: EmbeddingServiceConfig; error?: string }>
|
||||
updateConfig: (
|
||||
id: string,
|
||||
updates: Partial<Omit<EmbeddingServiceConfig, 'id' | 'createdAt' | 'updatedAt'>>
|
||||
) => Promise<{ success: boolean; error?: string }>
|
||||
deleteConfig: (id: string) => Promise<{ success: boolean; error?: string }>
|
||||
setActiveConfig: (id: string) => Promise<{ success: boolean; error?: string }>
|
||||
validateConfig: (config: EmbeddingServiceConfig) => Promise<{ success: boolean; error?: string }>
|
||||
getVectorStoreStats: () => Promise<{
|
||||
enabled: boolean
|
||||
count?: number
|
||||
sizeBytes?: number
|
||||
error?: string
|
||||
}>
|
||||
clearVectorStore: () => Promise<{ success: boolean; error?: string }>
|
||||
}
|
||||
|
||||
// ==================== 旧版 RAG 相关类型(兼容) ====================
|
||||
|
||||
interface EmbeddingConfig {
|
||||
enabled: boolean
|
||||
provider: 'api'
|
||||
apiSource?: 'reuse_llm' | 'custom'
|
||||
model?: string
|
||||
baseUrl?: string
|
||||
apiKey?: string
|
||||
}
|
||||
|
||||
interface VectorStoreConfig {
|
||||
enabled: boolean
|
||||
type: 'memory' | 'sqlite' | 'lancedb'
|
||||
memoryCacheSize?: number
|
||||
dbPath?: string
|
||||
}
|
||||
|
||||
interface RerankConfig {
|
||||
enabled: boolean
|
||||
provider: 'jina' | 'cohere' | 'bge' | 'custom'
|
||||
model?: string
|
||||
baseUrl?: string
|
||||
apiKey?: string
|
||||
topK?: number
|
||||
}
|
||||
|
||||
interface RAGConfig {
|
||||
embedding?: EmbeddingConfig
|
||||
vectorStore?: VectorStoreConfig
|
||||
rerank?: RerankConfig
|
||||
enableSemanticPipeline?: boolean
|
||||
candidateLimit?: number
|
||||
topK?: number
|
||||
}
|
||||
|
||||
// Token 使用量类型
|
||||
interface TokenUsage {
|
||||
promptTokens: number
|
||||
@@ -578,6 +663,7 @@ declare global {
|
||||
mergeApi: MergeApi
|
||||
aiApi: AiApi
|
||||
llmApi: LlmApi
|
||||
embeddingApi: EmbeddingApi
|
||||
agentApi: AgentApi
|
||||
cacheApi: CacheApi
|
||||
networkApi: NetworkApi
|
||||
@@ -591,6 +677,9 @@ export {
|
||||
MergeApi,
|
||||
AiApi,
|
||||
LlmApi,
|
||||
EmbeddingApi,
|
||||
EmbeddingServiceConfig,
|
||||
EmbeddingServiceConfigDisplay,
|
||||
AgentApi,
|
||||
CacheApi,
|
||||
NetworkApi,
|
||||
@@ -613,4 +702,8 @@ export {
|
||||
FilterMessage,
|
||||
ContextBlock,
|
||||
FilterResult,
|
||||
RAGConfig,
|
||||
EmbeddingConfig,
|
||||
VectorStoreConfig,
|
||||
RerankConfig,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user