v0.23.0

infiniflow/ragflowv0.23.0Dec 27, 2025by github-actions[bot]

AI Summary

Major feature release introducing Memory interface, major Agent improvements with structured data output and voice support, ingestion pipeline enhancements, and parent-child chunking strategy.

Key Highlights

  • Memory interface implementation with Retrieval/Message component support
  • Agent component refactoring with structured data output
  • Voice input/output support for Agent
  • Multiple Retrieval components per Agent
  • Table of contents extraction in Transformer
  • Parent-child chunking strategy
  • Context window configuration for images/tables
  • Auto-generation of metadata during parsing
  • Voice input in Chat
  • New data sources: GCS, Gmail, Dropbox, WebDAV, Airtable
  • New models: GPT-5.2, GPT-5.2 Pro, Claude Opus 4.5, MiniMax M2, GLM-4.7
  • Infinity v0.6.15 engine upgrade

Breaking Changes

  • Knowledge base renamed to Dataset
  • Python >= 3.11 required

New Features

  • Memory interface
  • Agent structured data output
  • Webhook trigger for agent execution
  • Voice input/output
  • Multiple retrieval components per Agent
  • TOC extraction in Transformer
  • Context window for images and tables
  • Parent-child chunking
  • Auto-metadata generation
  • Loop operator component
  • RAG evaluation
  • Semi-automatic metadata filtering
  • New data source connectors
  • New model provider support

Full Release Notes

## v0.23.0

Released on December 27, 2025.

### New features

- Memory
   - Implements a **Memory** interface for managing memory.
   - Supports configuring context via the **Retrieval** or **Message** component.
- Agent
   - Improves the **Agent** component's performance by refactoring the underlying architecture.
   - The **Agent** component can now output structured data for use in downstream components.
   - Supports using webhook to trigger agent execution.
   - Supports voice input/output.
   - Supports configuring multiple **Retrieval** components per **Agent** component.
- Ingestion pipeline
  - Supports extracting table of contents in the **Transformer** component to improve long-context RAG performance.
- Dataset
   - Supports configuring context window for images and tables.
   - Introduces parent-child chunking strategy.
   - Supports auto-generation of metadata during file parsing.
- Chat: Supports voice input.

### Improvements

- Bumps RAGFlow's document engine, [Infinity]([GitHub - infiniflow/infinity: The AI-native database built for LLM applications, providing incredibl](https://github.com/infiniflow/infinity)) to v0.6.15 (backward compatible).

### Data sources

- Google Cloud Storage
- Gmail
- Dropbox
- WebDAV
- Airtable

### Model support

- GPT-5.2
- GPT-5.2 Pro
- GPT-5.1
- GPT-5.1 Instant
- Claude Opus 4.5
- MiniMax M2
- GLM-4.7.
- A MinerU configuration interface.
- AI Badgr (model provider).

### API changes

#### HTTP API

