diff --git a/.yarn/patches/@llm-tools-embedjs-loader-markdown-npm-0.1.28-81647ffac6.patch b/.yarn/patches/@llm-tools-embedjs-loader-markdown-npm-0.1.28-81647ffac6.patch deleted file mode 100644 index 106b45a1..00000000 --- a/.yarn/patches/@llm-tools-embedjs-loader-markdown-npm-0.1.28-81647ffac6.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/src/markdown-loader.js b/src/markdown-loader.js -index eaf30b114a273e68abbb92c8b07018495e63f4cb..4b06519bdb51845e4693fe877da9de01c7a81039 100644 ---- a/src/markdown-loader.js -+++ b/src/markdown-loader.js -@@ -21,7 +21,7 @@ export class MarkdownLoader extends BaseLoader { - ? (await getSafe(this.filePathOrUrl, { format: 'buffer' })).body - : await streamToBuffer(fs.createReadStream(this.filePathOrUrl)); - this.debug('MarkdownLoader stream created'); -- const result = micromark(buffer, { extensions: [gfm(), mdxJsx()], htmlExtensions: [gfmHtml()] }); -+ const result = micromark(buffer, { extensions: [gfm()], htmlExtensions: [gfmHtml()] }); - this.debug('Markdown parsed...'); - const webLoader = new WebLoader({ - urlOrContent: result, diff --git a/.yarn/patches/@llm-tools-embedjs-npm-0.1.28-8e4393fa2d.patch b/.yarn/patches/@llm-tools-embedjs-npm-0.1.28-8e4393fa2d.patch deleted file mode 100644 index 153681e5..00000000 --- a/.yarn/patches/@llm-tools-embedjs-npm-0.1.28-8e4393fa2d.patch +++ /dev/null @@ -1,158 +0,0 @@ -diff --git a/src/loaders/local-path-loader.d.ts b/src/loaders/local-path-loader.d.ts -index 48c20e68c469cd309be2dc8f28e44c1bd04a26e9..1c16d83bcbf9b7140292793d6cbb8c04281949d9 100644 ---- a/src/loaders/local-path-loader.d.ts -+++ b/src/loaders/local-path-loader.d.ts -@@ -4,8 +4,10 @@ export declare class LocalPathLoader extends BaseLoader<{ - }> { - private readonly debug; - private readonly path; -- constructor({ path }: { -+ constructor({ path, chunkSize, chunkOverlap }: { - path: string; -+ chunkSize?: number; -+ chunkOverlap?: number; - }); - getUnfilteredChunks(): AsyncGenerator<{ - metadata: { -diff --git a/src/loaders/local-path-loader.js b/src/loaders/local-path-loader.js -index 4cf8a6bd1d890244c8ec49d4a05ee3bd58861c79..ec8215b01195a21ef20f3c5d56ecc99f186bb596 100644 ---- a/src/loaders/local-path-loader.js -+++ b/src/loaders/local-path-loader.js -@@ -8,8 +8,8 @@ import { BaseLoader } from '@llm-tools/embedjs-interfaces'; - export class LocalPathLoader extends BaseLoader { - debug = createDebugMessages('embedjs:loader:LocalPathLoader'); - path; -- constructor({ path }) { -- super(`LocalPathLoader_${md5(path)}`, { path }); -+ constructor({ path, chunkSize, chunkOverlap }) { -+ super(`LocalPathLoader_${md5(path)}`, { path }, chunkSize ?? 1000, chunkOverlap ?? 0); - this.path = path; - } - async *getUnfilteredChunks() { -@@ -36,10 +36,12 @@ export class LocalPathLoader extends BaseLoader { - const extension = currentPath.split('.').pop().toLowerCase(); - if (extension === 'md' || extension === 'mdx') - mime = 'text/markdown'; -+ if (extension === 'txt') -+ mime = 'text/plain'; - this.debug(`File '${this.path}' mime type updated to 'text/markdown'`); - } - try { -- const loader = await createLoaderFromMimeType(currentPath, mime); -+ const loader = await createLoaderFromMimeType(currentPath, mime, this.chunkSize, this.chunkOverlap); - for await (const result of await loader.getUnfilteredChunks()) { - yield { - pageContent: result.pageContent, -diff --git a/src/util/mime.d.ts b/src/util/mime.d.ts -index 57f56a1b8edc98366af9f84d671676c41c2f01ca..14be3b5727cff6eb1978838045e9a788f8f53bfb 100644 ---- a/src/util/mime.d.ts -+++ b/src/util/mime.d.ts -@@ -1,2 +1,2 @@ - import { BaseLoader } from '@llm-tools/embedjs-interfaces'; --export declare function createLoaderFromMimeType(loaderData: string, mimeType: string): Promise; -+export declare function createLoaderFromMimeType(loaderData: string, mimeType: string, chunkSize?: number, chunkOverlap?: number): Promise; -diff --git a/src/util/mime.js b/src/util/mime.js -index b6426a859968e2bf6206795f70333e90ae27aeb7..16ae2adb863f8d7abfa757f1c5cc39f6bb1c44fa 100644 ---- a/src/util/mime.js -+++ b/src/util/mime.js -@@ -1,7 +1,9 @@ - import mime from 'mime'; - import createDebugMessages from 'debug'; - import { TextLoader } from '../loaders/text-loader.js'; --export async function createLoaderFromMimeType(loaderData, mimeType) { -+import fs from 'node:fs' -+ -+export async function createLoaderFromMimeType(loaderData, mimeType, chunkSize, chunkOverlap) { - createDebugMessages('embedjs:util:createLoaderFromMimeType')(`Incoming mime type '${mimeType}'`); - switch (mimeType) { - case 'application/msword': -@@ -10,7 +12,7 @@ export async function createLoaderFromMimeType(loaderData, mimeType) { - throw new Error('Package `@llm-tools/embedjs-loader-msoffice` needs to be installed to load docx files'); - }); - createDebugMessages('embedjs:util:createLoaderFromMimeType')('Dynamically imported DocxLoader'); -- return new DocxLoader({ filePathOrUrl: loaderData }); -+ return new DocxLoader({ filePathOrUrl: loaderData, chunkSize, chunkOverlap }); - } - case 'application/vnd.ms-excel': - case 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet': { -@@ -18,21 +20,21 @@ export async function createLoaderFromMimeType(loaderData, mimeType) { - throw new Error('Package `@llm-tools/embedjs-loader-msoffice` needs to be installed to load excel files'); - }); - createDebugMessages('embedjs:util:createLoaderFromMimeType')('Dynamically imported ExcelLoader'); -- return new ExcelLoader({ filePathOrUrl: loaderData }); -+ return new ExcelLoader({ filePathOrUrl: loaderData, chunkSize, chunkOverlap }); - } - case 'application/pdf': { - const { PdfLoader } = await import('@llm-tools/embedjs-loader-pdf').catch(() => { - throw new Error('Package `@llm-tools/embedjs-loader-pdf` needs to be installed to load PDF files'); - }); - createDebugMessages('embedjs:util:createLoaderFromMimeType')('Dynamically imported PdfLoader'); -- return new PdfLoader({ filePathOrUrl: loaderData }); -+ return new PdfLoader({ filePathOrUrl: loaderData, chunkSize, chunkOverlap }); - } - case 'application/vnd.openxmlformats-officedocument.presentationml.presentation': { - const { PptLoader } = await import('@llm-tools/embedjs-loader-msoffice').catch(() => { - throw new Error('Package `@llm-tools/embedjs-loader-msoffice` needs to be installed to load pptx files'); - }); - createDebugMessages('embedjs:util:createLoaderFromMimeType')('Dynamically imported PptLoader'); -- return new PptLoader({ filePathOrUrl: loaderData }); -+ return new PptLoader({ filePathOrUrl: loaderData, chunkSize, chunkOverlap }); - } - case 'text/plain': { - const fineType = mime.getType(loaderData); -@@ -42,24 +44,24 @@ export async function createLoaderFromMimeType(loaderData, mimeType) { - throw new Error('Package `@llm-tools/embedjs-loader-csv` needs to be installed to load CSV files'); - }); - createDebugMessages('embedjs:util:createLoaderFromMimeType')('Dynamically imported CsvLoader'); -- return new CsvLoader({ filePathOrUrl: loaderData }); -+ return new CsvLoader({ filePathOrUrl: loaderData, chunkSize, chunkOverlap }); - } -- else -- return new TextLoader({ text: loaderData }); -+ const content = fs.readFileSync(loaderData, 'utf-8'); -+ return new TextLoader({ text: content, chunkSize, chunkOverlap }); - } - case 'application/csv': { - const { CsvLoader } = await import('@llm-tools/embedjs-loader-csv').catch(() => { - throw new Error('Package `@llm-tools/embedjs-loader-csv` needs to be installed to load CSV files'); - }); - createDebugMessages('embedjs:util:createLoaderFromMimeType')('Dynamically imported CsvLoader'); -- return new CsvLoader({ filePathOrUrl: loaderData }); -+ return new CsvLoader({ filePathOrUrl: loaderData, chunkSize, chunkOverlap }); - } - case 'text/html': { - const { WebLoader } = await import('@llm-tools/embedjs-loader-web').catch(() => { - throw new Error('Package `@llm-tools/embedjs-loader-web` needs to be installed to load web documents'); - }); - createDebugMessages('embedjs:util:createLoaderFromMimeType')('Dynamically imported WebLoader'); -- return new WebLoader({ urlOrContent: loaderData }); -+ return new WebLoader({ urlOrContent: loaderData, chunkSize, chunkOverlap }); - } - case 'text/xml': { - const { SitemapLoader } = await import('@llm-tools/embedjs-loader-sitemap').catch(() => { -@@ -67,14 +69,14 @@ export async function createLoaderFromMimeType(loaderData, mimeType) { - }); - createDebugMessages('embedjs:util:createLoaderFromMimeType')('Dynamically imported SitemapLoader'); - if (await SitemapLoader.test(loaderData)) { -- return new SitemapLoader({ url: loaderData }); -+ return new SitemapLoader({ url: loaderData, chunkSize, chunkOverlap }); - } - //This is not a Sitemap but is still XML - const { XmlLoader } = await import('@llm-tools/embedjs-loader-xml').catch(() => { - throw new Error('Package `@llm-tools/embedjs-loader-xml` needs to be installed to load XML documents'); - }); - createDebugMessages('embedjs:util:createLoaderFromMimeType')('Dynamically imported XmlLoader'); -- return new XmlLoader({ filePathOrUrl: loaderData }); -+ return new XmlLoader({ filePathOrUrl: loaderData, chunkSize, chunkOverlap }); - } - case 'text/x-markdown': - case 'text/markdown': { -@@ -82,7 +84,7 @@ export async function createLoaderFromMimeType(loaderData, mimeType) { - throw new Error('Package `@llm-tools/embedjs-loader-markdown` needs to be installed to load markdown files'); - }); - createDebugMessages('embedjs:util:createLoaderFromMimeType')('Dynamically imported MarkdownLoader'); -- return new MarkdownLoader({ filePathOrUrl: loaderData }); -+ return new MarkdownLoader({ filePathOrUrl: loaderData, chunkSize, chunkOverlap }); - } - case 'image/png': - case 'image/jpeg': { diff --git a/electron.vite.config.ts b/electron.vite.config.ts index 7ba2b7ee..8c9efbe6 100644 --- a/electron.vite.config.ts +++ b/electron.vite.config.ts @@ -12,16 +12,16 @@ export default defineConfig({ plugins: [ externalizeDepsPlugin({ exclude: [ - '@llm-tools/embedjs', - '@llm-tools/embedjs-openai', - '@llm-tools/embedjs-loader-web', - '@llm-tools/embedjs-loader-markdown', - '@llm-tools/embedjs-loader-msoffice', - '@llm-tools/embedjs-loader-xml', - '@llm-tools/embedjs-loader-pdf', - '@llm-tools/embedjs-loader-sitemap', - '@llm-tools/embedjs-libsql', - '@llm-tools/embedjs-loader-image', + '@cherrystudio/embedjs', + '@cherrystudio/embedjs-openai', + '@cherrystudio/embedjs-loader-web', + '@cherrystudio/embedjs-loader-markdown', + '@cherrystudio/embedjs-loader-msoffice', + '@cherrystudio/embedjs-loader-xml', + '@cherrystudio/embedjs-loader-pdf', + '@cherrystudio/embedjs-loader-sitemap', + '@cherrystudio/embedjs-libsql', + '@cherrystudio/embedjs-loader-image', 'p-queue', 'webdav' ] diff --git a/package.json b/package.json index ca7dd4f7..36ae2c7f 100644 --- a/package.json +++ b/package.json @@ -50,20 +50,21 @@ "prepare": "husky" }, "dependencies": { + "@cherrystudio/embedjs": "^0.1.28", + "@cherrystudio/embedjs-libsql": "^0.1.28", + "@cherrystudio/embedjs-loader-csv": "^0.1.28", + "@cherrystudio/embedjs-loader-image": "^0.1.28", + "@cherrystudio/embedjs-loader-markdown": "^0.1.28", + "@cherrystudio/embedjs-loader-msoffice": "^0.1.28", + "@cherrystudio/embedjs-loader-pdf": "^0.1.28", + "@cherrystudio/embedjs-loader-sitemap": "^0.1.28", + "@cherrystudio/embedjs-loader-web": "^0.1.28", + "@cherrystudio/embedjs-loader-xml": "^0.1.28", + "@cherrystudio/embedjs-openai": "^0.1.28", "@electron-toolkit/utils": "^3.0.0", "@electron/notarize": "^2.5.0", "@google/generative-ai": "^0.21.0", "@langchain/community": "^0.3.36", - "@llm-tools/embedjs": "patch:@llm-tools/embedjs@npm%3A0.1.28#~/.yarn/patches/@llm-tools-embedjs-npm-0.1.28-8e4393fa2d.patch", - "@llm-tools/embedjs-libsql": "^0.1.28", - "@llm-tools/embedjs-loader-csv": "^0.1.28", - "@llm-tools/embedjs-loader-markdown": "patch:@llm-tools/embedjs-loader-markdown@npm%3A0.1.28#~/.yarn/patches/@llm-tools-embedjs-loader-markdown-npm-0.1.28-81647ffac6.patch", - "@llm-tools/embedjs-loader-msoffice": "^0.1.28", - "@llm-tools/embedjs-loader-pdf": "^0.1.28", - "@llm-tools/embedjs-loader-sitemap": "^0.1.28", - "@llm-tools/embedjs-loader-web": "^0.1.28", - "@llm-tools/embedjs-loader-xml": "^0.1.28", - "@llm-tools/embedjs-openai": "^0.1.28", "@modelcontextprotocol/sdk": "patch:@modelcontextprotocol/sdk@npm%3A1.6.1#~/.yarn/patches/@modelcontextprotocol-sdk-npm-1.6.1-b46313efe7.patch", "@notionhq/client": "^2.2.15", "@tryfabric/martian": "^1.2.4", @@ -102,7 +103,6 @@ "@google/genai": "^0.4.0", "@hello-pangea/dnd": "^16.6.0", "@kangfenmao/keyv-storage": "^0.1.0", - "@llm-tools/embedjs-loader-image": "^0.1.28", "@notionhq/client": "^2.2.15", "@reduxjs/toolkit": "^2.2.5", "@tavily/core": "patch:@tavily/core@npm%3A0.3.1#~/.yarn/patches/@tavily-core-npm-0.3.1-fe69bf2bea.patch", diff --git a/src/main/embeddings/Embeddings.ts b/src/main/embeddings/Embeddings.ts index 1cbbce9e..cf354450 100644 --- a/src/main/embeddings/Embeddings.ts +++ b/src/main/embeddings/Embeddings.ts @@ -1,4 +1,4 @@ -import type { BaseEmbeddings } from '@llm-tools/embedjs-interfaces' +import type { BaseEmbeddings } from '@cherrystudio/embedjs-interfaces' import { KnowledgeBaseParams } from '@types' import EmbeddingsFactory from './EmbeddingsFactory' diff --git a/src/main/embeddings/EmbeddingsFactory.ts b/src/main/embeddings/EmbeddingsFactory.ts index 6524f9b9..5924d00d 100644 --- a/src/main/embeddings/EmbeddingsFactory.ts +++ b/src/main/embeddings/EmbeddingsFactory.ts @@ -1,6 +1,6 @@ -import type { BaseEmbeddings } from '@llm-tools/embedjs-interfaces' -import { OpenAiEmbeddings } from '@llm-tools/embedjs-openai' -import { AzureOpenAiEmbeddings } from '@llm-tools/embedjs-openai/src/azure-openai-embeddings' +import type { BaseEmbeddings } from '@cherrystudio/embedjs-interfaces' +import { OpenAiEmbeddings } from '@cherrystudio/embedjs-openai' +import { AzureOpenAiEmbeddings } from '@cherrystudio/embedjs-openai/src/azure-openai-embeddings' import { getInstanceName } from '@main/utils' import { KnowledgeBaseParams } from '@types' diff --git a/src/main/embeddings/VoyageEmbeddings.ts b/src/main/embeddings/VoyageEmbeddings.ts index 7635c114..ce21afe5 100644 --- a/src/main/embeddings/VoyageEmbeddings.ts +++ b/src/main/embeddings/VoyageEmbeddings.ts @@ -1,5 +1,5 @@ +import { BaseEmbeddings } from '@cherrystudio/embedjs-interfaces' import { VoyageEmbeddings as _VoyageEmbeddings } from '@langchain/community/embeddings/voyage' -import { BaseEmbeddings } from '@llm-tools/embedjs-interfaces' export default class VoyageEmbeddings extends BaseEmbeddings { private model: _VoyageEmbeddings diff --git a/src/main/loader/draftsExportLoader.ts b/src/main/loader/draftsExportLoader.ts index 4ad1806b..5213b437 100644 --- a/src/main/loader/draftsExportLoader.ts +++ b/src/main/loader/draftsExportLoader.ts @@ -1,6 +1,6 @@ import * as fs from 'node:fs' -import { JsonLoader } from '@llm-tools/embedjs' +import { JsonLoader } from '@cherrystudio/embedjs' /** * Drafts 应用导出的笔记文件加载器 diff --git a/src/main/loader/epubLoader.ts b/src/main/loader/epubLoader.ts index ad2e92ba..bb62cba8 100644 --- a/src/main/loader/epubLoader.ts +++ b/src/main/loader/epubLoader.ts @@ -1,6 +1,6 @@ +import { BaseLoader } from '@cherrystudio/embedjs-interfaces' +import { cleanString } from '@cherrystudio/embedjs-utils' import { RecursiveCharacterTextSplitter } from '@langchain/textsplitters' -import { BaseLoader } from '@llm-tools/embedjs-interfaces' -import { cleanString } from '@llm-tools/embedjs-utils' import { getTempDir } from '@main/utils/file' import Logger from 'electron-log' import EPub from 'epub' diff --git a/src/main/loader/index.ts b/src/main/loader/index.ts index 5c289632..db837f41 100644 --- a/src/main/loader/index.ts +++ b/src/main/loader/index.ts @@ -1,8 +1,8 @@ import * as fs from 'node:fs' -import { JsonLoader, LocalPathLoader, RAGApplication, TextLoader } from '@llm-tools/embedjs' -import type { AddLoaderReturn } from '@llm-tools/embedjs-interfaces' -import { WebLoader } from '@llm-tools/embedjs-loader-web' +import { JsonLoader, LocalPathLoader, RAGApplication, TextLoader } from '@cherrystudio/embedjs' +import type { AddLoaderReturn } from '@cherrystudio/embedjs-interfaces' +import { WebLoader } from '@cherrystudio/embedjs-loader-web' import { LoaderReturn } from '@shared/config/types' import { FileType, KnowledgeBaseParams } from '@types' import Logger from 'electron-log' diff --git a/src/main/loader/odLoader.ts b/src/main/loader/odLoader.ts index 286fe34e..7e13420b 100644 --- a/src/main/loader/odLoader.ts +++ b/src/main/loader/odLoader.ts @@ -1,6 +1,6 @@ +import { BaseLoader } from '@cherrystudio/embedjs-interfaces' +import { cleanString } from '@cherrystudio/embedjs-utils' import { RecursiveCharacterTextSplitter } from '@langchain/textsplitters' -import { BaseLoader } from '@llm-tools/embedjs-interfaces' -import { cleanString } from '@llm-tools/embedjs-utils' import md5 from 'md5' import { OfficeParserConfig, parseOfficeAsync } from 'officeparser' diff --git a/src/main/reranker/BaseReranker.ts b/src/main/reranker/BaseReranker.ts index d31bb40b..54382908 100644 --- a/src/main/reranker/BaseReranker.ts +++ b/src/main/reranker/BaseReranker.ts @@ -1,4 +1,4 @@ -import type { ExtractChunkData } from '@llm-tools/embedjs-interfaces' +import type { ExtractChunkData } from '@cherrystudio/embedjs-interfaces' import { KnowledgeBaseParams } from '@types' export default abstract class BaseReranker { diff --git a/src/main/reranker/DefaultReranker.ts b/src/main/reranker/DefaultReranker.ts index aac0c65e..70a4d05a 100644 --- a/src/main/reranker/DefaultReranker.ts +++ b/src/main/reranker/DefaultReranker.ts @@ -1,4 +1,4 @@ -import type { ExtractChunkData } from '@llm-tools/embedjs-interfaces' +import type { ExtractChunkData } from '@cherrystudio/embedjs-interfaces' import { KnowledgeBaseParams } from '@types' import BaseReranker from './BaseReranker' diff --git a/src/main/reranker/JinaReranker.ts b/src/main/reranker/JinaReranker.ts index 3dfede19..ed14f474 100644 --- a/src/main/reranker/JinaReranker.ts +++ b/src/main/reranker/JinaReranker.ts @@ -1,4 +1,4 @@ -import { ExtractChunkData } from '@llm-tools/embedjs-interfaces' +import { ExtractChunkData } from '@cherrystudio/embedjs-interfaces' import { KnowledgeBaseParams } from '@types' import axios from 'axios' diff --git a/src/main/reranker/Reranker.ts b/src/main/reranker/Reranker.ts index c07b1567..f9f37cfc 100644 --- a/src/main/reranker/Reranker.ts +++ b/src/main/reranker/Reranker.ts @@ -1,4 +1,4 @@ -import type { ExtractChunkData } from '@llm-tools/embedjs-interfaces' +import type { ExtractChunkData } from '@cherrystudio/embedjs-interfaces' import { KnowledgeBaseParams } from '@types' import BaseReranker from './BaseReranker' diff --git a/src/main/reranker/SiliconFlowReranker.ts b/src/main/reranker/SiliconFlowReranker.ts index 1e47cca9..bba8d540 100644 --- a/src/main/reranker/SiliconFlowReranker.ts +++ b/src/main/reranker/SiliconFlowReranker.ts @@ -1,4 +1,4 @@ -import type { ExtractChunkData } from '@llm-tools/embedjs-interfaces' +import type { ExtractChunkData } from '@cherrystudio/embedjs-interfaces' import { KnowledgeBaseParams } from '@types' import axios from 'axios' diff --git a/src/main/reranker/VoyageReranker.ts b/src/main/reranker/VoyageReranker.ts index 71057882..c48fbb9b 100644 --- a/src/main/reranker/VoyageReranker.ts +++ b/src/main/reranker/VoyageReranker.ts @@ -1,4 +1,4 @@ -import { ExtractChunkData } from '@llm-tools/embedjs-interfaces' +import { ExtractChunkData } from '@cherrystudio/embedjs-interfaces' import { KnowledgeBaseParams } from '@types' import axios from 'axios' diff --git a/src/main/services/KnowledgeService.ts b/src/main/services/KnowledgeService.ts index 098f3170..b224458a 100644 --- a/src/main/services/KnowledgeService.ts +++ b/src/main/services/KnowledgeService.ts @@ -16,11 +16,11 @@ import * as fs from 'node:fs' import path from 'node:path' -import { RAGApplication, RAGApplicationBuilder, TextLoader } from '@llm-tools/embedjs' -import type { ExtractChunkData } from '@llm-tools/embedjs-interfaces' -import { LibSqlDb } from '@llm-tools/embedjs-libsql' -import { SitemapLoader } from '@llm-tools/embedjs-loader-sitemap' -import { WebLoader } from '@llm-tools/embedjs-loader-web' +import { RAGApplication, RAGApplicationBuilder, TextLoader } from '@cherrystudio/embedjs' +import type { ExtractChunkData } from '@cherrystudio/embedjs-interfaces' +import { LibSqlDb } from '@cherrystudio/embedjs-libsql' +import { SitemapLoader } from '@cherrystudio/embedjs-loader-sitemap' +import { WebLoader } from '@cherrystudio/embedjs-loader-web' import Embeddings from '@main/embeddings/Embeddings' import { addFileLoader } from '@main/loader' import Reranker from '@main/reranker/Reranker' diff --git a/src/preload/index.d.ts b/src/preload/index.d.ts index 43d36651..cfc5acad 100644 --- a/src/preload/index.d.ts +++ b/src/preload/index.d.ts @@ -1,6 +1,6 @@ +import { ExtractChunkData } from '@cherrystudio/embedjs-interfaces' import { ElectronAPI } from '@electron-toolkit/preload' import type { FileMetadataResponse, ListFilesResponse, UploadFileResponse } from '@google/generative-ai/server' -import { ExtractChunkData } from '@llm-tools/embedjs-interfaces' import type { MCPServer, MCPTool } from '@renderer/types' import { AppInfo, FileType, KnowledgeBaseParams, KnowledgeItem, LanguageVarious, WebDavConfig } from '@renderer/types' import type { LoaderReturn } from '@shared/config/types' diff --git a/src/preload/index.ts b/src/preload/index.ts index fbfbc6d3..bff48851 100644 --- a/src/preload/index.ts +++ b/src/preload/index.ts @@ -1,5 +1,5 @@ +import type { ExtractChunkData } from '@cherrystudio/embedjs-interfaces' import { electronAPI } from '@electron-toolkit/preload' -import type { ExtractChunkData } from '@llm-tools/embedjs-interfaces' import { FileType, KnowledgeBaseParams, KnowledgeItem, MCPServer, Shortcut, WebDavConfig } from '@types' import { contextBridge, ipcRenderer, OpenDialogOptions, shell } from 'electron' import { CreateDirectoryOptions } from 'webdav' diff --git a/src/renderer/src/pages/knowledge/components/KnowledgeSearchPopup.tsx b/src/renderer/src/pages/knowledge/components/KnowledgeSearchPopup.tsx index af976419..e01e6b46 100644 --- a/src/renderer/src/pages/knowledge/components/KnowledgeSearchPopup.tsx +++ b/src/renderer/src/pages/knowledge/components/KnowledgeSearchPopup.tsx @@ -1,4 +1,4 @@ -import type { ExtractChunkData } from '@llm-tools/embedjs-interfaces' +import type { ExtractChunkData } from '@cherrystudio/embedjs-interfaces' import { TopView } from '@renderer/components/TopView' import { DEFAULT_KNOWLEDGE_THRESHOLD } from '@renderer/config/constant' import { getFileFromUrl, getKnowledgeBaseParams } from '@renderer/services/KnowledgeService' diff --git a/src/renderer/src/services/KnowledgeService.ts b/src/renderer/src/services/KnowledgeService.ts index 3ebe542b..0deb8730 100644 --- a/src/renderer/src/services/KnowledgeService.ts +++ b/src/renderer/src/services/KnowledgeService.ts @@ -1,4 +1,4 @@ -import type { ExtractChunkData } from '@llm-tools/embedjs-interfaces' +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 AiProvider from '@renderer/providers/AiProvider' diff --git a/yarn.lock b/yarn.lock index 1dd9b12b..44752ba3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -451,6 +451,176 @@ __metadata: languageName: unknown linkType: soft +"@cherrystudio/embedjs-interfaces@npm:0.1.29": + version: 0.1.29 + resolution: "@cherrystudio/embedjs-interfaces@npm:0.1.29" + dependencies: + "@langchain/core": "npm:^0.3.26" + debug: "npm:^4.4.0" + md5: "npm:^2.3.0" + uuid: "npm:^11.0.3" + checksum: 10c0/df7ac19aecae137e5af427bb1605232993ef1510e3d41875cb8dd604e7a692778758e5f640a6ab839aaa4193c21012a50b7dfb0aa42c434e668f99faa0fd04d7 + languageName: node + linkType: hard + +"@cherrystudio/embedjs-libsql@npm:^0.1.28": + version: 0.1.29 + resolution: "@cherrystudio/embedjs-libsql@npm:0.1.29" + dependencies: + "@cherrystudio/embedjs-interfaces": "npm:0.1.29" + "@cherrystudio/embedjs-utils": "npm:0.1.29" + "@libsql/client": "npm:^0.14.0" + debug: "npm:^4.4.0" + checksum: 10c0/655da13d5e192bb0d46e36cbe1ee444b290f6d98d39ad4ac72004fa0aa1a2f5c6dc7a41dd2a9631cc80014501e3423fbd3a822f9fcb331617ab0a43db9692410 + languageName: node + linkType: hard + +"@cherrystudio/embedjs-loader-csv@npm:^0.1.28": + version: 0.1.29 + resolution: "@cherrystudio/embedjs-loader-csv@npm:0.1.29" + dependencies: + "@cherrystudio/embedjs-interfaces": "npm:0.1.29" + "@cherrystudio/embedjs-utils": "npm:0.1.29" + csv-parse: "npm:^5.6.0" + debug: "npm:^4.4.0" + md5: "npm:^2.3.0" + checksum: 10c0/7c54791fe836839bf3b6a882a9e4c5656b4f30e54aa4e8967b380bc858fd76e03b2ca39b050bc5c06ffbc9e0c722d91d5dd0acf9edf576ff279805d718dfd437 + languageName: node + linkType: hard + +"@cherrystudio/embedjs-loader-image@npm:^0.1.28": + version: 0.1.29 + resolution: "@cherrystudio/embedjs-loader-image@npm:0.1.29" + dependencies: + "@cherrystudio/embedjs-interfaces": "npm:0.1.29" + "@cherrystudio/embedjs-utils": "npm:0.1.29" + "@langchain/core": "npm:^0.3.26" + debug: "npm:^4.4.0" + exifremove: "npm:^1.0.1" + md5: "npm:^2.3.0" + mime: "npm:^4.0.6" + stream-mime-type: "npm:^2.0.0" + checksum: 10c0/cbc43bf0be38ccd231a35ee06f160fee4628267a912f222c2c326e6d383a0477e1faad1910c9cd485ef8857b63d4404a9797c7e6a9661773345a4cca1ce956cf + languageName: node + linkType: hard + +"@cherrystudio/embedjs-loader-markdown@npm:^0.1.28": + version: 0.1.29 + resolution: "@cherrystudio/embedjs-loader-markdown@npm:0.1.29" + dependencies: + "@cherrystudio/embedjs-interfaces": "npm:0.1.29" + "@cherrystudio/embedjs-loader-web": "npm:0.1.29" + debug: "npm:^4.4.0" + md5: "npm:^2.3.0" + micromark: "npm:^4.0.1" + micromark-extension-gfm: "npm:^3.0.0" + micromark-extension-mdx-jsx: "npm:^3.0.1" + checksum: 10c0/068393c00321a03a7b7881bb9b4b3b115440a91496b4fef43ad9b7f352c763aa59a6a33f69c9db39f2ed4c0a727f7e1dcd28448f7a446a5ec6a62edbd035f5a8 + languageName: node + linkType: hard + +"@cherrystudio/embedjs-loader-msoffice@npm:^0.1.28": + version: 0.1.29 + resolution: "@cherrystudio/embedjs-loader-msoffice@npm:0.1.29" + dependencies: + "@cherrystudio/embedjs-interfaces": "npm:0.1.29" + "@cherrystudio/embedjs-utils": "npm:0.1.29" + "@langchain/textsplitters": "npm:^0.1.0" + md5: "npm:^2.3.0" + office-text-extractor: "npm:^3.0.3" + checksum: 10c0/be97eb2278d29f06b569b0aa2fd2b3640caf43207268f5c5cbe16fb77776fe026e4e0d5a9c6360f61c4af439561022f6f4becbe97c2b903d1d446021ab3bf38f + languageName: node + linkType: hard + +"@cherrystudio/embedjs-loader-pdf@npm:^0.1.28": + version: 0.1.29 + resolution: "@cherrystudio/embedjs-loader-pdf@npm:0.1.29" + dependencies: + "@cherrystudio/embedjs-interfaces": "npm:0.1.29" + "@cherrystudio/embedjs-utils": "npm:0.1.29" + "@langchain/textsplitters": "npm:^0.1.0" + md5: "npm:^2.3.0" + office-text-extractor: "npm:^3.0.3" + checksum: 10c0/cd45963f9405cd1b817f9539ad876dd32e214d21b651459822fc9f829105dc4934daf1aded9cc7084efd9dc914901b4b72fc52a7c5aa9fb550454b0e465844cf + languageName: node + linkType: hard + +"@cherrystudio/embedjs-loader-sitemap@npm:^0.1.28": + version: 0.1.29 + resolution: "@cherrystudio/embedjs-loader-sitemap@npm:0.1.29" + dependencies: + "@cherrystudio/embedjs-interfaces": "npm:0.1.29" + "@cherrystudio/embedjs-loader-web": "npm:0.1.29" + debug: "npm:^4.4.0" + md5: "npm:^2.3.0" + sitemapper: "npm:^3.2.20" + checksum: 10c0/2cb5fba68f3e89026b08274f3d286b46c44192f3e8b499d72984e63f36d174bdc7da6c8122c922b8fd5660fa0bc1fbbdbaecc37dae134467d2a501fd1642f0d2 + languageName: node + linkType: hard + +"@cherrystudio/embedjs-loader-web@npm:0.1.29, @cherrystudio/embedjs-loader-web@npm:^0.1.28": + version: 0.1.29 + resolution: "@cherrystudio/embedjs-loader-web@npm:0.1.29" + dependencies: + "@cherrystudio/embedjs-interfaces": "npm:0.1.29" + "@cherrystudio/embedjs-utils": "npm:0.1.29" + "@langchain/textsplitters": "npm:^0.1.0" + debug: "npm:^4.4.0" + html-to-text: "npm:^9.0.5" + md5: "npm:^2.3.0" + checksum: 10c0/a15529e45e309993644db7ee8546f970c0d94fd54baf5044d650a0af66cddb9729af5f3a3fb115c13cd7b7b2ab38bb3809cc088d4c6346e9ca33e478845820f3 + languageName: node + linkType: hard + +"@cherrystudio/embedjs-loader-xml@npm:^0.1.28": + version: 0.1.29 + resolution: "@cherrystudio/embedjs-loader-xml@npm:0.1.29" + dependencies: + "@cherrystudio/embedjs-interfaces": "npm:0.1.29" + debug: "npm:^4.4.0" + fast-xml-parser: "npm:^4.5.1" + md5: "npm:^2.3.0" + checksum: 10c0/cf24dc1b48d55197f3773a9f7490c521461c6cade86869a333bac6c05dae10529ecdbaa03dbfce0994e07215fe343c9801b81356a6141965aa10d50fe2e6c858 + languageName: node + linkType: hard + +"@cherrystudio/embedjs-openai@npm:^0.1.28": + version: 0.1.29 + resolution: "@cherrystudio/embedjs-openai@npm:0.1.29" + dependencies: + "@cherrystudio/embedjs-interfaces": "npm:0.1.29" + "@langchain/core": "npm:^0.3.26" + "@langchain/openai": "npm:^0.3.16" + debug: "npm:^4.4.0" + checksum: 10c0/10451eb9e0c8f613ea3829b478120890ee44e2a9c7707a48797c21cbd4f4479ad56f86bd38099762900ddf17d42758dba938325eaaa9fae66f71e033c6b64dd5 + languageName: node + linkType: hard + +"@cherrystudio/embedjs-utils@npm:0.1.29": + version: 0.1.29 + resolution: "@cherrystudio/embedjs-utils@npm:0.1.29" + dependencies: + "@cherrystudio/embedjs-interfaces": "npm:0.1.29" + checksum: 10c0/1b8d8e38207e7588ee134c316bc566dfb68d56023887be61793480cdeac0fc5a2dcc3c72f7727daae801abcaf16e8518ab9dcb7b0b0f7d3a16473a8830ba9dff + languageName: node + linkType: hard + +"@cherrystudio/embedjs@npm:^0.1.28": + version: 0.1.29 + resolution: "@cherrystudio/embedjs@npm:0.1.29" + dependencies: + "@cherrystudio/embedjs-interfaces": "npm:0.1.29" + "@cherrystudio/embedjs-utils": "npm:0.1.29" + "@langchain/textsplitters": "npm:^0.1.0" + debug: "npm:^4.4.0" + langchain: "npm:^0.3.8" + md5: "npm:^2.3.0" + mime: "npm:^4.0.6" + stream-mime-type: "npm:^2.0.0" + checksum: 10c0/01487ab886e7c5c260fc65dee0d67407988e58fa82a1f0fdc4a332548a570cc63f5d39cc87878a7e3272be547a306fee5ec6caa805614eb4e139ce1259b7f6c9 + languageName: node + linkType: hard + "@develar/schema-utils@npm:~2.6.5": version: 2.6.5 resolution: "@develar/schema-utils@npm:2.6.5" @@ -2167,207 +2337,6 @@ __metadata: languageName: node linkType: hard -"@llm-tools/embedjs-interfaces@npm:0.1.28": - version: 0.1.28 - resolution: "@llm-tools/embedjs-interfaces@npm:0.1.28" - dependencies: - "@langchain/core": "npm:^0.3.26" - debug: "npm:^4.4.0" - md5: "npm:^2.3.0" - uuid: "npm:^11.0.3" - checksum: 10c0/51c89f2254da60aa01d911a22e8fe852564609525b95090f71385e653e42ef87b99af8d6450debfd0d5a4baa43ebeef8136109fefb09f19551a969e397d43dc1 - languageName: node - linkType: hard - -"@llm-tools/embedjs-libsql@npm:^0.1.28": - version: 0.1.28 - resolution: "@llm-tools/embedjs-libsql@npm:0.1.28" - dependencies: - "@libsql/client": "npm:^0.14.0" - "@llm-tools/embedjs-interfaces": "npm:0.1.28" - "@llm-tools/embedjs-utils": "npm:0.1.28" - debug: "npm:^4.4.0" - checksum: 10c0/ec2c50d89a9d601618d153839fc1545bef38a8a7475f2b6ed21a5d876d7964b958950872df64719a3a851a6d48a3a613233c854a091726ebdf2d992c1fdadf7f - languageName: node - linkType: hard - -"@llm-tools/embedjs-loader-csv@npm:^0.1.28": - version: 0.1.28 - resolution: "@llm-tools/embedjs-loader-csv@npm:0.1.28" - dependencies: - "@llm-tools/embedjs-interfaces": "npm:0.1.28" - "@llm-tools/embedjs-utils": "npm:0.1.28" - csv-parse: "npm:^5.6.0" - debug: "npm:^4.4.0" - md5: "npm:^2.3.0" - checksum: 10c0/dfa0f6825e0d3da9b703381d7e1c9765aea6b99cea2663fc0134e77b2b8bf331f8d8718f812e4efc31416e21450d67b2bf7fe3138a48146b871ab646aa3fd87e - languageName: node - linkType: hard - -"@llm-tools/embedjs-loader-image@npm:^0.1.28": - version: 0.1.28 - resolution: "@llm-tools/embedjs-loader-image@npm:0.1.28" - dependencies: - "@langchain/core": "npm:^0.3.26" - "@llm-tools/embedjs-interfaces": "npm:0.1.28" - "@llm-tools/embedjs-utils": "npm:0.1.28" - debug: "npm:^4.4.0" - exifremove: "npm:^1.0.1" - md5: "npm:^2.3.0" - mime: "npm:^4.0.6" - stream-mime-type: "npm:^2.0.0" - checksum: 10c0/e9414dde0d10afe1541bfe464b80f5cb61ec523f28dce62ab931a3f4ffde93c5589fde8e7a7f5751e7dc20d68fe2d28883925ba65e2542ee9d43002591568af1 - languageName: node - linkType: hard - -"@llm-tools/embedjs-loader-markdown@npm:0.1.28": - version: 0.1.28 - resolution: "@llm-tools/embedjs-loader-markdown@npm:0.1.28" - dependencies: - "@llm-tools/embedjs-interfaces": "npm:0.1.28" - "@llm-tools/embedjs-loader-web": "npm:0.1.28" - debug: "npm:^4.4.0" - md5: "npm:^2.3.0" - micromark: "npm:^4.0.1" - micromark-extension-gfm: "npm:^3.0.0" - micromark-extension-mdx-jsx: "npm:^3.0.1" - checksum: 10c0/deb86848c57cdaf1aa89cd3382505aa4cc53c170d68105a97da1f6ebaff508ed6db1f164004ae1e0426266c29e15435a5bc092eb37ca4fb81ee574940daf1c0e - languageName: node - linkType: hard - -"@llm-tools/embedjs-loader-markdown@patch:@llm-tools/embedjs-loader-markdown@npm%3A0.1.28#~/.yarn/patches/@llm-tools-embedjs-loader-markdown-npm-0.1.28-81647ffac6.patch": - version: 0.1.28 - resolution: "@llm-tools/embedjs-loader-markdown@patch:@llm-tools/embedjs-loader-markdown@npm%3A0.1.28#~/.yarn/patches/@llm-tools-embedjs-loader-markdown-npm-0.1.28-81647ffac6.patch::version=0.1.28&hash=9c7dea" - dependencies: - "@llm-tools/embedjs-interfaces": "npm:0.1.28" - "@llm-tools/embedjs-loader-web": "npm:0.1.28" - debug: "npm:^4.4.0" - md5: "npm:^2.3.0" - micromark: "npm:^4.0.1" - micromark-extension-gfm: "npm:^3.0.0" - micromark-extension-mdx-jsx: "npm:^3.0.1" - checksum: 10c0/4be7354294c9cc1ee5b93e0bf49a218894e5a0ad63f344300a9277751fb7517d7ff9ab51594eb63f548d303cec0c747507a5df29bd92deb506bf9829f1675f67 - languageName: node - linkType: hard - -"@llm-tools/embedjs-loader-msoffice@npm:^0.1.28": - version: 0.1.28 - resolution: "@llm-tools/embedjs-loader-msoffice@npm:0.1.28" - dependencies: - "@langchain/textsplitters": "npm:^0.1.0" - "@llm-tools/embedjs-interfaces": "npm:0.1.28" - "@llm-tools/embedjs-utils": "npm:0.1.28" - md5: "npm:^2.3.0" - office-text-extractor: "npm:^3.0.3" - checksum: 10c0/dbc511938c16ebfcfe9cfedfe68b64b15e2290474092c3600cf290ccb3da5a116a7bd2d469a7f26ee24882cc6835260ad3129ddd54c0f50cc96ef1fa0b142abe - languageName: node - linkType: hard - -"@llm-tools/embedjs-loader-pdf@npm:^0.1.28": - version: 0.1.28 - resolution: "@llm-tools/embedjs-loader-pdf@npm:0.1.28" - dependencies: - "@langchain/textsplitters": "npm:^0.1.0" - "@llm-tools/embedjs-interfaces": "npm:0.1.28" - "@llm-tools/embedjs-utils": "npm:0.1.28" - md5: "npm:^2.3.0" - office-text-extractor: "npm:^3.0.3" - checksum: 10c0/3ac930561c137b2cc91dc22782c83857e60441a15710d3913351c69f4960dd50ad31a79a1c5f48c2784daf400fd86a03483b80ae3c375e085b1d42a759c9efbf - languageName: node - linkType: hard - -"@llm-tools/embedjs-loader-sitemap@npm:^0.1.28": - version: 0.1.28 - resolution: "@llm-tools/embedjs-loader-sitemap@npm:0.1.28" - dependencies: - "@llm-tools/embedjs-interfaces": "npm:0.1.28" - "@llm-tools/embedjs-loader-web": "npm:0.1.28" - debug: "npm:^4.4.0" - md5: "npm:^2.3.0" - sitemapper: "npm:^3.2.20" - checksum: 10c0/007f45d02e1200b7cca0bd2f21514910e4b0243126b553404f55c80196b82e673ce09ef1c77f515ab6a6a9397f06ee58799ac8c5f885635ffa759fcd14076fc2 - languageName: node - linkType: hard - -"@llm-tools/embedjs-loader-web@npm:0.1.28, @llm-tools/embedjs-loader-web@npm:^0.1.28": - version: 0.1.28 - resolution: "@llm-tools/embedjs-loader-web@npm:0.1.28" - dependencies: - "@langchain/textsplitters": "npm:^0.1.0" - "@llm-tools/embedjs-interfaces": "npm:0.1.28" - "@llm-tools/embedjs-utils": "npm:0.1.28" - debug: "npm:^4.4.0" - html-to-text: "npm:^9.0.5" - md5: "npm:^2.3.0" - checksum: 10c0/2abf61ebfa8e2f145730cc2676cf49f5f84b32b5f1c90b5dc58c820b13ab02c10f31bca9891fdb675a7f66a421bb407a0a192d069ea48184eb2b4b4b995382bd - languageName: node - linkType: hard - -"@llm-tools/embedjs-loader-xml@npm:^0.1.28": - version: 0.1.28 - resolution: "@llm-tools/embedjs-loader-xml@npm:0.1.28" - dependencies: - "@llm-tools/embedjs-interfaces": "npm:0.1.28" - debug: "npm:^4.4.0" - fast-xml-parser: "npm:^4.5.1" - md5: "npm:^2.3.0" - checksum: 10c0/20595caa970a1f715f462a66f949e5f9d931431171cd6a55b70f6aeb9166a84233b397d688594de3764974d9d94c066d104f0e3b0c2b79967404cf452b1f7a93 - languageName: node - linkType: hard - -"@llm-tools/embedjs-openai@npm:^0.1.28": - version: 0.1.28 - resolution: "@llm-tools/embedjs-openai@npm:0.1.28" - dependencies: - "@langchain/core": "npm:^0.3.26" - "@langchain/openai": "npm:^0.3.16" - "@llm-tools/embedjs-interfaces": "npm:0.1.28" - debug: "npm:^4.4.0" - checksum: 10c0/cc8a703acf447a568f30b218ccb1935529a956177a8adac08f7a67fc4f6257f2a61ed21218341835250c9610566e3219bc8cf866a04423f3099631a85f29c32c - languageName: node - linkType: hard - -"@llm-tools/embedjs-utils@npm:0.1.28": - version: 0.1.28 - resolution: "@llm-tools/embedjs-utils@npm:0.1.28" - dependencies: - "@llm-tools/embedjs-interfaces": "npm:0.1.28" - checksum: 10c0/7d97b36be831d894102fed34a7e7078eade509b4fbd78d991160f60b2d2d8f3136e6ad93edcf64a3d2b7be346c83cdae9b0ecb63d35aa02eb38dfb4f9cff6117 - languageName: node - linkType: hard - -"@llm-tools/embedjs@npm:0.1.28": - version: 0.1.28 - resolution: "@llm-tools/embedjs@npm:0.1.28" - dependencies: - "@langchain/textsplitters": "npm:^0.1.0" - "@llm-tools/embedjs-interfaces": "npm:0.1.28" - "@llm-tools/embedjs-utils": "npm:0.1.28" - debug: "npm:^4.4.0" - langchain: "npm:^0.3.8" - md5: "npm:^2.3.0" - mime: "npm:^4.0.6" - stream-mime-type: "npm:^2.0.0" - checksum: 10c0/0ade20a97b987c5b24175e1e46c7f0917e91b0acde712e9a759fb9fe7f48b04a79fca28c2e4cc8702a25e6cd7fba8a9351bf1f7e5bbf1373f0f60de047703d7a - languageName: node - linkType: hard - -"@llm-tools/embedjs@patch:@llm-tools/embedjs@npm%3A0.1.28#~/.yarn/patches/@llm-tools-embedjs-npm-0.1.28-8e4393fa2d.patch": - version: 0.1.28 - resolution: "@llm-tools/embedjs@patch:@llm-tools/embedjs@npm%3A0.1.28#~/.yarn/patches/@llm-tools-embedjs-npm-0.1.28-8e4393fa2d.patch::version=0.1.28&hash=51ffc6" - dependencies: - "@langchain/textsplitters": "npm:^0.1.0" - "@llm-tools/embedjs-interfaces": "npm:0.1.28" - "@llm-tools/embedjs-utils": "npm:0.1.28" - debug: "npm:^4.4.0" - langchain: "npm:^0.3.8" - md5: "npm:^2.3.0" - mime: "npm:^4.0.6" - stream-mime-type: "npm:^2.0.0" - checksum: 10c0/2af2bcd2f6476eaf02ed9ff5e189ecb03d663146cd5229c3c32b45fef8a37fd84a48193f8d067eaf9339e89a5035502c4ff48d2370dfd655294daa8b4e365841 - languageName: node - linkType: hard - "@malept/cross-spawn-promise@npm:^1.1.0": version: 1.1.1 resolution: "@malept/cross-spawn-promise@npm:1.1.1" @@ -3798,6 +3767,17 @@ __metadata: "@agentic/searxng": "npm:^7.3.3" "@agentic/tavily": "npm:^7.3.3" "@anthropic-ai/sdk": "npm:^0.38.0" + "@cherrystudio/embedjs": "npm:^0.1.28" + "@cherrystudio/embedjs-libsql": "npm:^0.1.28" + "@cherrystudio/embedjs-loader-csv": "npm:^0.1.28" + "@cherrystudio/embedjs-loader-image": "npm:^0.1.28" + "@cherrystudio/embedjs-loader-markdown": "npm:^0.1.28" + "@cherrystudio/embedjs-loader-msoffice": "npm:^0.1.28" + "@cherrystudio/embedjs-loader-pdf": "npm:^0.1.28" + "@cherrystudio/embedjs-loader-sitemap": "npm:^0.1.28" + "@cherrystudio/embedjs-loader-web": "npm:^0.1.28" + "@cherrystudio/embedjs-loader-xml": "npm:^0.1.28" + "@cherrystudio/embedjs-openai": "npm:^0.1.28" "@electron-toolkit/eslint-config-prettier": "npm:^3.0.0" "@electron-toolkit/eslint-config-ts": "npm:^3.0.0" "@electron-toolkit/preload": "npm:^3.0.0" @@ -3812,17 +3792,6 @@ __metadata: "@hello-pangea/dnd": "npm:^16.6.0" "@kangfenmao/keyv-storage": "npm:^0.1.0" "@langchain/community": "npm:^0.3.36" - "@llm-tools/embedjs": "patch:@llm-tools/embedjs@npm%3A0.1.28#~/.yarn/patches/@llm-tools-embedjs-npm-0.1.28-8e4393fa2d.patch" - "@llm-tools/embedjs-libsql": "npm:^0.1.28" - "@llm-tools/embedjs-loader-csv": "npm:^0.1.28" - "@llm-tools/embedjs-loader-image": "npm:^0.1.28" - "@llm-tools/embedjs-loader-markdown": "patch:@llm-tools/embedjs-loader-markdown@npm%3A0.1.28#~/.yarn/patches/@llm-tools-embedjs-loader-markdown-npm-0.1.28-81647ffac6.patch" - "@llm-tools/embedjs-loader-msoffice": "npm:^0.1.28" - "@llm-tools/embedjs-loader-pdf": "npm:^0.1.28" - "@llm-tools/embedjs-loader-sitemap": "npm:^0.1.28" - "@llm-tools/embedjs-loader-web": "npm:^0.1.28" - "@llm-tools/embedjs-loader-xml": "npm:^0.1.28" - "@llm-tools/embedjs-openai": "npm:^0.1.28" "@modelcontextprotocol/sdk": "patch:@modelcontextprotocol/sdk@npm%3A1.6.1#~/.yarn/patches/@modelcontextprotocol-sdk-npm-1.6.1-b46313efe7.patch" "@notionhq/client": "npm:^2.2.15" "@reduxjs/toolkit": "npm:^2.2.5"