Compare commits

...

2 Commits

Author SHA1 Message Date
kangfenmao
63488e6fab chore(version): 0.9.3 2024-12-31 00:38:20 +08:00
kangfenmao
6d9013f0a1 fix: 知识库无法向量化 MD 文件 #569 2024-12-31 00:11:51 +08:00
8 changed files with 49 additions and 9 deletions

View File

@@ -0,0 +1,19 @@
diff --git a/src/markdown-loader.js b/src/markdown-loader.js
index 8a17cb7f5a68d90d2be21682db6e95ce22a3e71c..9ee868ef9d4ff3dc914b3abc3c8006deb1e9c6c6 100644
--- a/src/markdown-loader.js
+++ b/src/markdown-loader.js
@@ -1,5 +1,4 @@
import { micromark } from 'micromark';
-import { mdxJsx } from 'micromark-extension-mdx-jsx';
import { gfmHtml, gfm } from 'micromark-extension-gfm';
import createDebugMessages from 'debug';
import fs from 'node:fs';
@@ -21,7 +20,7 @@ export class MarkdownLoader extends BaseLoader {
? (await getSafe(this.filePathOrUrl, { format: 'buffer' })).body
: await stream2buffer(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,

View File

@@ -79,3 +79,8 @@ afterSign: scripts/notarize.js
releaseInfo: releaseInfo:
releaseNotes: | releaseNotes: |
增加 Genspark 小程序 增加 Genspark 小程序
用户消息支持编辑并重新发送
助手支持自定义请求参数 by @n2yt584v2t4nh7y
支持编辑话题总结提示词
修复 Windows 用户安装后无法打开的问题
修复知识库无法向量化MD文件的问题

View File

@@ -1,6 +1,6 @@
{ {
"name": "CherryStudio", "name": "CherryStudio",
"version": "0.9.2", "version": "0.9.3",
"private": true, "private": true,
"description": "A powerful AI assistant for producer.", "description": "A powerful AI assistant for producer.",
"main": "./out/main/index.js", "main": "./out/main/index.js",
@@ -53,7 +53,7 @@
"@llm-tools/embedjs": "patch:@llm-tools/embedjs@npm%3A0.1.25#~/.yarn/patches/@llm-tools-embedjs-npm-0.1.25-ec5645cf36.patch", "@llm-tools/embedjs": "patch:@llm-tools/embedjs@npm%3A0.1.25#~/.yarn/patches/@llm-tools-embedjs-npm-0.1.25-ec5645cf36.patch",
"@llm-tools/embedjs-libsql": "patch:@llm-tools/embedjs-libsql@npm%3A0.1.25#~/.yarn/patches/@llm-tools-embedjs-libsql-npm-0.1.25-fad000d74c.patch", "@llm-tools/embedjs-libsql": "patch:@llm-tools/embedjs-libsql@npm%3A0.1.25#~/.yarn/patches/@llm-tools-embedjs-libsql-npm-0.1.25-fad000d74c.patch",
"@llm-tools/embedjs-loader-csv": "^0.1.25", "@llm-tools/embedjs-loader-csv": "^0.1.25",
"@llm-tools/embedjs-loader-markdown": "^0.1.25", "@llm-tools/embedjs-loader-markdown": "patch:@llm-tools/embedjs-loader-markdown@npm%3A0.1.25#~/.yarn/patches/@llm-tools-embedjs-loader-markdown-npm-0.1.25-d1d536d640.patch",
"@llm-tools/embedjs-loader-msoffice": "^0.1.25", "@llm-tools/embedjs-loader-msoffice": "^0.1.25",
"@llm-tools/embedjs-loader-pdf": "^0.1.25", "@llm-tools/embedjs-loader-pdf": "^0.1.25",
"@llm-tools/embedjs-loader-sitemap": "^0.1.25", "@llm-tools/embedjs-loader-sitemap": "^0.1.25",

View File

@@ -122,7 +122,7 @@ class KnowledgeService {
return await ragApplication.addLoader(new ExcelLoader({ filePathOrUrl: file.path }) as any, forceReload) return await ragApplication.addLoader(new ExcelLoader({ filePathOrUrl: file.path }) as any, forceReload)
} }
if (['.md', '.mdx'].includes(file.ext)) { if (['.md'].includes(file.ext)) {
return await ragApplication.addLoader(new MarkdownLoader({ filePathOrUrl: file.path }) as any, forceReload) return await ragApplication.addLoader(new MarkdownLoader({ filePathOrUrl: file.path }) as any, forceReload)
} }

View File

@@ -62,6 +62,7 @@ const KnowledgeBaseButton: FC<Props> = ({ selectedBase, onSelect, disabled, Tool
<Popover <Popover
placement="top" placement="top"
content={<KnowledgeBaseSelector selectedBase={selectedBase} onSelect={onSelect} />} content={<KnowledgeBaseSelector selectedBase={selectedBase} onSelect={onSelect} />}
overlayStyle={{ maxWidth: 400 }}
trigger="click"> trigger="click">
<ToolbarButton type="text" onClick={() => selectedBase && onSelect(undefined)} disabled={disabled}> <ToolbarButton type="text" onClick={() => selectedBase && onSelect(undefined)} disabled={disabled}>
<FileSearchOutlined style={{ color: selectedBase ? 'var(--color-link)' : 'var(--color-icon)' }} /> <FileSearchOutlined style={{ color: selectedBase ? 'var(--color-link)' : 'var(--color-icon)' }} />

View File

@@ -29,7 +29,7 @@ interface KnowledgeContentProps {
selectedBase: KnowledgeBase selectedBase: KnowledgeBase
} }
const fileTypes = ['.pdf', '.docx', '.pptx', '.xlsx', '.txt', '.md', '.mdx'] const fileTypes = ['.pdf', '.docx', '.pptx', '.xlsx', '.txt', '.md']
const FlexColumn = styled.div` const FlexColumn = styled.div`
display: flex; display: flex;

View File

@@ -337,7 +337,7 @@ const AssistantModelSettings: FC<Props> = ({ assistant, updateAssistant, updateA
</Button> </Button>
</SettingRow> </SettingRow>
{customParameters.map((param, index) => ( {customParameters.map((param, index) => (
<Row key={index} align="middle" gutter={10} style={{ marginTop: 10 }}> <Row key={index} align="stretch" gutter={10} style={{ marginTop: 10 }}>
<Col span={6}> <Col span={6}>
<Input <Input
placeholder={t('models.parameter_name')} placeholder={t('models.parameter_name')}
@@ -355,8 +355,8 @@ const AssistantModelSettings: FC<Props> = ({ assistant, updateAssistant, updateA
<Select.Option value="boolean">{t('models.parameter_type.boolean')}</Select.Option> <Select.Option value="boolean">{t('models.parameter_type.boolean')}</Select.Option>
</Select> </Select>
</Col> </Col>
<Col span={11}>{renderParameterValueInput(param, index)}</Col> <Col span={12}>{renderParameterValueInput(param, index)}</Col>
<Col span={3}> <Col span={2} style={{ display: 'flex', justifyContent: 'flex-end' }}>
<Button icon={<DeleteOutlined />} onClick={() => onDeleteCustomParameter(index)} danger /> <Button icon={<DeleteOutlined />} onClick={() => onDeleteCustomParameter(index)} danger />
</Col> </Col>
</Row> </Row>

View File

@@ -1577,7 +1577,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@llm-tools/embedjs-loader-markdown@npm:^0.1.25": "@llm-tools/embedjs-loader-markdown@npm:0.1.25":
version: 0.1.25 version: 0.1.25
resolution: "@llm-tools/embedjs-loader-markdown@npm:0.1.25" resolution: "@llm-tools/embedjs-loader-markdown@npm:0.1.25"
dependencies: dependencies:
@@ -1592,6 +1592,21 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@llm-tools/embedjs-loader-markdown@patch:@llm-tools/embedjs-loader-markdown@npm%3A0.1.25#~/.yarn/patches/@llm-tools-embedjs-loader-markdown-npm-0.1.25-d1d536d640.patch":
version: 0.1.25
resolution: "@llm-tools/embedjs-loader-markdown@patch:@llm-tools/embedjs-loader-markdown@npm%3A0.1.25#~/.yarn/patches/@llm-tools-embedjs-loader-markdown-npm-0.1.25-d1d536d640.patch::version=0.1.25&hash=3a7d12"
dependencies:
"@llm-tools/embedjs-interfaces": "npm:0.1.25"
"@llm-tools/embedjs-loader-web": "npm:0.1.25"
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/8e91a1260f8c94ec516be13a5105055bf140b5c63a85fa3c7641cc8f6799a0410ddb6bce61db858e91712f7dbc2b333269eb7c3ce813c1d95416f49f4f4f31a5
languageName: node
linkType: hard
"@llm-tools/embedjs-loader-msoffice@npm:^0.1.25": "@llm-tools/embedjs-loader-msoffice@npm:^0.1.25":
version: 0.1.25 version: 0.1.25
resolution: "@llm-tools/embedjs-loader-msoffice@npm:0.1.25" resolution: "@llm-tools/embedjs-loader-msoffice@npm:0.1.25"
@@ -2846,7 +2861,7 @@ __metadata:
"@llm-tools/embedjs": "patch:@llm-tools/embedjs@npm%3A0.1.25#~/.yarn/patches/@llm-tools-embedjs-npm-0.1.25-ec5645cf36.patch" "@llm-tools/embedjs": "patch:@llm-tools/embedjs@npm%3A0.1.25#~/.yarn/patches/@llm-tools-embedjs-npm-0.1.25-ec5645cf36.patch"
"@llm-tools/embedjs-libsql": "patch:@llm-tools/embedjs-libsql@npm%3A0.1.25#~/.yarn/patches/@llm-tools-embedjs-libsql-npm-0.1.25-fad000d74c.patch" "@llm-tools/embedjs-libsql": "patch:@llm-tools/embedjs-libsql@npm%3A0.1.25#~/.yarn/patches/@llm-tools-embedjs-libsql-npm-0.1.25-fad000d74c.patch"
"@llm-tools/embedjs-loader-csv": "npm:^0.1.25" "@llm-tools/embedjs-loader-csv": "npm:^0.1.25"
"@llm-tools/embedjs-loader-markdown": "npm:^0.1.25" "@llm-tools/embedjs-loader-markdown": "patch:@llm-tools/embedjs-loader-markdown@npm%3A0.1.25#~/.yarn/patches/@llm-tools-embedjs-loader-markdown-npm-0.1.25-d1d536d640.patch"
"@llm-tools/embedjs-loader-msoffice": "npm:^0.1.25" "@llm-tools/embedjs-loader-msoffice": "npm:^0.1.25"
"@llm-tools/embedjs-loader-pdf": "npm:^0.1.25" "@llm-tools/embedjs-loader-pdf": "npm:^0.1.25"
"@llm-tools/embedjs-loader-sitemap": "npm:^0.1.25" "@llm-tools/embedjs-loader-sitemap": "npm:^0.1.25"