- [Converse with Agent](./references/[http_api_reference.md](http://http_api_reference.md/)#converse-with-agent) returns complete execution trace logs.
- [Create chat completion](./references/[http_api_reference.md](http://http_api_reference.md/)#create-chat-completion) supports metadata-based filtering.
- [Converse with chat assistant](./references/[http_api_reference.md](http://http_api_reference.md/)#converse-with-chat-assistant) supports metadata-based filtering.

## What's Changed
* fix cohere rerank  base_url default by @HeyPhiS in https://github.com/infiniflow/ragflow/pull/11353
* Feat: add OceanBase doc engine by @whhe in https://github.com/infiniflow/ragflow/pull/11228
* fix(llm): handle None response in total_token_count_from_response by @zhangzhefang-github in https://github.com/infiniflow/ragflow/pull/10941
* Feat: Add TCADP parser for PPTX and spreadsheet document types. by @aidansu in https://github.com/infiniflow/ragflow/pull/11041
* Locale: update russian language by @rjohny55 in https://github.com/infiniflow/ragflow/pull/11393
* locale en add russian language option by @rjohny55 in https://github.com/infiniflow/ragflow/pull/11392
* Feature (canvas): Add mind tagging support by @huang-aoqin in https://github.com/infiniflow/ragflow/pull/11359
* Use array syntax for commands in docker-compose-base.yml by @panzi in https://github.com/infiniflow/ragflow/pull/11391
* Bump infinity to 0.6.6 by @yuzhichang in https://github.com/infiniflow/ragflow/pull/11399
* Fix: Introducing a new JSON editor by @dcc123456 in https://github.com/infiniflow/ragflow/pull/11401
* Fix:RagFlow not starting with Postgres DB by @buua436 in https://github.com/infiniflow/ragflow/pull/11398
* Fix: Optimize edge check & incorrect parameter usage by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11396
* Feat: support union logic operations for meta data filters. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/11404
* Fix: Change package-lock.json by @dcc123456 in https://github.com/infiniflow/ragflow/pull/11407
* Fix: incorrect retrieval total count with pagination enabled by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11400
* Feat: Outputs data is directly synchronized to the canvas without going through the form. #10427 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11406
* Fix:improve multi-column document detection by @buua436 in https://github.com/infiniflow/ragflow/pull/11415
* Feat: add more chunking method by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11413
* Fix: no result if metadata returns none. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/11412
* Feat: enriches Notion connector by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11414
* Fix: missing parameters in by_plaintext method for PDF naive mode by @it-coder in https://github.com/infiniflow/ragflow/pull/11408
* Fix: Modify the style of the user center #10703 by @dcc123456 in https://github.com/infiniflow/ragflow/pull/11419
* <Input> component horizontal padding adjustment by @JimmyBenKlieve in https://github.com/infiniflow/ragflow/pull/11418
* Feat: Add a loop variable to the loop operator. #10427 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11423
* Fix: UI adjustments, replacing private components with public components by @dcc123456 in https://github.com/infiniflow/ragflow/pull/11438
* Fix: improve PDF text type detection by expanding regex content by @FallingSnowFlake in https://github.com/infiniflow/ragflow/pull/11432
* Feat: ignore chunk size when using custom delimiters by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11434
* Feat: API supports toc_enhance. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/11437
* Feat: Enable logical operators in metadata. #11387  #11376 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11442
* Fix:Resolves the issue of sessions not being saved when the variable is array<object>. by @dcc123456 in https://github.com/infiniflow/ragflow/pull/11446
* Feat: add auth header for Ollama chat model by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11452
* Add Moodle data source integration by @levischd in https://github.com/infiniflow/ragflow/pull/11325
* Bump beartype to 0.22.6 by @yuzhichang in https://github.com/infiniflow/ragflow/pull/11463
* Update logging for auto-generated SECRET_KEY by @FoolFu in https://github.com/infiniflow/ragflow/pull/11458
* Fix nginx startup failure in HTTPS mode (host not found) by @davidlcarrascal in https://github.com/infiniflow/ragflow/pull/11455
* Feat: Implement temporary conversation removal logic in ConversationD… by @Zwanan-github in https://github.com/infiniflow/ragflow/pull/11454
* Fix:Modify the personal center style #10703 by @dcc123456 in https://github.com/infiniflow/ragflow/pull/11470
* Fix: coroutine object has no attribute get by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11472
* Docs: Updated use_kg and toc_enhance switch descriptions by @writinwaters in https://github.com/infiniflow/ragflow/pull/11485
* Allow create super user when start rag server. by @Ox0400 in https://github.com/infiniflow/ragflow/pull/10634
* Feat: add datasource Dropbox by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11488
* Refactor: Email parser use with to handle buffer by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/11496
* Fix: After saving the model parameters of the chat page, the parameter disappears. #11500 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11501
* Fix: unexpected parameter. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/11497
* Fix: Modify the style of your personal center #10703 by @dcc123456 in https://github.com/infiniflow/ragflow/pull/11487
* Feat: support operator in/not in for metadata filter. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/11503
* Feat: support operator in/not in for metadata filter.  #11376 #11378 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11506
* Chore(deps): Bump pypdf from 6.0.0 to 6.4.0 by @dependabot[bot] in https://github.com/infiniflow/ragflow/pull/11505
* Fix: code exec component vulnerability and add support for nested list and dict object by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11504
* Fix: uv lock updates by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/11511
* Feat: add addressing style config for S3-compatible storage by @jacy1101 in https://github.com/infiniflow/ragflow/pull/11510
* Refactoring: Integrating the file preview component by @dcc123456 in https://github.com/infiniflow/ragflow/pull/11523
* Fix: incorrect image merging for naive markdown parser by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11520
* Fix: excel default optimization. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/11519
* Bump infinity to 0.6.7 by @yuzhichang in https://github.com/infiniflow/ragflow/pull/11528
* Use Infinity single-field-multi-index by @yuzhichang in https://github.com/infiniflow/ragflow/pull/11444
* Feat: Add Webdav storage as data source by @Jonah879 in https://github.com/infiniflow/ragflow/pull/11422
* Fix: Refactoring and enhancing the functionality of the delete confirmation dialog component #10703 by @dcc123456 in https://github.com/infiniflow/ragflow/pull/11542
* feat: improve metadata handling in connector service by @levischd in https://github.com/infiniflow/ragflow/pull/11421
* Fix issue where HTML file parsing may lose content. by @myoldcat in https://github.com/infiniflow/ragflow/pull/11536
* fix(files): replace hard coded status codes with constants by @huang-aoqin in https://github.com/infiniflow/ragflow/pull/11544
* Minor style changes by @writinwaters in https://github.com/infiniflow/ragflow/pull/11554
* Feat: add context for figure and table by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11547
* Fix ft_title_rag_fine by @yuzhichang in https://github.com/infiniflow/ragflow/pull/11555
* Feat:new component Loop by @buua436 in https://github.com/infiniflow/ragflow/pull/11447
* Feat: Add loop operator node. #10427 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11449
* Fix: enable structured output for agent with tool by @buua436 in https://github.com/infiniflow/ragflow/pull/11558
* Feat: Delete useless knowledge base, chat, and search files.  #10427 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11568
* Fix: remove garbage filtering rules by @buua436 in https://github.com/infiniflow/ragflow/pull/11567
* Feat: add GPT-5.1, GPT‑5.1 Instant and Claude-Opus-4.5 by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11559
* update new models for tokenpony by @zhileihuang in https://github.com/infiniflow/ragflow/pull/11571
* Fix: doc_aggs not correctly returned when no chunks retrieved. by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11578
* Feat: add gmail connector by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11549
* Feat: optimize meta filter generation for better structure handling by @TeslaZY in https://github.com/infiniflow/ragflow/pull/11586
* Fix: Added styles for empty states on the page. #10703 by @dcc123456 in https://github.com/infiniflow/ragflow/pull/11588
* [issue-11572]fix:metadata_condition filtering failed by @darion-yaphet in https://github.com/infiniflow/ragflow/pull/11573
* Feat: Replace antd in the chat message with shadcn. #10427 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11590
* Fix: Error 102 "Can't find dialog by ID" when embedding agent with from=agent** #11552 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11594
* Feat: add child parent chunking method in backend. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/11598
* Feat: create datasets from http api supports ingestion pipeline by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11597
* Feature: embedded chat theme by @Oranggge in https://github.com/infiniflow/ragflow/pull/11581
* Fix typos by @omahs in https://github.com/infiniflow/ragflow/pull/11607
* Docs: deploying a local model using Jina not supported by @writinwaters in https://github.com/infiniflow/ragflow/pull/11624
* feat: add Redis username support by @coolbeevip in https://github.com/infiniflow/ragflow/pull/11608
* fix: increase Quart RESPONSE_TIMEOUT and BODY_TIMEOUT for slow LLM responses by @dzikus in https://github.com/infiniflow/ragflow/pull/11612
* Fix: [MinerU] Missing output file by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11623
* Fix: Table parse method issue. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/11627
* Feat: support parent-child in search procedure. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/11629
* Refa: make RAGFlow more asynchronous by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11601
* Fix: jina embedding issue by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11628
* Feat: Files uploaded via the dialog box can be uploaded without binding to a dataset. #9590 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11630
* Feat: support uploading in dialog. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/11634
* Refactor: better describe how to get prefix for sync data source  by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/11636
* Feat:new api /sequence2txt and update QWenSeq2txt by @buua436 in https://github.com/infiniflow/ragflow/pull/11643
* Fix: file manager KB link issue. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/11648
* Feat: Remove unnecessary dialogue-related code. #10427 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11652
* Refa: add MiniMax-M2 and remove deprecated MiniMax models by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11642
* Update upgrade guide: add stop server step and rename section by @yuzhichang in https://github.com/infiniflow/ragflow/pull/11654
* Import rag_tokenizer from Infinity by @qinling0210 in https://github.com/infiniflow/ragflow/pull/11647
* Feat: Delete useless request hooks. #10427 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11659
* Feat: add mineru auto installer by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11649
* feat: improve presentation PdfParser by @rommy2017 in https://github.com/infiniflow/ragflow/pull/11639
* Refa: make RAGFlow more asynchronous 2 by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11664
* feat: improve Moodle connector functionality by @levischd in https://github.com/infiniflow/ragflow/pull/11665
* Feature:Add voice dialogue functionality to the agent application by @dcc123456 in https://github.com/infiniflow/ragflow/pull/11668
* Revert "Refa: make RAGFlow more asynchronous 2" by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/11669
* Docs: How to specify an ingestion pipeline when creating a dataset by @writinwaters in https://github.com/infiniflow/ragflow/pull/11670
* Fix: incorrect async chat streamly output by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11679
* Feat:support tts in agent by @buua436 in https://github.com/infiniflow/ragflow/pull/11675
* Feat: optimize the information displayed when .doc preview is unavailable by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11684
* Feat: support TOC transformer. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/11685
* Refa: make RAGFlow more asynchronous 2 by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11689
* Feat: Replace antd with shadcn and delete the template node. #10427 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11693
* Refactor code by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/11694
* Feat: RAG evaluation by @hsparks-codes in https://github.com/infiniflow/ragflow/pull/11674
* Standardize UI text capitalization to sentence case by @redredrrred in https://github.com/infiniflow/ragflow/pull/11696
* feat: Auto-disable Raptor for structured data (Issue #11653) by @hsparks-codes in https://github.com/infiniflow/ragflow/pull/11676
* Fix: handle MinerU sanitized filenames when reading output by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11701
* Update since 'File manager' is renamed to 'File' by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/11698
* Feat: confluence space key by @hsparks-codes in https://github.com/infiniflow/ragflow/pull/11706
* Fix: Correct pagination and early termination bugs in chunk_list() by @dnosferatus in https://github.com/infiniflow/ragflow/pull/11692
* Refactor: Remove useless for and add by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/11720
* feat(gcs): Add support for Google Cloud Storage (GCS) integration by @dafa-wiratama in https://github.com/infiniflow/ragflow/pull/11718
* Fix: relative page_number in boxes by @rommy2017 in https://github.com/infiniflow/ragflow/pull/11712
* fix: resolve "'bool' object has no attribute 'items'" in SDK enabled … by @shirukai in https://github.com/infiniflow/ragflow/pull/11725
* Feature:Add a loading status to the agent canvas page. by @dcc123456 in https://github.com/infiniflow/ragflow/pull/11733
* Feat: detect docx support via header-byte inspection by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11731
* Fix: none type error. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/11735
* Refa: cleanup synchronous functions in agent_with_tools by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11736
* Remove huqie.txt from RAGFflow and bump infinity to 0.6.10 by @qinling0210 in https://github.com/infiniflow/ragflow/pull/11661
* Change docker container restart policy by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/11695
* Doc: Updated Create dataset descriptions by @writinwaters in https://github.com/infiniflow/ragflow/pull/11742
* Feat: add more attribute for confluence connector.  by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11743
* Feat: update front end for confluence connector by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11747
* Delete:remove unused tests by @buua436 in https://github.com/infiniflow/ragflow/pull/11749
* Feat: Display the ID of the code image in the dialog.   #10427 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11746
* fix(sdk): add cancel_all_task_of call in stop_parsing endpoint by @tedhappy in https://github.com/infiniflow/ragflow/pull/11748
* Feat: use filepath for files with the same name by @Jonah879 in https://github.com/infiniflow/ragflow/pull/11752
* Add ut test into CI by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/11753
* Feat: Users can chat directly without first creating a conversation. #11768  by @cike8899 in https://github.com/infiniflow/ragflow/pull/11769
* Fix: Newly added models to OpenAI-API-Compatible are not displayed in the LLM dropdown menu in a timely manner. #11774 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11775
* fix(mcp-server): Ensure all document meta-data is cached by @gileslloyd in https://github.com/infiniflow/ragflow/pull/11767
* Fix MinerU API sanitized-output lookup and manual chunk tuple handling by @shaoqing404 in https://github.com/infiniflow/ragflow/pull/11702
* Feat: Fillup component return value not object by @TeslaZY in https://github.com/infiniflow/ragflow/pull/11780
* Feature (canvas): Add Api for download "message" component output's file by @huang-aoqin in https://github.com/infiniflow/ragflow/pull/11772
* Fix errors by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/11795
* Fix:toc in pipeline by @buua436 in https://github.com/infiniflow/ragflow/pull/11785
* Refa: cleanup synchronous functions in chat_model and implement synchronization for conversation and dialog chats by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11779
* Add huggingface-hub dependency by @mstfldmr in https://github.com/infiniflow/ragflow/pull/11794
* Features: Memory page rendering and other bug fixes by @dcc123456 in https://github.com/infiniflow/ragflow/pull/11784
* fix: Correct toast type import path in use-toast hook by @Rohit10jr in https://github.com/infiniflow/ragflow/pull/11791
* Refactor:book parser use with to handle bytesIO by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/11800
* Feat: default start admin by @Lynn-Inf in https://github.com/infiniflow/ragflow/pull/11801
* Fix: Changed 'HightLightMarkdown' to 'HighLightMarkdown' by @dcc123456 in https://github.com/infiniflow/ragflow/pull/11803
* Fix errors by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/11804
* Fix: chunk method error. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/11807
* Fix: advanced_ingestion_pipeline by @ltgkb in https://github.com/infiniflow/ragflow/pull/11816
* Fix: parent-child chunking method by @buua436 in https://github.com/infiniflow/ragflow/pull/11810
* fix: align http client proxy kwarg by @levischd in https://github.com/infiniflow/ragflow/pull/11818
* fix: set default embedding model for TEI profile in Docker deployment by @SJpoor in https://github.com/infiniflow/ragflow/pull/11824
* Fix:[ERROR][Exception]: list index out of range by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/11826
* Refa: migrate CV model chat to Async by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11828
* Feature: Memory interface integration testing by @dcc123456 in https://github.com/infiniflow/ragflow/pull/11833
* Bump infinity to v0.6.11. Requires python>=3.11 by @yuzhichang in https://github.com/infiniflow/ragflow/pull/11814
* fix: prevent redundant retries in async_chat_streamly upon success by @N0bodycan in https://github.com/infiniflow/ragflow/pull/11832
* Docs: Enhance API reference for file management by @changkeke in https://github.com/infiniflow/ragflow/pull/11827
* feat: add Italian language translation support by @PentaFrame-Development in https://github.com/infiniflow/ragflow/pull/11844
* Fix: The variables in the message node are not displaying correctly. #11839 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11841
* Refa: treat MinerU as an OCR model by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11849
* Fix: duplicate output by async_chat_streamly by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11842
* Refa:replace trio with asyncio by @buua436 in https://github.com/infiniflow/ragflow/pull/11831
* Bump python to >=3.12 by @yuzhichang in https://github.com/infiniflow/ragflow/pull/11846
* executor_manager updated docker version by @bluthen in https://github.com/infiniflow/ragflow/pull/11806
* Feat/memory by @Lynn-Inf in https://github.com/infiniflow/ragflow/pull/11812
* Fix:Modify the name of the Overlapped percent field by @dcc123456 in https://github.com/infiniflow/ragflow/pull/11866
* Fix:csv parse in Table by @buua436 in https://github.com/infiniflow/ragflow/pull/11870
* Refa:remove sensitive information by @buua436 in https://github.com/infiniflow/ragflow/pull/11873
* feat: enhance OBConnection.search by @whhe in https://github.com/infiniflow/ragflow/pull/11876
* Feat: Add configuration for webhook to the begin node. #10427 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11875
* Fix `RuntimeError: asyncio.run() cannot be called from a running event loop` when calling mindmap endpoint. by @N0bodycan in https://github.com/infiniflow/ragflow/pull/11880
* Feat: enhance metadata operation by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11874
* MinerU supports for the new backend vlm-mlx-engine by @TeslaZY in https://github.com/infiniflow/ragflow/pull/11864
* Fix data_sync startup crash by properly invoking async main by @davidlcarrascal in https://github.com/infiniflow/ragflow/pull/11879
* Added semi-automatic mode to the metadata filter by @TeslaZY in https://github.com/infiniflow/ragflow/pull/11886
* Fix:async issue and sensitive logging by @buua436 in https://github.com/infiniflow/ragflow/pull/11895
* Add DeepseekV3.2 of Tongyi-Qianwen and remove unused code by @TeslaZY in https://github.com/infiniflow/ragflow/pull/11898
* Refa: treat MinerU as an OCR model 2 by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11905
* Feat: Add mineru as a model manufacturer to the system. #10621 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11903
* Fix: tokenizer issue. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/11902
* feat: Add Single Bucket Mode for MinIO/S3 by @arogan178 in https://github.com/infiniflow/ragflow/pull/11416
* Feat: Flatten the request schema of the webhook #10427 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11917
* Feat: Add box connector by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11845
* Docs: How to use restful API to update or delete metadata by @writinwaters in https://github.com/infiniflow/ragflow/pull/11912
* Fix: correct metadata update behavior by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11919
* Feature/docs generator by @PentaFrame-Development in https://github.com/infiniflow/ragflow/pull/11858
* Fix: forget-reset password by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11927
* Feat: Displaying the file option in the webhook's request body #10427 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11928
* Refa: refactor metadata filter by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11907
* Feat: Add GPT-5.2 & pro by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11929
* Fix: raptor don't have attribute chat by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11936
* Fix: aspose-slide issue. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/11935
* Fix: Asure-OpenAI resource not found by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11934
* Fix: presentation parsing & Embedding encode exception handling by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11933
* Support uploading encrypted files to object storage (#11837) by @yngvarhuang in https://github.com/infiniflow/ragflow/pull/11838
* Feat: Set the return value of the webhook to a string. #10427 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11945
* Doc: executor manager updated docker version by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11946
* Refactor: Improve the logic to calculate embedding total token count  by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/11943
* Fix: pipeline ignore MinerU backend config and vllm module is missing by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11955
* feat: display name instead of key in user fillup form submission by @zhulenghan in https://github.com/infiniflow/ragflow/pull/11931
* Update dataset config and retrieval testing by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/11958
* Fix: Bug fixes by @dcc123456 in https://github.com/infiniflow/ragflow/pull/11960
* Fix: 'AzureEmbed' object has no attribute 'total_token_count_from_response' by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/11962
* Remove unused py module dependencies by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/11964
* Feature/mineru improvements by @concertdictate in https://github.com/infiniflow/ragflow/pull/11938
* Feature/excel export fix by @Shivamjohri247 in https://github.com/infiniflow/ragflow/pull/11914
* Fix security issue by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/11965
* Docs: Migrate to single bucket mode (contributed by community) by @writinwaters in https://github.com/infiniflow/ragflow/pull/11972
* Feat: Enable image edit in edit_chunk by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11971
* Fix error and format issue by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/11975
* Docs: Updated executor manager prerequisites by @writinwaters in https://github.com/infiniflow/ragflow/pull/11978
* Change knowledge base to dataset by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/11976
* feat: add ingestion pipeline children delimiters configs by @JimmyBenKlieve in https://github.com/infiniflow/ragflow/pull/11979
* Feature:memory function complete by @dcc123456 in https://github.com/infiniflow/ragflow/pull/11982
* Update default prompt by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/11984
* Refa: only support MinerU-API now by @yongtenglei in https://github.com/infiniflow/ragflow/pull/11977
* fix: unable to save ingestion pipeline config without modifying children delimiter by @JimmyBenKlieve in https://github.com/infiniflow/ragflow/pull/11991
* Fix: update document api sample reponse is out of date. by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11989
* Fix: Fixed the issue of empty memory parameters by @dcc123456 in https://github.com/infiniflow/ragflow/pull/11988
* Ref: update loggings by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11987
* Fix: add multimodel models in chat api by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11986
* feat: add toc option in transformer node in ingestion pipeline by @JimmyBenKlieve in https://github.com/infiniflow/ragflow/pull/11992
* Feat: Reject default admin account log in to normal services by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/11994
* Fix: parent-children chunking method. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/11997
* Add license and Fix IDE warnings by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/11985
* Fix table format warning in Markdown file by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/12002
* Fix: duplicated PDF parser by @yongtenglei in https://github.com/infiniflow/ragflow/pull/12000
* Fix: model not authorized by @yongtenglei in https://github.com/infiniflow/ragflow/pull/12001
* feat: add image uploader in edit chunk dialog by @JimmyBenKlieve in https://github.com/infiniflow/ragflow/pull/12003
* Refactor: Improve the timestamp consistency  by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/11942
* task executor issues by @concertdictate in https://github.com/infiniflow/ragflow/pull/12006
* Refactor: improve cohere calculate total counts by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/12007
* Fix IDE warnings by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/12010
* Fix: image edit in edit_chunk by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/12009
* Refact: Update loggings by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/12014
* Feat: trace information can be returned by the agent completion API by @yongtenglei in https://github.com/infiniflow/ragflow/pull/12019
* Feat: bedrock iam authentication by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/12020
* Feat: use filepath for files with the same name for all data source types by @Jonah879 in https://github.com/infiniflow/ragflow/pull/11819
* Feat:update webhook component by @buua436 in https://github.com/infiniflow/ragflow/pull/11739
* Feat: Further update Bedrock model configs by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/12029
* Refa: better UX for adding OCR model by @yongtenglei in https://github.com/infiniflow/ragflow/pull/12034
* Feat: chats completions API supports metadata filtering by @yongtenglei in https://github.com/infiniflow/ragflow/pull/12023
* Feat: Display error messages from intermediate nodes of the webhook. #10427 by @cike8899 in https://github.com/infiniflow/ragflow/pull/11954
* Docs: How to call MinerU as a remote service by @writinwaters in https://github.com/infiniflow/ragflow/pull/12004
* Feat: Display error messages from intermediate nodes. #10427 by @cike8899 in https://github.com/infiniflow/ragflow/pull/12038
* Add AI Badgr as OpenAI-compatible chat model provider by @miguelmanlyx in https://github.com/infiniflow/ragflow/pull/12018
* Feat: Images appearing consecutively in the dialogue are merged and displayed in a carousel.  #10427  by @cike8899 in https://github.com/infiniflow/ragflow/pull/12051
* Feature: Implement metadata functionality by @dcc123456 in https://github.com/infiniflow/ragflow/pull/12049
* Include document_id in knowledgebase info retrieval by @haowenj in https://github.com/infiniflow/ragflow/pull/12041
* Feat: document list and filter supports metadata filtering by @yongtenglei in https://github.com/infiniflow/ragflow/pull/12053
* feat: supports multiple retrieval tool under an agent by @JimmyBenKlieve in https://github.com/infiniflow/ragflow/pull/12046
* Feat: Separate connectors from s3 by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/12045
* feat: add optional cache busting for image by @JimmyBenKlieve in https://github.com/infiniflow/ragflow/pull/12055
* Feat: enhance Excel image extraction with vision-based descriptions by @buua436 in https://github.com/infiniflow/ragflow/pull/12054
* Fix: Python SDK retrieve document_name is empty by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/12062
* Fix: update RAGFlow SDK for consistency by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/12065
* Remove Chinese comments and fix function arguments errors by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/12052
* Fix: list MCP tools may block by @yongtenglei in https://github.com/infiniflow/ragflow/pull/12067
* Refactor:remove useless try catch for ppt parser by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/12063
* Potential fix for code scanning alert no. 57: Clear-text logging of sensitive information by @yingfeng in https://github.com/infiniflow/ragflow/pull/12071
* Potential fix for code scanning alert no. 58: Clear-text logging of sensitive information by @yingfeng in https://github.com/infiniflow/ragflow/pull/12070
* Potential fix for code scanning alert no. 60: Clear-text logging of sensitive information by @yingfeng in https://github.com/infiniflow/ragflow/pull/12068
* Fix character escape by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/12072
* Potential fix for code scanning alert no. 59: Clear-text logging of sensitive information by @yingfeng in https://github.com/infiniflow/ragflow/pull/12069
* Feat: When the webhook returns a field in streaming format, the message displays the status field. #10427 by @cike8899 in https://github.com/infiniflow/ragflow/pull/12075
* Images that appear consecutively in the dialogue are displayed using a carousel. #12076 by @cike8899 in https://github.com/infiniflow/ragflow/pull/12077
* fix: guard Dashscope response attribute access in token/log utils by @yongtenglei in https://github.com/infiniflow/ragflow/pull/12082
* feat: display chunk type in chunk editor and dialog by @JimmyBenKlieve in https://github.com/infiniflow/ragflow/pull/12086
* Fix IDE warnings by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/12085
* Feature/1217 by @dcc123456 in https://github.com/infiniflow/ragflow/pull/12087
* fix: hide drop-zone upload button when picked an image by @JimmyBenKlieve in https://github.com/infiniflow/ragflow/pull/12088
* Feat: optimize aws s3 connector by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/12078
* Refactor add_llm and add speech to text by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/12089
* feat: add image context window in dataset config by @JimmyBenKlieve in https://github.com/infiniflow/ragflow/pull/12094
* Feat: output intinity test log by @Lynn-Inf in https://github.com/infiniflow/ragflow/pull/12097
* Fix: Tika server upgrades. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/12073
* Feat: enhance webhook response to include status and success fields and simplify ReAct agent by @buua436 in https://github.com/infiniflow/ragflow/pull/12091
* Fix: fix task cancel by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/12093
* Update workflow by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/12101
* Feat: Hide part of the message field in webhook mode  #10427 by @cike8899 in https://github.com/infiniflow/ragflow/pull/12100
* Fix:Bugs fix (Reduce metadata saving steps ...) by @dcc123456 in https://github.com/infiniflow/ragflow/pull/12095
* Fix: vision_figure_parser_docx/pdf_wrapper by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/12104
* Feat: Add memory multi-select dropdown to recall and message operator forms. #4213 by @cike8899 in https://github.com/infiniflow/ragflow/pull/12106
* Feat: add GLM-4.7 by @yongtenglei in https://github.com/infiniflow/ragflow/pull/12102
* Fix: update method call to use simplified async tool reaction by @buua436 in https://github.com/infiniflow/ragflow/pull/12108
* Fix only one of multiple retrieval tools is effective by @TeslaZY in https://github.com/infiniflow/ragflow/pull/12110
* Fix: Metadata bugs. by @dcc123456 in https://github.com/infiniflow/ragflow/pull/12111
* Feat: Translate the text of the webhook debugging interface. #10427 by @cike8899 in https://github.com/infiniflow/ragflow/pull/12115
* redirect stderr to stdout by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/12122
* Fix: metadata issue & graphrag speeding up. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/12113
* Refactor: enhance next_step prompt by @buua436 in https://github.com/infiniflow/ragflow/pull/12117
* fix: transformer toc prompt text incorrect by @JimmyBenKlieve in https://github.com/infiniflow/ragflow/pull/12116
* fix: add null safety checks in webhook response status hook by @SalmonWu13 in https://github.com/infiniflow/ragflow/pull/12114
* refactor: reword locale translations by @JimmyBenKlieve in https://github.com/infiniflow/ragflow/pull/12118
* Fix: The form waiting for input is not displayed in the dialog message. #12129 by @cike8899 in https://github.com/infiniflow/ragflow/pull/12130
* Refa: image table context window by @yongtenglei in https://github.com/infiniflow/ragflow/pull/12132
* Fix: /kb/update does not update FileService by @Magicbook1108 in https://github.com/infiniflow/ragflow/pull/12121
* Fix test error by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/12194
* Fix: toc no chunk found issue. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/12197
* Feat: supports filter documents by empty metadata by @yongtenglei in https://github.com/infiniflow/ragflow/pull/12180
* Fix directory name by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/12195
* Fix: keep behavior consistent for converse_with_chat_assistant by @yongtenglei in https://github.com/infiniflow/ragflow/pull/12190
* Refa: remove MinerU settings from .env by @yongtenglei in https://github.com/infiniflow/ragflow/pull/12201
* Update german language file (resubmission) by @hauberj in https://github.com/infiniflow/ragflow/pull/12208
* Feat: Images referenced in chat messages are displayed as a carousel at the bottom of the message.  #12076 by @cike8899 in https://github.com/infiniflow/ragflow/pull/12207
* Fix: Metadata tips info by @dcc123456 in https://github.com/infiniflow/ragflow/pull/12209
* Fix 404 not found error in CI by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/12200
* fix: chunk editor allows update image only if chunk type is image by @JimmyBenKlieve in https://github.com/infiniflow/ragflow/pull/12210
* Feat: add Airtable connector and integration for data synchronization by @buua436 in https://github.com/infiniflow/ragflow/pull/12211
* Fix: gen metadata error. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/12212
* Fix: Api key modal bug by @dcc123456 in https://github.com/infiniflow/ragflow/pull/12213
* Feat: An image carousel is displayed at the bottom of the agent's chat messages. #12076 by @cike8899 in https://github.com/infiniflow/ragflow/pull/12215
* Feat: Hide the autoplay switch for message operators in webhook mode. #10427 by @cike8899 in https://github.com/infiniflow/ragflow/pull/12216
* Feat: message manage by @Lynn-Inf in https://github.com/infiniflow/ragflow/pull/12196
* Fix: Can not select LLM in memory page by @dcc123456 in https://github.com/infiniflow/ragflow/pull/12219
* Fix text issue by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/12221
* Feat: The agent can only retrieve content from the knowledge base or memory. #4213 by @cike8899 in https://github.com/infiniflow/ragflow/pull/12224
* Feat: Preview the image at the bottom of the message #12076 by @cike8899 in https://github.com/infiniflow/ragflow/pull/12225
* Fix: Memory-related bug fixes by @dcc123456 in https://github.com/infiniflow/ragflow/pull/12226
* Fix: judge retrieval from by @Lynn-Inf in https://github.com/infiniflow/ragflow/pull/12223
* Fix forget policy by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/12228
* Fix memory config: user prompt text box by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/12229
* Fix small issues on UI by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/12231
* Fix message duration by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/12233
* Fix: memory by @Lynn-Inf in https://github.com/infiniflow/ragflow/pull/12230
* Update deploy_local_llm.mdx with vllm guide support by @yiminghub2024 in https://github.com/infiniflow/ragflow/pull/12222
* Feat: Display the selected list of memories in the retrieval node. #4213 by @cike8899 in https://github.com/infiniflow/ragflow/pull/12235
* Fix: allow update memory type by @Lynn-Inf in https://github.com/infiniflow/ragflow/pull/12237
* Fix: Memory-related bug fixes by @dcc123456 in https://github.com/infiniflow/ragflow/pull/12238
* Fix: rm field not allow check by @Lynn-Inf in https://github.com/infiniflow/ragflow/pull/12240
* Refa: improve image table context by @yongtenglei in https://github.com/infiniflow/ragflow/pull/12244
* Fix: Memory sava issue by @dcc123456 in https://github.com/infiniflow/ragflow/pull/12243
* Fix: parent-children pipleine bad case. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/12246
* Docs: v0.23.0 release notes by @writinwaters in https://github.com/infiniflow/ragflow/pull/12251
* Fix: order by when pick msg to rm by @Lynn-Inf in https://github.com/infiniflow/ragflow/pull/12247
* Fix: fifo -> FIFO by @dcc123456 in https://github.com/infiniflow/ragflow/pull/12257
* Fix: frontend cannot sync document window context by @yongtenglei in https://github.com/infiniflow/ragflow/pull/12256
* Fix: optimize init memory_size by @Lynn-Inf in https://github.com/infiniflow/ragflow/pull/12254
* Docs: Fixed a display issue by @writinwaters in https://github.com/infiniflow/ragflow/pull/12259
* Bump infinity to 0.6.15 by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/12264
* Fix memory issue on Infinity 0.6.15 by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/12258
* Docs: Update version references to v0.23.0 in READMEs and docs by @asiroliu in https://github.com/infiniflow/ragflow/pull/12253

## New Contributors
* @HeyPhiS made their first contribution in https://github.com/infiniflow/ragflow/pull/11353
* @zhangzhefang-github made their first contribution in https://github.com/infiniflow/ragflow/pull/10941
* @it-coder made their first contribution in https://github.com/infiniflow/ragflow/pull/11408
* @FallingSnowFlake made their first contribution in https://github.com/infiniflow/ragflow/pull/11432
* @levischd made their first contribution in https://github.com/infiniflow/ragflow/pull/11325
* @FoolFu made their first contribution in https://github.com/infiniflow/ragflow/pull/11458
* @davidlcarrascal made their first contribution in https://github.com/infiniflow/ragflow/pull/11455
* @Zwanan-github made their first contribution in https://github.com/infiniflow/ragflow/pull/11454
* @Ox0400 made their first contribution in https://github.com/infiniflow/ragflow/pull/10634
* @jacy1101 made their first contribution in https://github.com/infiniflow/ragflow/pull/11510
* @myoldcat made their first contribution in https://github.com/infiniflow/ragflow/pull/11536
* @darion-yaphet made their first contribution in https://github.com/infiniflow/ragflow/pull/11573
* @Oranggge made their first contribution in https://github.com/infiniflow/ragflow/pull/11581
* @omahs made their first contribution in https://github.com/infiniflow/ragflow/pull/11607
* @coolbeevip made their first contribution in https://github.com/infiniflow/ragflow/pull/11608
* @dzikus made their first contribution in https://github.com/infiniflow/ragflow/pull/11612
* @qinling0210 made their first contribution in https://github.com/infiniflow/ragflow/pull/11647
* @rommy2017 made their first contribution in https://github.com/infiniflow/ragflow/pull/11639
* @hsparks-codes made their first contribution in https://github.com/infiniflow/ragflow/pull/11674
* @dnosferatus made their first contribution in https://github.com/infiniflow/ragflow/pull/11692
* @dafa-wiratama made their first contribution in https://github.com/infiniflow/ragflow/pull/11718
* @shirukai made their first contribution in https://github.com/infiniflow/ragflow/pull/11725
* @tedhappy made their first contribution in https://github.com/infiniflow/ragflow/pull/11748
* @gileslloyd made their first contribution in https://github.com/infiniflow/ragflow/pull/11767
* @shaoqing404 made their first contribution in https://github.com/infiniflow/ragflow/pull/11702
* @mstfldmr made their first contribution in https://github.com/infiniflow/ragflow/pull/11794
* @Rohit10jr made their first contribution in https://github.com/infiniflow/ragflow/pull/11791
* @ltgkb made their first contribution in https://github.com/infiniflow/ragflow/pull/11816
* @SJpoor made their first contribution in https://github.com/infiniflow/ragflow/pull/11824
* @N0bodycan made their first contribution in https://github.com/infiniflow/ragflow/pull/11832
* @changkeke made their first contribution in https://github.com/infiniflow/ragflow/pull/11827
* @PentaFrame-Development made their first contribution in https://github.com/infiniflow/ragflow/pull/11844
* @zhulenghan made their first contribution in https://github.com/infiniflow/ragflow/pull/11931
* @concertdictate made their first contribution in https://github.com/infiniflow/ragflow/pull/11938
* @Shivamjohri247 made their first contribution in https://github.com/infiniflow/ragflow/pull/11914
* @miguelmanlyx made their first contribution in https://github.com/infiniflow/ragflow/pull/12018
* @haowenj made their first contribution in https://github.com/infiniflow/ragflow/pull/12041
* @SalmonWu13 made their first contribution in https://github.com/infiniflow/ragflow/pull/12114
* @hauberj made their first contribution in https://github.com/infiniflow/ragflow/pull/12208

**Full Changelog**: https://github.com/infiniflow/ragflow/compare/v0.22.1...v0.23.0