mirror of
https://github.com/langgenius/dify.git
synced 2026-07-20 19:50:06 -04:00
The RAG recall did not meet expectations based on the configuration #21883
Open
opened 2026-02-21 20:14:43 -05:00 by yindo
·
17 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
No Label
👻 feat:rag
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: langgenius/dify#21883
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 @hutao86 on GitHub (Jan 25, 2026).
Self Checks
Dify version
v1.9.2
Cloud or Self Hosted
Self Hosted (Docker)
Steps to reproduce
My knowledge base configuration is set to a high-quality index type, with a mixed retrieval setting, and no score threshold is set. Additionally, the topk setting is set to 10. There are more than 10 segments in my knowledge base. Of course, I have maintained the same configuration in the workflow. After initially importing the knowledge base and executing the knowledge base retrieval in the workflow, the recall function worked normally and returned the expected 10 records. However, after deleting several entries and adding some new ones to the knowledge base, the returned results no longer matched the set limit of 10 entries. The number of returned results was not fixed, sometimes returning one, sometimes two, sometimes five... I have also read related comments suggesting that I should wait for a period of time. But several days have passed, and the results still do not return as set. What could be the reason? Does the rerank model itself filter based on the threshold?
✔️ Expected Behavior
It is expected to be consistent with the set topk, or relevant parameters should be provided
❌ Actual Behavior
No response
@dosubot[bot] commented on GitHub (Jan 25, 2026):
The number of results returned can be less than your configured topk due to how Dify applies reranking and filtering. Even with score threshold set to 0, the rerank model only includes documents with scores ≥ 0—so any with negative or missing scores are filtered out. After reranking, results are sorted by score and truncated to topk, but if not enough documents meet the criteria, you’ll get fewer than requested. Hybrid search and deduplication can further reduce the count, especially after updates or if there are duplicate/low-scoring segments.
If you recently modified the knowledge base, temporary inconsistencies can also occur if the index hasn’t fully synchronized. To troubleshoot: try reindexing the knowledge base, restarting services, and check logs for indexing or retrieval errors. If the issue persists, collect logs and config details for further investigation.
Reference: rerank and topk logic
Reference: retrieval pipeline and filtering
To reply, just mention @dosu.
How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other
@hutao86 commented on GitHub (Jan 25, 2026):
I exported the latest knowledge base and then re-imported it, but the recall results were the same as the settings. How should I explain this? The contents of the two knowledge bases are exactly the same, and the settings are also the same, but the number of recalls from the previous one was incorrect.
@dosubot[bot] commented on GitHub (Jan 25, 2026):
This happens because incremental updates (like deleting or adding entries) may not fully clean or rebuild the internal index, which can leave behind stale or inconsistent data—even if the visible content and settings look correct. As a result, retrieval can return fewer or inconsistent results than your configured topk, despite everything appearing aligned in the UI. When you export and re-import the knowledge base, Dify triggers a full re-index and regenerates all embeddings, which rebuilds the index from scratch and resolves any hidden inconsistencies. This restores the expected recall behavior, so the number of results matches your topk setting again—even though the content and settings are the same as before. This behavior is confirmed by both user reports and the backend code for indexing and retrieval tasks (reference, reference).
If you see this issue again after incremental changes, running a full re-index or re-import is the most reliable way to restore consistency.
To reply, just mention @dosu.
How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other
@hutao86 commented on GitHub (Jan 25, 2026):
How to perform reindexing
@dosubot[bot] commented on GitHub (Jan 25, 2026):
There are several ways to trigger reindexing in Dify (self-hosted, Docker):
Export and Re-import: Export your knowledge base and re-import it. This triggers a full reindex and regenerates all embeddings, which is the most reliable way to rebuild the index from scratch and resolve inconsistencies. This is what you already did, and it matches the backend logic for a full reindex [source].
Change Embedding Model: In the knowledge base settings, switch the embedding model to a different one, save, then (optionally) switch back. This forces Dify to reindex all documents. Be aware this may cause downtime while reindexing completes, especially for large datasets [source].
Disable and Re-enable Files: For smaller knowledge bases, you can disable and then re-enable all files in the knowledge base. This triggers reindexing for those documents. Don’t do this too quickly, or you may see “document is being indexed, please try again later” errors [source].
API/Script: For large-scale or automated reindexing, use the API. There’s no single “full reindex” endpoint, but you can:
POST /datasets/<dataset_id>/retrywith a JSON body specifyingdocument_ids[source]./rag/pipelines/<pipeline_id>/workflows/draftto refresh the pipeline [source].Manual (per-document) in UI: In the document detail view, use the “regenerate” or “reindex” option for individual documents or segments. There is no “one-click” full KB reindex button in the UI [source].
Caveats:
DATASET_MAX_SEGMENTS_PER_REQUESTenvironment variable if you hit segment limits [source].If you want the most reliable, full reindex: export and re-import your KB, or change the embedding model to force a rebuild. For smaller or targeted fixes, use the disable/enable or per-document API/UI methods.
To reply, just mention @dosu.
How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other
@hutao86 commented on GitHub (Jan 25, 2026):
POST /datasets/<dataset_id>/retry
Content-Type: application/json
Authorization: Bearer <your_token>
{
"document_ids": ["<document_id>"]
}
Should 'your_token' here be a dataset token?
curl -X POST
http://192.168.0.189:80/console/api/datasets/d04b473a-fc66-496b-89f7-94b618b2cff0/retry
-H "Content-Type: application/json"
-H "Authorization: Bearer dataset-JaV4Om9fdEIR6xem2q21ndQB"
-d '{
"document_ids": ["e3cbee9a-edbf-4424-98b7-881a5530342e"]
}'
return result:
{"code":"unauthorized","message":"Invalid token.","status":401}
@dosubot[bot] commented on GitHub (Jan 25, 2026):
The /datasets/<dataset_id>/retry endpoint does not accept a dataset token (tokens starting with dataset-). That token type is only for read/query operations. For this endpoint, you need a user or API token with owner, editor, or admin permissions on the workspace or dataset. Using a dataset token will always return a 401 Unauthorized error with "Invalid token" because it doesn't have the required privileges for mutation endpoints like /retry [source].
To get a valid token:
Make sure the user or API token has sufficient permissions (owner/editor/admin) for the dataset. This will allow the /retry call to succeed [source].
To reply, just mention @dosu.
How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other
@hutao86 commented on GitHub (Jan 26, 2026):
I checked the indexing_status through the query table documents and found it to be completed. I also made an API call to it, but the number of recalls was still incorrect. Please provide me with a more detailed analysis
@dosubot[bot] commented on GitHub (Jan 26, 2026):
Here’s a detailed technical breakdown of why recall results can be less than your configured topk, even when indexing_status is "completed":
Dify’s retrieval pipeline applies topk and score_threshold at multiple stages: initial retrieval, deduplication, reranking (if enabled), and final truncation. If any stage filters out documents (e.g., due to low scores or duplicates), you’ll get fewer than topk results—even if the index is complete and contains enough segments. This is by design and confirmed in the retrieval and rerank code paths (source, source).
If score_threshold is set to 0, only documents with scores ≥ 0 are included after reranking. Any segment with a negative or missing score is filtered out, so you may see fewer than topk (source).
Hybrid search and deduplication can further reduce the count. Dify deduplicates by document ID, not by segment/chunk ID, so if you have near-duplicate or overlapping segments, some may be dropped. Incomplete deduplication can also cause unpredictable recall counts (source).
Metadata filtering (if enabled) or misaligned retrieval settings between the workflow and knowledge base can silently exclude segments, even if everything looks correct in the UI (source).
After incremental updates (add/delete), the index may contain stale or inconsistent data until a full reindex is triggered. This can cause segments to be missing from recall, even if indexing_status is "completed". A full re-import or embedding model change forces a clean rebuild and usually restores expected recall (source).
Diagnostics you can try:
If you want to isolate the issue, try with a minimal dataset and simple retrieval config. If the problem persists, enable debug logging and check for errors during retrieval or rerank steps.
Let me know if you want help with specific log queries or further troubleshooting steps.
To reply, just mention @dosu.
How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other
@hutao86 commented on GitHub (Jan 26, 2026):
Let me repeat, the incorrect number of recalls only occurs when I delete or modify the content of a segment in the knowledge base. However, when I copy the content of the knowledge base and import it into a new knowledge base with exactly the same settings, the recalls are correct. How can you explain this
@dosubot[bot] commented on GitHub (Jan 26, 2026):
This happens because incremental updates (like deleting or modifying segments) only partially clean and reload the index, which can leave behind stale or orphaned vectors in the vector store—even if the UI and database look correct. As a result, retrieval may return fewer or inconsistent results than your configured topk. When you re-import the same content into a new knowledge base, Dify triggers a full reindex: it cleans the entire index and regenerates all embeddings, which removes any inconsistencies and restores correct recall behavior. This difference in how incremental updates vs. full reindexing are handled is confirmed in the backend code and recent improvements to the indexing pipeline (reference).
A recent update also added a batch re-index operation, so you can now trigger a full reindex without needing to export and re-import the knowledge base (reference). This is the most reliable way to restore recall consistency after incremental changes.
To reply, just mention @dosu.
How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other
@hutao86 commented on GitHub (Jan 26, 2026):
Please provide an interface that allows me to reindex a specific document in the knowledge base in its entirety by calling the interface, without needing to determine the current status of the document
@dosubot[bot] commented on GitHub (Jan 26, 2026):
You can reindex a specific document in your knowledge base by calling the API endpoint:
This triggers a full reindex for the specified document(s) without needing to check their current status beforehand. Make sure to use a user or API token with owner, editor, or admin permissions—dataset tokens (starting with
dataset-) will not work and will return a 401 Unauthorized error details.If a document is archived or already marked as completed, the endpoint will skip it and return an error for that document implementation. The operation is asynchronous; if you retry too quickly, you may get a "Document is being retried, please try again later" error due to a short lock window backend logic.
For bulk reindexing, you can pass multiple document IDs in the same request. This is the recommended way to restore index consistency after incremental changes recent PR.
To reply, just mention @dosu.
How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other
@hutao86 commented on GitHub (Jan 26, 2026):
I have already executed the above operation, but the document is in a completed state. I want to recreate it regardless of its current state, just like when I first imported the file into the knowledge base
@dosubot[bot] commented on GitHub (Jan 26, 2026):
目前 Dify 的
/datasets/<dataset_id>/retry接口会跳过所有已归档或indexing_status为completed的文档,并不会像新导入时那样强制重新索引。没有公开 API 或参数可以绕过这个限制,无论是 UI 还是接口,都会直接返回错误,无法实现“无视当前状态强制重建”的效果 详情。如果你确实需要实现“无论状态如何都重新索引”,只能修改后端代码:
api/controllers/console/datasets/datasets_document.py,找到/datasets/<dataset_id>/retry的实现(DocumentRetryApi类的post方法),注释或删除if document.indexing_status == "completed": raise DocumentAlreadyFinishedError()这一段。api/services/dataset_service.py里的retry_document方法可以处理已完成状态的文档(通常只要控制器不跳过,服务层就会重置状态并触发异步重建)。这样你就可以通过接口强制对任何文档重新索引,无论其当前状态如何。注意:这样做可能会导致重复索引、数据竞争或其他副作用,建议仅在明确需求和风险的情况下操作 参考。
如果你觉得这个需求具有普遍性,可以考虑向官方提交 feature request 或 PR。
To reply, just mention @dosu.
How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other
@hutao86 commented on GitHub (Jan 26, 2026):
I have made modifications to the installation and successfully printed the relevant logs
Retry dataset: 6525649a-0db9-4956-8f28-90c227085d28 latency: 4.796912424266338.
At the same time, I can also see on the page of the Dify knowledge base that the last update time has been updated. However, when I go to the knowledge base for recall testing, it remains the same, and it is not returning as configured
@dosubot[bot] commented on GitHub (Jan 26, 2026):
你已经正确地修改了后端,强制触发了文档的重新索引,日志和 UI 的更新时间也都正常更新,但召回结果依然没有变化,这其实是 Dify 检索管道的正常表现:
强制重建确实会清理并重建向量和元数据,但召回数量还会受到检索流程中的 rerank(重排序)、score_threshold(分数阈值)、以及 doc_id 去重等多重影响。即使索引已重建,如果内容本身没有变化、分数依然低于阈值、或者多个 chunk 属于同一个 doc_id,被去重后,实际返回数量还是可能小于 topk(比如你设置了 10,但只返回 1、2、5 条)源码细节。
UI 的更新时间和日志只能说明重建任务已触发,但不能保证向量存储和检索管道已经完全同步。Dify 的检索是异步多线程的,短时间内可能有缓存或并发延迟,导致结果未及时刷新。
建议排查和测试:
如果需要进一步定位,可以提供具体的召回日志、segment 结构或检索配置,我可以帮你分析。
相关源码和机制说明见 这里 和 这里。
To reply, just mention @dosu.
How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other