v0.20.0
infiniflow/ragflowv0.20.0Aug 1, 2025by yuzhichang
AI Summary
Major refactor of the Agent system with unified orchestration, visual capabilities, and full MCP support. Integrates Infinity as the document engine and introduces OpenAI-compatible APIs.
Key Highlights
- Unified orchestration of Agents and Workflows
- Visual Agent refactor with Multi-Agent configurations and planning
- Full MCP functionality (Server import, Client operation)
- Infinity integration for auto-tagging
- OpenAI-compatible API supporting file references
- 10 new Agent templates including Deep Research and Resume Analysis
Breaking Changes
- From v0.20.0 onwards, Agents are no longer compatible with earlier versions, and all existing Agents from previous versions must be rebuilt following the upgrade.
New Features
- Multi-Agent configurations
- Runtime logs for Agents
- Chat history management
- New models: Kimi K2, Grok 4, Voyage
Full Release Notes
Released on August 1, 2025. ## Features and improvements - Unified orchestration of both Agents and Workflows. - A comprehensive refactor of the Agent, greatly enhancing its capabilities and usability, with support for Multi-Agent configurations, planning and reflection, and visual functionalities. - Fully realized MCP functionality, allowing for MCP Server import, Agents functioning as MCP Clients, and RAGFlow itself operating as an MCP Server. - Access to runtime logs for Agents. - Chat histories with Agents available through the management panel. - Integration of a new, more robust version of Infinity, enabling the auto-tagging functionality with Infinity as the underlying document engine. - An OpenAI-compatible API that supports file reference information. - Support for new models, including Kimi K2, Grok 4, and Voyage. ## 10 new Agent templates are now available: - Multi-Agent based Deep Research: Collaborative Agent teamwork led by a Lead Agent with multiple Subagents, distinct from traditional workflow orchestration. - An intelligent Q&A chatbot leveraging internal knowledge bases, designed for customer service and training scenarios. - A resume analysis template used by the RAGFlow team to screen, analyze, and record candidate information. - A blog generation workflow that transforms raw ideas into SEO-friendly blog content. - An intelligent customer service workflow. - A user feedback analysis template that directs user feedback to appropriate teams through semantic analysis. - Trip Planner: Uses web search and MCP maps to assist with travel planning. - Image Lingo: Translates content from uploaded photos. - An information search assistant that retrieves answers from both internal knowledge bases and the web. ## Breaking changes From v0.20.0 onwards, Agents are no longer compatible with earlier versions, and all existing Agents from previous versions must be rebuilt following the upgrade. ## What's Changed * Feat: Add Tavily operator #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8400 * Docs: Added v0.19.1 release notes by @writinwaters in https://github.com/infiniflow/ragflow/pull/8398 * Fix: Document parse via API will alot problen by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8407 * Fix: rank feature score should be greater than 0. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8416 * Feat: Solved the conflict between the Handle click and drag events of the canvas node #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8413 * Fix: doc_aggs issue. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8418 * Fix: Database Query Vulnerable to Injection Attacks in rag/utils/opendal_conn.py by @kira-offgrid in https://github.com/infiniflow/ragflow/pull/8408 * Feat: The delete button is displayed only when the cursor is hovered over the connection line #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8422 * Feat: Add HTTPS setup instructions and configuration for Nginx by @yesidc in https://github.com/infiniflow/ragflow/pull/8401 * Fix: AzureChat model code by @asiroliu in https://github.com/infiniflow/ragflow/pull/8426 * Update .env ,Defaults to the v0.19.1-slim edition by @jason-this in https://github.com/infiniflow/ragflow/pull/8412 * Refa: upgrade MCP SDK to v1.9.4 by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8421 * Docs: Miscellaneous editorial updates by @writinwaters in https://github.com/infiniflow/ragflow/pull/8430 * Feat: Scratch MCP tool calling support. by @notsyncing in https://github.com/infiniflow/ragflow/pull/8263 * Feat: Use the message_id returned by the interface as the id of the reply message #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8434 * fix a bug when using huggingface embedding api by @Rainman5042 in https://github.com/infiniflow/ragflow/pull/8432 * Feat: Delete the agent and tool nodes downstream of the agent node #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8450 * Refactor:Improve insert file logic by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8445 * Test: Add document app tests by @asiroliu in https://github.com/infiniflow/ragflow/pull/8456 * FIX:Saving an RGBA image directly as JPEG will cause an error. If the… by @WuWeiFlow in https://github.com/infiniflow/ragflow/pull/8399 * Feat: Add IterationNode component #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8461 * Fix the bug of long type value overflow by @HaiyangPeng in https://github.com/infiniflow/ragflow/pull/8313 * Docs: exporting created knowledge graphs is not supported by @writinwaters in https://github.com/infiniflow/ragflow/pull/8465 * Feat: add MCP dashboard operations by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8460 * Fix: some cases Task return but not set progress by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8469 * Feat: add MCP treamable-http transport by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8449 * Fix: Solve the OOM issue when passing large PDF files while using QA chunking method. by @liuzhenghua in https://github.com/infiniflow/ragflow/pull/8464 * Feat: Insert the node data of the bottom subagent into the tool array of the head agent #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8471 * RAGFlow service_conf using .env variable by @ruansheng8 in https://github.com/infiniflow/ragflow/pull/8454 * Fixes typo in variable name by @tuankg1028 in https://github.com/infiniflow/ragflow/pull/8476 * Refa: improve GraphRAG similarity sensitivity to numeric differences by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8479 * Feat: Filter the query variable drop-down box options by type #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8485 * fix the error 'Unknown field for GenerationConfig: max_tokens' when u… by @Rainman5042 in https://github.com/infiniflow/ragflow/pull/8473 * Fix: Enforce default embedding model in create_dataset / update_dataset by @asiroliu in https://github.com/infiniflow/ragflow/pull/8486 * Adds retrieval result fields to Chunk by @tuankg1028 in https://github.com/infiniflow/ragflow/pull/8478 * Feat: Add retrieval tool #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8491 * Feat: Allow operators inside the loop operator to reference the output parameters of external operators #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8498 * Fix parser_config access for layout_recognize in presentation.py by @tuankg1028 in https://github.com/infiniflow/ragflow/pull/8492 * Feat: add MCP dashboard functionalities list_tools and test_tool by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8505 * Perf: ignore concate between rows. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8507 * Feat: Add UserFillUpForm component #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8508 * Feat: Customize the output variable name of the loop operator #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8514 * Fix: Add input validation to chunk creation endpoint by @asiroliu in https://github.com/infiniflow/ragflow/pull/8516 * Feat: Displays the output variable type selected by the loop operator #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8515 * Fix: chunk number error after re-parsing by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8513 * fix(prompt-editor): resolve initial cursor position and auto-newline … by @FatMii in https://github.com/infiniflow/ragflow/pull/8511 * Feat: Add StringTransform operator #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8520 * fix: list index out of range by @LeiZhang-Hunter in https://github.com/infiniflow/ragflow/pull/8518 * Fix: user_default_llm configuration doesn't work for OpenAI API compatible LLM factory by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8502 * Refactor:improve the logic to check cancel by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8524 * Refactor: remove useless initialize logic in list_doc by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8523 * Fix memory leaks in PIL image and BytesIO handling during chunk processing by @tuankg1028 in https://github.com/infiniflow/ragflow/pull/8522 * Feat: allow users to choose which MCP tools are enabled by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8519 * Fix: chat with tools bug. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8528 * Feat: Fixed the issue where the prompt menu content was hidden #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8530 * Feat: Display sub-agents in agent form #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8536 * Feat: Fixed the issue where the begin operator parameters could not be submitted during debugging #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8539 * Refa: limit embedding concurrency and fix `chat_with_tool` by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8543 * Feat: add gitee as LLM provider. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8545 * Feat: Allow users to enter text in the middle of a chat #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8569 * Feat: Support GiteeAI model #1853 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8573 * Feat: add GiteeAI as a llm provider. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8572 * Feat: Fixed the issue that the top toolbar disappears when opening the agent operator form #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8579 * Adding semaphore usage on the '/run' endpoint by @RafaelFFAumo in https://github.com/infiniflow/ragflow/pull/8526 * Feat: In a dialog message, users can enter different types of data #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8583 * Refa: change mcp_client module to rag/utils/conn by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8578 * doc: change to chunk_token num by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8590 * Pass Form Instance to GoogleModal Form Component by @tuankg1028 in https://github.com/infiniflow/ragflow/pull/8586 * Feat: Add file management HTTP_API by @huang-aoqin in https://github.com/infiniflow/ragflow/pull/8395 * Fix: the output log is incorrect by @symvation in https://github.com/infiniflow/ragflow/pull/8577 * Feat: Add agent advanced settings form #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8592 * Trivals. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8597 * fix: Correctly format message parts in GoogleChat by @tuankg1028 in https://github.com/infiniflow/ragflow/pull/8596 * Fixed the issue where variables were not displayed in the switch operator #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8601 * Fix: Fixed the issue that the global variables of the code operator cannot be selected #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8605 * Fix: docx parse error. by @zhangwenxuanQAQ in https://github.com/infiniflow/ragflow/pull/8600 * Test: Add tests for chunk API endpoints by @asiroliu in https://github.com/infiniflow/ragflow/pull/8616 * Feat: Construct the to field of the classification operator when saving data #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8610 * Add service_conf and llm_factories options to Helm chart by @sd109 in https://github.com/infiniflow/ragflow/pull/8607 * Add Google Cloud Vision API Integration (Image2Text) by @tuankg1028 in https://github.com/infiniflow/ragflow/pull/8608 * fix opendal config 'oss_table' and 'max_allowed_packet' by @whhe in https://github.com/infiniflow/ragflow/pull/8611 * Feat: Convert the arguments parameter of the code operator to a dictionary #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8623 * Update Chrome download URL in use_china_mirrors configuration by @huansinho in https://github.com/infiniflow/ragflow/pull/8628 * make dirs with 'exist_ok=True' by @whhe in https://github.com/infiniflow/ragflow/pull/8629 * Fix: anthropic llm issue. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8633 * Refa: more robust mcp tool call by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8631 * Fix: page_size can be None error by @CamWang in https://github.com/infiniflow/ragflow/pull/8603 * Minor: fixed broken links. by @writinwaters in https://github.com/infiniflow/ragflow/pull/8636 * Feat: add MCP server test endpoint by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8632 * Feat: Combine the output logs of the same operator together #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8638 * Optimize the style and logic of the profile by @dcc123456 in https://github.com/infiniflow/ragflow/pull/8639 * Feat: Display the iteration operator toolbar #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8645 * Feat: Edit the output data of the code operator #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8649 * Update svg of SiliconFlow with new LOGO by @jackalcooper in https://github.com/infiniflow/ragflow/pull/8647 * Fix: Fixed the issue of retrieval operator text overlapping #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8652 * Refa: automatic LLMs registration by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8651 * Fix: Fixed the issue where the debug form Switch component had no default value #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8662 * Fix: The data set created by API call failed to parse after uploading the file. by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8657 * feat: use official sources for chromedriver-linux in download_deps.py by @gnowland in https://github.com/infiniflow/ragflow/pull/8665 * Fix(docker-compose)Update docker-compose-base.yml by @Hwting in https://github.com/infiniflow/ragflow/pull/8650 * fix:Optimized the style of the dataset configuration page and added the l… by @dcc123456 in https://github.com/infiniflow/ragflow/pull/8655 * Refa: refactor prompts into markdown-style structure using Jinja2 by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8667 * fix: optimize the chunk result page by @dcc123456 in https://github.com/infiniflow/ragflow/pull/8676 * Fix: Wrong Citation Display #8594 #8474 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8671 * Fix: secure canvas by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8670 * Fix a small typo in count of used fragments by @djstrong in https://github.com/infiniflow/ragflow/pull/8673 * fix(docker-compose):The old base image lost the curl command, and the image has been updated to fix this issue. Add Health Check by @Hwting in https://github.com/infiniflow/ragflow/pull/8672 * Fix: add ES re-connect once request timeout. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8678 * fix task_service.py by @feeingHe in https://github.com/infiniflow/ragflow/pull/8687 * fix: retry embedding with Qwen family models when limits temporarily reached. by @6607changchun in https://github.com/infiniflow/ragflow/pull/8690 * Feat: Support uploading files when running agent #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8697 * Refa: Update Minio image to specific release version in docker-compose-base.yml by @asiroliu in https://github.com/infiniflow/ragflow/pull/8693 * Fix: Prevent Duplicate Retrieval Requests on Knowledge Testing by @cutiechi in https://github.com/infiniflow/ragflow/pull/8683 * Fix: typo process_duration by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8696 * fix:Use use-chunk-request.ts to replace chunk-hooks.ts; implement chunk selectAll, enable, disable and other functions by @dcc123456 in https://github.com/infiniflow/ragflow/pull/8695 * Fix:disallowed special token while embedding by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8692 * Fix: suppress docker-compose warning by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8698 * Fix: Fix text errors #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8708 * Fix: EsLint Problem of index.tsx by @feeingHe in https://github.com/infiniflow/ragflow/pull/8710 * Feat: Get the running log of each message through the trace interface #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8711 * fix:Added support for preview of txt, md, excel, csv, ppt, image, doc and other files by @dcc123456 in https://github.com/infiniflow/ragflow/pull/8712 * Refactor:Improve the logic in search.py by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8716 * Test: Add dialog app test suite and update common.py with dialog endpoints by @asiroliu in https://github.com/infiniflow/ragflow/pull/8729 * Feat: Add note node #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8728 * fix: Change the data in the dataset page to be obtained using the interface by @dcc123456 in https://github.com/infiniflow/ragflow/pull/8726 * Fix: Add validation for dialog name by @asiroliu in https://github.com/infiniflow/ragflow/pull/8722 * Docs: miscellaneous editorial updates by @writinwaters in https://github.com/infiniflow/ragflow/pull/8731 * Fix:use the same logic to handle pos in tokenize_chunks_with_images by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8732 * Feat: List MCP servers #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8730 * Feat: add advanced document filter by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8723 * Feat: Display MCP multiple selection bar #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8737 * Fix: Change Ollama Embedding Keep Alive by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8734 * Fix: graphrag, raptor can be null for api created kb issue by @CamWang in https://github.com/infiniflow/ragflow/pull/8743 * Docs: Updated upgrading guide by @writinwaters in https://github.com/infiniflow/ragflow/pull/8746 * Feat: Test MCP server #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8757 * Refactor: Improve How To Handle QWenEmbed by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8765 * fix: use tenant_id of kb to get index name in rm chunk func by @whhe in https://github.com/infiniflow/ragflow/pull/8760 * Feat: Avoid the form sheet covering the chat sheet #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8768 * Feat: Delete MCP server #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8772 * Refa: refine retry gap. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8773 * Fix: Resolve typo in /list route function by @haol-co in https://github.com/infiniflow/ragflow/pull/8769 * Feat: Modify the agent tool name #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8780 * Feat: Edit MCP server #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8784 * Feat: add xAI provider by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8781 * Feat: change document status in bulk by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8777 * Fix: Wrong_Input_type_for_Gemin by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8783 * fix: fix dataset-page's bugs by @dcc123456 in https://github.com/infiniflow/ragflow/pull/8786 * Fix: Improve Memory Usage For Presentation by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8792 * Feat: Import and export MCP Server #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8806 * Docs: Updated tips by @writinwaters in https://github.com/infiniflow/ragflow/pull/8809 * Fix: better_handle_different_types by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8775 * Refa: better MIME content type by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8801 * Feat: Add text and markdown file view by @EchoEkhi in https://github.com/infiniflow/ragflow/pull/8767 * fix redundancy package import. by @zhanluxianshen in https://github.com/infiniflow/ragflow/pull/8754 * BugFix: AgentCreateBUGFix:required argument are missing: dsl; by @yungongzi in https://github.com/infiniflow/ragflow/pull/8794 * Feat: Filter MCP server list by text. #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8820 * Perf:Remove Useless Convert When BGE Embedding by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8816 * Feat: refine create and list operations for MCP dashboard by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8823 * Feat: Render the mcp list on the agent page #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8829 * Fix:Better Support Table Value Type by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8822 * Perf: Enhance timeout handling. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8826 * Feat: Synchronize MCP data to agent #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8832 * Feat: Adjust agent mcp style #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8841 * Fix: no chunks parsed out for Law by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8842 * Adds 'Vietnamese' to the list of available languages in the cross-language item components by @tuankg1028 in https://github.com/infiniflow/ragflow/pull/8843 * Fix: fixed context loss caused by separating markdown tables from original text by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8844 * Update embedding_model.py by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8836 * Perf: make `do_cancel` quicker. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8846 * Feat: Add authorization token field to the MCP form #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8850 * Fix: Remove antd from dataset-page by @dcc123456 in https://github.com/infiniflow/ragflow/pull/8830 * Pref: use redis to check if canceled. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8853 * Fix: fixed invalid save() arguments for slide thumbnails by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8851 * Feat: Display file references for agent dialogues #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8854 * Feat: Add CrawlerForm component #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8857 * Perf: retryable mysql connection. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8858 * Docs: Updated tag set tips. by @writinwaters in https://github.com/infiniflow/ragflow/pull/8860 * Feat: Add agent tool CrawlerForm #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8859 * Adds new Voyage embedding models by @tuankg1028 in https://github.com/infiniflow/ragflow/pull/8845 * Fix: graphknowledge Tree structure not found for treeKey: combo (#7819) by @wingjson in https://github.com/infiniflow/ragflow/pull/8862 * Feat: Add sql form #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8874 * Feat: Add bing form #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8875 * Perf: set timeout of some steps in KG. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8873 * Perf: add limit to embedding druing KG. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8881 * Refa: Remove useless conver and fix a bug for DefaultRerank by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8887 * Feat: Display the thinking process according to the start_to_think flag of the message #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8888 * fix s3 init config . by @zhanluxianshen in https://github.com/infiniflow/ragflow/pull/8886 * fix settings global docStoreConn for opensearch by @zhanluxianshen in https://github.com/infiniflow/ragflow/pull/8885 * fix: Fix the problem that the custom footer of modal component by @dcc123456 in https://github.com/infiniflow/ragflow/pull/8877 * Refa: add more logs to KG. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8889 * Fix: Fixed the issue that the knowledge graph could not be displayed #8890 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8891 * Fix: parameter missing. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8895 * Perf: test llm before RAPTOR. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8897 * Feat: Add TavilyExtract operator #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8899 * Fix: wrong parameters. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8900 * Feat: Add knowledge graph http api by @huang-aoqin in https://github.com/infiniflow/ragflow/pull/8896 * Feat: Show agent embed dialog #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8903 * Feat: Adjust the EmbedDialog style #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8911 * Fix: when parse markdown support extract image at local by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8906 * Fix: Fixed the issue that the content of the Dropdown section cannot be seen when selecting the next operator #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8918 * Add OpenSearch support to Helm chart by @sd109 in https://github.com/infiniflow/ragflow/pull/8921 * Feat: Adjust the style of the agent canvas connection line #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8922 * Perf: limit embedding in KG. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8917 * Docs: Updated knowledge graph-specific APIs by @writinwaters in https://github.com/infiniflow/ragflow/pull/8927 * Refactor improve codes for ranker by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8936 * Fix:Add a component of calendar by @dcc123456 in https://github.com/infiniflow/ragflow/pull/8923 * Perf: set timeout for building chunks. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8940 * Feat: Display agent history versions #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8942 * Fix: support cross language for API. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8946 * Feat: Display agent version in pages #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8947 * Fix: Fixed the issue that variables defined in the begin operator cannot be referenced in the switch operator. #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8950 * Fix: Generate avatar; Add knowledge graph; Modify the style of the MultiSelect component by @dcc123456 in https://github.com/infiniflow/ragflow/pull/8952 * Feat: Add model editing functionality with improved UI labels by @adrianad in https://github.com/infiniflow/ragflow/pull/8855 * Fix: Fixed the issue of clicking to run the agent causing an error #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8956 * Fix:Improve float operation when rerank by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8963 * Fix: Fixed the issue that the key parameter duplication check of the begin operator was incorrect #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8964 * Feat: Add the option to use the knowledge graph to the retrieval form #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8968 * Feat: Adjust the page header to breadcrumbs #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8971 * Fix: correct cancel logic error by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8973 * Refa: improve usability of Node.js/JavaScript code executor by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8979 * Fix: Refactor parser config handling and add GraphRAG defaults by @asiroliu in https://github.com/infiniflow/ragflow/pull/8778 * Refa: remove temperature since some LLMs fail to support. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/8981 * use quote_plus to escape password in opendal's mysql url by @whhe in https://github.com/infiniflow/ragflow/pull/8976 * Fix: Adds newest Gemini models to fit google's standard API rate limits by @es-zx in https://github.com/infiniflow/ragflow/pull/8970 * Refactor:remove use less convert for FastEmbed by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8984 * Switch to StatefulSet resources for stateful components by @sd109 in https://github.com/infiniflow/ragflow/pull/8985 * fix: use consistent filenames for chrome & chromedriver by @gnowland in https://github.com/infiniflow/ragflow/pull/8991 * Fix: Increase timeouts for document parsing and model checks by @asiroliu in https://github.com/infiniflow/ragflow/pull/8996 * Fix: Fixed the issue where the error prompt box on the Agent page would be covered #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/8992 * Feat: OpenAI-compatible-API supports references by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8997 * Feat: Share agent dialog box externally #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9005 * Feat: add model provider DeepInfra by @yongtenglei in https://github.com/infiniflow/ragflow/pull/9003 * Fix: typo Bearer token by @yongtenglei in https://github.com/infiniflow/ragflow/pull/8998 * Bump to infinity v0.6.0-dev4 by @yuzhichang in https://github.com/infiniflow/ragflow/pull/9013 * Fix:Optimize Agent template page, fix bugs in knowledge base by @dcc123456 in https://github.com/infiniflow/ragflow/pull/9009 * Fix OpenSearch liveness probe by @sd109 in https://github.com/infiniflow/ragflow/pull/9012 * Trival. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/9015 * Ensure Redis volumeClaimTemplate labels are deterministic by @sd109 in https://github.com/infiniflow/ragflow/pull/9016 * fix: obfuscate additional server secrets values by @gnowland in https://github.com/infiniflow/ragflow/pull/9014 * Feat: Modify the background color of the agent canvas #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9020 * Fix issue with `keep_alive=-1` for ollama chat model by allowing a user to set an additional configuration option by @vdmitriyev in https://github.com/infiniflow/ragflow/pull/9017 * Feat: Allows users to delete a condition of a conditional operator #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9022 * Fix: exception layout_type in is_caption by @yongtenglei in https://github.com/infiniflow/ragflow/pull/9028 * Feat: Upload files in the chat box on the agent page #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9035 * Docs: Updated UI tips by @writinwaters in https://github.com/infiniflow/ragflow/pull/9033 * Feat: Downstream operators can get the variables defined by the user input operator #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9036 * Bug fix: OpenSearch chunk update some api error by @pyyuhao in https://github.com/infiniflow/ragflow/pull/9032 * Feature: Support set chats kbs to empty by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/9038 * Refactor parser code by @JinHai-CN in https://github.com/infiniflow/ragflow/pull/9042 * Fix: Add parsing animations to the agent log and optimize some page styles by @dcc123456 in https://github.com/infiniflow/ragflow/pull/9040 * get keep alive from env by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/9039 * Refa: validation utils to use Pydantic v2 style models by @asiroliu in https://github.com/infiniflow/ragflow/pull/9037 * Refa: suppress DB migration error logs by @yongtenglei in https://github.com/infiniflow/ragflow/pull/9043 * Feat: Keep the workflow page link unchanged #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9045 * Feat: Filter the agent form's large model list by type #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9049 * Fix:in the knowledge base operation file will result in an error by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/8962 * Refactor: Remove Useless split for BedrockEmbed by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/9067 * adding platform: linux/amd64 to the mac build by @chopley in https://github.com/infiniflow/ragflow/pull/9059 * Fix: Fixed the issue that the condition of deleting the classification operator cannot be connected anymore #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9068 * Feat: Add agent log-sheet in cavas and log-sheet in share's page by @dcc123456 in https://github.com/infiniflow/ragflow/pull/9072 * Feat: Click the edit tool button of the agent form to open the corresponding form #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9071 * Fix:When deleting a knowledge base that is currently performing a parsing task, the parsing queue will not be deleted! by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/9018 * Feat: The operator is displayed only when the number of conditions is greater than 1 #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9077 * Added infinity rank_feature support by @yuzhichang in https://github.com/infiniflow/ragflow/pull/9044 * Feat: Render the uploaded agent message file #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9081 * Feat: Add Google operator #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9086 * Feat: Add Yahoo Finance Operator #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9088 * Docs: add MCP streamable-http transport by @yongtenglei in https://github.com/infiniflow/ragflow/pull/9093 * Feat: Add Email and DuckDuckGo and Wikipedia Operator #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9090 * Feat: Add Arxiv GoogleScholar operator #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9102 * Feat: Enable MCP streamable-http model via docker compose by @yongtenglei in https://github.com/infiniflow/ragflow/pull/9092 * Update embedding_model.py by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/9083 * Feat: parsing supports jsonl or ldjson format by @yongtenglei in https://github.com/infiniflow/ragflow/pull/9087 * Feat: Add agent-log-list page by @dcc123456 in https://github.com/infiniflow/ragflow/pull/9076 * docs: Complete tool calling bash script in MCP client example by @Imyukehan in https://github.com/infiniflow/ragflow/pull/9073 * Add Redis data retention policy config options by @sd109 in https://github.com/infiniflow/ragflow/pull/9080 * Fix: fix error 429 api rate limit when building knowledge graph for all chat model and Mistral embedding model by @es-zx in https://github.com/infiniflow/ragflow/pull/9106 * Feat: Add invoke and github operators #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9112 * Fix : API /document/thumbnails using wrong method to get ''doc_ids' by @zhangwenxuanQAQ in https://github.com/infiniflow/ragflow/pull/9097 * Image validation of the image2text model without using local paths by @kuschzzp in https://github.com/infiniflow/ragflow/pull/9052 * Feat: Add wencai operator #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9116 * Refa: Update base64 test image with new sample data by @asiroliu in https://github.com/infiniflow/ragflow/pull/9115 * Feat: Translate operator names and allow mailboxes to reference operator names #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9118 * Feat: Add log-detail page,Improve the style of chat boxes by @dcc123456 in https://github.com/infiniflow/ragflow/pull/9119 * Feat: Handling abnormal anchor points of agent operators #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9121 * Feat: Redesign and refactor agent module by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/9113 * Feat: Make the agent dialog window exposed to the outside world fill in the begin form #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9124 * Fix: Disable Auto-scroll when user looks back through historical chat-Bug 9062 by @chopley in https://github.com/infiniflow/ragflow/pull/9107 * Rafe: Update LLMService type hints by @asiroliu in https://github.com/infiniflow/ragflow/pull/9131 * Feat: Replace the link of the old version of the agent module #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9130 * Refactor: Improve the try catch logic for XinferenceEmbed by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/9128 * add Kimi-K2-Instruct from Tongyi-Qianwen API by @TeslaZY in https://github.com/infiniflow/ragflow/pull/9125 * Feat/support 302ai provider by @JI4JUN in https://github.com/infiniflow/ragflow/pull/8742 * Feat: Displays the tool operator icon #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9133 * Feat: Add thought info to every component. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/9134 * Fix: Improve Agent templates functionality and fix some UI style issues by @dcc123456 in https://github.com/infiniflow/ragflow/pull/9129 * Feat: Display operator icons on the agent form #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9138 * Feat: Delete the operator node and hide the corresponding sheet #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9142 * Fix: Redis stream lag can be nil by @yongtenglei in https://github.com/infiniflow/ragflow/pull/9139 * Refactor:Introduce Image Close For GeminiCV by @Woody-Hu in https://github.com/infiniflow/ragflow/pull/9147 * Fix: Fix share-chat bugs by @dcc123456 in https://github.com/infiniflow/ragflow/pull/9150 * Fix: kimi-latest is not authorized by @yongtenglei in https://github.com/infiniflow/ragflow/pull/9151 * Feat: Remove the exception comment field from the agent form #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9153 * Add a series of qwen3 latest SOTA models by @TeslaZY in https://github.com/infiniflow/ragflow/pull/9140 * Feat: Add industry-related search keyword generation function by @huang-aoqin in https://github.com/infiniflow/ragflow/pull/9156 * Feat: Modify the style of the agent page bright theme #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9162 * Fix: Fixed share-log UI issues and log-template bugs by @dcc123456 in https://github.com/infiniflow/ragflow/pull/9166 * Feat: Adjust the style of the note node #3221 by @cike8899 in https://github.com/infiniflow/ragflow/pull/9167 * Docs: Updated docs for 0.20.0 by @writinwaters in https://github.com/infiniflow/ragflow/pull/9169 * Docs: Update version references to v0.20.0 in READMEs and docs by @asiroliu in https://github.com/infiniflow/ragflow/pull/9164 * Docs: Update demo GIFs in README files by @asiroliu in https://github.com/infiniflow/ragflow/pull/9170 * Docs: Add agentic workflow support to latest updates in READMEs by @asiroliu in https://github.com/infiniflow/ragflow/pull/9171 * Refa: add result to callback for agent tool use. by @KevinHuSh in https://github.com/infiniflow/ragflow/pull/9137 * Fix: Share-log bugs by @dcc123456 in https://github.com/infiniflow/ragflow/pull/9172 ## New Contributors * @kira-offgrid made their first contribution in https://github.com/infiniflow/ragflow/pull/8408 * @yesidc made their first contribution in https://github.com/infiniflow/ragflow/pull/8401 * @jason-this made their first contribution in https://github.com/infiniflow/ragflow/pull/8412 * @Rainman5042 made their first contribution in https://github.com/infiniflow/ragflow/pull/8432 * @WuWeiFlow made their first contribution in https://github.com/infiniflow/ragflow/pull/8399 * @ruansheng8 made their first contribution in https://github.com/infiniflow/ragflow/pull/8454 * @tuankg1028 made their first contribution in https://github.com/infiniflow/ragflow/pull/8476 * @FatMii made their first contribution in https://github.com/infiniflow/ragflow/pull/8511 * @RafaelFFAumo made their first contribution in https://github.com/infiniflow/ragflow/pull/8526 * @symvation made their first contribution in https://github.com/infiniflow/ragflow/pull/8577 * @zhangwenxuanQAQ made their first contribution in https://github.com/infiniflow/ragflow/pull/8600 * @huansinho made their first contribution in https://github.com/infiniflow/ragflow/pull/8628 * @CamWang made their first contribution in https://github.com/infiniflow/ragflow/pull/8603 * @jackalcooper made their first contribution in https://github.com/infiniflow/ragflow/pull/8647 * @Hwting made their first contribution in https://github.com/infiniflow/ragflow/pull/8650 * @djstrong made their first contribution in https://github.com/infiniflow/ragflow/pull/8673 * @feeingHe made their first contribution in https://github.com/infiniflow/ragflow/pull/8687 * @6607changchun made their first contribution in https://github.com/infiniflow/ragflow/pull/8690 * @haol-co made their first contribution in https://github.com/infiniflow/ragflow/pull/8769 * @EchoEkhi made their first contribution in https://github.com/infiniflow/ragflow/pull/8767 * @zhanluxianshen made their first contribution in https://github.com/infiniflow/ragflow/pull/8754 * @es-zx made their first contribution in https://github.com/infiniflow/ragflow/pull/8970 * @vdmitriyev made their first contribution in https://github.com/infiniflow/ragflow/pull/9017 * @chopley made their first contribution in https://github.com/infiniflow/ragflow/pull/9059 * @Imyukehan made their first contribution in https://github.com/infiniflow/ragflow/pull/9073 * @JI4JUN made their first contribution in https://github.com/infiniflow/ragflow/pull/8742 **Full Changelog**: https://github.com/infiniflow/ragflow/compare/v0.19.1...v0.20.0