dify/web/app/components/base
QuantumGhost 349c3cf7b8
feat(api): Add image multimodal support for LLMNode (#17372)
Enhance `LLMNode` with multimodal capability, introducing support for
image outputs.

This implementation extracts base64-encoded images from LLM responses,
saves them to the storage service, and records the file metadata in the
`ToolFile` table. In conversations, these images are rendered as
markdown-based inline images.
Additionally, the images are included in the LLMNode's output as
file variables, enabling subsequent nodes in the workflow to utilize them.

To integrate file outputs into workflows, adjustments to the frontend code
are necessary.

For multimodal output functionality, updates to related model configurations
are required. Currently, this capability has been applied exclusively to
Google's Gemini models.

Close #15814.

Signed-off-by: -LAN- <laipz8200@outlook.com>
Co-authored-by: -LAN- <laipz8200@outlook.com>
2025-04-30 17:28:02 +08:00
..
action-button Enhance Code Consistency Across Repository with `.editorconfig` (#19023) 2025-04-29 18:04:33 +08:00
agent-log-modal refactor: type improvements that doesn't modify functionality (#17970) 2025-04-14 16:06:10 +08:00
answer-icon Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
app-icon Enhance Code Consistency Across Repository with `.editorconfig` (#19023) 2025-04-29 18:04:33 +08:00
app-icon-picker refactor & perf: `import { noop } from 'lodash-es'` across `web` (#17439) 2025-04-06 17:56:08 +08:00
audio-btn Enhance Code Consistency Across Repository with `.editorconfig` (#19023) 2025-04-29 18:04:33 +08:00
audio-gallery Chore/cleanup warnings (#17974) 2025-04-14 11:27:14 +08:00
auto-height-textarea Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
avatar Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
badge Enhance Code Consistency Across Repository with `.editorconfig` (#19023) 2025-04-29 18:04:33 +08:00
block-input Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
button Enhance Code Consistency Across Repository with `.editorconfig` (#19023) 2025-04-29 18:04:33 +08:00
chat feat(logAndAnn): add control option for question editing feature (#19117) 2025-04-30 10:57:23 +08:00
checkbox feat/TanStack-Form (#18346) 2025-04-18 15:54:22 +08:00
chip Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
confirm Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
content-dialog Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
copy-btn Enhance Code Consistency Across Repository with `.editorconfig` (#19023) 2025-04-29 18:04:33 +08:00
copy-feedback Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
copy-icon Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
corner-label Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
custom-icon Initial commit 2023-05-15 08:51:32 +08:00
date-and-time-picker Feat:edu frontend (#17251) 2025-04-01 13:58:10 +08:00
dialog Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
divider chore: add unit test to high frequency component (#17423) 2025-04-03 18:19:11 +08:00
drawer fix: fix workflow as a tool confirm dialog layout issue (#18494) 2025-04-22 09:59:14 +08:00
drawer-plus fix: fix workflow as a tool confirm dialog layout issue (#18494) 2025-04-22 09:59:14 +08:00
dropdown Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
emoji-picker refactor & perf: `import { noop } from 'lodash-es'` across `web` (#17439) 2025-04-06 17:56:08 +08:00
features Enhance Code Consistency Across Repository with `.editorconfig` (#19023) 2025-04-29 18:04:33 +08:00
file-icon fix: support mdx files close #11557 (#11565) 2024-12-12 13:37:56 +08:00
file-uploader fix: cannot regenerate with image(#15060) (#16611) 2025-04-16 09:56:46 +08:00
float-popover-container feat: fe mobile responsive next (#1609) 2023-11-27 11:47:48 +08:00
float-right-container feat: fe mobile responsive next (#1609) 2023-11-27 11:47:48 +08:00
form feat/TanStack-Form (#18346) 2025-04-18 15:54:22 +08:00
fullscreen-modal refactor & perf: `import { noop } from 'lodash-es'` across `web` (#17439) 2025-04-06 17:56:08 +08:00
ga Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
grid-mask Enhance Code Consistency Across Repository with `.editorconfig` (#19023) 2025-04-29 18:04:33 +08:00
icons Enhance Code Consistency Across Repository with `.editorconfig` (#19023) 2025-04-29 18:04:33 +08:00
image-gallery Enhance Code Consistency Across Repository with `.editorconfig` (#19023) 2025-04-29 18:04:33 +08:00
image-uploader Enhance Code Consistency Across Repository with `.editorconfig` (#19023) 2025-04-29 18:04:33 +08:00
input feat/TanStack-Form (#18346) 2025-04-18 15:54:22 +08:00
input-number feat/TanStack-Form (#18346) 2025-04-18 15:54:22 +08:00
install-button Enhance Code Consistency Across Repository with `.editorconfig` (#19023) 2025-04-29 18:04:33 +08:00
linked-apps-panel Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
list-empty Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
loading chore: add unit test to high frequency component (#17423) 2025-04-03 18:19:11 +08:00
logo Added the missing path of the webpath prefix and the prefix basepath + of static resources to remove the bug of adding more basepath. (#18658) 2025-04-24 17:14:26 +08:00
markdown-blocks fix: styles and missing imports (#18396) 2025-04-19 14:46:10 +08:00
mermaid feat(api): Add image multimodal support for LLMNode (#17372) 2025-04-30 17:28:02 +08:00
message-log-modal Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
modal refactor & perf: `import { noop } from 'lodash-es'` across `web` (#17439) 2025-04-06 17:56:08 +08:00
modal-like-wrap Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
new-audio-button Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
notion-icon Feat: dataset dark mode (#17993) 2025-04-14 15:45:23 +08:00
notion-page-selector Enhance Code Consistency Across Repository with `.editorconfig` (#19023) 2025-04-29 18:04:33 +08:00
pagination chore: add `'no-empty-function': 'error'` to `eslint.config.mjs` (#17656) 2025-04-09 12:10:17 +08:00
param-item feat/TanStack-Form (#18346) 2025-04-18 15:54:22 +08:00
popover fix: update htmlContent type and wrap button in div for manualClose (#16716) 2025-03-25 14:58:42 +08:00
portal-to-follow-elem chore: add unit test to high frequency component (#17423) 2025-04-03 18:19:11 +08:00
premium-badge Enhance Code Consistency Across Repository with `.editorconfig` (#19023) 2025-04-29 18:04:33 +08:00
progress-bar Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
prompt-editor fix: fix import LexicalErrorBoundary error (#19124) 2025-04-30 11:05:47 +08:00
prompt-log-modal Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
qrcode Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
radio Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
radio-card Enhance Code Consistency Across Repository with `.editorconfig` (#19023) 2025-04-29 18:04:33 +08:00
search-input Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
segmented-control feat: llm support struct output (#17994) 2025-04-18 16:53:43 +08:00
select Enhance Code Consistency Across Repository with `.editorconfig` (#19023) 2025-04-29 18:04:33 +08:00
simple-pie-chart feat: parent child retrieval (#12106) 2024-12-26 12:01:51 +08:00
skeleton Introduce Plugins (#13836) 2025-02-17 17:05:13 +08:00
slider Enhance Code Consistency Across Repository with `.editorconfig` (#19023) 2025-04-29 18:04:33 +08:00
sort Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
spinner chore: add unit test to high frequency component (#17423) 2025-04-03 18:19:11 +08:00
svg Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
svg-gallery Chore/cleanup warnings (#17974) 2025-04-14 11:27:14 +08:00
switch fix: change `Switch.props.ref` to optional prop to align with `OriginalSwitch` (#17443) 2025-04-05 14:56:54 +08:00
tab-header Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
tab-slider Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
tab-slider-new Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
tab-slider-plain Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
tag feat: tailwind related improvement (#6085) 2024-07-09 15:05:40 +08:00
tag-input Feat: workflow dark mode (#17785) 2025-04-10 17:15:48 +08:00
tag-management Chore/cleanup warnings (#17974) 2025-04-14 11:27:14 +08:00
text-generation Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
textarea feat: llm support struct output (#17994) 2025-04-18 16:53:43 +08:00
toast Enhance Code Consistency Across Repository with `.editorconfig` (#19023) 2025-04-29 18:04:33 +08:00
tooltip feat/TanStack-Form (#18346) 2025-04-18 15:54:22 +08:00
video-gallery Introduce Plugins (#13836) 2025-02-17 17:05:13 +08:00
voice-input Enhance Code Consistency Across Repository with `.editorconfig` (#19023) 2025-04-29 18:04:33 +08:00
with-input-validation refactor & perf: `import { noop } from 'lodash-es'` across `web` (#17439) 2025-04-06 17:56:08 +08:00
app-unavailable.tsx Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
badge.tsx Chore: frontend infrastructure upgrade (#16420) 2025-03-21 17:41:03 +08:00
markdown.tsx fix: fix render undefined when text children is empty (#19135) 2025-04-30 14:17:41 +08:00