Skip to content

Releases: infiniflow/ragflow

nightly

nightly Pre-release
Pre-release

Choose a tag to compare

@yuzhichang yuzhichang released this 01 Dec 13:17
f796721

Release nightly created from f796721 at 2026-08-21 21:52:19+08:00

v0.27.0

Choose a tag to compare

@JinHai-CN JinHai-CN released this 19 Aug 09:15
ec9c08d

What's Changed

Read more

v0.26.4

Choose a tag to compare

@github-actions github-actions released this 07 Jul 13:26
cb93883

Summary

Released on July 7, 2026.

New features

  • NLP/Tokenization: Adds a language-aware Snowball stemmer supporting 16 languages, integrates the dataset language parameter across the tokenization pipeline, and adds Dutch to the frontend. #14140

Bug fixes

  • The system crashed with a ValueError when parsing LM-Studio model names containing an '@' symbol. #16467
  • The MCP server crashed because the list_chats function expected a list from the /chats API but received a paginated dictionary instead. #16639
  • The Docling parser silently dropped mathematical formulas from documents instead of extracting them. #16645
  • The system failed to persist inline edits made to metadata values to the backend. #16655
  • The system removed existing links when bulk-linking files to datasets. #16587
  • The filter failed to use Chinese. #16673
  • The system failed to enforce that tag weights must be greater than zero. #16657
  • The layout of the agent prompt dropdown menu rendered incorrectly. #16653
  • The Laws chunker incorrectly classified dotted-number cross-references as headings. #16626
  • The system failed to prevent users from saving duplicate MCP server names during the editing process. #16588
  • The system allowed users to export an empty MCP server selection. #16589

What's Changed

Read more

v0.26.3

Choose a tag to compare

@github-actions github-actions released this 02 Jul 13:05
32c5cb1

Summary

Released on July 2, 2026.

New features

  • Data source connector: Introduces Google BigQuery as a data source connector for document ingestion and incremental syncing. #15871
  • MCP: Adds two MCP tools ragflow_list_datasets and ragflow_list_chats to the RAGFlow MCP server. #15384
  • File ingestion
    • Integrates the layout-aware SoMark OCR parser into the system for extracting and indexing complex document elements like tables and figures. #16482
    • API: Exposes the Ingest documents endpoint for processing documents using a customized pipeline. #16395

Improvements

  • Backend: Introduces partial success handling for batch document uploads, ensuring that a single failed file no longer causes the entire batch to be discarded. #16438
  • UI/UX: Refactors the global header to dynamically switch between a full desktop navigation bar and a mobile-friendly side drawer based on available screen space, resolving overlapping issues and significantly improving the mobile user experience. #15984

Bug fixes

  • After setting up the Ollama provider, the system returned the error: 'Failed to access model(name) using this api key'. #16519
  • Deleting a user/assistant chat message pair mistakenly removed the previous conversation turn's reference due to an index misalignment. #16436

What's Changed

Read more

v0.26.2

Choose a tag to compare

@github-actions github-actions released this 29 Jun 01:59

Summary

Released on June 29, 2026.

New features

  • Chat channels:
    • Integrates WhatsApp via a QR code scan. #16238
    • Integrates DingTalk via bot API credentials. #16183
    • Integrates WeCom via WebSocket connection. #16175
  • File parsing: Adds fallback logic for PP-OCRv6 and similar text recognition models, and integrates image parsing within the PaddleOCR pipeline. #16150

Improvements

  • Datasets
    • Adds an edge-case check to the file ingestion logic to safely link empty folders to a dataset. #16296
    • Adds pagination to the get_flatted_meta_by_kbs() method to prevent CRUD failures relating to datasets with more than 10,000 documents. #16095
  • Chat channels: Ensures end-user conversation histories persist across restarts but still separate when a channel is bound to a new dialog. #16274

i18n

  • Expands i18n coverage and refines translations for the Korean UI. #16203
  • Adds missing French translations for chat channels, username validation, and model editing. #16217

