config
updateConfig
knowledgeBases
createKnowledgeBase
createKnowledgeBase: (
name: string,
description: string,
settings?: Partial<
{
embeddingModel: string;
chunkSize: number;
chunkOverlap: number;
similarityThreshold: number;
maxResults: number;
enableReranking: boolean;
},
>,
) => Promise<string>
deleteKnowledgeBase
deleteKnowledgeBase: (id: string) => Promise<void>
updateKnowledgeBase
updateKnowledgeBase: ( id: string, updates: Partial<KnowledgeBase>,) => Promise<void> addDocument
addDocument: ( knowledgeBaseId: string, document: Omit< KnowledgeDocument, "id" | "chunks" | "embeddings" | "isIndexed", >,) => Promise<string> removeDocument
removeDocument: (knowledgeBaseId: string, documentId: string) => Promise<void>
updateDocument
updateDocument: ( knowledgeBaseId: string, documentId: string, updates: Partial<KnowledgeDocument>,) => Promise<void> getDocument
processDocument
chunkDocument
chunkDocument: (
content: string,
options?: { chunkSize?: number; overlap?: number },
) => string[]
indexDocument
indexDocument: (knowledgeBaseId: string, documentId: string) => Promise<void>
indexKnowledgeBase
indexKnowledgeBase: (id: string) => Promise<void>
reindexAll
reindexAll: () => Promise<void>
search
search: (query: string, knowledgeBaseId?: string) => Promise<SearchResult[]> fullTextSearch
fullTextSearch: ( query: string, knowledgeBaseId?: string,) => Promise<KnowledgeDocument[]> metadataSearch: ( filters: Record<string, any>, knowledgeBaseId?: string,) => Promise<KnowledgeDocument[]> importDocuments
importDocuments: (
knowledgeBaseId: string,
documents: string[] | File[],
) => Promise<string[]>
exportKnowledgeBase
exportKnowledgeBase: (
id: string,
format: "json" | "csv" | "markdown",
) => Promise<string | Blob>
getKnowledgeAnalytics
getKnowledgeAnalytics: (
knowledgeBaseId?: string,
) => {
totalDocuments: number;
totalChunks: number;
averageChunkSize: number;
indexingProgress: number;
lastUpdated: Date;
popularDocuments: { id: string; title: string; accessCount: number }[];
}
isIndexing
isIndexing: boolean
indexingProgress
indexingProgress: number
lastOperation
lastOperation: {
type: string;
status: "error" | "pending" | "success";
message: string;
timestamp: Date;
}