mirror of
https://github.com/langgenius/dify.git
synced 2026-07-20 19:50:06 -04:00
Multimodal RAG with/without images issues #21508
Open
opened 2026-02-21 20:12:54 -05:00 by yindo
·
15 comments
No Branch/Tag Specified
main
0720-documents-tasks
0720-crawl-selection
0720-crawl-preview
0720-source-connections
ci/simplify-test-workflows
0720-create-knowledge
0720-new-rag-contracts
laipz8200/human-input-loop-iteration
0720-new-rag-list
deploy/saas
linw/snp-544-draft-offlod-code-node-output-error
perf/optimize-markdown-renderer
codex/migrate-knowledge-fs
deploy/enterprise
feat/hitl-im-dev
gareth/esq1-170-rbac-for-agent
deploy/agent
hotfix/1.15.0-fix.14
feat/ce-telemetry-dev
lts/1.13.x
deploy/workflow-archive-catalog-discovery
dependabot/uv/api/pydantic-09001a97e5
laipz8200/completion-workflow-entry
dependabot/uv/api/lts/1.13.x/python-packages-6c2bf7110c
dependabot/uv/api/storage-4219cfbece
dependabot/uv/api/lts/1.13.x/dev-6fc4f8b90c
dependabot/uv/api/llm-46e0cee538
dependabot/uv/api/lts/1.13.x/vdb-72526f7860
dependabot/uv/api/opentelemetry-b8005594e1
dependabot/uv/api/lts/1.13.x/storage-4310e8b8d8
dependabot/uv/api/lts/1.13.x/database-c0fba9b420
dependabot/uv/api/lts/1.13.x/llm-5ce1d68736
dependabot/uv/api/lts/1.13.x/pydantic-09001a97e5
dependabot/uv/api/lts/1.13.x/opentelemetry-b8005594e1
dependabot/uv/api/google-68de7a6be5
dependabot/github_actions/lts/1.13.x/github-actions-dependencies-1a36b91cf1
dependabot/uv/api/lts/1.13.x/google-c93828e58f
dependabot/uv/api/lts/1.13.x/flask-1086fc46af
0717-knowledge-fs-contract
feat/secret-scrub-persistence
feat/llm-ft-timeout
worktree-esq1-132-webapp-public-access
feat/appdeploy-selected-workflow-dsl
0715-new-rag
laipz8200/llm-environment-variables
release/ee-1.15.0-hotfix
laipz8200/chore-remove-feature-preview-root-env
dependabot/go_modules/dify-agent-runtime/golang.org/x/net-0.55.0
hotfix/1.15.0-fix.12
hotfix/1.15.0-fix.12-cherrypick
hotfix/1.15.0-fix.13
build/invite-seats-precheck
hotfix/1.15.0-fix.11
laipz8200/workflow-persistence-mixed-mode
hotfix/1.15.0-fix.10
zhangxin/eng-558-licensed-seats-1.15
fix/wta-1307-effect-suspense-read
feat/cli-skills-agents
0713-vp-lint
deploy/dev
fix/agent-roster-answer-completion-main
feat/pay-by-invoice
codex/run-external-e2e-main-ci
agent/remove-sandbox-bind-mounts
feat/agent-v2-e2e-test
hotfix/1.15.0-fix.9
hotfix/1.15.0-fix.8
build/test-archive-export
linw/restore-agent-message-delta-feat
hotfix/1.15.0-fix.7
hotfix/1.15.0-fix.6
codex/pr-38227-session-types
codex/pr-38227-session-scope-split
fix/ui-fix
hotfix/1.15.0-fix.4
codex/review-pr-38480
hotfix/1.15.0-fix.2
copilot/fix-web-full-stack-e2e-job
fix/dify-2738-agent-node-dsl-export
hotfix/1.15.0-fix.3
fix/scope-segment-batch-delete
laipz8200/scope-segment-route-lookup
chore/i18n-sync-7b7956f3e7ca-e901a65a
codex/upgrade-orpc-v2-beta
hotfix/1.15.0-fix.1
codex/upgrade-openapi-ts-autofix
codex/upgrade-next-16-3-preview
hotfix/1.15.0-fix.0
hotfix/web-detail-adjustment-before-release
release/e-1.15.0
codex/replace-lamejs-with-mediabunny
copilot/add-more-tests
deploy/archive-db-resilience
fix/studio-nav-home-button
hotfix/1.14.2-fix.13
worktree-token-expired-error-code
hotfix-1.14.2-fix.12
codex/agent-v2-state-graph
codex/refactor-deployment-detail-components
hotfix/1.14.2-fix.12
build/fix/workflow-error-hanging
work/dify-2585-agent-drafts-pr
fix/dify-2574-soul-files-kv
fix/dify-2554-debug-conversation-per-user
hotfix/1.14.2-fix.11
feat/openapi-rbac
test/cli-e2e-error-body-contract
build/optimize-clean-messages-eligible-apps
zhaohao1004/optimize-clean-messages-cursor
gh-readonly-queue/main/pr-37592-c71f03f5902031b7c02e61af3aff5c2dee6f7d85
build/optimize-clean-messages-cursor
feat/country
codex/vp-fmt-migration
hotfix/1.14.2-fix.10
hotfix/1.14.2-fix.9
hotfix/1.14.2-fix.8
hotfix/1.14.2-fix.7
hotfix/1.14.2-fix.6
codex/page-title-updates
feat/agent-mention-stable-ids
fix/guard-workspace-with-defualt-roles
build/pr-37227-free-plan-workflow-run-cleanup
feat/cli-e2e-test-suite
feat/ui-start-node
feat/hitl-file-in-body
copilot/dify-team-question-agent-node
fix/wta-438-device-sso-redirect-origin
hotfix/1.14.2-fix.5
feat/dev-snippet-fronted
feat/mcp-token-transfer
chore/keep-info-icon-the-same-postion
codex/local-app-list-tag-filter
feat/snippet-new
hotfix/1.14.2-fix.4
codex/migrate-var-reference-combobox
hotfix/1.14.2-fix.3
feat/marketplace-template
chore/deploy-saas-workflow
hotfix/1.14.2-fix.2
build/cli
codex/snp-406-pointer-position-ref
hotfix/1.14.1-fix.3
build/feat/model-type-migration-script
fix/webapp-disabled-not-jump-to-webapp-login
fix/lb-model-type-dedup
song/eng-379-file-output-check-executor
chore/bump-authlib-1.6.12
fix/tag-trigger-preserve-case
chore/bump-sendgrid-lts-1.13.x
fix/model-type-enum-construction
refactor/add-missing-override-decorator
work/web-mcp-1.14.1
copilot/check-runtime-limits
laipz8200/workflow-response-stream-filter
copilot/query-issues-pr-images
laipz8200/fix-autofix-contract-generation
copilot/fix-autofix-job-failure
codex/deprecate-sys-files-compat
codex/fix-scrolling-issue-with-overflow-visible
copilot/research-retrieval-attachment-consumption
copilot/research-agent-node-implementation
chore/upgrade-xyflow-v12
hotfix/1.14.1-fix.1
build/1.14.1-fix.1-langfuse
hotfix/1.14.1-fix.2
feat/lts-lazy-dialogue-count
fix/can-not-create-knowledge
codex/fix-marketplace-hero-shake
codex/tag-name-url-filter
upgrade-graphon-to-0-3-0
codex/app-delete-enter-confirm
build/sample-tidb
codex/revert-pr-35708
chore/remove-dify-deploy-script
chore/simpler-deploy
lts/1.13.x-fix-35910
feat/storage-path-prefix
hotfix/1.13.3-fix10
hotfix/1.13.3-fix9
hotfix/1.14.0-fix.4
hotfix/1.14.0-fix.3
hotfix/1.14.0-fix.2
revert-35748-4-30-open-api
feat/upgrade-graphon
copilot/research-celery-task-ttl
hotfix/1.14.0-fix.1
copilot/fix-css-issue
feat/s3-public-base-url
hotfix/1.13.3-fix8
build/depot-speed-benchmark-20260426
build/depot-speed-benchmark-20260426-warm
hotfix/1.13.3-fix7
feat/evaluation
fix/workflow-line
chore/dependency-upgrade
deploy/zhaohao
feat/replayable-stream
feat/show-the-hierarchy-in-phonenix-trace
4-17-lint-config-for-react
p363-reviewed
build/billing-v3
copilot/list-contributions-to-dify
cursor/migrate-tooltip-to-popover-infotips
refactor/quota-service
feat/new-biliing-quota
hotfix/1.13.3-fix6
cursor/dify-ui-infra
p363-hjlarry
cursor/refactor-select-trigger-api
chore/lts-13x-bump-deps
codex/tighten-button-tone-types
locate-queue-autocreate-deps
hotfix/1.13.3-fix5
feat/new-agent-node
hotfix/1.13.3-fix4
feat/per-db-credential
chore/i18n-sync-208604a3a819-9220dd74
chore/i18n-sync-1b369cede4b4-0e13ce3f
chore/i18n-sync-c93e40212e4c-0e13ce3f
codex/fix-vite-audit-in-sdk-test
copilot/fix-agent-dialogue-input-limit
codex/dify-ui-package-migration
4-2-no-global-loading
fix/ps-not-send
3-18-no-global-loading
feat/support-agent-sandbox
hotfix/1.13.3-fix3
hotfix/1.13.3-fix2
4-1-unocss
build/feat/saas-quota-v4
feat/remove-unused-is-deleted-from-conversation
codex-add-podman-compose-dev-scripts
fix-partnerstack-cookie-sync
hotfix/1.13.3-fix1
3-31-vite-task-cache
test/add-test-case-for-prompt-editor
build/feat/saas-quota
build/feat/saas-quota-v2
deploy/agent-dev
yanli/fix-iter-log
review-myscale-sqli
codex/force-node24-for-actions
ci/docker-build-narrowing
chore/dependabot-alert-to-bot
verify-email-reset-flow
3-26-cache-lint-for-autofix
gh-readonly-queue/main/pr-34120-2cbcf9518e40104286a3034f3c3c688cd4ff9fbf
gh-readonly-queue/main/pr-34123-1c72b8d9db03b93b3fc7f86bc522e53806f5a8f0
gh-readonly-queue/main/pr-33960-38285aa1ac6de98614456f49b4d834fe503f4e58
p383
yanli/phase3-code-scope
test/workflow-app
codex/migrate-old-toast-calls-and-update-translations
hotfix/1.13.2-fix2
focal-quokka
codex/fix-issue-33422-in-repository
hotfix/1.13.2-fix1
copilot/refactor-test-config-leak-fix
build/release-1.13.2
fix-kpa-issue
build/release-1.13.1-rc.3
3-18-dev-with-http2
build/release-1.13.1-rc.2
3-16-revert-changes
3-16-add-csp
build/release-1.13.1-rc.1
feat/source-for-plugin-tasks
3-16-next-lib
revert-33484-dependabot/pip/api/python-packages-2eba66ec58
release/e-1.11.4
move-trigger-nodes
copilot/refactor-test-config-leak-detection
fix/enterprise-api-error-handling
release/e-1.12.1
fix/vinext-deps
yanli/docx-image-render
copilot/analyze-dify-code
deploy/clean-task-trace
copilot/sub-pr-33044
3-6-type-check
feat/model-provider-refactor
copilot/refactor-unnecessary-cast-call
build/export-app-messages
1.12.1-otel-ee
hotfix/1.13.0-fix.4
update-checker
test/ui-primitive-wrapper-tests-pr
hotfix/1.13.0-fix.3
refactor/base-comp
deploy/memory-usage
hotfix/1.13.0-fix.2
hotfix/1.13.0-fix.1
build/sandbox-clean-job-260302-1
build/sandbox-clean-job
fix/otel-upgrade-e-1.12.1
build/optimize-workflow-run-cleanup
move-core-prompt-runtime
hotfix/1.12.1-fix.6
copilot/remove-pm2-from-docker
move-token-buffer-memory
32589-main-repo
fix/access-mode-sso-verified
refactor/remove-workspace-mutate-from-context
2-11-fix-lint
feat/plugins-marketplace-ssr-prefetch-loading
build/message-clean-performance-log
refactor/template-transform-node
hotfix/1.12.1-fix.5
2-9-stable-test-2
pre-align-hitl-frontend
fix/preserve-UNC-paths-in-conversation-opner
hotfix/1.12.1-fix.4
hotfix/1.12.1-fix.3
feat/add-update-all-plugin-button
refactor/share
hotfix/1.12.1-fix.2
test/inprove-quality
feat/add_templates
hotfix/1.12.1-fix.1
fix/ee-1511-set-default-provider-user-id-bug
copilot/fix-pnpm-test
hotfix/1.12.1-fix.0
feat/vibe-wf
fix/fix-test
fix/console_ns_import
release/1.12.1
fix/workflow-sync-draft
refactor/ssr-prefetch-zustand-removal
1-24-kubb-generate
refactor/migrate-react-window-to-tanstack-virtual
fix/input-ime-onpressenter
1-30-fix-failed-test
feat/structured-output-with-sandbox
yanli/init-ty
hotfix/1.11.4-fix.4
fix/trigger-plugin-output
fix/parallel-generation-render
refactor/configuration
yanli/add-opaque-body
build/billing-refactor-test-2026012701
refactor/debug-and-preview-store
refactor/tools-workflow
build/debug-billing-refactor
build/billing-service
build-billing-service
feat/add-agentation
refactor/app-components
build/collaboration
copilot/sub-pr-31424
refactor/local-storage
refactor/skill-bundler
hotfix/1.11.4-fix.3
build/archive-workflow-run
feat/pull-a-variable
hotfix/1.11.4-fix.2
copilot/sub-pr-30849
hotfix/1.11.4-fix.1
1-21-test-window-is-not-defined
revert-30727-feat/model-total-credits
copilot/sub-pr-31283
zhsama/multi-turn-popup
zhsama/panel-var-popup
12-19-demo-for-app-store
refactor/migrate-app-detail-to-tanstack-query
build/clear-message
feat/credential-sync-fix-ee
feat/llm-first-token-timeout
zhsama/assemble-var-input
release/e-1.11.2
feature/task-quadrant-view
zhsama/llm-warning-ui
build/clear-workflow-run
zhsama/agent-at-nodes
build/1.11.4
release/e-1.6.0-fix.1
release/e-0.15.8-fix.1
1-14-remove-web-app-access-token
refactor/plugins-detail
fix/reset-dev
feat/llm-support-tools
feat/knowledge-summary-index
fix/preact-security-vulnerability
copilot/fix-clear-query-params-test
refactor/query-params-nuqs
chore/upgrade-pnpm-10.28.0
8c92-update-api-core
detached
chore/i18n-sync-20260107-104636
chore/i18n-sync-20260107-102654
feat/grouping-branching
feat/agent-node-v2
hotfix/1.11.2-fix.3
feat/llm-node-support-tools
refactor/remove-axios-dependency
refactor/web-service-hooks
fix/pwa-plugin-migration
chore/refactor-text-generation
hotfix/1.11.2-fix.2
release/e-1.11.1
release/e-1.9.2
release/e-1.8.2
hotfix/1.11.2-hotfix-1
refactor/chat-messages-service-api
fix/knowledge-retrieval-node-affected-by-past-version
fix/esbuild-dependabot-145
chore/automated-i18n-updates-02e0fadef78f0c888b79e7a52ae6714ac73effdc
chore/automated-i18n-updates-eb73f9a9b9fc9eee6be786d2bf5f41fc77e240c4
hotfix/1.11.1-2
refactor-text-generate-item
feat/end-user-oauth
feat/add-qdrant-to-tidb-migration
codex/run-pnpm-lint-fix-and-commit-changes
feat/document-test
feat/e2e-testing
deploy/trigger-dev
hotfix/1.11.1-1
e-260
refactor/use-log-react-query
feat/fallback-interface-for-unauthorized-datasource-node
hotfix/1.10.1-fix.4
refactor/app/components/app/text-generate/item/index.tsx-and-add-test
release/e-1.6.0
hotfix/1.10.1-fix.3
hotfix/1.10.1-fix.2
feat/tracking-1203
deploy/end-user-oauth
hotfix/1.10.1-fix.1
refactor/marketplace-react-query
feat/detect-cognitive-complexity
fix/codeowners
fix/httpx_timeout_parameters
feat/end-user-auth-dummy-apis
chore/re-point-doc-urls
fix/share-markdown-xss
feat/data-tracking
feat/memory-orchestration-be
build/trigger-billing
chore/remove-docker-legacy-dir
copilot/reverse-engineer-dify-application
feat/amplitude
feat/trigger-saas
mysql-adapt
test/build-diff-edition
feat/no-root-image
feat/trigger
feat/ga-tracking
feat/collaboration
mysql-adaptation
feat/sqlalchemy-type-annotations
build/trigger-1
build/self-tenant-queue
mcp-conditional-capability
fix/mcp-capability
hotfix/1.9.2-fix.3
hotfix/1.9.2-fix.2
feat/iteration-node
hotfix/1.9.2-fix.1
hotfix/1.9.1-fix.1
e1ca7a9bdb0443b9f027b6de16
fix/login-status
feat/gtag-1016
test/monaco-editor-and-remix-icon-upgrade
copilot/fix-ce7a9189-f70c-4ea9-81ba-3f49303104d6
feat/memory-orchestration-be-dev-env
build/trigger
feat/add-knowledge-pipeline-template-command
chore/workflow-performance
copilot/fix-fc039c44-aa24-4844-82b2-e9ac237a13e9
test/log-refactor
chore/ssrf-config
feat/pinecone-vdb
copilot/fix-d8c5989d-5a30-418f-8dc4-099cf1f37218
deploy/rag-dev
hotfix/1.9.0-fix.2
pinecone
fix/document-query
feat/trigger_backup
feat/playwright-integration
feat/trigger_merging
feat/chunk-deduplication
feat/crendential-policy-default-check
feat/credential-policy
release/e-1.8.1
fix/template-list
feat/end_user
feat/trigger-fe
revert-25628-refactor-24421-app-datasets-part1
fix/plugin-tag-fallback
fix/unselect-credential
feat/limit-conv-var-desc-length
feat/rag-pipeline-service-api
fix/empty-plugin-list
feat/plugin-readme
feat/plugin-readme-fe
feat/container-node-extract-mapping
bug1
fix/model-credential
feat/big-var-value-show-fe
build/1.7.2-fix.2
release/e-1.7.2
build/boolean-type
feat/oauth-provider-fe
build/0.7.2-fix.1
feat/model-credentials
feat/model-auth
feat/rag-2-preview
release/e-1.7.1
fix/hotfix-tool-provider-deadlock
feat/knowledge-pipeline-access-control
config-tool-file-size
13604-when-using-redis-cluster-for-caching-add-global_prefix-to-all-keys-cached-by-redis
feat/model-credentils
build/oauth
feat/oauth
feat/human-input
build/plugin-auto-upgrade
test/performance
feat/tool-plugin-oauth
feat/tool-oauth
temp-feat-owner-transfer-enterprise-frontend
release/e-3.0.2
feat/plugin-auto-upgrade-fe
chore/offline-the-sys-files
feat/rag-pipeline
feat/r2
release/e-3.2.0
wtw/rag-pipeline
feat/add-retrival-field-in-dataset
feat/webapp-verified-sso-main
fix/app-not-published-error
feat/webapp-verified-sso-260
v141-hotfix
fix/20326-tool-invoke-error-instance-account
fix/19933-account-object-has-no-attribute-_current_tenant-when-workflow-uses-workflow-as-tool-node
hotfix/0519
fix/e-legacy-clean-up
fix/admin-permission
fix/e-admin-permission
feat/model-memory
feat/webapp-auth-api
1.0.0-fix
revert-17133-fix/i16990-text-to-language-settings
e-0156
hotfix/translation-fix
fix/slider-style-error
e-0154
release/0.15.6-alpha-1
cohere/cleanup-free-tenants-logs
chore/auto-dify
fix/rag-infinity-spaces-loop
fix/dataset-admin
fix/expose-debugging-port
fix/tool-info
fix/aws-s3-r2-compatible
feat/knowledge-metabase
fix/fail-branch-stream-output-error
release/0.15.3-fix1
feat/14009-feature-request-support-for-retrieving-historical-conversations-without-from-enduser-id
feat/upgrade-unstructured-version-10.2
feat/classnames-sort
feat/upgrade-unstructured-version
fix/version-check
fix/handle-agent-none-value
fix/agent-params-pasring
fix/agent-parallel
feat/knowledge-dark-mode
feat/custom-tool-input
release/0.15.2-fix1
0.15.1-admin-apis
feat/support-docx-image-view
feat/agent-stream-output
feat/workflow-node-dark-mode
fix/switch-strategy-clean-param
fix/chore-fix
opik-monitoring
provider-gpustack
feat/mecab-japanese-keywords
feat/retry-single-step-debug
revert-12086-feat/parent-child-retrieval
fix/remove-the-retry-index-field
fix/11839
feat/node-execution-retry
feat/support-extractor-tools-update-wip
feat/update-tidb-batchget-endpoint
fix/iteration-thread-pool-error
feat/support-multi-token-count
feat/parent-child-retrieval-api
fix/app-icon-is-missing
feat/support-extractor-tools-update
test/disable_site
build/add-dependabot
feat/support-extractor-tools
fix/docx-extract-image-ssrf
fix/redis-slow-in-gevent
fix/9772-internal-server-error-when-custom-disclaimer-longer-than-64-characters
alert-autofix-89
build/eslint-react-refresh-plugin
build/switch-to-pnpm
revert-9424-feat/update-dataset-clean-rule
fix/external-knowledge-retrieval-issues
feat/login-type-coontrol
feat/external-knowledge-api
feat/rag-external-knowledge-with-api
feat/external-knowledge
fix/notion-table-extract
fix/tooltip
feat/workflow-add-block-shortcut
feat/update-docs
fix/note-node-zoom-issue
fix/model-runtime-quato-issue
fix/db-lock-timeout
feat/new-tooltip
feat/web-app-sso
chore/optimize-app-workflow-deletion-slow-sql
fix/trace_app_config_app_id_idx
fix/extra-table-tracing-app-config
feat/update-beat-job-time-to-env
fix/index-estimate-error
chore/enterprise-license-status
fix/remove-tsne_position
feat/2p
feat/aws-iam-auth-check
feat/add-flashrank
feat/support-milvus-2.4
feat/add-resource-from-tools
bai
1.16.0
1.16.0-rc1
1.15.0
1.14.2
1.14.1
1.14.0
1.13.3
1.13.2
1.13.1
1.14.0-rc1
1.13.0
1.12.1
1.12.0
1.11.4
1.11.3
1.11.2
1.11.1
1.11.0
1.10.1-fix.1
1.10.1
1.10.0
1.10.0-rc1
1.9.2
1.9.1
1.9.0
2.0.0-beta.2
2.0.0-beta.1
1.8.1
1.8.0
1.7.2
1.7.1
1.7.0
1.6.0
1.5.1
1.5.0
1.4.3
1.4.2
0.15.8
1.4.1
1.4.0
1.3.1
0.15.7
1.3.0
0.15.6
1.2.0
0.15.6-alpha.1
1.1.3
0.15.5
1.1.2
0.15.4
1.1.1
1.1.0
1.0.1
1.0.0
0.15.3
0.15.2
0.15.1
1.0.0-beta.1
0.15.0
0.14.2
v0.8.3-fix1
0.14.1
0.14.0
0.13.2
0.13.1
0.13.0
0.12.1
0.12.0
0.11.2
0.11.1
0.10.2-fix1
0.11.0
0.10.2
0.10.1
0.10.0
0.10.0-beta3
0.9.2
0.9.1-fix1
0.10.0-beta2
0.10.0-beta1
0.9.1
0.9.0
0.8.3
0.8.2
0.8.1
0.8.0
0.8.0-beta1
0.7.3
0.7.2
0.7.1
0.7.0
0.6.16
0.6.15
0.6.14
0.6.13
0.6.12-fix1
0.6.12
0.6.11
0.6.10
0.6.9
0.6.8
0.6.7
0.6.6
0.6.5
0.6.4
0.6.3
0.6.2
0.6.1
0.6.0-fix1
0.6.0
0.6.0-preview-workflow.2
0.5.11-fix1
0.5.11
0.6.0-preview-workflow.1
0.5.10
0.5.9
0.5.8
0.5.7
0.5.6
0.5.5
0.5.4
0.5.3
0.5.2
0.5.1
0.5.0
0.4.9
0.4.8
0.4.7
0.4.6
0.4.5
0.4.4
0.4.3
0.4.2
0.4.1
0.4.0
0.3.34
0.3.33
0.3.32
0.3.31-fix3
0.3.31-fix2
0.3.31-fix1
0.3.31
0.3.30
0.3.29
0.3.28
0.3.27
0.3.26
0.3.25
0.3.24
0.3.23
0.3.22
0.3.21
0.3.20
0.3.19
0.3.18
0.3.17
0.3.16
0.3.15
0.3.14
0.3.13
0.3.12
0.3.11
0.3.10
0.3.9
0.3.8
0.3.7
0.3.6
0.3.5
0.3.4
0.3.3
0.3.2
0.3.1
0.3.0
0.2.2
0.2.1
Labels
Clear labels
Knowledge Pipeline
Proposal
WIP
cloud
dependencies
feat:webapp
good first issue
outdated
performance
pull-request
python:uv
refactor
size:L
stale
status: accepting prs
status: blocked
status: in discussion
stt & tts
vulnerablity
web
wont-fix
🌊 feat:workflow
🌚 invalid
🐞 bug
👻 feat:rag
💪 enhancement
📚 documentation
🔨 feat:tools
🙋♂️ question
🙏 help wanted
🤔 cant-reproduce
🤖 feat:agent
Mirrored from GitHub Pull Request
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: langgenius/dify#21508
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @jlfloresTeika on GitHub (Jan 7, 2026).
Self Checks
Dify version
latest docker release
Cloud or Self Hosted
Self Hosted (Docker)
Steps to reproduce
I did a Multimodal Knowledge with a docx containing images and text, I have created a tool workflow for an Agent to retrieve from the multimodal rag and I find this error consistently, error that in the non-multimodal rag workflows I don't find.
"tool_call_name": "multimodal_rag",
"tool_response": "tool invoke error: read tool response failed: request failed: Attachments variable is not array file or file type."
When I enable the parameter for the images (files array) and feed my chat workflow that is linked with an agent to the multimodal_rag tool workflow the error is:
Object of type File is not JSON serializable
Any help is appreciated, thanks DiFy team and contributors, this feature looks very promising!
For other details you may need to debug, i'm here. ty
✔️ Expected Behavior
The multimodal rag workflow should act like the non-multimodal regarding inputs and ouputs despite image input detail since is optional and it seems to not work as expected.
PD: When I test retrival directly from the retrieval tool it works good. That's why is strange that in an agent with the tool workflow attatched doesn't behave the same.
❌ Actual Behavior
The multimodal rag workflow tool I've configured doesn't behave as expected, I'm experiencing the avobe mentioned issues.
@dosubot[bot] commented on GitHub (Jan 7, 2026):
The errors you’re seeing are due to how Dify handles file/image attachments in multimodal RAG agent workflows. The “Object of type File is not JSON serializable” error happens when a File object is passed directly instead of being converted to a JSON-serializable format (like a dict with metadata and a URL). The “Attachments variable is not array file or file type” error means the input validation expects an array of file references, but the input doesn’t match—often because the files weren’t properly transformed to URLs or plugin-compatible dicts before being sent to the tool workflow.
Direct retrieval works because it handles file/image serialization differently, but agent tool workflows require explicit conversion. Dify’s code expects files to be passed as references (URLs, file IDs, or plugin-compatible dicts), not as raw File objects. The File class provides methods like
.to_dict()and.to_plugin_parameter()for this purpose, and the ToolFileMessageTransformer is responsible for converting File objects into URLs or plugin parameters for serialization in workflows. If this transformation is skipped, serialization errors occur1.To resolve this:
.to_dict()or.to_plugin_parameter()if you’re working with custom plugins or integrations.MULTIMODAL_SEND_IMAGE_FORMAT(tourlorbase64, depending on your model’s requirements) andINTERNAL_FILES_URL(to a Docker-network-accessible URL) in your Docker deployment23.If you still see errors, double-check that all file/image data is correctly formatted and passed as references, and consider logging the serialized prompt messages before sending them to the plugin to debug further.
To reply, just mention @dosu.
How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other
@jlfloresTeika commented on GitHub (Jan 7, 2026):
But when I don't send images as input since in the multimodal rag images are optional how is that the error is: "tool_response": "tool invoke error: read tool response failed: request failed: Attachments variable is not array file or file type." ? also inside my agent workflow how can I convert the image / file inputs to serializable json like the tool expects? @dosu
@dosubot[bot] commented on GitHub (Jan 7, 2026):
That error happens because Dify expects the attachments variable to always be an array—even if it's empty—not null or another type. If your agent workflow sends attachments: null or omits the field, or if it accidentally passes a raw File object instead of a serializable value, you'll get the "Attachments variable is not array file or file type" error. The validator only accepts arrays of file references (dicts/URLs), not File objects or other types (source).
To fix this, always send attachments: [] when there are no images/files, or attachments: [file1, file2, ...] where each file is a dict (not a File object). To convert a File object to a serializable dict in your agent workflow, use file.to_dict() or file.to_plugin_parameter() (source). For example:
Then, pass attachments as part of your tool input payload:
or, with files:
Never pass the File object itself—always use the dict. This will keep your workflow compatible with Dify's multimodal RAG input validation and serialization logic (source).
To reply, just mention @dosu.
How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other
@jlfloresTeika commented on GitHub (Jan 7, 2026):
Thanks @dosu but is still not clear how to configure my workflow to convert the attachments variable to always be an array, is there a step-by-step that you could explain to me? In short, how to configure my nodes to work like the multimodal RAG expects. Thanks.
@dosubot[bot] commented on GitHub (Jan 7, 2026):
Here’s how to configure your workflow so the attachments variable is always an array, as required by multimodal RAG:
In the Dify workflow editor, make sure the node that provides files/images (like an upload or retrieval node) outputs a variable (e.g.,
attachments) and that this variable is set as a FILES type (not FILE). The FILES parameter type ensures that Dify always wraps the value as an array—even if it’s a single file or nothing at all. If no files are present, it will be an empty array, which is valid and prevents the “not array file or file type” error [source].When connecting nodes, always pass the attachments variable as-is to the tool node. If you’re using custom code or plugins, convert each File object to a dict using
.to_dict()or.to_plugin_parameter()before passing it along. For example:Never pass raw File objects—always use their dict representation [source].
If you’re not sending any files/images, make sure the attachments variable is set to an empty array (
[]), notnullor omitted. Dify’s backend will handle this correctly if the parameter is FILES type, but if you’re building payloads manually, always include"attachments": [].Example payloads:
Common mistakes: Passing a File object directly (not serializable), omitting the attachments field, or using the wrong parameter type (FILE instead of FILES). Also, don’t reference image/file variables in the System Prompt—only in User Prompts.
Debug tip: If you’re still seeing errors, log the attachments variable right before the tool node is invoked to confirm it’s always an array of dicts or an empty array.
This setup ensures your workflow is always compatible with multimodal RAG’s input validation and serialization logic [source].
To reply, just mention @dosu.
How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other
@fatelei commented on GitHub (Jan 8, 2026):
how about your dsl
@jlfloresTeika commented on GitHub (Jan 8, 2026):
MultimodalRAG.zip
Here are the DSL's, thanks @fatelei
@fatelei commented on GitHub (Jan 8, 2026):
ok
@jlfloresTeika commented on GitHub (Jan 8, 2026):
I believe it may be related to this pull request: https://github.com/langgenius/dify/pull/30177 @fatelei
For clarification:
despite not using the agent, when using just regular Knowledge retrieval node (with multimodal enabled) linked to a regular LLM node and final response node when I attatch any image it says the "Object of type File is not JSON serializable" error.
When doing the same (regular-every node in the same chat flow) without images, it works good, text retrieval succeeded,
but when I use an agent with a workflow as tool that has the Knowledge retrieval and outputs the response to the agent then the flow fails in both text-only retrieval (with
tool invoke error: read tool response failed: request failed: Attachments variable is not array file or file typeandObject of type File is not JSON serializable, depending if I attatch images to the user.query or not (shared DSL's).Note:
When I use the Knowledge retrieval node with the multimodal dataset with the built-in node test feature, it works good in both cases, with and without images. Is when I connect it to other nodes and trying to setup the agentic retrieval when failures are present.
@jlfloresTeika commented on GitHub (Jan 12, 2026):
Hi, @fatelei do I need to provide more detail for debug or with the DSL is enough?
I used google vertex AI multimodal embedding and embedding was completed successfully, retrieval node tests are working.
The fact that the Knowledge Retrieval node works fine with text and images when using the included 'Test node' functionality (play button) suggest that the problem may be related about how the incoming data (from upstream nodes to the knowledge retrieval node) is being handled. I suspect this based on observations and logs that I sent here.
Hope it helps to uncover why this feature is not working as expected, since is a very good feature, It's a pity that it doesn't seem correctly wired into the node's / workflows standard way of handling input / output objects (prompts, llm outputs) data and media.
Let's see if @dosu have any recommendation to better isolate the issue.
Thanks.
@dosubot[bot] commented on GitHub (Jan 12, 2026):
The DSL files are helpful for understanding your workflow structure, but they usually aren't enough to fully debug serialization and attachment issues in multimodal RAG workflows. To isolate the root cause, it's important to see the actual runtime data passed between nodes—especially how the attachments variable is structured (is it always an array, are raw File objects being passed, etc.).
There are also known limitations in Dify: currently, agents cannot directly pass uploaded files (like images) to workflow tools if the tool requires a file-type input (file, files, or system_files). The agent-to-tool logic skips or blocks tools with required file inputs, and there’s no configuration or prompt workaround for this as of now. Making the file input optional or using indirect approaches (like download links) are the only workarounds, but they may not fit all use cases (source).
To move forward, please provide a sample of the actual payload or log showing the attachments variable as it is passed from the upstream node to the Knowledge Retrieval node during workflow execution (not just in node tests). This will help determine if the issue is with serialization, array typing, or the agent-to-tool file passing limitation. If you confirm that your tool requires file-type input and is invoked by an agent, this limitation is likely the blocker.
Let me know if you can share a runtime payload or log, and I can help pinpoint the next step.
To reply, just mention @dosu.
How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other
@fatelei commented on GitHub (Jan 12, 2026):
@jlfloresTeika commented on GitHub (Jan 13, 2026):
Hi @fatelei thanks for testing and help me to isolate the issue, I tested and is not working in my chat flow:
Agent log:
"tool_response": "tool invoke error: read tool response failed: request failed: Attachments variable is not array file or file type."
}
@fatelei commented on GitHub (Jan 13, 2026):
we test different dsl, i try another
@dosubot[bot] commented on GitHub (Feb 13, 2026):
Hi, @jlfloresTeika. I'm Dosu, and I'm helping the Dify team manage their backlog and am marking this issue as stale.
Issue Summary:
Next Steps:
Thank you for your understanding and contribution!