Bug fixes

  • File parsing:
    • A ValueError was raised during .docx parsing on 'Heading' styles. #16284
    • Tables in .docx files were silently removed by the laws document parser. #16155
    • Lone Markdown headers were separated from their subsequent sections when a DeepDoc delimiter was set. #16109
    • Markdown tables appeared twice in chunk results, once as a standalone chunk and again within a regular text chunk. #16143
  • MCP
    • The MCP server hung indefinitely when encountering empty document pages; the final page of documents was silently dropped due to flawed pagination. #16285
    • The MCP connection and dataset discovery process failed because the server's hardcoded fetch limit exceeded the introduced page_size restriction. #16148
  • Dataflow
    • Restores the dataflow rerun endpoint and ensures the ingestion response includes the DSL payload to reliably render the timeline and parser views. #16292
    • Restores dataflow parser defaults and returns the actual SSE payload, ensuring pipeline runs correctly surface message IDs and log updates. #16290
  • LLM: Failed to use the new gemini-3.5-flash model via the Google Cloud (Vertex AI) provider using eu or us region endpoint. This is resolved by explicitly multi-region routing requests to the required aiplatform.<region>.rep.googleapis.com domains instead of synthesized <region>-aiplatform.googleapis.com hosts. #15990
  • UI/UX: The metadata add modal sent empty values to the backend. #15229

What's Changed

Read more

v0.26.1

Choose a tag to compare

@github-actions github-actions released this 17 Jun 12:04
a3e3bdd

Summary

New features

  • Model provider: Allows users to modify the model type of existing model configurations. #16029
  • Chat channel: Enables users to deploy RAGFlow assistants as chatbots within external messaging platforms like Discord and Feishu. #15850
  • Observability: Groups multi-turn chat traces by session within Langfuse to facilitate conversation debugging and replay. #15679

i18n

  • Adds ~70 missing translation keys for the French UI. #15983

Bug fixes

  • Model provider: Fixes inaccurate token billing, corrects embedding truncation limits to prevent indexing failures, and refactors error handling to surface root error causes. #15424
  • API: Adds a legacy mode to the /chat/completions endpoint to restore the v0.23.0 style <think> output for backward compatibility. #16014 See also Converse with chat assistant.

What's Changed

Read more

v0.26.0

Choose a tag to compare

@github-actions github-actions released this 11 Jun 11:04
92c4b76

Summary

New features

  • Model providers
    • Implements auto-populated model lists for multiple providers, eliminating the need to type model names manually. This feature currently supports: Ollama, OpenRouter, vLLM, OpenAI-API-Compatible, LM-Studio, VolcEngine, Xinference, LocalAI, BaiduYiyan, GPUStack, and Fish Audio.
    • Allows configuring multiple API keys for the same model provider. #14595
    • Dynamically populates model selection dropdowns in the UI by fetching the currently available models directly from remote model providers. #15711
  • Data source connectors: Implements new data source connectors for Outlook, OneDrive, Microsoft Teams, Slack, SharePoint, Salesforce, and Azure Blob Storage. #15333#15330#15332#15188#15190#15462#15466
  • Dataset - Implements a checkpoint and resume feature for community extraction and entity resolution, the most expensive and time-consuming parts of the GraphRAG indexing pipeline. #15518#15523

Improvements

  • Removes <think> text buffering to ensure reasoning-capable models feel faster and more transparent during interactions. #15891
  • Marks MySQL migrations as applied. #15504

Model Support

i18n

  • Completes Korean translation. #15863
  • Completes Italian translation. #15729

Bug fixes

  • The thinking mode of MiniMax models was not correctly enabled. #15496
  • Infinite loops were triggered when the thinking mode was enabled for Qwen3.5 and Qwen3.6 models. #15101
  • Streamed answers were being duplicated when using the OpenAI-compatible chat completions API endpoint. #15286#15443
  • Serialization errors were caused during chat completions when invalid numeric scores like NaN (Not-a-Number) or Inf (Infinity) were passed to the JSON encoder. #15245#15266
  • Chat completions using LiteLLM providers were failing because unrecognized internal configuration parameters were not being filtered out before reaching the external APIs. #15427#15432
  • The OpenAI-compatible chat completions API was defaulting to streamed responses. #15356#15394
  • Empty AND results were incorrectly dropped during metadata filtering. #15477
  • Repetitive page chrome, such as headers and footers, was incorrectly extracted as main text by the MinerU parser. #15335#15387
  • English chart titles were missing during document extraction in the DeepDoc module. #15481
  • Empty outputs were returned by the TitleChunker for json and chunks upstream formats #14247#15396
  • An error message was missing when a .tsv file upload attempt failed. #15284
  • API tokens missing beta values caused token retrieval errors. #15405
  • Caps the maximum page size to fix system crashes or slowdowns from large queries. #15292
  • Client errors were caused by the OpenAI-compatible chat completion API incorrectly defaulting to streamed responses. #15356#15394
  • HTTP 500 internal server errors were triggered instead of standard 4xx client errors when users attempted to download missing files from the storage backend. #15369#15371
  • GraphRAG entity ranking was broken. #15795#15797

