Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
赵月辉
/
fastgpt-migrated
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Members
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Unverified
Commit
3f72f885
authored
Nov 14, 2024
by
Archer
Committed by
GitHub
Nov 14, 2024
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
perf: doc2x plugins (#3162)
parent
be59c2f6
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
159 additions
and
286 deletions
+159
-286
packages/plugins/register.ts
+0
-4
packages/plugins/src/Doc2X/PDF2text/index.ts
+108
-133
packages/plugins/src/Doc2X/PDF2text/template.json
+30
-134
packages/service/core/workflow/dispatch/tools/http468.ts
+2
-2
projects/app/src/pages/app/detail/components/WorkflowComponents/Flow/nodes/NodePluginIO/InputEditModal.tsx
+1
-0
projects/app/src/pages/app/detail/components/WorkflowComponents/Flow/nodes/NodePluginIO/InputTypeConfig.tsx
+2
-10
projects/app/src/pages/app/detail/components/WorkflowComponents/Flow/nodes/render/NodeCard.tsx
+10
-0
projects/app/src/service/common/system/volumnMongoWatch.ts
+1
-1
projects/app/src/service/core/app/plugin.ts
+2
-0
projects/app/src/service/mongo.ts
+3
-2
No files found.
packages/plugins/register.ts
View file @
3f72f885
...
...
@@ -87,7 +87,3 @@ export const getCommunityCb = async () => {
{}
);
};
export
const
getSystemPluginCb
=
async
()
=>
{
return
global
.
systemPluginCb
;
};
packages/plugins/src/Doc2X/PDF2text/index.ts
View file @
3f72f885
This diff is collapsed.
Click to expand it.
packages/plugins/src/Doc2X/PDF2text/template.json
View file @
3f72f885
{
"author"
:
"Menghuan1918"
,
"version"
:
"488"
,
"name"
:
"
Doc2X
PDF识别"
,
"name"
:
"PDF识别"
,
"avatar"
:
"plugins/doc2x"
,
"intro"
:
"将PDF文件发送至Doc2X进行解析,返回结构化的LaTeX公式的文本(markdown),支持传入String类型的URL或者流程输出中的文件链接变量"
,
"
inputExplanation
Url"
:
"https://fael3z0zfze.feishu.cn/wiki/Rkc5witXWiJoi5kORd2cofh6nDg?fromScene=spaceOverview"
,
"
course
Url"
:
"https://fael3z0zfze.feishu.cn/wiki/Rkc5witXWiJoi5kORd2cofh6nDg?fromScene=spaceOverview"
,
"showStatus"
:
true
,
"weight"
:
10
,
...
...
@@ -21,8 +21,8 @@
"flowNodeType"
:
"pluginInput"
,
"showStatus"
:
false
,
"position"
:
{
"x"
:
-13
9.66495007440972
,
"y"
:
-90.9968973555371
2
"x"
:
-13
7.96875104510553
,
"y"
:
-90.9968973555371
},
"version"
:
"481"
,
"inputs"
:
[
...
...
@@ -39,16 +39,19 @@
"list"
:
[]
},
{
"renderTypeList"
:
[
"
reference
"
],
"renderTypeList"
:
[
"
fileSelect
"
],
"selectedTypeIndex"
:
0
,
"valueType"
:
"a
ny
"
,
"valueType"
:
"a
rrayString
"
,
"canEdit"
:
true
,
"key"
:
"files"
,
"label"
:
"files"
,
"description"
:
"
待处理的PDF文件变量或URL
地址"
,
"description"
:
"
需要处理的PDF
地址"
,
"required"
:
true
,
"toolDescription"
:
"待处理的PDF文件变量或URL地址"
,
"list"
:
[]
"list"
:
[],
"canSelectFile"
:
true
,
"canSelectImg"
:
false
,
"maxFiles"
:
14
,
"defaultValue"
:
""
}
],
"outputs"
:
[
...
...
@@ -61,7 +64,7 @@
},
{
"id"
:
"url"
,
"valueType"
:
"a
ny
"
,
"valueType"
:
"a
rrayString
"
,
"key"
:
"files"
,
"label"
:
"files"
,
"type"
:
"hidden"
...
...
@@ -76,8 +79,8 @@
"flowNodeType"
:
"pluginOutput"
,
"showStatus"
:
false
,
"position"
:
{
"x"
:
1
808.5347800638815
,
"y"
:
-
105.67504356429907
"x"
:
1
505.494975310334
,
"y"
:
-
4.14668564643415
},
"version"
:
"481"
,
"inputs"
:
[
...
...
@@ -92,12 +95,13 @@
},
{
"renderTypeList"
:
[
"reference"
],
"valueType"
:
"
string
"
,
"valueType"
:
"
object
"
,
"canEdit"
:
true
,
"key"
:
"failreason"
,
"label"
:
"failreason"
,
"description"
:
"文件处理失败原因,由文件名以及报错组成,多个文件之间由横线分隔开,如所有文件处理成功则为空"
,
"value"
:
[
"zHG5jJBkXmjB"
,
"yDxzW5CFalGw"
]
"key"
:
"error"
,
"label"
:
"error"
,
"description"
:
""
,
"value"
:
[
"zHG5jJBkXmjB"
,
"httpRawResponse"
],
"isToolOutput"
:
true
},
{
"renderTypeList"
:
[
"reference"
],
...
...
@@ -106,7 +110,8 @@
"key"
:
"success"
,
"label"
:
"success"
,
"description"
:
"是否全部文件都处理成功,如有没有处理成功的文件,失败原因将会输出在failreason中"
,
"value"
:
[
"zHG5jJBkXmjB"
,
"m6CJJj7GFud5"
]
"value"
:
[
"zHG5jJBkXmjB"
,
"m6CJJj7GFud5"
],
"isToolOutput"
:
false
}
],
"outputs"
:
[]
...
...
@@ -119,8 +124,8 @@
"flowNodeType"
:
"httpRequest468"
,
"showStatus"
:
true
,
"position"
:
{
"x"
:
1077.798674089277
7
,
"y"
:
-4
96.9521622173004
"x"
:
619.066193330823
7
,
"y"
:
-4
72.91377894611503
},
"version"
:
"481"
,
"inputs"
:
[
...
...
@@ -170,7 +175,7 @@
"renderTypeList"
:
[
"custom"
],
"valueType"
:
"number"
,
"label"
:
""
,
"value"
:
30
,
"value"
:
30
0
,
"min"
:
5
,
"max"
:
600
,
"required"
:
true
,
...
...
@@ -215,7 +220,7 @@
"key"
:
"system_httpJsonBody"
,
"renderTypeList"
:
[
"hidden"
],
"valueType"
:
"any"
,
"value"
:
"{
\n
\"
apikey
\"
:
\"
{{apikey}}
\"
,
\n
\"
files
\"
:
\"
{{files}}
\"
}"
,
"value"
:
"{
\n
\"
apikey
\"
:
\"
{{apikey}}
\"
,
\n
\"
files
\"
:
{{files}}
\n
}"
,
"label"
:
""
,
"required"
:
false
,
"debugLabel"
:
""
,
...
...
@@ -273,7 +278,7 @@
},
{
"renderTypeList"
:
[
"reference"
],
"valueType"
:
"
s
tring"
,
"valueType"
:
"
arrayS
tring"
,
"canEdit"
:
true
,
"key"
:
"files"
,
"label"
:
"files"
,
...
...
@@ -299,7 +304,7 @@
"showDefaultValue"
:
true
},
"required"
:
true
,
"value"
:
[
"pMBi7J7vcsqB"
,
"system_text"
]
"value"
:
[
[
"pluginInput"
,
"url"
]
]
}
],
"outputs"
:
[
...
...
@@ -360,109 +365,6 @@
"type"
:
"dynamic"
,
"key"
:
"success"
,
"label"
:
"success"
},
{
"id"
:
"yDxzW5CFalGw"
,
"valueType"
:
"string"
,
"type"
:
"dynamic"
,
"key"
:
"failreason"
,
"label"
:
"failreason"
}
]
},
{
"nodeId"
:
"pMBi7J7vcsqB"
,
"name"
:
"文本拼接"
,
"intro"
:
"可对固定或传入的文本进行加工后输出,非字符串类型数据最终会转成字符串类型。"
,
"avatar"
:
"core/workflow/template/textConcat"
,
"flowNodeType"
:
"textEditor"
,
"position"
:
{
"x"
:
469.8489508985863
,
"y"
:
-177.67504356429907
},
"version"
:
"486"
,
"inputs"
:
[
{
"key"
:
"system_addInputParam"
,
"renderTypeList"
:
[
"addInputParam"
],
"valueType"
:
"dynamic"
,
"label"
:
""
,
"required"
:
false
,
"description"
:
"workflow:dynamic_input_description_concat"
,
"customInputConfig"
:
{
"selectValueTypeList"
:
[
"string"
,
"number"
,
"boolean"
,
"object"
,
"arrayString"
,
"arrayNumber"
,
"arrayBoolean"
,
"arrayObject"
,
"arrayAny"
,
"any"
,
"chatHistory"
,
"datasetQuote"
,
"dynamic"
,
"selectApp"
,
"selectDataset"
],
"showDescription"
:
false
,
"showDefaultValue"
:
false
},
"debugLabel"
:
""
,
"toolDescription"
:
""
},
{
"key"
:
"system_textareaInput"
,
"renderTypeList"
:
[
"textarea"
],
"valueType"
:
"string"
,
"required"
:
true
,
"label"
:
"拼接文本"
,
"placeholder"
:
"workflow:input_variable_list"
,
"value"
:
"{{files}}"
,
"debugLabel"
:
""
,
"toolDescription"
:
""
},
{
"renderTypeList"
:
[
"reference"
],
"valueType"
:
"any"
,
"canEdit"
:
true
,
"key"
:
"files"
,
"label"
:
"files"
,
"customInputConfig"
:
{
"selectValueTypeList"
:
[
"string"
,
"number"
,
"boolean"
,
"object"
,
"arrayString"
,
"arrayNumber"
,
"arrayBoolean"
,
"arrayObject"
,
"arrayAny"
,
"any"
,
"chatHistory"
,
"datasetQuote"
,
"dynamic"
,
"selectApp"
,
"selectDataset"
],
"showDescription"
:
false
,
"showDefaultValue"
:
false
},
"required"
:
true
,
"value"
:
[
"pluginInput"
,
"url"
]
}
],
"outputs"
:
[
{
"id"
:
"system_text"
,
"key"
:
"system_text"
,
"label"
:
"workflow:concatenation_result"
,
"type"
:
"static"
,
"valueType"
:
"string"
,
"description"
:
""
}
]
}
...
...
@@ -476,14 +378,8 @@
},
{
"source"
:
"pluginInput"
,
"target"
:
"pMBi7J7vcsqB"
,
"sourceHandle"
:
"pluginInput-source-right"
,
"targetHandle"
:
"pMBi7J7vcsqB-target-left"
},
{
"source"
:
"pMBi7J7vcsqB"
,
"target"
:
"zHG5jJBkXmjB"
,
"sourceHandle"
:
"p
MBi7J7vcsqB
-source-right"
,
"sourceHandle"
:
"p
luginInput
-source-right"
,
"targetHandle"
:
"zHG5jJBkXmjB-target-left"
}
],
...
...
packages/service/core/workflow/dispatch/tools/http468.ts
View file @
3f72f885
...
...
@@ -18,7 +18,6 @@ import {
textAdaptGptResponse
,
replaceEditorVariable
}
from
'@fastgpt/global/core/workflow/runtime/utils'
;
import
{
getSystemPluginCb
}
from
'../../../../../plugins/register'
;
import
{
ContentTypes
}
from
'@fastgpt/global/core/workflow/constants'
;
import
{
uploadFileFromBase64Img
}
from
'../../../../common/file/gridfs/controller'
;
import
{
ReadFileBaseUrl
}
from
'@fastgpt/global/common/file/constants'
;
...
...
@@ -209,7 +208,8 @@ export const dispatchHttp468Request = async (props: HttpRequestProps): Promise<H
try
{
const
{
formatResponse
,
rawResponse
}
=
await
(
async
()
=>
{
const
systemPluginCb
=
await
getSystemPluginCb
();
const
systemPluginCb
=
global
.
systemPluginCb
;
console
.
log
(
systemPluginCb
,
'-='
,
httpReqUrl
);
if
(
systemPluginCb
[
httpReqUrl
])
{
const
pluginResult
=
await
replaceSystemPluginResponse
({
response
:
await
systemPluginCb
[
httpReqUrl
](
requestBody
),
...
...
projects/app/src/pages/app/detail/components/WorkflowComponents/Flow/nodes/NodePluginIO/InputEditModal.tsx
View file @
3f72f885
...
...
@@ -215,6 +215,7 @@ const FieldEditModal = ({
);
const
onSubmitError
=
useCallback
(
(
e
:
Object
)
=>
{
console
.
log
(
'e'
,
e
);
for
(
const
item
of
Object
.
values
(
e
))
{
if
(
item
.
message
)
{
toast
({
...
...
projects/app/src/pages/app/detail/components/WorkflowComponents/Flow/nodes/NodePluginIO/InputTypeConfig.tsx
View file @
3f72f885
...
...
@@ -511,22 +511,14 @@ const InputTypeConfig = ({
<
FormLabel
flex=
{
'0 0 132px'
}
fontWeight=
{
'medium'
}
>
{
t
(
'app:document_upload'
)
}
</
FormLabel
>
<
Switch
{
...
register
('
canSelectFile
',
{
required
:
true
})}
/>
<
Switch
{
...
register
('
canSelectFile
')}
/>
</
Flex
>
<
Box
w=
{
'full'
}
minH=
{
'40px'
}
>
<
Flex
alignItems=
{
'center'
}
>
<
FormLabel
flex=
{
'0 0 132px'
}
fontWeight=
{
'medium'
}
>
{
t
(
'app:image_upload'
)
}
</
FormLabel
>
<
Switch
{
...
register
('
canSelectImg
',
{
required
:
true
})}
/>
<
Switch
{
...
register
('
canSelectImg
')}
/>
</
Flex
>
<
Flex
color=
{
'myGray.500'
}
>
<
Box
fontSize=
{
'xs'
}
>
{
t
(
'app:image_upload_tip'
)
}
</
Box
>
...
...
projects/app/src/pages/app/detail/components/WorkflowComponents/Flow/nodes/render/NodeCard.tsx
View file @
3f72f885
...
...
@@ -115,6 +115,16 @@ const NodeCard = (props: Props) => {
}
},
{
onSuccess
(
res
)
{
if
(
!
res
)
return
;
// Execute forcibly updates the courseUrl field
onChangeNode
({
nodeId
,
type
:
'attr'
,
key
:
'courseUrl'
,
value
:
res
?.
courseUrl
});
},
manual
:
false
}
);
...
...
projects/app/src/service/common/system/volumnMongoWatch.ts
View file @
3f72f885
import
{
getSystemPlugins
}
from
'@/service/core/app/plugin'
;
import
{
getSystemPlugin
Cb
,
getSystemPlugin
s
}
from
'@/service/core/app/plugin'
;
import
{
initSystemConfig
}
from
'.'
;
import
{
createDatasetTrainingMongoWatch
}
from
'@/service/core/dataset/training/utils'
;
import
{
MongoSystemConfigs
}
from
'@fastgpt/service/common/system/config/schema'
;
...
...
projects/app/src/service/core/app/plugin.ts
View file @
3f72f885
...
...
@@ -22,6 +22,8 @@ export const getSystemPlugins = async (refresh = false) => {
addLog
.
info
(
`Load system plugin successfully:
${
global
.
systemPlugins
.
length
}
`
);
getSystemPluginCb
();
return
cloneDeep
(
global
.
systemPlugins
);
}
catch
(
error
)
{
//@ts-ignore
...
...
projects/app/src/service/mongo.ts
View file @
3f72f885
...
...
@@ -12,7 +12,7 @@ import { startMongoWatch } from './common/system/volumnMongoWatch';
import
{
startTrainingQueue
}
from
'./core/dataset/training/utils'
;
import
{
systemStartCb
}
from
'@fastgpt/service/common/system/tools'
;
import
{
addLog
}
from
'@fastgpt/service/common/system/log'
;
import
{
getSystemPlugin
Cb
}
from
'./core/app/plugin'
;
import
{
getSystemPlugin
s
}
from
'./core/app/plugin'
;
/**
* This function is equivalent to the entry to the service
...
...
@@ -32,8 +32,9 @@ export function connectToDatabase() {
systemStartCb
();
//init system config;init vector database;init root user
await
Promise
.
all
([
getInitConfig
(),
getSystemPluginCb
(),
initVectorStore
(),
initRootUser
()]);
await
Promise
.
all
([
getInitConfig
(),
initVectorStore
(),
initRootUser
()]);
getSystemPlugins
();
startMongoWatch
();
// cron
startCron
();
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment