@nocobase/plugin-ai 2.2.0-beta.13 → 2.2.0-beta.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/client-v2.d.ts +1 -0
- package/dist/ai/docs/nocobase/ai-employees/scenarios/company-background-research.md +125 -0
- package/dist/ai/docs/nocobase/building-tips/operations-dashboard.md +513 -0
- package/dist/ai/docs/nocobase/file-manager/stable-url.md +87 -0
- package/dist/ai/docs/nocobase/get-started/deployment/production.md +24 -2
- package/dist/ai/docs/nocobase/get-started/installation/docker-caddy.mdx +3 -0
- package/dist/ai/docs/nocobase/get-started/installation/docker-nginx.mdx +3 -0
- package/dist/ai/docs/nocobase/get-started/installation/docker.mdx +27 -3
- package/dist/ai/docs/nocobase/get-started/installation/env.md +33 -0
- package/dist/ai/docs/nocobase/index.md +1 -1
- package/dist/ai/docs/nocobase/interface-builder/blocks/data-blocks/comment.md +107 -0
- package/dist/ai/docs/nocobase/interface-builder/index.md +7 -6
- package/dist/ai/docs/nocobase/interface-builder/ui-layout/desktop.md +97 -0
- package/dist/ai/docs/nocobase/interface-builder/ui-layout/index.md +50 -0
- package/dist/ai/docs/nocobase/interface-builder/ui-layout/mobile.md +133 -0
- package/dist/ai/docs/nocobase/multi-app/multi-app-vs-multi-portal-vs-multi-space.md +159 -0
- package/dist/ai/docs/nocobase/multi-app/multi-portal/index.md +195 -0
- package/dist/ai/docs/nocobase/nocobase-cli/production/index.md +10 -0
- package/dist/ai/docs/nocobase/nocobase-cli/production/reverse-proxy/caddy.md +15 -2
- package/dist/ai/docs/nocobase/nocobase-cli/production/reverse-proxy/index.md +1 -1
- package/dist/ai/docs/nocobase/nocobase-cli/production/reverse-proxy/nginx.md +16 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-block-comment/index.md +14 -0
- package/dist/ai/docs/nocobase/runjs/context/ai.md +206 -0
- package/dist/ai/docs/nocobase/tutorials/index.md +20 -1
- package/dist/ai/docs/nocobase/workflow/development/api.md +259 -77
- package/dist/ai/docs/nocobase/workflow/development/index.md +2 -1
- package/dist/ai/docs/nocobase/workflow/development/migration.md +319 -0
- package/dist/ai/docs/nocobase/workflow/development/node.md +84 -51
- package/dist/ai/docs/nocobase/workflow/development/trigger.md +122 -20
- package/dist/ai/tools/formFiller.js +4 -3
- package/dist/ai/tools/subAgentWebSearch.js +20 -15
- package/dist/client/23.65ea8c37cd4b884b.js +10 -0
- package/dist/client/264.cc98933ef65608b6.js +10 -0
- package/dist/client/336.7a8a8853196ad779.js +11 -0
- package/dist/client/372.40eb52905e3f3049.js +10 -0
- package/dist/client/416.92b74ca47e4099c4.js +10 -0
- package/dist/client/446.d63c38d0309fe250.js +10 -0
- package/dist/client/525.203778500aca5d05.js +10 -0
- package/dist/client/663.680bcf6272a8504d.js +10 -0
- package/dist/client/681.399948c18d753667.js +10 -0
- package/dist/client/705.380279da896021fb.js +10 -0
- package/dist/client/ai-employees/1.x/selector/AIContextCollector.d.ts +1 -4
- package/dist/client/ai-employees/permissions/PermissionsTab.d.ts +21 -5
- package/dist/client/index.d.ts +15 -20
- package/dist/client/index.js +8 -8
- package/dist/client/workflow/nodes/employee/index.d.ts +2 -23
- package/dist/client/workflow/nodes/llm/index.d.ts +2 -52
- package/dist/client/workflow/triggers/ai-employee/index.d.ts +2 -83
- package/dist/client-v2/23.1bcb6986b40723d8.js +10 -0
- package/dist/client-v2/264.be92ff6a4d2612f1.js +10 -0
- package/dist/client-v2/336.e406470429e0670e.js +11 -0
- package/dist/client-v2/372.8cc3fde09c9bec77.js +10 -0
- package/dist/client-v2/406.341be51205c674e0.js +10 -0
- package/dist/client-v2/416.0e1c2d9cde43b83d.js +10 -0
- package/dist/client-v2/446.073d450882db29fd.js +10 -0
- package/dist/client-v2/457.d72febb89e88fc00.js +10 -0
- package/dist/client-v2/663.342341f0b2b412d8.js +10 -0
- package/dist/client-v2/681.082f4f1c7b841983.js +10 -0
- package/dist/client-v2/705.1d10027ff8cfdf79.js +10 -0
- package/dist/{client/ai-employees/admin/AvatarSelect.d.ts → client-v2/ai-employees/AIEmployeeDropdown.d.ts} +8 -9
- package/dist/client-v2/ai-employees/AIEmployeeShortcut.d.ts +9 -2
- package/dist/{client → client-v2}/ai-employees/AddContextButton.d.ts +1 -1
- package/dist/{client → client-v2}/ai-employees/ai-coding/AICodingButton.d.ts +2 -1
- package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/Actions.d.ts +2 -4
- package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/AddLLMModal.d.ts +2 -4
- package/dist/client-v2/ai-employees/chatbox/components/Attachments.d.ts +27 -0
- package/dist/{client/ai-employees/permissions/Permissions.d.ts → client-v2/ai-employees/chatbox/components/ChatBox.d.ts} +2 -2
- package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/ChatBoxLayout.d.ts +1 -1
- package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/ContextItem.d.ts +1 -1
- package/dist/{client/ai-employees/admin/Employees.d.ts → client-v2/ai-employees/chatbox/components/DebugPanel.d.ts} +1 -1
- package/dist/{client/ai-employees/chatbox/markdown/Code.d.ts → client-v2/ai-employees/chatbox/components/Markdown.d.ts} +12 -5
- package/dist/{client/ai-employees/admin/ProfileSettings.d.ts → client-v2/ai-employees/chatbox/components/MessageContent.d.ts} +3 -2
- package/dist/client-v2/ai-employees/chatbox/components/MessageRenderers.d.ts +39 -0
- package/dist/{client/ai-employees/chatbox/generative-ui → client-v2/ai-employees/chatbox/components}/ToolCard.d.ts +7 -5
- package/dist/{client/ai-employees/admin/datasource/components/basic → client-v2/ai-employees/chatbox/components}/index.d.ts +5 -2
- package/dist/{client → client-v2}/ai-employees/chatbox/hooks/useChat.d.ts +21 -22
- package/dist/client-v2/ai-employees/chatbox/hooks/useChatBoxActions.d.ts +3 -2
- package/dist/{client → client-v2}/ai-employees/chatbox/hooks/useChatConversationActions.d.ts +2 -2
- package/dist/{client → client-v2}/ai-employees/chatbox/hooks/useChatMessageActions.d.ts +8 -4
- package/dist/{client → client-v2}/ai-employees/chatbox/hooks/useToolCallActions.d.ts +1 -1
- package/dist/client-v2/ai-employees/chatbox/hooks/useUploadFiles.d.ts +46 -0
- package/dist/{client → client-v2}/ai-employees/chatbox/hooks/useWorkflowTasks.d.ts +1 -1
- package/dist/{client → client-v2}/ai-employees/chatbox/model.d.ts +9 -2
- package/dist/client-v2/ai-employees/chatbox/roles.d.ts +162 -0
- package/dist/client-v2/ai-employees/chatbox/stores/chat-box.d.ts +1 -49
- package/dist/client-v2/ai-employees/chatbox/stores/chat-conversations.d.ts +2 -19
- package/dist/client-v2/ai-employees/chatbox/stores/chat-messages.d.ts +1 -46
- package/dist/{client → client-v2}/ai-employees/chatbox/stores/chat-tool-call.d.ts +1 -15
- package/dist/client-v2/ai-employees/chatbox/stores/chat-tools.d.ts +30 -0
- package/dist/client-v2/ai-employees/chatbox/stores/create-selectors.d.ts +31 -3
- package/dist/{client/ai-employees/chatbox/conversations/common.d.ts → client-v2/ai-employees/chatbox/stores/workflow-tasks.d.ts} +21 -4
- package/dist/client-v2/ai-employees/chatbox/utils/normalizeTriggerTaskOptions.d.ts +19 -0
- package/dist/{client → client-v2}/ai-employees/chatbox/utils.d.ts +26 -6
- package/dist/{client/ai-employees/data-visualization/context.d.ts → client-v2/ai-employees/context/chart-config.d.ts} +1 -1
- package/dist/{client → client-v2}/ai-employees/context/code-editor.d.ts +1 -1
- package/dist/{client → client-v2}/ai-employees/context/datasource.d.ts +1 -1
- package/dist/{client → client-v2}/ai-employees/context/flow-models.d.ts +1 -1
- package/dist/{client/ai-employees/admin/datasource/components/DatasourceSettingDetail.d.ts → client-v2/ai-employees/data-modeling/setup.d.ts} +6 -5
- package/dist/{client → client-v2}/ai-employees/datasource/DatasourceSelector.d.ts +6 -2
- package/dist/{client/ai-employees/admin/datasource/flow-models/DatasourceSettingModel.d.ts → client-v2/ai-employees/flow/index.d.ts} +4 -6
- package/dist/{client → client-v2}/ai-employees/form-filler/tools/index.d.ts +1 -1
- package/dist/{client → client-v2}/ai-employees/stores/ai-selection.d.ts +4 -4
- package/dist/{client → client-v2}/ai-employees/stores/dialog-controller.d.ts +4 -4
- package/dist/{client/ai-employees/business-report/ui → client-v2/ai-employees/tools}/BusinessReportCard.d.ts +2 -2
- package/dist/{client/ai-employees/business-report/ui → client-v2/ai-employees/tools}/BusinessReportModal.d.ts +2 -2
- package/dist/{client/ai-employees/1.x/selector/withAISelectable.d.ts → client-v2/ai-employees/tools/ChartGeneratorCard.d.ts} +5 -4
- package/dist/{client/ai-employees/ai-coding/ui → client-v2/ai-employees/tools}/CodeToolCard.d.ts +1 -1
- package/dist/{client/ai-employees/data-modeling/ui → client-v2/ai-employees/tools}/DataModelingCard.d.ts +3 -5
- package/dist/{client/ai-employees/data-modeling/ui → client-v2/ai-employees/tools}/DataModelingModal.d.ts +4 -6
- package/dist/{client/ai-employees/sub-agents/ui → client-v2/ai-employees/tools}/SubAgentDispatchCard.d.ts +4 -9
- package/dist/{client/ai-employees/AISettingsProvider.d.ts → client-v2/ai-employees/tools/SuggestionsOptionsCard.d.ts} +6 -8
- package/dist/{client/ai-employees/workflow-tasks/ui → client-v2/ai-employees/tools}/WorkflowTaskOutputCard.d.ts +7 -2
- package/dist/{client/ai-employees/ai-coding/tools/context-tools.d.ts → client-v2/ai-employees/tools/ai-coding.d.ts} +3 -1
- package/dist/client-v2/ai-employees/tools/business-report-utils.d.ts +45 -0
- package/dist/{client/ai-employees/data-modeling/ui → client-v2/ai-employees/tools/data-modeling}/CollectionNode.d.ts +2 -3
- package/dist/{client/ai-employees/data-modeling/ui → client-v2/ai-employees/tools/data-modeling}/Diagram.d.ts +1 -1
- package/dist/{client/ai-employees/data-modeling/ui → client-v2/ai-employees/tools/data-modeling}/Table.d.ts +2 -2
- package/dist/client-v2/ai-employees/tools/data-modeling/legacy-template.d.ts +13 -0
- package/dist/client-v2/ai-employees/tools/data-modeling/runtime.d.ts +15 -0
- package/dist/{client/ai-employees → client-v2/ai-employees/tools}/data-modeling/types.d.ts +27 -4
- package/dist/client-v2/ai-employees/tools/data-modeling/useFieldInterfaceOptions.d.ts +151 -0
- package/dist/{client/ai-employees/data-visualization/tools/index.d.ts → client-v2/ai-employees/tools/data-visualization.d.ts} +1 -1
- package/dist/client-v2/ai-employees/tools/index.d.ts +32 -0
- package/dist/client-v2/ai-employees/types.d.ts +101 -7
- package/dist/client-v2/components/RemoteSelect.d.ts +43 -0
- package/dist/{client → client-v2}/debug-logger.d.ts +2 -2
- package/dist/client-v2/f0053e745af0ad03.svg +50 -0
- package/dist/client-v2/index.d.ts +9 -8
- package/dist/client-v2/index.js +37 -1
- package/dist/client-v2/llm-providers/forms.d.ts +44 -0
- package/dist/client-v2/llm-providers/index.d.ts +24 -0
- package/dist/{client/ai-employees/ai-coding/tools/index.d.ts → client-v2/llm-services/utils.d.ts} +5 -3
- package/dist/client-v2/locale.d.ts +14 -0
- package/dist/client-v2/manager/ai-manager.d.ts +55 -0
- package/dist/client-v2/models/ai-employees/AIEmployeeActionModel.d.ts +33 -0
- package/dist/client-v2/models/ai-employees/AIEmployeeShortcutModel.d.ts +44 -0
- package/dist/client-v2/pages/AdminSettingsPage.d.ts +24 -0
- package/dist/client-v2/pages/DatasourceSettingsPage.d.ts +62 -0
- package/dist/client-v2/pages/EmployeesPage.d.ts +62 -0
- package/dist/client-v2/pages/LLMServicesPage.d.ts +75 -0
- package/dist/client-v2/pages/MCPSettingsPage.d.ts +73 -0
- package/dist/client-v2/pages/drawerWidth.d.ts +10 -0
- package/dist/client-v2/pages/permissions/Permissions.d.ts +67 -0
- package/dist/client-v2/pages/permissions/PermissionsTab.d.ts +12 -0
- package/dist/client-v2/pages/useUnsavedChangesBeforeClose.d.ts +29 -0
- package/dist/client-v2/plugin.d.ts +33 -0
- package/dist/client-v2/repositories/AIConfigRepository.d.ts +3 -23
- package/dist/client-v2/runjs/registerAIEmployeeRunJSFacade.d.ts +20 -0
- package/dist/client-v2/workflow/components/FormValueRegistry.d.ts +12 -0
- package/dist/{client/components/ListCollapse.d.ts → client-v2/workflow/components/WorkflowListCollapse.d.ts} +4 -4
- package/dist/client-v2/workflow/constants.d.ts +26 -0
- package/dist/client-v2/workflow/nodes/employee/components/AIEmployeeFieldset.d.ts +11 -0
- package/dist/{client/ai-employees/common/CodeHighlight.d.ts → client-v2/workflow/nodes/employee/components/AIEmployeeSelect.d.ts} +5 -6
- package/dist/{client/ai-employees/ContextAwareTooltip.d.ts → client-v2/workflow/nodes/employee/components/Assignees.d.ts} +2 -1
- package/dist/client-v2/workflow/nodes/employee/components/FeedbackSettings.d.ts +17 -0
- package/dist/client-v2/workflow/nodes/employee/components/FileInputs.d.ts +11 -0
- package/dist/{client/ai-employees/AIEmployeesProvider.d.ts → client-v2/workflow/nodes/employee/components/MessageInputs.d.ts} +2 -3
- package/dist/client-v2/workflow/nodes/employee/components/ModelOptions.d.ts +17 -0
- package/dist/{client/ai-employees/admin/datasource/components/basic/CollectionCascader.d.ts → client-v2/workflow/nodes/employee/components/SkillSettings.d.ts} +6 -3
- package/dist/client-v2/workflow/nodes/employee/components/StructuredOutput.d.ts +11 -0
- package/dist/client-v2/workflow/nodes/employee/components/UserInput.d.ts +18 -0
- package/dist/client-v2/workflow/nodes/employee/components/WebSearchOptions.d.ts +16 -0
- package/dist/client-v2/workflow/nodes/employee/index.d.ts +23 -0
- package/dist/{client/ai-employees/AIEmployeeListItem.d.ts → client-v2/workflow/nodes/llm/components/LLMFieldset.d.ts} +3 -5
- package/dist/{client/admin-settings/AdminSettings.d.ts → client-v2/workflow/nodes/llm/components/Messages.d.ts} +2 -1
- package/dist/client-v2/workflow/nodes/llm/components/StructuredOutput.d.ts +11 -0
- package/dist/client-v2/workflow/nodes/llm/index.d.ts +30 -0
- package/dist/{client/ai-employees/1.x/selector/BlockSelector.d.ts → client-v2/workflow/register.d.ts} +2 -6
- package/dist/client-v2/workflow/triggers/ai-employee/AIEmployeeTriggerConfig.d.ts +11 -0
- package/dist/client-v2/workflow/triggers/ai-employee/Parameters.d.ts +11 -0
- package/dist/client-v2/workflow/triggers/ai-employee/index.d.ts +25 -0
- package/dist/client-v2/workflow/types.d.ts +128 -0
- package/dist/externalVersion.js +20 -25
- package/dist/locale/en-US.json +45 -1
- package/dist/locale/zh-CN.json +45 -1
- package/dist/node_modules/@langchain/mistralai/package.json +1 -1
- package/dist/node_modules/@langchain/xai/package.json +1 -1
- package/dist/node_modules/fs-extra/package.json +1 -1
- package/dist/node_modules/jsonrepair/package.json +1 -1
- package/dist/node_modules/just-bash/package.json +1 -1
- package/dist/node_modules/nodejs-snowflake/package.json +1 -1
- package/dist/node_modules/openai/package.json +1 -1
- package/dist/node_modules/zod/package.json +1 -1
- package/dist/server/ai-employees/ai-employee.d.ts +1 -0
- package/dist/server/ai-employees/ai-employee.js +37 -2
- package/dist/server/ai-employees/prompts.d.ts +2 -1
- package/dist/server/ai-employees/prompts.js +8 -2
- package/dist/server/ai-employees/tool-call-sanitizer.d.ts +1 -0
- package/dist/server/ai-employees/tool-call-sanitizer.js +2 -1
- package/dist/server/ai-employees/utils.js +11 -5
- package/dist/server/attachments.d.ts +24 -0
- package/dist/server/attachments.js +204 -0
- package/dist/server/document-loader/cached.d.ts +1 -0
- package/dist/server/document-loader/cached.js +18 -9
- package/dist/server/document-loader/loader.d.ts +0 -1
- package/dist/server/document-loader/loader.js +25 -8
- package/dist/server/document-loader/types.d.ts +7 -0
- package/dist/server/llm-providers/anthropic.d.ts +2 -1
- package/dist/server/llm-providers/anthropic.js +1 -3
- package/dist/server/llm-providers/dashscope.d.ts +2 -1
- package/dist/server/llm-providers/dashscope.js +16 -1
- package/dist/server/llm-providers/deepseek.d.ts +2 -1
- package/dist/server/llm-providers/deepseek.js +33 -2
- package/dist/server/llm-providers/google-genai.d.ts +1 -1
- package/dist/server/llm-providers/google-genai.js +1 -5
- package/dist/server/llm-providers/kimi/provider.d.ts +2 -1
- package/dist/server/llm-providers/kimi/provider.js +22 -2
- package/dist/server/llm-providers/mistral.d.ts +36 -2
- package/dist/server/llm-providers/mistral.js +62 -2
- package/dist/server/llm-providers/openai/completions.d.ts +2 -1
- package/dist/server/llm-providers/openai/completions.js +17 -1
- package/dist/server/llm-providers/openai/responses.d.ts +2 -1
- package/dist/server/llm-providers/openai/responses.js +17 -1
- package/dist/server/llm-providers/provider.d.ts +10 -2
- package/dist/server/llm-providers/provider.js +33 -4
- package/dist/server/manager/ai-context-datasource-manager.js +34 -7
- package/dist/server/manager/ai-manager.d.ts +2 -1
- package/dist/server/manager/ai-manager.js +4 -1
- package/dist/server/plugin.js +14 -0
- package/dist/server/resource/aiConversations.js +44 -1
- package/dist/server/utils.d.ts +5 -2
- package/dist/server/utils.js +11 -19
- package/dist/server/workflow/nodes/employee/files.d.ts +3 -1
- package/dist/server/workflow/nodes/employee/files.js +31 -5
- package/package.json +5 -5
- package/dist/client/119.c6bf8c6433167d81.js +0 -10
- package/dist/client/170.d98eacdc00d9d527.js +0 -10
- package/dist/client/228.b4b709f93b86b6b9.js +0 -10
- package/dist/client/280.003b9e9788599244.js +0 -10
- package/dist/client/290.0f7f441d8a94f03c.js +0 -10
- package/dist/client/331.d547c95410476a69.js +0 -10
- package/dist/client/406.15c09d98faa2ccf1.js +0 -10
- package/dist/client/428.5eb4f53ddbb6a3b8.js +0 -10
- package/dist/client/462.d172d0fe91519e35.js +0 -10
- package/dist/client/486.dcac8f3fcec19c33.js +0 -10
- package/dist/client/502.2b4a51e0a8122e52.js +0 -10
- package/dist/client/525.33a9c8ec28be4ec4.js +0 -10
- package/dist/client/559.959c46d0056ccdc8.js +0 -10
- package/dist/client/561.7ec804ef39ec7dcd.js +0 -10
- package/dist/client/580.35ba54ff91b7fe6d.js +0 -10
- package/dist/client/597.b0d64948d74cf6cb.js +0 -10
- package/dist/client/604.89c674f35b52b4ef.js +0 -10
- package/dist/client/614.aa766080f6b99aab.js +0 -10
- package/dist/client/646.2e395a514c511084.js +0 -10
- package/dist/client/687.224e569a99cae4bb.js +0 -10
- package/dist/client/699.57c0a1acb723202a.js +0 -10
- package/dist/client/711.92cd94681fde7e05.js +0 -10
- package/dist/client/758.a9741e81911e53c3.js +0 -10
- package/dist/client/768.5177bff46ae71a5b.js +0 -10
- package/dist/client/792.abb57765453bcbcc.js +0 -10
- package/dist/client/820.f72ef2462b61d812.js +0 -10
- package/dist/client/832.0cf69e3f43c320b2.js +0 -10
- package/dist/client/927.d95c74ebb8fd51c9.js +0 -10
- package/dist/client/ai-employees/1.x/selector/AISelectorProvider.d.ts +0 -33
- package/dist/client/ai-employees/ProfileCard.d.ts +0 -15
- package/dist/client/ai-employees/admin/ChatSettings.d.ts +0 -10
- package/dist/client/ai-employees/admin/DataSourceSettings.d.ts +0 -10
- package/dist/client/ai-employees/admin/EnableSwitch.d.ts +0 -10
- package/dist/client/ai-employees/admin/InputsFormSettings.d.ts +0 -10
- package/dist/client/ai-employees/admin/KnowledgeBaseSettings.d.ts +0 -10
- package/dist/client/ai-employees/admin/ModelSettings.d.ts +0 -10
- package/dist/client/ai-employees/admin/SkillSettings.d.ts +0 -19
- package/dist/client/ai-employees/admin/SystemPrompt.d.ts +0 -10
- package/dist/client/ai-employees/admin/Templates.d.ts +0 -10
- package/dist/client/ai-employees/admin/ToolsSettings.d.ts +0 -17
- package/dist/client/ai-employees/admin/datasource/components/DatasourceSettingForm.d.ts +0 -10
- package/dist/client/ai-employees/admin/datasource/components/DatasourceSettingGrid.d.ts +0 -10
- package/dist/client/ai-employees/admin/datasource/components/basic/FieldsTransfer.d.ts +0 -17
- package/dist/client/ai-employees/admin/datasource/components/form-steps/CollectionSetting.d.ts +0 -17
- package/dist/client/ai-employees/admin/datasource/components/form-steps/FieldsSetting.d.ts +0 -15
- package/dist/client/ai-employees/admin/datasource/components/form-steps/FilterSetting.d.ts +0 -17
- package/dist/client/ai-employees/admin/datasource/components/form-steps/Preview.d.ts +0 -13
- package/dist/client/ai-employees/admin/datasource/components/form-steps/SortSetting.d.ts +0 -15
- package/dist/client/ai-employees/admin/datasource/components/form-steps/index.d.ts +0 -13
- package/dist/client/ai-employees/admin/datasource/components/index.d.ts +0 -9
- package/dist/client/ai-employees/admin/datasource/context.d.ts +0 -17
- package/dist/client/ai-employees/admin/datasource/flow-models/index.d.ts +0 -9
- package/dist/client/ai-employees/admin/datasource/index.d.ts +0 -10
- package/dist/client/ai-employees/admin/hooks.d.ts +0 -39
- package/dist/client/ai-employees/admin/mcp/MCPSettings.d.ts +0 -10
- package/dist/client/ai-employees/admin/mcp/MCPToolsList.d.ts +0 -19
- package/dist/client/ai-employees/admin/mcp/context.d.ts +0 -15
- package/dist/client/ai-employees/admin/mcp/schemas.d.ts +0 -1314
- package/dist/client/ai-employees/ai-coding/CodeHistory.d.ts +0 -10
- package/dist/client/ai-employees/ai-coding/markdown/Code.d.ts +0 -16
- package/dist/client/ai-employees/avatars.d.ts +0 -9
- package/dist/client/ai-employees/built-in/utils.d.ts +0 -15
- package/dist/client/ai-employees/business-report/tools/index.d.ts +0 -10
- package/dist/client/ai-employees/business-report/ui/report-utils.d.ts +0 -38
- package/dist/client/ai-employees/chart-generator/tools/index.d.ts +0 -10
- package/dist/client/ai-employees/chart-generator/ui/ECharts.d.ts +0 -13
- package/dist/client/ai-employees/chatbox/AIThinking.d.ts +0 -12
- package/dist/client/ai-employees/chatbox/Attachment.d.ts +0 -14
- package/dist/client/ai-employees/chatbox/AttachmentsHeader.d.ts +0 -10
- package/dist/client/ai-employees/chatbox/ChatBox.d.ts +0 -12
- package/dist/client/ai-employees/chatbox/ContextItemsHeader.d.ts +0 -10
- package/dist/client/ai-employees/chatbox/DebugPanel.d.ts +0 -16
- package/dist/client/ai-employees/chatbox/EditMessageHeader.d.ts +0 -10
- package/dist/client/ai-employees/chatbox/HintMessageHeader.d.ts +0 -10
- package/dist/client/ai-employees/chatbox/MessageRenderer.d.ts +0 -33
- package/dist/client/ai-employees/chatbox/SenderFooter.d.ts +0 -13
- package/dist/client/ai-employees/chatbox/SenderHeader.d.ts +0 -10
- package/dist/client/ai-employees/chatbox/SenderPrefix.d.ts +0 -10
- package/dist/client/ai-employees/chatbox/Upload.d.ts +0 -12
- package/dist/client/ai-employees/chatbox/VirtualList.d.ts +0 -28
- package/dist/client/ai-employees/chatbox/conversations/ConversationsList.d.ts +0 -13
- package/dist/client/ai-employees/chatbox/conversations/WorkflowTasksList.d.ts +0 -13
- package/dist/client/ai-employees/chatbox/conversations/index.d.ts +0 -9
- package/dist/client/ai-employees/chatbox/generative-ui/DefaultToolCard.d.ts +0 -16
- package/dist/client/ai-employees/chatbox/hooks/useChatBoxActions.d.ts +0 -18
- package/dist/client/ai-employees/chatbox/hooks/useUploadFiles.d.ts +0 -12
- package/dist/client/ai-employees/chatbox/markdown/ECharts.d.ts +0 -10
- package/dist/client/ai-employees/chatbox/markdown/Form.d.ts +0 -10
- package/dist/client/ai-employees/chatbox/markdown/Generating.d.ts +0 -10
- package/dist/client/ai-employees/chatbox/markdown/Markdown.d.ts +0 -13
- package/dist/client/ai-employees/chatbox/roles.d.ts +0 -32
- package/dist/client/ai-employees/chatbox/stores/chat-box.d.ts +0 -9
- package/dist/client/ai-employees/chatbox/stores/chat-conversations.d.ts +0 -9
- package/dist/client/ai-employees/chatbox/stores/chat-messages.d.ts +0 -9
- package/dist/client/ai-employees/chatbox/stores/chat-tools.d.ts +0 -51
- package/dist/client/ai-employees/chatbox/stores/create-selectors.d.ts +0 -18
- package/dist/client/ai-employees/chatbox/stores/workflow-tasks.d.ts +0 -45
- package/dist/client/ai-employees/context/classic-pages.d.ts +0 -10
- package/dist/client/ai-employees/data-modeling/Table.d.ts +0 -12
- package/dist/client/ai-employees/data-modeling/setup.d.ts +0 -10
- package/dist/client/ai-employees/data-modeling/tools/index.d.ts +0 -10
- package/dist/client/ai-employees/data-modeling/ui/useFieldInterfaceOptions.d.ts +0 -14
- package/dist/client/ai-employees/datasource/DatasourceList.d.ts +0 -17
- package/dist/client/ai-employees/datasource/index.d.ts +0 -9
- package/dist/client/ai-employees/flow/events/index.d.ts +0 -9
- package/dist/client/ai-employees/flow/index.d.ts +0 -36
- package/dist/client/ai-employees/flow/models/AIEmployeeActionModel.d.ts +0 -18
- package/dist/client/ai-employees/flow/models/AIEmployeeShortcutModel.d.ts +0 -30
- package/dist/client/ai-employees/shortcuts/ShortcutList.d.ts +0 -10
- package/dist/client/ai-employees/shortcuts/useShortcuts.d.ts +0 -13
- package/dist/client/ai-employees/stores/context-aware.d.ts +0 -19
- package/dist/client/ai-employees/sub-agents/tools/index.d.ts +0 -10
- package/dist/client/ai-employees/suggestions/tools/index.d.ts +0 -10
- package/dist/client/ai-employees/suggestions/ui/SuggestionsOptions.d.ts +0 -13
- package/dist/client/ai-employees/types.d.ts +0 -259
- package/dist/client/ai-employees/workflow-tasks/tools/index.d.ts +0 -10
- package/dist/client/chat-settings/Messages.d.ts +0 -11
- package/dist/client/chat-settings/StructuredOutput.d.ts +0 -11
- package/dist/client/components/skill-settings.d.ts +0 -22
- package/dist/client/features/components.d.ts +0 -9
- package/dist/client/features/feature-manager.d.ts +0 -9
- package/dist/client/features/index.d.ts +0 -9
- package/dist/client/features/vector-database-provider.d.ts +0 -9
- package/dist/client/features/vector-store-provider.d.ts +0 -9
- package/dist/client/llm-providers/anthropic/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/anthropic/ProviderSettings.d.ts +0 -10
- package/dist/client/llm-providers/anthropic/index.d.ts +0 -10
- package/dist/client/llm-providers/components/Chat.d.ts +0 -10
- package/dist/client/llm-providers/components/ModelSelect.d.ts +0 -10
- package/dist/client/llm-providers/dashscope/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/dashscope/ProviderSettings.d.ts +0 -10
- package/dist/client/llm-providers/dashscope/index.d.ts +0 -10
- package/dist/client/llm-providers/deepseek/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/deepseek/index.d.ts +0 -10
- package/dist/client/llm-providers/google-genai/MessageRenderer.d.ts +0 -13
- package/dist/client/llm-providers/google-genai/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/google-genai/ProviderSettings.d.ts +0 -10
- package/dist/client/llm-providers/google-genai/index.d.ts +0 -10
- package/dist/client/llm-providers/kimi/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/kimi/index.d.ts +0 -10
- package/dist/client/llm-providers/mimo/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/mimo/index.d.ts +0 -10
- package/dist/client/llm-providers/mistral/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/mistral/index.d.ts +0 -10
- package/dist/client/llm-providers/ollama/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/ollama/ProviderSettings.d.ts +0 -10
- package/dist/client/llm-providers/ollama/index.d.ts +0 -10
- package/dist/client/llm-providers/openai/completions/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/openai/completions/index.d.ts +0 -10
- package/dist/client/llm-providers/openai/components/ProviderSettings.d.ts +0 -10
- package/dist/client/llm-providers/openai/responses/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/openai/responses/index.d.ts +0 -10
- package/dist/client/llm-providers/orcarouter/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/orcarouter/ProviderSettings.d.ts +0 -10
- package/dist/client/llm-providers/orcarouter/index.d.ts +0 -10
- package/dist/client/llm-providers/tongyi/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/tongyi/ProviderSettings.d.ts +0 -10
- package/dist/client/llm-providers/tongyi/index.d.ts +0 -10
- package/dist/client/llm-providers/xai/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/xai/index.d.ts +0 -10
- package/dist/client/llm-services/LLMServices.d.ts +0 -13
- package/dist/client/llm-services/component/DefaultModelSelect.d.ts +0 -10
- package/dist/client/llm-services/component/EnabledModelsSelect.d.ts +0 -23
- package/dist/client/llm-services/component/LLMTestFlight.d.ts +0 -10
- package/dist/client/llm-services/component/ModelOptionsSettings.d.ts +0 -10
- package/dist/client/llm-services/component/UnifiedModelSettings.d.ts +0 -10
- package/dist/client/llm-services/hooks/useLLMServiceCatalog.d.ts +0 -18
- package/dist/client/llm-services/llm-providers.d.ts +0 -27
- package/dist/client/llm-services/utils.d.ts +0 -35
- package/dist/client/manager/ai-feature-manager.d.ts +0 -9
- package/dist/client/manager/ai-manager.d.ts +0 -35
- package/dist/client/repositories/AIConfigRepository.d.ts +0 -60
- package/dist/client/repositories/hooks/useAIConfigRepository.d.ts +0 -10
- package/dist/client/schemas/llms.d.ts +0 -347
- package/dist/client/workflow/nodes/employee/components/AIEmployeeSelect.d.ts +0 -10
- package/dist/client/workflow/nodes/employee/components/assigness.d.ts +0 -11
- package/dist/client/workflow/nodes/employee/components/file-inputs.d.ts +0 -10
- package/dist/client/workflow/nodes/employee/components/message-inputs.d.ts +0 -12
- package/dist/client/workflow/nodes/employee/components/model-options.d.ts +0 -10
- package/dist/client/workflow/nodes/employee/components/structured-output.d.ts +0 -10
- package/dist/client/workflow/nodes/employee/components/users-select.d.ts +0 -15
- package/dist/client/workflow/nodes/employee/components/web-search-options.d.ts +0 -10
- package/dist/client/workflow/nodes/employee/configuration.d.ts +0 -12
- package/dist/client/workflow/nodes/employee/flow-models/feedback.d.ts +0 -14
- package/dist/client/workflow/nodes/employee/flow-models/task.d.ts +0 -13
- package/dist/client/workflow/nodes/llm/ModelSettings.d.ts +0 -11
- package/dist/client/workflow/triggers/ai-employee/Parameters.d.ts +0 -13
- /package/dist/{client → client-v2}/ai-employees/AISelection.d.ts +0 -0
- /package/dist/{client → client-v2}/ai-employees/AISelectionControl.d.ts +0 -0
- /package/dist/{client → client-v2}/ai-employees/ai-coding/prompts.d.ts +0 -0
- /package/dist/{client → client-v2}/ai-employees/ai-coding/setup.d.ts +0 -0
- /package/dist/{client/ai-employees/chatbox/AIEmployeeSwitch.d.ts → client-v2/ai-employees/chatbox/components/AIEmployeeSwitcher.d.ts} +0 -0
- /package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/ChatButton.d.ts +0 -0
- /package/dist/{client/ai-employees/chatbox/conversations → client-v2/ai-employees/chatbox/components}/Conversations.d.ts +0 -0
- /package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/Messages.d.ts +0 -0
- /package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/ModelSwitcher.d.ts +0 -0
- /package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/SearchSwitch.d.ts +0 -0
- /package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/Sender.d.ts +0 -0
- /package/dist/{client/ai-employees/chatbox/generative-ui → client-v2/ai-employees/chatbox/components}/ToolModal.d.ts +0 -0
- /package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/UserPrompt.d.ts +0 -0
- /package/dist/{client → client-v2}/ai-employees/chatbox/hooks/useChatBoxEffect.d.ts +0 -0
- /package/dist/{client → client-v2}/ai-employees/chatbox/hooks/useLoadMoreObserver.d.ts +0 -0
- /package/dist/client-v2/ai-employees/{chatbox/stores → stores}/global-store.d.ts +0 -0
- /package/dist/{client/ai-employees/flow/models → client-v2/models/ai-employees}/AIEmployeeShortcutListModel.d.ts +0 -0
- /package/dist/{client/ai-employees/flow/models → client-v2/models/ai-employees}/index.d.ts +0 -0
- /package/dist/{client/ai-employees/flow/events/ai-context-selection.d.ts → client-v2/workflow/components/index.d.ts} +0 -0
|
@@ -40,7 +40,7 @@ const convertAIMessage = ({
|
|
|
40
40
|
model,
|
|
41
41
|
aiMessage
|
|
42
42
|
}) => {
|
|
43
|
-
var _a;
|
|
43
|
+
var _a, _b;
|
|
44
44
|
const message = aiMessage.content;
|
|
45
45
|
const toolCalls = aiMessage.tool_calls;
|
|
46
46
|
const tools = (_a = aiEmployee.skillSettings) == null ? void 0 : _a.tools;
|
|
@@ -91,20 +91,26 @@ const convertAIMessage = ({
|
|
|
91
91
|
if (aiMessage.response_metadata) {
|
|
92
92
|
values.metadata.response_metadata = aiMessage.response_metadata;
|
|
93
93
|
}
|
|
94
|
-
const
|
|
94
|
+
const sanitizedToolCalls = (0, import_tool_call_sanitizer.sanitizeAdditionalKwargsForToolCalls)(aiMessage.additional_kwargs, toolCalls, {
|
|
95
95
|
onDiscard: (info) => {
|
|
96
|
-
var _a2,
|
|
97
|
-
(
|
|
96
|
+
var _a2, _b2;
|
|
97
|
+
(_b2 = aiEmployee.logger) == null ? void 0 : _b2.warn("Discard malformed raw tool calls from AI message", {
|
|
98
98
|
phase: "convertAIMessage",
|
|
99
99
|
messageId: aiMessage.id,
|
|
100
100
|
invalidToolCallCount: ((_a2 = aiMessage.invalid_tool_calls) == null ? void 0 : _a2.length) ?? 0,
|
|
101
101
|
...info
|
|
102
102
|
});
|
|
103
103
|
}
|
|
104
|
-
})
|
|
104
|
+
});
|
|
105
|
+
const additionalKwargs = sanitizedToolCalls.additionalKwargs;
|
|
105
106
|
if (additionalKwargs) {
|
|
106
107
|
values.metadata.additional_kwargs = additionalKwargs;
|
|
107
108
|
}
|
|
109
|
+
if ((_b = sanitizedToolCalls.malformedToolCalls) == null ? void 0 : _b.length) {
|
|
110
|
+
values.metadata.diagnostics = {
|
|
111
|
+
malformedToolCalls: sanitizedToolCalls.malformedToolCalls
|
|
112
|
+
};
|
|
113
|
+
}
|
|
108
114
|
providerInstance.reshapeAIMessage({ aiMessage, values });
|
|
109
115
|
return values;
|
|
110
116
|
};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file is part of the NocoBase (R) project.
|
|
3
|
+
* Copyright (c) 2020-2024 NocoBase Co., Ltd.
|
|
4
|
+
* Authors: NocoBase Team.
|
|
5
|
+
*
|
|
6
|
+
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
7
|
+
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
|
+
*/
|
|
9
|
+
import type { Context } from '@nocobase/actions';
|
|
10
|
+
import type { AttachmentModel } from '@nocobase/plugin-file-manager';
|
|
11
|
+
export type AttachmentId = string | number;
|
|
12
|
+
export type AttachmentSource = {
|
|
13
|
+
dataSourceKey?: string;
|
|
14
|
+
collectionName?: string;
|
|
15
|
+
field?: string;
|
|
16
|
+
documentCache?: boolean;
|
|
17
|
+
trustworthy?: boolean;
|
|
18
|
+
};
|
|
19
|
+
export declare function appendAIFileAttachmentSource(body: unknown): void;
|
|
20
|
+
export declare function getAttachmentId(attachment: unknown): AttachmentId | null;
|
|
21
|
+
export declare function shouldSkipAttachmentSourceLookup(source: AttachmentSource | null): boolean;
|
|
22
|
+
export declare function getAttachmentSource(attachment: unknown): AttachmentSource | null;
|
|
23
|
+
export declare function findMessageAttachments(ctx: Context, attachments: unknown[]): Promise<Map<string, AttachmentModel>>;
|
|
24
|
+
export declare function getMessageAttachmentLookupKey(attachment: unknown): string;
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file is part of the NocoBase (R) project.
|
|
3
|
+
* Copyright (c) 2020-2024 NocoBase Co., Ltd.
|
|
4
|
+
* Authors: NocoBase Team.
|
|
5
|
+
*
|
|
6
|
+
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
7
|
+
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
var __defProp = Object.defineProperty;
|
|
11
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
12
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
13
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
14
|
+
var __export = (target, all) => {
|
|
15
|
+
for (var name in all)
|
|
16
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
17
|
+
};
|
|
18
|
+
var __copyProps = (to, from, except, desc) => {
|
|
19
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
20
|
+
for (let key of __getOwnPropNames(from))
|
|
21
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
22
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
23
|
+
}
|
|
24
|
+
return to;
|
|
25
|
+
};
|
|
26
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
27
|
+
var attachments_exports = {};
|
|
28
|
+
__export(attachments_exports, {
|
|
29
|
+
appendAIFileAttachmentSource: () => appendAIFileAttachmentSource,
|
|
30
|
+
findMessageAttachments: () => findMessageAttachments,
|
|
31
|
+
getAttachmentId: () => getAttachmentId,
|
|
32
|
+
getAttachmentSource: () => getAttachmentSource,
|
|
33
|
+
getMessageAttachmentLookupKey: () => getMessageAttachmentLookupKey,
|
|
34
|
+
shouldSkipAttachmentSourceLookup: () => shouldSkipAttachmentSourceLookup
|
|
35
|
+
});
|
|
36
|
+
module.exports = __toCommonJS(attachments_exports);
|
|
37
|
+
const AI_FILES_ATTACHMENT_SOURCE = {
|
|
38
|
+
dataSourceKey: "main",
|
|
39
|
+
collectionName: "aiFiles"
|
|
40
|
+
};
|
|
41
|
+
function isRecord(value) {
|
|
42
|
+
return Boolean(value && typeof value === "object" && !Array.isArray(value));
|
|
43
|
+
}
|
|
44
|
+
function appendSourceToAttachmentRecord(record) {
|
|
45
|
+
if (!isRecord(record)) {
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
const meta = {
|
|
49
|
+
...isRecord(record.meta) ? record.meta : {},
|
|
50
|
+
source: AI_FILES_ATTACHMENT_SOURCE
|
|
51
|
+
};
|
|
52
|
+
if (typeof record.set === "function") {
|
|
53
|
+
const model = record;
|
|
54
|
+
model.set("meta", meta);
|
|
55
|
+
model.dataValues.meta = meta;
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
record.meta = meta;
|
|
59
|
+
}
|
|
60
|
+
function appendAIFileAttachmentSource(body) {
|
|
61
|
+
if (!isRecord(body)) {
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
if (body.data) {
|
|
65
|
+
appendSourceToAttachmentRecord(body.data);
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
appendSourceToAttachmentRecord(body);
|
|
69
|
+
}
|
|
70
|
+
function getAttachmentId(attachment) {
|
|
71
|
+
if (!isRecord(attachment)) {
|
|
72
|
+
return null;
|
|
73
|
+
}
|
|
74
|
+
const id = attachment.id ?? attachment.filterByTk;
|
|
75
|
+
if (typeof id === "string" || typeof id === "number") {
|
|
76
|
+
return id;
|
|
77
|
+
}
|
|
78
|
+
return null;
|
|
79
|
+
}
|
|
80
|
+
function shouldSkipAttachmentSourceLookup(source) {
|
|
81
|
+
return (source == null ? void 0 : source.trustworthy) === true;
|
|
82
|
+
}
|
|
83
|
+
function getAttachmentSource(attachment) {
|
|
84
|
+
if (!isRecord(attachment) || !isRecord(attachment.source)) {
|
|
85
|
+
return null;
|
|
86
|
+
}
|
|
87
|
+
const { dataSourceKey, collectionName, field, documentCache, trustworthy } = attachment.source;
|
|
88
|
+
const source = {
|
|
89
|
+
dataSourceKey: typeof dataSourceKey === "string" && dataSourceKey ? dataSourceKey : "main",
|
|
90
|
+
...typeof collectionName === "string" && collectionName ? { collectionName } : {},
|
|
91
|
+
...typeof field === "string" ? { field } : {},
|
|
92
|
+
...typeof documentCache === "boolean" ? { documentCache } : {},
|
|
93
|
+
...trustworthy === true ? { trustworthy } : {}
|
|
94
|
+
};
|
|
95
|
+
if (!source.trustworthy && !source.collectionName) {
|
|
96
|
+
return null;
|
|
97
|
+
}
|
|
98
|
+
return source;
|
|
99
|
+
}
|
|
100
|
+
function getSourceDatabase(ctx, dataSourceKey) {
|
|
101
|
+
var _a, _b, _c;
|
|
102
|
+
if (!dataSourceKey || dataSourceKey === "main") {
|
|
103
|
+
return ctx.db;
|
|
104
|
+
}
|
|
105
|
+
const dataSource = (_b = (_a = ctx.app.dataSourceManager) == null ? void 0 : _a.dataSources) == null ? void 0 : _b.get(dataSourceKey);
|
|
106
|
+
return ((_c = dataSource == null ? void 0 : dataSource.collectionManager) == null ? void 0 : _c.db) ?? null;
|
|
107
|
+
}
|
|
108
|
+
function getLookupKey(lookup) {
|
|
109
|
+
const dataSourceKey = lookup.source.dataSourceKey || "main";
|
|
110
|
+
const collectionName = lookup.source.collectionName;
|
|
111
|
+
return `${dataSourceKey}:${collectionName}:${lookup.id}`;
|
|
112
|
+
}
|
|
113
|
+
function isValidFileCollectionSource(db, lookup) {
|
|
114
|
+
var _a, _b, _c;
|
|
115
|
+
const collectionName = lookup.source.collectionName;
|
|
116
|
+
const collection = db.getCollection(collectionName);
|
|
117
|
+
if (((_a = collection == null ? void 0 : collection.options) == null ? void 0 : _a.template) !== "file") {
|
|
118
|
+
return false;
|
|
119
|
+
}
|
|
120
|
+
if (collectionName === "aiFiles") {
|
|
121
|
+
return true;
|
|
122
|
+
}
|
|
123
|
+
if (!lookup.source.field) {
|
|
124
|
+
return false;
|
|
125
|
+
}
|
|
126
|
+
return ((_c = (_b = db.getFieldByPath(lookup.source.field)) == null ? void 0 : _b.options) == null ? void 0 : _c.target) === collectionName;
|
|
127
|
+
}
|
|
128
|
+
async function findSourceAttachments(ctx, lookups) {
|
|
129
|
+
var _a;
|
|
130
|
+
const attachmentsByLookup = /* @__PURE__ */ new Map();
|
|
131
|
+
const groups = /* @__PURE__ */ new Map();
|
|
132
|
+
for (const lookup of lookups) {
|
|
133
|
+
const dataSourceKey = lookup.source.dataSourceKey || "main";
|
|
134
|
+
const collectionName = lookup.source.collectionName;
|
|
135
|
+
const groupKey = `${dataSourceKey}:${collectionName}`;
|
|
136
|
+
groups.set(groupKey, [...groups.get(groupKey) ?? [], lookup]);
|
|
137
|
+
}
|
|
138
|
+
for (const [groupKey, groupLookups] of groups.entries()) {
|
|
139
|
+
const [dataSourceKey, collectionName] = groupKey.split(":");
|
|
140
|
+
const db = getSourceDatabase(ctx, dataSourceKey);
|
|
141
|
+
if (!db) {
|
|
142
|
+
continue;
|
|
143
|
+
}
|
|
144
|
+
const validLookups = groupLookups.filter((lookup) => isValidFileCollectionSource(db, lookup));
|
|
145
|
+
if (!validLookups.length) {
|
|
146
|
+
continue;
|
|
147
|
+
}
|
|
148
|
+
const filter = {
|
|
149
|
+
id: {
|
|
150
|
+
$in: [...new Set(validLookups.map((lookup) => lookup.id))]
|
|
151
|
+
}
|
|
152
|
+
};
|
|
153
|
+
if (collectionName === "aiFiles") {
|
|
154
|
+
filter.createdById = (_a = ctx.auth) == null ? void 0 : _a.user.id;
|
|
155
|
+
}
|
|
156
|
+
const records = await db.getRepository(collectionName).find({ filter });
|
|
157
|
+
for (const record of records) {
|
|
158
|
+
const attachment = record.toJSON();
|
|
159
|
+
attachmentsByLookup.set(`${dataSourceKey}:${collectionName}:${attachment.id}`, attachment);
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
return attachmentsByLookup;
|
|
163
|
+
}
|
|
164
|
+
async function findMessageAttachments(ctx, attachments) {
|
|
165
|
+
const lookups = [];
|
|
166
|
+
for (const attachment of attachments) {
|
|
167
|
+
const source = getAttachmentSource(attachment);
|
|
168
|
+
if (!source || shouldSkipAttachmentSourceLookup(source)) {
|
|
169
|
+
continue;
|
|
170
|
+
}
|
|
171
|
+
const id = getAttachmentId(attachment);
|
|
172
|
+
if (id == null) {
|
|
173
|
+
continue;
|
|
174
|
+
}
|
|
175
|
+
lookups.push({
|
|
176
|
+
id,
|
|
177
|
+
source
|
|
178
|
+
});
|
|
179
|
+
}
|
|
180
|
+
return findSourceAttachments(ctx, lookups);
|
|
181
|
+
}
|
|
182
|
+
function getMessageAttachmentLookupKey(attachment) {
|
|
183
|
+
const source = getAttachmentSource(attachment);
|
|
184
|
+
if (!source || shouldSkipAttachmentSourceLookup(source)) {
|
|
185
|
+
return null;
|
|
186
|
+
}
|
|
187
|
+
const id = getAttachmentId(attachment);
|
|
188
|
+
if (id == null) {
|
|
189
|
+
return null;
|
|
190
|
+
}
|
|
191
|
+
return getLookupKey({
|
|
192
|
+
id,
|
|
193
|
+
source
|
|
194
|
+
});
|
|
195
|
+
}
|
|
196
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
197
|
+
0 && (module.exports = {
|
|
198
|
+
appendAIFileAttachmentSource,
|
|
199
|
+
findMessageAttachments,
|
|
200
|
+
getAttachmentId,
|
|
201
|
+
getAttachmentSource,
|
|
202
|
+
getMessageAttachmentLookupKey,
|
|
203
|
+
shouldSkipAttachmentSourceLookup
|
|
204
|
+
});
|
|
@@ -16,6 +16,7 @@ export type CachedDocumentLoaderOptions = {
|
|
|
16
16
|
parsedFileExtname: string;
|
|
17
17
|
supports: (file: ParseableFile) => boolean;
|
|
18
18
|
};
|
|
19
|
+
export declare function getDocumentCacheKey(sourceFile: ParseableFile): string | null;
|
|
19
20
|
export declare class CachedDocumentLoader {
|
|
20
21
|
private readonly plugin;
|
|
21
22
|
private readonly options;
|
|
@@ -36,7 +36,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
36
36
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
37
37
|
var cached_exports = {};
|
|
38
38
|
__export(cached_exports, {
|
|
39
|
-
CachedDocumentLoader: () => CachedDocumentLoader
|
|
39
|
+
CachedDocumentLoader: () => CachedDocumentLoader,
|
|
40
|
+
getDocumentCacheKey: () => getDocumentCacheKey
|
|
40
41
|
});
|
|
41
42
|
module.exports = __toCommonJS(cached_exports);
|
|
42
43
|
var import_promises = __toESM(require("node:fs/promises"));
|
|
@@ -44,6 +45,19 @@ var import_node_os = __toESM(require("node:os"));
|
|
|
44
45
|
var import_node_path = __toESM(require("node:path"));
|
|
45
46
|
var import_documents = require("@langchain/core/documents");
|
|
46
47
|
var import_utils = require("./utils");
|
|
48
|
+
function getDocumentCacheKey(sourceFile) {
|
|
49
|
+
var _a;
|
|
50
|
+
if (!sourceFile) {
|
|
51
|
+
return null;
|
|
52
|
+
}
|
|
53
|
+
if (((_a = sourceFile.source) == null ? void 0 : _a.documentCache) === false) {
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
if (!sourceFile.id || !sourceFile.storageId) {
|
|
57
|
+
return null;
|
|
58
|
+
}
|
|
59
|
+
return `${sourceFile.id}@${sourceFile.storageId}`;
|
|
60
|
+
}
|
|
47
61
|
class CachedDocumentLoader {
|
|
48
62
|
constructor(plugin, options) {
|
|
49
63
|
this.plugin = plugin;
|
|
@@ -151,16 +165,11 @@ class CachedDocumentLoader {
|
|
|
151
165
|
return this._cache;
|
|
152
166
|
}
|
|
153
167
|
getCacheKey(sourceFile) {
|
|
154
|
-
|
|
155
|
-
return null;
|
|
156
|
-
}
|
|
157
|
-
if (!sourceFile.id || !sourceFile.storageId) {
|
|
158
|
-
return null;
|
|
159
|
-
}
|
|
160
|
-
return `${sourceFile.id}@${sourceFile.storageId}`;
|
|
168
|
+
return getDocumentCacheKey(sourceFile);
|
|
161
169
|
}
|
|
162
170
|
}
|
|
163
171
|
// Annotate the CommonJS export names for ESM import in node:
|
|
164
172
|
0 && (module.exports = {
|
|
165
|
-
CachedDocumentLoader
|
|
173
|
+
CachedDocumentLoader,
|
|
174
|
+
getDocumentCacheKey
|
|
166
175
|
});
|
|
@@ -7,9 +7,11 @@
|
|
|
7
7
|
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
|
+
var __create = Object.create;
|
|
10
11
|
var __defProp = Object.defineProperty;
|
|
11
12
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
12
13
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
14
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
13
15
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
14
16
|
var __export = (target, all) => {
|
|
15
17
|
for (var name in all)
|
|
@@ -23,6 +25,14 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
23
25
|
}
|
|
24
26
|
return to;
|
|
25
27
|
};
|
|
28
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
29
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
30
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
31
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
32
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
33
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
34
|
+
mod
|
|
35
|
+
));
|
|
26
36
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
27
37
|
var loader_exports = {};
|
|
28
38
|
__export(loader_exports, {
|
|
@@ -32,6 +42,11 @@ module.exports = __toCommonJS(loader_exports);
|
|
|
32
42
|
var import_constants = require("./constants");
|
|
33
43
|
var import_utils = require("./utils");
|
|
34
44
|
var import_ai = require("@nocobase/ai");
|
|
45
|
+
var import_node_fs = require("node:fs");
|
|
46
|
+
var import_promises = require("node:fs/promises");
|
|
47
|
+
var import_node_os = __toESM(require("node:os"));
|
|
48
|
+
var import_node_path = __toESM(require("node:path"));
|
|
49
|
+
var import_promises2 = require("node:stream/promises");
|
|
35
50
|
class DocumentLoader {
|
|
36
51
|
constructor(fileManager) {
|
|
37
52
|
this.fileManager = fileManager;
|
|
@@ -42,15 +57,17 @@ class DocumentLoader {
|
|
|
42
57
|
return [];
|
|
43
58
|
}
|
|
44
59
|
const { stream, contentType } = await this.fileManager.getFileStream(file, options);
|
|
45
|
-
const
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
60
|
+
const tempDir = await (0, import_promises.mkdtemp)(import_node_path.default.join(import_node_os.default.tmpdir(), "nocobase-document-loader-"));
|
|
61
|
+
const tempFilePath = import_node_path.default.join(tempDir, `source${extname}`);
|
|
62
|
+
try {
|
|
63
|
+
await (0, import_promises2.pipeline)(stream, (0, import_node_fs.createWriteStream)(tempFilePath));
|
|
64
|
+
return await (0, import_ai.loadByWorker)(extname, {
|
|
65
|
+
filePath: tempFilePath,
|
|
66
|
+
mimeType: contentType ?? file.mimetype
|
|
67
|
+
});
|
|
68
|
+
} finally {
|
|
69
|
+
await (0, import_promises.rm)(tempDir, { recursive: true, force: true });
|
|
52
70
|
}
|
|
53
|
-
return new Blob(chunks, { type: mimeType });
|
|
54
71
|
}
|
|
55
72
|
}
|
|
56
73
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -31,6 +31,13 @@ export type ParseableFile = {
|
|
|
31
31
|
storageId?: number;
|
|
32
32
|
meta?: Record<string, any>;
|
|
33
33
|
size?: number;
|
|
34
|
+
source?: {
|
|
35
|
+
dataSourceKey?: string;
|
|
36
|
+
collectionName?: string;
|
|
37
|
+
field?: string;
|
|
38
|
+
documentCache?: boolean;
|
|
39
|
+
trustworthy?: boolean;
|
|
40
|
+
};
|
|
34
41
|
};
|
|
35
42
|
export type DocumentLoaderLike = {
|
|
36
43
|
load(file: ParseableFile, options?: any): Promise<Document[]>;
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
*/
|
|
9
9
|
import { LLMProvider, ParsedAttachmentResult } from './provider';
|
|
10
10
|
import { ChatAnthropic } from '@langchain/anthropic';
|
|
11
|
+
import type { AttachmentModel } from '@nocobase/plugin-file-manager';
|
|
11
12
|
import { Model } from '@nocobase/database';
|
|
12
13
|
import { LLMProviderMeta } from '../manager/ai-manager';
|
|
13
14
|
import { Context } from '@nocobase/actions';
|
|
@@ -36,7 +37,7 @@ export declare class AnthropicProvider extends LLMProvider {
|
|
|
36
37
|
type: string;
|
|
37
38
|
query: string;
|
|
38
39
|
}[];
|
|
39
|
-
protected convertToContent(ctx: Context, attachment:
|
|
40
|
+
protected convertToContent(ctx: Context, attachment: AttachmentModel): Promise<ParsedAttachmentResult>;
|
|
40
41
|
private setMaxTokens;
|
|
41
42
|
}
|
|
42
43
|
export declare const anthropicProviderOptions: LLMProviderMeta;
|
|
@@ -186,9 +186,7 @@ class AnthropicProvider extends import_provider.LLMProvider {
|
|
|
186
186
|
});
|
|
187
187
|
}
|
|
188
188
|
async convertToContent(ctx, attachment) {
|
|
189
|
-
const
|
|
190
|
-
const url = await fileManager.getFileURL(attachment);
|
|
191
|
-
const data = await (0, import_utils2.encodeFile)(ctx, decodeURIComponent(url));
|
|
189
|
+
const data = await this.encodeAttachment(ctx, attachment);
|
|
192
190
|
if (attachment.mimetype.startsWith("image/")) {
|
|
193
191
|
return {
|
|
194
192
|
placement: "contentBlocks",
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
8
|
*/
|
|
9
9
|
import { AIMessageChunk } from '@langchain/core/messages';
|
|
10
|
-
import { EmbeddingProvider, LLMProvider } from './provider';
|
|
10
|
+
import { EmbeddingProvider, LLMProvider, ReasoningOptions, ResolvedReasoningOptions } from './provider';
|
|
11
11
|
import { EmbeddingsInterface } from '@langchain/core/embeddings';
|
|
12
12
|
import { SupportedModel } from '../manager/ai-manager';
|
|
13
13
|
import { Model } from '@nocobase/database';
|
|
@@ -19,6 +19,7 @@ export declare class DashscopeProvider extends LLMProvider {
|
|
|
19
19
|
createModel(): ReasoningChatOpenAI;
|
|
20
20
|
isToolConflict(): boolean;
|
|
21
21
|
resolveTools(toolDefinitions: any[]): any[];
|
|
22
|
+
protected resolveReasoningOptions(reasoning?: ReasoningOptions): ResolvedReasoningOptions;
|
|
22
23
|
parseResponseMessage(message: Model): {
|
|
23
24
|
key: any;
|
|
24
25
|
createdAt: any;
|
|
@@ -56,6 +56,7 @@ class DashscopeProvider extends import_provider.LLMProvider {
|
|
|
56
56
|
const { apiKey } = this.serviceOptions || {};
|
|
57
57
|
const { responseFormat, structuredOutput } = this.modelOptions || {};
|
|
58
58
|
const { name, schema } = structuredOutput || {};
|
|
59
|
+
const reasoningOptions = this.resolveReasoningOptions(this.modelReasoningOptions);
|
|
59
60
|
const modelKwargs = {};
|
|
60
61
|
if (responseFormat) {
|
|
61
62
|
const responseFormatOptions = {
|
|
@@ -76,7 +77,11 @@ class DashscopeProvider extends import_provider.LLMProvider {
|
|
|
76
77
|
topP: 0.8,
|
|
77
78
|
temperature: 0.7,
|
|
78
79
|
...this.modelOptions,
|
|
79
|
-
|
|
80
|
+
...reasoningOptions.modelRequestParams || {},
|
|
81
|
+
modelKwargs: {
|
|
82
|
+
...modelKwargs,
|
|
83
|
+
...reasoningOptions.modelKwargs || {}
|
|
84
|
+
},
|
|
80
85
|
configuration: {
|
|
81
86
|
baseURL: this.getResolvedBaseURL()
|
|
82
87
|
},
|
|
@@ -94,6 +99,16 @@ class DashscopeProvider extends import_provider.LLMProvider {
|
|
|
94
99
|
return toolDefinitions;
|
|
95
100
|
}
|
|
96
101
|
}
|
|
102
|
+
resolveReasoningOptions(reasoning) {
|
|
103
|
+
if ((reasoning == null ? void 0 : reasoning.mode) !== "off") {
|
|
104
|
+
return {};
|
|
105
|
+
}
|
|
106
|
+
return {
|
|
107
|
+
modelKwargs: {
|
|
108
|
+
enable_thinking: false
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
}
|
|
97
112
|
parseResponseMessage(message) {
|
|
98
113
|
var _a;
|
|
99
114
|
const result = super.parseResponseMessage(message);
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
*/
|
|
9
9
|
import { ChatDeepSeek } from '@langchain/deepseek';
|
|
10
10
|
import { AIMessageChunk, BaseMessage } from '@langchain/core/messages';
|
|
11
|
-
import { LLMProvider } from './provider';
|
|
11
|
+
import { LLMProvider, ReasoningOptions, ResolvedReasoningOptions } from './provider';
|
|
12
12
|
import { LLMProviderMeta } from '../manager/ai-manager';
|
|
13
13
|
import { Model } from '@nocobase/database';
|
|
14
14
|
import type OpenAI from 'openai';
|
|
@@ -33,6 +33,7 @@ export declare class DeepSeekProvider extends LLMProvider {
|
|
|
33
33
|
status: string;
|
|
34
34
|
content: string;
|
|
35
35
|
};
|
|
36
|
+
protected resolveReasoningOptions(reasoning?: ReasoningOptions): ResolvedReasoningOptions;
|
|
36
37
|
protected isApiSupportedAttachment(attachment: AttachmentModel): boolean;
|
|
37
38
|
}
|
|
38
39
|
export declare const deepseekProviderOptions: LLMProviderMeta;
|
|
@@ -45,6 +45,7 @@ var import_provider = require("./provider");
|
|
|
45
45
|
var import_ai_manager = require("../manager/ai-manager");
|
|
46
46
|
var import_lodash = __toESM(require("lodash"));
|
|
47
47
|
var import_reasoning = require("./common/reasoning");
|
|
48
|
+
const DEEPSEEK_REASONING_EFFORTS = /* @__PURE__ */ new Set(["low", "medium", "high"]);
|
|
48
49
|
class ReasoningDeepSeek extends import_deepseek.ChatDeepSeek {
|
|
49
50
|
async _generate(messages, options, runManager) {
|
|
50
51
|
const reasoningMap = (0, import_reasoning.collectReasoningMap)(messages);
|
|
@@ -80,6 +81,7 @@ class DeepSeekProvider extends import_provider.LLMProvider {
|
|
|
80
81
|
createModel() {
|
|
81
82
|
const { apiKey } = this.serviceOptions || {};
|
|
82
83
|
const { responseFormat } = this.modelOptions || {};
|
|
84
|
+
const reasoningOptions = this.resolveReasoningOptions(this.modelReasoningOptions);
|
|
83
85
|
const modelKwargs = {};
|
|
84
86
|
if (responseFormat) {
|
|
85
87
|
modelKwargs["response_format"] = {
|
|
@@ -89,7 +91,11 @@ class DeepSeekProvider extends import_provider.LLMProvider {
|
|
|
89
91
|
return new ReasoningDeepSeek({
|
|
90
92
|
apiKey,
|
|
91
93
|
...this.modelOptions,
|
|
92
|
-
|
|
94
|
+
...reasoningOptions.modelRequestParams || {},
|
|
95
|
+
modelKwargs: {
|
|
96
|
+
...modelKwargs,
|
|
97
|
+
...reasoningOptions.modelKwargs || {}
|
|
98
|
+
},
|
|
93
99
|
configuration: {
|
|
94
100
|
baseURL: this.getResolvedBaseURL()
|
|
95
101
|
},
|
|
@@ -124,6 +130,31 @@ class DeepSeekProvider extends import_provider.LLMProvider {
|
|
|
124
130
|
}
|
|
125
131
|
return null;
|
|
126
132
|
}
|
|
133
|
+
resolveReasoningOptions(reasoning) {
|
|
134
|
+
if (!reasoning || reasoning.mode === "default") {
|
|
135
|
+
return {};
|
|
136
|
+
}
|
|
137
|
+
if (reasoning.mode === "off") {
|
|
138
|
+
return {
|
|
139
|
+
modelKwargs: {
|
|
140
|
+
thinking: {
|
|
141
|
+
type: "disabled"
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
if (!DEEPSEEK_REASONING_EFFORTS.has(reasoning.mode)) {
|
|
147
|
+
return {};
|
|
148
|
+
}
|
|
149
|
+
return {
|
|
150
|
+
modelKwargs: {
|
|
151
|
+
thinking: {
|
|
152
|
+
type: "enabled"
|
|
153
|
+
},
|
|
154
|
+
reasoning_effort: reasoning.mode
|
|
155
|
+
}
|
|
156
|
+
};
|
|
157
|
+
}
|
|
127
158
|
isApiSupportedAttachment(attachment) {
|
|
128
159
|
return false;
|
|
129
160
|
}
|
|
@@ -132,7 +163,7 @@ const deepseekProviderOptions = {
|
|
|
132
163
|
title: "DeepSeek",
|
|
133
164
|
supportedModel: [import_ai_manager.SupportedModel.LLM],
|
|
134
165
|
models: {
|
|
135
|
-
[import_ai_manager.SupportedModel.LLM]: ["deepseek-chat", "deepseek-reasoner"]
|
|
166
|
+
[import_ai_manager.SupportedModel.LLM]: ["deepseek-v4-pro", "deepseek-v4-flash", "deepseek-chat", "deepseek-reasoner"]
|
|
136
167
|
},
|
|
137
168
|
provider: DeepSeekProvider
|
|
138
169
|
};
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
import { ChatGoogleGenerativeAI } from '@langchain/google-genai';
|
|
10
10
|
import { EmbeddingProvider, LLMProvider, ParsedAttachmentResult } from './provider';
|
|
11
11
|
import { Model } from '@nocobase/database';
|
|
12
|
-
import { AttachmentModel } from '@nocobase/plugin-file-manager';
|
|
12
|
+
import type { AttachmentModel } from '@nocobase/plugin-file-manager';
|
|
13
13
|
import { LLMProviderMeta } from '../manager/ai-manager';
|
|
14
14
|
import { EmbeddingsInterface } from '@langchain/core/embeddings';
|
|
15
15
|
import { Context } from '@nocobase/actions';
|
|
@@ -34,7 +34,6 @@ module.exports = __toCommonJS(google_genai_exports);
|
|
|
34
34
|
var import_google_genai = require("@langchain/google-genai");
|
|
35
35
|
var import_provider = require("./provider");
|
|
36
36
|
var import_utils = require("@nocobase/utils");
|
|
37
|
-
var import_utils2 = require("../utils");
|
|
38
37
|
var import_ai_manager = require("../manager/ai-manager");
|
|
39
38
|
const GOOGLE_GEN_AI_URL = "https://generativelanguage.googleapis.com";
|
|
40
39
|
class GoogleGenAIProvider extends import_provider.LLMProvider {
|
|
@@ -120,10 +119,8 @@ class GoogleGenAIProvider extends import_provider.LLMProvider {
|
|
|
120
119
|
}
|
|
121
120
|
async convertToContent(ctx, attachment) {
|
|
122
121
|
var _a;
|
|
123
|
-
const
|
|
124
|
-
const url = await fileManager.getFileURL(attachment);
|
|
122
|
+
const data = await this.encodeAttachment(ctx, attachment);
|
|
125
123
|
if ((_a = attachment.mimetype) == null ? void 0 : _a.startsWith("image/")) {
|
|
126
|
-
const data = await (0, import_utils2.encodeFile)(ctx, decodeURIComponent(url));
|
|
127
124
|
return {
|
|
128
125
|
placement: "contentBlocks",
|
|
129
126
|
content: {
|
|
@@ -134,7 +131,6 @@ class GoogleGenAIProvider extends import_provider.LLMProvider {
|
|
|
134
131
|
}
|
|
135
132
|
};
|
|
136
133
|
} else {
|
|
137
|
-
const data = await (0, import_utils2.encodeFile)(ctx, decodeURIComponent(url));
|
|
138
134
|
return {
|
|
139
135
|
placement: "contentBlocks",
|
|
140
136
|
content: {
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
*/
|
|
9
9
|
import { AIMessageChunk } from '@langchain/core/messages';
|
|
10
10
|
import { Model } from '@nocobase/database';
|
|
11
|
-
import { LLMProvider } from '../provider';
|
|
11
|
+
import { LLMProvider, ReasoningOptions, ResolvedReasoningOptions } from '../provider';
|
|
12
12
|
import { LLMProviderMeta } from '../../manager/ai-manager';
|
|
13
13
|
import { CachedDocumentLoader } from '../../document-loader';
|
|
14
14
|
import { ReasoningChatOpenAI } from '../common/reasoning';
|
|
@@ -28,6 +28,7 @@ export declare class KimiProvider extends LLMProvider {
|
|
|
28
28
|
status: string;
|
|
29
29
|
content: string;
|
|
30
30
|
};
|
|
31
|
+
protected resolveReasoningOptions(reasoning?: ReasoningOptions): ResolvedReasoningOptions;
|
|
31
32
|
protected isApiSupportedAttachment(attachment: AttachmentModel): boolean;
|
|
32
33
|
protected get documentLoader(): CachedDocumentLoader;
|
|
33
34
|
}
|