What's Changed

Read more

v0.25.6

Choose a tag to compare

@github-actions github-actions released this 27 May 01:50
8f0632c

Summary

Released on May 26, 2026.

New features

  • Agent: Adds a Browser component that enables AI to autonomously navigate and interact with web pages. #14888

Improvements

  • RAG: RAPTOR construction now introduces AHC mode (Ψ-RAG), which expands semantics from the document level to the dataset level. Not only is index construction performance significantly higher than the previous RAPTOR, but it also outperforms the old RAPTOR on Recall@5 and average F1. Users can switch between AHC and GMM modes. This feature was introduced in v0.25.3, and this release fixes several bugs. #14674#14679
  • Agent: Introduces lightweight @tool decorator to streamline Python function registration process for chat models. #15047
  • Agent: Enables agent messages to display base64-encoded images. #15212
  • Agent: Exposes Doc Generator component's file metadata as discrete variables. #15080
  • Agent: Allows developers to pass chat_template_kwargs to agent chat completion endpoint. #14182#14542

Bug fixes

  • Fixes /chat/completions to allow sending only latest message in API payload and removes requirement to transmit full conversation history. #15197 See also Converse with chat assistant.
  • Weight assigned to vector similarity was not applied during the retrieval phase. #15108
  • Fixes parser configs not saving on dataset configuration page.
  • Logs wer not fully displayed on data source details page.
  • Fixes document status filtering failure.
  • Fixes crash guard for empty LLM choices responses.
  • RAG: RAPTOR construction process halted when using the Infinity document engine. #14998
  • Fixes streaming response parsing for Mistral/Upstage reasoning models.
  • Fixes HTML tags in ingestion pipeline parser output.
  • Fixes table parser metadata.
  • Fixes asyncio event loop nesting and fire-and-forget task issues.
  • Fixes asyncio.Semaphore bound to different event loop error.
  • Agent: Fixes Agent component prompt variable disappearing and search vector_similarity_weight issues.

