Released on October 15, 2025.
New features
- Orchestratable ingestion pipeline: Supports customized data ingestion and cleansing workflows, enabling users to flexibly design their data flows or directly apply the official data flow templates on the canvas.
- GraphRAG & RAPTOR write process optimized: Replaces the automatic incremental build process with manual batch building, significantly reducing construction overhead.
- Long-context RAG: Automatically generates document-level table of contents (TOC) structures to mitigate context loss caused by inaccurate or excessive chunking, substantially improving retrieval quality. This feature is now available via a TOC extraction template.
- Video file parsing: Expands the system's multimodal data processing capabilities by supporting video file parsing.
- Admin CLI: Introduces a new command-line tool for system administration, allowing users to manage and monitor RAGFlow's service status via command line.
Improvements
- Redesigns RAGFlow's Login and Registration pages.
- Upgrades RAGFlow's document engine Infinity to v0.6.0.
Added models
- Tongyi Qwen 3 series
- Claude Sonnet 4.5
- Meituan LongCat-Flash-Thinking
New agent templates
- Company Research Report Deep Dive Agent: Designed for financial institutions to help analysts quickly organize information, generate research reports, and make investment decisions.
- Orchestratable Ingestion Pipeline Template: Allows users to apply this template on the canvas to rapidly establish standardized data ingestion and cleansing processes.
What's Changed
- Feat: dataflow supports Spreadsheet and Word processor document by @yongtenglei in #9996
- Feat: dataflow supports markdown by @Lynn-Inf in #10003
- Refactor:Improve BytesIO usage for image2base64 by @Woody-Hu in #9997
- Fix: Fixed the issue where newly added tool operators would disappear after editing the form #10013 by @cike8899 in #10016
- Feat: Add type card to create agent dialog #9869 by @cike8899 in #10025
- Feat(config): Update service config template new defaults by @asiroliu in #10029
- Feat: Import dsl from agent list page #9869 by @cike8899 in #10033
- feat: Added UI functions related to data-flow knowledge base #3221 by @dcc123456 in #10038
- Refactor:Improve BytesIO usage for GeminiCV by @Woody-Hu in #10042
- Feat: Translate the parser operator #9869 by @cike8899 in #10037
- Fix: In ragflow/rag/app /naive.py, if there are multiple images in one line, the other images will be lost by @Woody-Hu in #9968
- Fix: token num exceed by @Lynn-Inf in #10046
- Fix: Hide dataflow related functions #9869 by @dcc123456 in #10045
- The chat dialog box cannot be fully displayed on a small screen #10034 by @cike8899 in #10049
- Feat: add TokenPony model provider by @zhileihuang in #9932
- Docs: How to connect to an MCP server as a client by @writinwaters in #10043
- Feat: Agent component support inserting variables(#10048) by @wilmerxu in #10055
- Feat: dataflow supports text by @Lynn-Inf in #10058
- Feat: Translate the fields of the embedded dialog box on the agent page #3221 by @cike8899 in #10072
- Fix: terminate onnx inference session manually by @Lynn-Inf in #10076
- feat: add multiple docker tags (latest, latest_full, latest_slim) to … by @adrianweidig in #10040
- Fix: The same model appears twice in the drop-down box. #10102 by @cike8899 in #10103
- Fix: judge not empty before delete by @Lynn-Inf in #10099
- Feat: add support for the Ascend layout recognizer by @yongtenglei in #10105
- Docs: Added an Execute SQL tool reference by @writinwaters in #10108
- Fix(agent template): wrap template variables in curly braces by @asiroliu in #10109
- Feat: add support for the Ascend table structure recognizer by @yongtenglei in #10110
- Feat/parse img by @Lynn-Inf in #10112
- Fix: set default chunk_token_num in html_parser by @buua436 in #10118
- Fix: usage of postgresql -> postgres for db_type by @cucusenok in #10120
- Docs: Removed
/v1
from Ollama base URLs by @writinwaters in #10067 - Fixes session_id passing in agent_openai completion. by @bluthen in #10124
- Feat: parse audio by @Lynn-Inf in #10133
- Build(deps): Bump axios from 1.9.0 to 1.12.0 in /sandbox/sandbox_base_image/nodejs by @dependabot[bot] in #10091
- Support image recognition for url links in Markdown file, fix log error in code_exec by @Magicbook1108 in #10139
- Correct the text of
vectorSimilarityWeight
in zh.ts by @aopstudio in #10128 - Docs: Updated database types supported by the Execute SQL tool by @writinwaters in #10113
- Feat: add CometAPI to LLMFactory and update related mappings by @TensorNull in #10119
- Feat: add support for KB document basic info by @yongtenglei in #10134
- Fix: embedding model failure in CometAPI by @buua436 in #10137
- Fix: handle zero by @Lynn-Inf in #10149
- Fix: Merge different types of models from the same manufacturer #10146 by @cike8899 in #10157
- Feat: migrate OpenAI-compatible chats to LiteLLM by @yongtenglei in #10148
- Fix: knowledge base's embedded model form layout and dependency imports in the main branch. #9869 by @dcc123456 in #10160
- Add Firecrawl integration for RAGFlow by @aybanda in #10152
- Feat: Add file convert to document API just like file2document_app.py by @huang-aoqin in #10158
- Support server health check by http://localhost:/v1/system/healthz by @Magicbook1108 in #10150
- Docs: Input and output variables defined in the Input and Output sections must also be implemented in your code. by @writinwaters in #10162
- fix: correct rerank_model condition logic by @buua436 in #10174
- Docs: How to accelerate question answering by @writinwaters in #10179
- Feat: add support for Anthropic third-party API by @buua436 in #10173
- perf: add get_all_kb_doc_count func to simplify kb.doc_num updating by @whhe in #10169
- Fix: skip tag query if tag kbs are invalid by @whhe in #10168
- Fix: enable scrolling at chat setting by @atsushi729 in #10184
- Feat: add admin CLI and admin service by @JinHai-CN in #10186
- Chat Widget by @melmathari in #10187
- Add tree_merge for law parsers, significantly outperforming hierarchical_merge by @Magicbook1108 in #10202
- Refactor: use the same implement for total token count from res by @Woody-Hu in #10197
- fix python_api example by @zhangwfjh in #10196
- The retrieval component needs to support returning JSON data(#10170) by @wilmerxu in #10171
- Fix: resolve hash collisions by switching to UUID &correct logic for always-true statements & Update GPT api integration & Support qianwen-deepresearch by @Magicbook1108 in #10208
- Fix: string merge bug about agent TextProcessing. (\m) by @zhimeng123 in #10211
- Fix bug: broken import from rag.prompts.prompts by @JinHai-CN in #10217
- Fix: azure OpenAI retry by @SgtMarmite in #10213
- revert gpt5 integration by @Magicbook1108 in #10228
- Flow text processing bug by @zhimeng123 in #10246
- fix: prevent list index out of range in chat streaming by @buua436 in #10238
- UI: Add Russian language by @rjohny55 in #10249
- Fix:max_tokens must be at least 1, got -950, BadRequestError by @Woody-Hu in #10252
- UI: Update Russian language ru.ts by @mcoder6425 in #10251
- Fix: Russian language config.ts by @rjohny55 in #10250
- add Qwen models by @Magicbook1108 in #10263
- add model: qwen3-max and qewn3-vl series by @TeslaZY in #10256
- fix: Wrong Qwen models's ID by @TeslaZY in #10272
- Docs: Knowledge base renamed to dataset. by @writinwaters in #10269
- Refactor: Improve the logic clean conf for ZhipuChat by @Woody-Hu in #10274
- fix: replace traceback.print_exc() with logging.exception(e) in conve… by @buua436 in #10275
- Refactor: fix typos by @JinHai-CN in #10200
- Refactor: move encrypt/decrypt to one file by @JinHai-CN in #10203
- Fix: invalid COMPONENT_EXEC_TIMEOUT by @yongtenglei in #10278
- Feat/admin service by @Lynn-Inf in #10233
- Feat(nlp): add "怎么办" pattern to question word removal by @asiroliu in #10284
- Fixed the issue where database connections were interrupted under high concurrency by @lemsn in #10126
- Refactor: move some functions out of api/utils/init.py by @JinHai-CN in #10216
- Refactor: migrate the function to specific file by @JinHai-CN in #10201
- FIX: Rename the CometEmbed and CometSeq2txt classes to CometAPIEmbed and CometAPISeq2txt, and correct supported_models.mdx. by @TensorNull in #10298
- feat: add IBM DB2 support by @buua436 in #10306
- Fix:After setting user's is_active to 0, the user can still log in to RAGFlow. by @Woody-Hu in #10325
- Fix: The enterprise version of the knowledge graph cannot be displayed. #10333 by @cike8899 in #10334
- fix: remove ibm-db dependency and refactor import order by @buua436 in #10330
- Fix: floating widget match style with original one by @adagora in #10317
- Fix: update Japanese translations in ja.ts by @atsushi729 in #10338
- Fix: The dataset uses the new id to obtain the knowledge graph #10333 by @cike8899 in #10339
- fix: Handling Null Values in SQL Execution Results by @Womsxd in #10332
- Fix: unexpected operation of file management by @yongtenglei in #10343
- Feat/admin drop user by @Lynn-Inf in #10342
- Fix: invalid user can login from OSS by @Woody-Hu in #10348
- Feat: Keep connection status during generating agent by drag and drop … by @FatMii in #10141
- Feat: Add baseUrl to the Tongyi Qianwen model configuration modal #10340 by @cike8899 in #10357
- Feat: add support for international Dashscope service by @yongtenglei in #10356
- Feat: add support for LongCat-Flash-Thinking and Claude Sonnet 4.5 by @yongtenglei in #10374
- Refactor: move exceptions to common folder by @JinHai-CN in #10383
- Fix: reset tools in/out-put. by @KevinHuSh in #10378
- Fix: unexpected operation of document management by @yongtenglei in #10366
- fix: reset chat state when creating new dialog by @buua436 in #10380
- Feat/service manage by @Lynn-Inf in #10381
- Doc: Fixed a typo by @writinwaters in #10391
- Fix highlight with infinity by @yuzhichang in #10345
- Check workflow duplication by @yuzhichang in #10399
- Fix MY_GITHUB_TOKEN by @yuzhichang in #10404
- Refactor: improve cv model logics by @Woody-Hu in #10414
- Feature/agent UI style optimization by @FatMii in #10385
- Feat: add DeerAPI support by @DeerAPI-dev in #10303
- Refactor: fix admin exception by @JinHai-CN in #10400
- Feat: Use data pipeline to visualize the parsing configuration of the knowledge base by @KevinHuSh in #10423
- Feat: Adds a new feature that enables the LLM to extract a structured table of contents (TOC) directly from plain text. by @Magicbook1108 in #10428
- Doc: guide for admin service by @Lynn-Inf in #10431
- Feat: Modify the translation file of the workflow #9869 by @cike8899 in #10430
- Feat: HTTP componant supports variables by @yongtenglei in #10432
- Fix: Bug fixes and removed previous settings page code #9869 by @dcc123456 in #10435
- fix:update searxng_url logic by @buua436 in #10440
- Feat: Replace the collapse icon #9869 by @cike8899 in #10442
- Fix: correctly update parser method & correct vllm pdf parser by @Magicbook1108 in #10441
- Feat: Importing data flow files from the list page #9869 by @cike8899 in #10446
- Fix typos: retrievaler -> retriever by @JinHai-CN in #10372
- Feat: Pipeline Docx file supports Markdown output by @yongtenglei in #10439
- Fix OCR GPU provider mem limit handling by @loks666 in #10407
- Refactor: improve how NvidiaCV calculate res total token counts by @Woody-Hu in #10455
- Feat: add total in List dataset API by @Magicbook1108 in #10448
- Feat: Add prompts for toc relevance check according to #10436 by @Magicbook1108 in #10457
- bump infinity by @yuzhichang in #10422
- Fix: Fixed the issue where the operator added by clicking the plus sign in the data flow would overlap with the original section #9886 by @cike8899 in #10458
- Fix: Fixed an issue where parser configurations could be added infinitely #9869 by @cike8899 in #10464
- feat: support qwq reasoning models with non-stream output by @buua436 in #10468
- Feat: TOC retrieval by @KevinHuSh in #10456
- Fix: typo by @Lynn-Inf in #10469
- Fix: Fixed some discovered bugs #9869 by @dcc123456 in #10466
- Feat: Added toc enhance field to chat and retrieval operator configuration #10436 by @cike8899 in #10470
- typo: fix _entity_index_dilimiter_key to entity_index_delimiter_key by @ffffffff0 in #10465
- Fix: Fixed the issue where swagger apidocs could not be opened properly(#9522) by @yngvarhuang in #10461
- Fix #10408 by @glu000 in #10471
- Feat: Adjust the style of the delete button on the agent side #9869 by @cike8899 in #10473
- Fix: Agent.reset() argument wrong #10463 & Unable to converse with agent through Python API. #10415 by @Magicbook1108 in #10472
- fix: return type annotation for get_urls() in download_deps by @gnowland in #10478
- Fix: Disable reasoning on Gemini 2.5 Flash by default by @glu000 in #10477
- Fix: Fixed the issue where the connection lines of placeholder nodes in the agent canvas could not be displayed #9869 by @cike8899 in #10485
- feat(login): Refactor the login page and add dynamic background and highlight effects #9869 by @dcc123456 in #10482
- Feat: include author, journal name, volume, issue, page, and DOI in PubMed search results by @buua436 in #10481
- Feat: debugging toc part. by @KevinHuSh in #10486
- Feat: Modify the default style of the agent node anchor #9869 by @cike8899 in #10489
- Fix: Added table of contents extraction functionality and optimized form item layout #9869 by @dcc123456 in #10492
- Feat: add support for multi-column PDF parsing by @yongtenglei in #10475
- Fix: incorrect agent template #10393 by @Magicbook1108 in #10491
- Fix: remove lang for autio. by @KevinHuSh in #10496
- Feat: OpenSearch's support for newly embedding models by @pyyuhao in #10494
- Fix: Mcp reset error, #10497 by @Magicbook1108 in #10498
- Feat: Modify the background color of the canvas #9869 by @cike8899 in #10507
- fix: decode before format to json by @Lynn-Inf in #10506
- Fix: maintain backward compatibility for KB tasks by @yongtenglei in #10508
- Feat: add trino support by @buua436 in #10512
- Fix: Update lm studio models support, refer to #8116 by @Magicbook1108 in #10509
- Fix: The Context Generator(Transformer) node can only be followed by a Tokenizer(Indexer) and a Context Generator(Transformer). #9869 by @cike8899 in #10515
- Fix: Optimized the login page and fixed some known issues. #9869 by @dcc123456 in #10514
- Feat: Merge title splitter and token splitter into chunker category #9869 by @cike8899 in #10517
- Docs: Updated descriptions on metadata filtering by @writinwaters in #10518
- Fix: XSS vulnerability in Ragflow's chat view by @cike8899 in #10519
- Feat: add admin server to docker by @Lynn-Inf in #10522
- Fix: wrong Knowledgebase tasks_finish_at by @yongtenglei in #10521
- Feat: Add parse_document with feed back by @Magicbook1108 in #10523
- Fix: empty references in agent conversation by @buua436 in #10528
- Feat: add Zhipu GLM-ASR model by @yongtenglei in #10529
- Add kibana tool in the docker compose file(#10525) by @yngvarhuang in #10526
- Feat: Display the configuration of data flow operators on the node #9869 by @cike8899 in #10533
- Fix: Update the parsing editor to support dynamic field names and optimize UI styles #9869 by @dcc123456 in #10535
- Add 'status' field when list services by @JinHai-CN in #10538
- Docs: Updated parse_documents by @writinwaters in #10536
- Fix: unexpected Auth return code by @yongtenglei in #10539
- Docs: The full edition has only two built-in embedding models by @writinwaters in #10540
- Feat: let toc run asynchronizly... by @KevinHuSh in #10513
- The 'cmd' module is introduced to make the CLI easy to use. by @JinHai-CN in #10542
- Feat: Merge splitter and hierarchicalMerger into one node #9869 by @cike8899 in #10543
- Fix: update parser id for change_parser. by @KevinHuSh in #10545
- Feat: build ragflow-cli by @Lynn-Inf in #10544
- Feat: Adjust the style of note nodes #9869 by @cike8899 in #10547
- Fix: Switch the default theme from light mode to dark mode and improve some styles #9869 by @dcc123456 in #10552
- Fix: When I click to interrupt the chat, the page reports an error #10553 by @cike8899 in #10554
- Fix: canvas list with team. by @KevinHuSh in #10549
- bump infinity to v0.6.0 by @yuzhichang in #10558
- Feat: auto release by @Lynn-Inf in #10557
- Fix: Adding Ingestion Pipeline Classification to Agents Template #9869 by @dcc123456 in #10556
- Feat: Contribute ingestion pipeline templates by @ZhenhangTung in #10551
- Feat: Create Stock_research_report.json by @Llala0928 in #10555
- Doc: Added v0.21.0 release notes by @writinwaters in #10559
- Fix release notes by @JinHai-CN in #10560
- Update README by @KevinHuSh in #10563
- Fix: agent templates... by @KevinHuSh in #10564
- Fix: Click the reset button on the agent page shared externally, and the greeting in conversation mode should not be deleted. #10567 by @cike8899 in #10571
- Docs: Update version references to v0.21.0 in READMEs and docs by @asiroliu in #10565
- Feat: Creating a data flow from a template page #9869 by @cike8899 in #10573
- Fix: Optimize metadata filters, add Ingestion pipeline options to agent templates page #9869 by @dcc123456 in #10572
- Fix admin: can't read config and empty line error by @JinHai-CN in #10574
New Contributors
- @zhileihuang made their first contribution in #9932
- @wilmerxu made their first contribution in #10055
- @adrianweidig made their first contribution in #10040
- @buua436 made their first contribution in #10118
- @cucusenok made their first contribution in #10120
- @bluthen made their first contribution in #10124
- @Magicbook1108 made their first contribution in #10139
- @TensorNull made their first contribution in #10119
- @aybanda made their first contribution in #10152
- @atsushi729 made their first contribution in #10184
- @melmathari made their first contribution in #10187
- @zhangwfjh made their first contribution in #10196
- @zhimeng123 made their first contribution in #10211
- @SgtMarmite made their first contribution in #10213
- @mcoder6425 made their first contribution in #10251
- @lemsn made their first contribution in #10126
- @adagora made their first contribution in #10317
- @DeerAPI-dev made their first contribution in #10303
- @loks666 made their first contribution in #10407
- @ffffffff0 made their first contribution in #10465
- @yngvarhuang made their first contribution in #10461
- @glu000 made their first contribution in #10471
- @ZhenhangTung made their first contribution in #10551
- @Llala0928 made their first contribution in #10555
Full Changelog: v0.20.5...v0.21.0