What's Changed

  • Update chunk/metadata cli by @qinling0210 in #15055
  • Fix: The logs on the data source details page are not fully displayed. by @dcc123456 in #15056
  • Go: implement Embed (embeddings) in TogetherAI driver by @jack-stormentswe in #15017
  • Go: implement provider: n1n.ai by @sxxtony in #15010
  • Go: implement Rerank in Xinference driver by @RenzoMXD in #15032
  • Go: implement Rerank in Novita driver by @RenzoMXD in #15014
  • Go: implement Embed in Xinference driver by @RenzoMXD in #14932
  • Go: implement provider: GPUStack (chat) by @RenzoMXD in #15024
  • feat(go-models): add Azure OpenAI model driver by @web-dev0521 in #15022
  • fix: prevent session user_id spoofing via request body by @enjoyandlove in #15077
  • fix(api): check kb ownership in /dify/retrieval by @dripsmvcp in #15028
  • Go: implement ASR and TTS for Xinference by @Haruko386 in #15096
  • Docs: update python version to 3.13 by @JinHai-CN in #15103
  • Fix: <asyncio.locks.Semaphore object at 0xabcd [locked]> is bound to a different event loop by @wangq8 in #15100
  • Go: implement rerank, asr, tts for TogetherAI by @Haruko386 in #15107
  • Docs: Updated v0.25.5 release notes by @writinwaters in #15109
  • Docs: Fixed a deployment issue by @writinwaters in #15114
  • Revert "fix(api): infer /documents/{id}/download Content-Type from filename when ext is omitted (#15052)" by @buua436 in #15138
  • Fix: guard missing task language by @buua436 in #15136
  • feat(go-models): add PPIO provider driver by @JSONbored in #15099
  • Go: implement ASR in ZhipuAI driver by @jakearmstrong59 in #15134
  • fix: block SSRF in misc_utils.download_img for OAuth avatars by @dale053 in #14868
  • feat: Add SDK and cURL examples for chunk management, chat assistant, and retrieval (#4310) by @bhongong in #14208
  • Refactor: enahnce retry and timeout by @wangq8 in #14983
  • Refactor: enahnce CI by @wangq8 in #15147
  • fix: prevent sensitive fields from leaking in user API responses by @dale053 in #14792
  • feat: pass chat_template_kwargs through agent chat completion by @jsdevninja in #14542
  • Go: implement ASR in OpenRouter driver by @jakearmstrong59 in #15067
  • feat(evaluation): track token usage in evaluation results by @kiannidev in #13487
  • Go: implement provider: TokenPony by @dripsmvcp in #15091
  • fix: move agent attachment download api by @buua436 in #15146
  • Fix: add model_type into llm_setting by @Lynn-Inf in #15141
  • feat(go-models): add Groq provider driver by @JSONbored in #15097
  • Fix search vector_similarity_weight by @wangq8 in #15108
  • Refactor: Move API files by @wangq8 in #15151
  • Docs: Added a guide on integrating Discord. by @writinwaters in #15156
  • Go: implement embed, rerank, tts for AstraFlow by @Haruko386 in #15135
  • Go: implement reasoning_chat, TTS, ASR for Groq by @Ltohka in #15153
  • Fix: /openai/<chat_id>/chat/completions not aware of session_id by @wangq8 in #15155
  • fix(go): support OpenAI audio endpoints by @bitloi in #15104
  • feat(i18n): complete French translation — add ~1400 missing keys by @vincentlambert in #15192
  • Fix: /chat/completions not aware of conversation_id by @wangq8 in #15162
  • Go: implement provider: Tencent Hunyuan by @dripsmvcp in #15092
  • Go: implement provider: PaddleOCR_Local by @Haruko386 in #15158
  • Go: add ingestion server by @JinHai-CN in #15094
  • Revert "Fix: /openai/<chat_id>/chat/completions not aware of session_id" by @wangq8 in #15205
  • Fix /chat/completions to allow send only the latest message by @wangq8 in #15197
  • feat[go]: implement provider: TokenHub by @Dimon0000000 in #15159
  • Go: implement embed for Tencent Hunyuan by @Haruko386 in #15207
  • Feat: Expose Doc Generator file metadata as discrete outputs by @nickmopen in #15080
  • Fix: table parser metadata by @ahmadintisar in #15127
  • fix: The output of the parser in the ingestion pipeline contains HTML tags by @jonathanchang31 in #14920
  • Fix: Correct the API path by @wangq8 in #15204
  • Fix: Replace the red highlight at the top of the PDF document with yellow. by @cike8899 in #15203
  • fix(Go): rewrite chat, listmodels, embed for Ollama by @Haruko386 in #15213
  • Fix #15170 cannot filter document status by @wangq8 in #15216
  • Feat: Enable agent messages to display base64 images by @cike8899 in #15212
  • Feat: add new tests and tescases for restful api suite by @6ba3i in #15208
  • Implement Elasticsearch functions in GO by @qinling0210 in #15160
  • Docs: Minimum required Python version increased to 3.13. by @writinwaters in #15219
  • Fix: The prompt variable for the agent operator disappears after input. by @cike8899 in #15218
  • fix: resolve asyncio correctness issues (fire-and-forget tasks, event loop nesting) by @wdeve...
Read more

v0.25.5

Choose a tag to compare

@github-actions github-actions released this 20 May 12:08
90c76e7

Summary

Released on May 20, 2026.

New features

  • Adds local & SSH providers in admin panel. #15039

Improvements

  • Accelerated dataset search path, reducing latency by 50–100% by removing expensive vector fetch and rerank similarity computation steps. #14970
  • Pushes metadata filters down to Infinity, significantly speeding up metadata filtering. #14974
  • added Redis caching for TTS. #14851
  • atomic document counter updates #14867
  • Improved server startup speed and memory usage #14973
  • Agent: structured output aggregation #13384 #14848
  • Agent: metadata filter reuse. #14849
  • Optimizes connector dashboard. #14979

What's Changed

Read more

v0.25.4

Choose a tag to compare

@github-actions github-actions released this 14 May 03:26
851b16b

Summary

New features

  • Adds a generic, configuration-driven RESTful API data source connector.

Improvements

  • Agent tag management with filtering and sorting.
  • Widget customization and persistence.

Model support

  • Adds gpt-5.4-mini and gpt-5.4-nano to the OpenAI model list

Bug fixes

Fixed dataset document download route.

What's Changed

New Contributors

Full Changelog: v0.25.3...v0.25.4