auto-code-rover
AutoCodeRover 是一款具备项目结构感知能力的自主软件工程助手,旨在自动修复代码缺陷并添加新功能。它通过结合大语言模型的分析与调试能力,能够像人类工程师一样理解代码库,定位问题根源并生成修复补丁。
该工具主要解决了传统 AI 在处理复杂代码库时难以精准定位错误、容易忽略上下文关联的痛点。在权威的 SWE-bench 基准测试中,AutoCodeRover 表现卓越,不仅解决了超过 37% 的轻量级任务和 46% 的验证级任务,而且单次任务成本低于 0.7 美元,耗时仅需约 7 分钟,实现了高效与经济性的平衡。
AutoCodeRover 非常适合软件开发者、技术研究人员以及需要维护大型开源项目的团队使用。无论是处理 GitHub 上的现有议题,还是在本地仓库中排查故障,它都能提供强有力的辅助。
其核心技术亮点在于“程序结构感知”的代码搜索机制。不同于传统的字符串匹配,它能深入抽象语法树(AST),精准定位到具体的方法或类,从而获取更相关的代码上下文。此外,当项目包含测试套件时,AutoCodeRover 还能利用统计故障定位技术,进一步提升修复成功率。这使得它在面对真实世界的复杂软件工程挑战时,比通用代码助手更加可靠和智能。
使用场景
某中型电商平台的后端团队正紧急处理一个由用户反馈引发的订单状态同步异常,该问题隐藏在复杂的微服务调用链中,导致部分订单卡在“支付中”状态。
没有 auto-code-rover 时
- 开发人员需手动翻阅数十个微服务模块的代码文件,依靠经验猜测故障点,耗时数小时仍难以定位具体出错的方法或类。
- 传统的字符串搜索无法理解代码结构,往往返回大量无关结果,干扰排查思路,容易遗漏深层的逻辑缺陷。
- 即使找到疑似代码,编写修复补丁后需反复运行本地测试套件验证,人工分析测试失败原因效率极低。
- 整个修复过程高度依赖资深工程师的个人能力,新人难以独立承担,且夜间突发故障时响应速度严重受限。
使用 auto-code-rover 后
- auto-code-rover 利用程序结构感知的代码搜索 API,自动遍历抽象语法树,精准锁定涉及订单状态流转的核心方法与类,将定位时间缩短至分钟级。
- 工具结合统计故障定位技术,自动分析现有测试用例的执行结果,直接高亮最可能的缺陷代码行,无需人工大海捞针。
- 基于检索到的完整上下文,auto-code-rover 自动生成修复补丁并预验证,开发者只需进行最终代码审查即可合并,大幅降低试错成本。
- 即使是初级工程师也能借助该工具快速解决复杂问题,实现了 7 分钟内完成从问题输入到补丁生成的全流程,且单次任务成本低于 0.7 美元。
auto-code-rover 通过将代码结构理解与自动化调试相结合,把原本依赖人工经验的“黑盒”排查过程转变为高效、低成本的标准化自动修复流程。
运行环境要求
- Linux
- macOS
未说明 (主要依赖外部 API 如 OpenAI/Anthropic/Groq,本地无重型模型推理需求)
未说明 (建议至少 8GB 以运行 Docker 和 Conda 环境)

快速开始
AutoCodeRover:自主程序改进

[!NOTE] 这是AutoCodeRover项目的公开版本。请访问我们的官网查看最新成果。
📣 更新
- [2024年11月21日] AutoCodeRover(v20240620)在SWE-bench Verified数据集上的有效率为46.20%,在完整SWE-bench数据集上为24.89%。
- [2024年8月14日] 在OpenAI发布的SWE-bench Verified数据集上,AutoCodeRover(v20240620)的有效率为38.40%,而AutoCodeRover(v20240408)的有效率为28.8%。更多详情请参阅OpenAI的博客文章和SWE-bench排行榜。
- [2024年7月18日] AutoCodeRover现在支持一种新模式,可输出潜在修复位置的列表。
- [2024年6月20日] AutoCodeRover(v20240620)在SWE-bench-lite上的有效率(pass@1)已达到30.67%!
- [2024年6月8日] 增加了对Gemini、Groq(感谢KasaiHarcore的贡献!)以及Anthropic模型的支持,通过AWS Bedrock实现(感谢JGalego的贡献!)。
- [2024年4月29日] 增加了对Claude和Llama模型的支持。受支持的模型列表请见此处! 更多模型的支持即将推出。
- [2024年4月19日] AutoCodeRover现在支持在GitHub问题和本地问题上运行!欢迎试用,并期待您的反馈!
Discord - 用于一般讨论、提问和反馈的服务器。
👋 概述
AutoCodeRover是一种全自动的GitHub问题解决方法(包括错误修复和功能添加),它将大语言模型与分析和调试能力相结合,以优先确定补丁位置,最终生成补丁。
[2024年6月20日更新] AutoCodeRover(v20240620)现在可以在SWE-bench lite中解决30.67%的问题(pass@1)!AutoCodeRover在实现这一效果的同时还非常经济高效——每项任务的成本低于0.7美元,且完成时间不超过7分钟!
[2024年4月8日] AutoCodeRover(v20240408)首次发布,在SWE-bench lite中解决了**19%**的问题(pass@1),其性能超越了当前最先进的AI软件工程师水平。
AutoCodeRover分为两个阶段:
- 🔎 上下文检索:LLM通过代码搜索API导航代码库并收集相关上下文。
- 💊 补丁生成:LLM基于检索到的上下文尝试编写补丁。
✨ 亮点
AutoCodeRover具有两项独特特性:
- 代码搜索API具备程序结构感知能力。不同于简单的字符串匹配式文件搜索,AutoCodeRover会在抽象语法树中查找相关的代码上下文(方法/类)。
- 当存在测试套件时,AutoCodeRover可以利用测试用例进行统计故障定位,从而进一步提高修复成功率。
🗎 arXiv论文
AutoCodeRover:自主程序改进 [arXiv 2404.05427]
如需引用本工作,请注明:
@inproceedings{zhang2024autocoderover,
author = {Zhang, Yuntong and Ruan, Haifeng and Fan, Zhiyu and Roychoudhury, Abhik},
title = {AutoCodeRover: Autonomous Program Improvement},
year = {2024},
isbn = {9798400706127},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/3650212.3680384},
doi = {10.1145/3650212.3680384},
booktitle = {Proceedings of the 33rd ACM SIGSOFT International Symposium on Software Testing and Analysis},
pages = {1592–1604},
numpages = {13},
keywords = {automatic program repair, autonomous software engineering, autonomous software improvement, large language model},
location = {Vienna, Austria},
series = {ISSTA 2024}
}
✔️ 示例:Django Issue #32347
作为示例,AutoCodeRover成功修复了Django的#32347号问题。完整的流程请观看演示视频:
https://github.com/nus-apr/auto-code-rover/assets/48704330/719c7a56-40b8-4f3d-a90e-0069e37baad3
增强功能:利用测试用例
如果提供测试用例,AutoCodeRover可以解决更多的问题。请参阅视频中的示例:
https://github.com/nus-apr/auto-code-rover/assets/48704330/26c9d5d4-04e0-4b98-be55-61c1d10a36e5
🚀 设置与运行
设置API密钥和环境变量
我们建议在Docker容器中运行AutoCodeRover。
将OPENAI_KEY环境变量设置为您的OpenAI密钥:
export OPENAI_KEY=sk-YOUR-OPENAI-API-KEY-HERE
对于Anthropic模型,请设置ANTHROPIC_API_KEY环境变量,该密钥可在这里找到:
export ANTHROPIC_API_KEY=sk-ant-api...
同样地,设置GROQ_API_KEY。
构建并启动AutoCodeRover工具的Docker镜像:
docker build -f Dockerfile.minimal -t acr .
docker run -it -e OPENAI_KEY="${OPENAI_KEY:-OPENAI_API_KEY}" acr
设置:本地模式
或者,您也可以拥有AutoCodeRover的本地副本,并使用environment.yml管理Python依赖。这是运行SWE-bench实验时推荐的设置。在安装好conda的情况下,执行conda env create -f environment.yml即可。同样地,在运行AutoCodeRover之前,请在您的shell中设置OPENAI_KEY或ANTHROPIC_API_KEY。
运行 AutoCodeRover
您可以通过三种模式运行 AutoCodeRover:
- GitHub 问题模式:通过提供问题页面的链接,在实时的 GitHub 问题上运行 ACR。
- 本地问题模式:在本地仓库和包含问题描述的文件上运行 ACR。
- SWE-bench 模式:在 SWE-bench 任务实例上运行 ACR。(建议使用 ACR 的本地部署。)
[GitHub 问题模式] 在新的 GitHub 问题上设置并运行
如果您希望在某个项目的新的 GitHub 问题上使用 AutoCodeRover,请准备以下内容:
- 用于
git clone ...的项目克隆链接。 - AutoCodeRover 将要处理的项目版本的提交哈希值(用于
git checkout ...)。 - GitHub 问题页面的链接。
然后,在 Docker 容器中(或您的 AutoCodeRover 本地副本中),运行以下命令以设置目标项目并生成补丁:
cd /opt/auto-code-rover
conda activate auto-code-rover
PYTHONPATH=. python app/main.py github-issue --output-dir output --setup-dir setup --model gpt-4o-2024-05-13 --model-temperature 0.2 --task-id <task id> --clone-link <link for cloning the project> --commit-hash <any version that has the issue> --issue-link <link to issue page>
以下是针对 langchain GitHub 问题跟踪器中的一个问题运行 ACR 的示例命令:
PYTHONPATH=. python app/main.py github-issue --output-dir output --setup-dir setup --model gpt-4o-2024-05-13 --model-temperature 0.2 --task-id langchain-20453 --clone-link https://github.com/langchain-ai/langchain.git --commit-hash cb6e5e5 --issue-link https://github.com/langchain-ai/langchain/issues/20453
<task id> 可以是任何用于标识该问题的字符串。
如果补丁生成成功,生成的补丁路径将被写入输出目录下的 selected_patch.json 文件中。
[本地问题模式] 在本地仓库和本地问题上设置并运行
除了克隆远程项目并在在线问题上运行 ACR 外,您也可以根据使用场景提前准备好本地仓库和问题。
要在本地代码库和本地问题上运行 ACR,请准备一个本地代码库,并将问题描述写入文件,然后运行以下命令:
cd /opt/auto-code-rover
conda activate auto-code-rover
PYTHONPATH=. python app/main.py local-issue --output-dir output --model gpt-4o-2024-05-13 --model-temperature 0.2 --task-id <task id> --local-repo <path to the local project repository> --issue-file <path to the file containing issue description>
如果补丁生成成功,生成的补丁路径将被写入输出目录下的 selected_patch.json 文件中。
[SWE-bench 模式] 在 SWE-bench 任务上设置并运行
此模式用于在 SWE-bench 中包含的现有问题任务上运行 ACR。
设置
安装 SWE-bench Docker
我们使用 SWE-bench docker 的一个 分支,以运行回归测试(不是 FAIL_TO_PASS 测试,而是包含在有缺陷程序中的所有测试)。要安装它,请运行:
conda activate auto-code-rover
git submodule update --init --recursive
cd SWE-bench-docker
pip install .
设置测试环境
对于 SWE-bench 模式,我们建议在主机上设置 ACR,而不是在 Docker 模式下运行。
首先,在本地设置 SWE-bench 任务实例。
克隆 这个 SWE-bench 分支,并按照 安装说明 安装依赖项。
将要运行的任务逐行放入一个文件中:
cd <SWE-bench-path>
echo django__django-11133 > tasks.txt
或者,如果在 arm64 架构上运行(例如 Apple Silicon),可以尝试这个不依赖于 Python 3.6 的版本(该版本在此环境中不受支持):
echo django__django-16041 > tasks.txt
然后,通过运行以下命令来设置这些任务:
- 通过运行以下命令设置文件中的任务:
cd <SWE-bench-path>
conda activate swe-bench
python harness/run_setup.py --log_dir logs --testbed testbed --result_dir setup_result --subset_file tasks.txt
一旦该任务的设置完成,将打印出以下两行:
setup_map is saved to setup_result/setup_map.json
tasks_map is saved to setup_result/tasks_map.json
此时,testbed 目录将包含目标项目的克隆源代码。同时,也会为该任务实例创建一个 Conda 环境。
如果您想同时设置多个任务,只需将多个 ID 放入 tasks.txt 文件中,并按照相同的步骤操作。
在 SWE-bench 中运行单个任务
在运行任务(此处为 django__django-11133)之前,请确保已按照上述方法完成设置。
cd <AutoCodeRover-path>
conda activate auto-code-rover
PYTHONPATH=. python app/main.py swe-bench --model gpt-4o-2024-05-13 --setup-map <SWE-bench-path>/setup_result/setup_map.json --tasks-map <SWE-bench-path>/setup_result/tasks_map.json --output-dir output --task django__django-11133
运行结果(例如针对 django__django-11133)可以在类似以下位置找到:output/applicable_patch/django__django-11133_yyyy-MM-dd_HH-mm-ss/(目录名中的日期时间字段会根据实验运行时间而有所不同)。
最终生成的补丁路径会被写入输出目录下的 selected_patch.json 文件中。
在 SWE-bench 中运行多个任务
首先,将所有要运行的任务 ID 逐行放入一个文件中。假设该文件名为 tasks.txt,则可以通过以下命令运行这些任务:
cd <AutoCodeRover-path>
conda activate auto-code-rover
PYTHONPATH=. python app/main.py swe-bench --model gpt-4o-2024-05-13 --setup-map <SWE-bench-path>/setup_result/setup_map.json --tasks-map <SWE-bench-path>/setup_result/tasks_map.json --output-dir output --task-list-file <SWE-bench-path>/tasks.txt
注意:请确保 tasks.txt 中的所有任务都已在 SWE-bench 中完成设置。请参阅上述步骤。
使用配置文件
此外,您还可以使用配置文件来指定所有参数和要运行的任务。有关示例,请参阅 conf/example.conf。更多关于配置文件中各项内容的详细信息,请参阅 EXPERIMENT.md。可以通过以下方式使用配置文件:
python scripts/run.py conf/example.conf
使用不同的模型
AutoCodeRover 支持多种基础模型。您可以通过 --model 命令行参数来指定要使用的基础模型。
当前支持的模型列表如下:
| 模型 | AutoCodeRover 命令行参数 | |
|---|---|---|
| OpenAI | gpt-4o-2024-08-06 | --model gpt-4o-2024-08-06 |
| gpt-4o-2024-05-13 | --model gpt-4o-2024-05-13 | |
| gpt-4-turbo-2024-04-09 | --model gpt-4-turbo-2024-04-09 | |
| gpt-4-0125-preview | --model gpt-4-0125-preview | |
| gpt-4-1106-preview | --model gpt-4-1106-preview | |
| gpt-3.5-turbo-0125 | --model gpt-3.5-turbo-0125 | |
| gpt-3.5-turbo-1106 | --model gpt-3.5-turbo-1106 | |
| gpt-3.5-turbo-16k-0613 | --model gpt-3.5-turbo-16k-0613 | |
| gpt-3.5-turbo-0613 | --model gpt-3.5-turbo-0613 | |
| gpt-4-0613 | --model gpt-4-0613 | |
| Anthropic | Claude 3.5 Sonnet v2 | --model claude-3-5-sonnet-20241022 |
| Claude 3.5 Sonnet | --model claude-3-5-sonnet-20240620 | |
| Claude 3 Opus | --model claude-3-opus-20240229 | |
| Claude 3 Sonnet | --model claude-3-sonnet-20240229 | |
| Claude 3 Haiku | --model claude-3-haiku-20240307 | |
| Meta | Llama 3 70B | --model llama3:70b |
| Llama 3 8B | --model llama3 | |
| AWS Bedrock | Claude 3 Opus | --model bedrock/anthropic.claude-3-opus-20240229-v1:0 |
| Claude 3 Sonnet | --model bedrock/anthropic.claude-3-sonnet-20240229-v1:0 | |
| Claude 3 Haiku | --model bedrock/anthropic.claude-3-haiku-20240307-v1:0 | |
| Claude 3.5 Sonnet | --model bedrock/anthropic.claude-3-5-sonnet-20241022-v2:0 | |
| Nova Pro | --model bedrock/us.amazon.nova-pro-v1:0 | |
| Nova Lite | --model bedrock/us.amazon.nova-lite-v1:0 | |
| Nova Micro | --model bedrock/us.amazon.nova-micro-v1:0 | |
| LiteLLM | 任何 LiteLLM 模型 | --model litellm-generic- |
| Groq | Llama 3 8B | --model groq/llama3-8b-8192 |
| Llama 3 70B | --model groq/llama3-70b-8192 | |
| Llama 2 70B | --model groq/llama2-70b-4096 | |
| Mixtral 8x7B | --model groq/mixtral-8x7b-32768 | |
| Gemma 7B | --model groq/gemma-7b-it |
[!注意] 在免费套餐下使用 Groq 模型可能会导致上下文限制被超出,即使是在处理简单问题时也是如此。
[!注意] 关于使用本地模型(如 llama3)运行 ACR 的一些说明:
- 在使用 llama3 模型之前,请先安装 Ollama,并使用 Ollama 下载相应的模型(例如
ollama pull llama3)。- 您可以在宿主机上运行 Ollama 服务器,同时在容器中运行 ACR。ACR 将尝试与宿主机上的 Ollama 服务器进行通信。
- 如果您的设置是宿主机上运行 Ollama,而 ACR 在容器中运行,我们建议您在宿主机上除了安装 Docker Engine 外,还安装 Docker Desktop。
- Docker Desktop 包含 Docker Engine,并且自带虚拟机,这使得容器内更容易访问宿主机的端口。使用 Docker Desktop,这种设置无需额外操作即可正常工作。
- 如果仅安装了 Docker Engine,在启动 ACR 容器时,您可能需要在
docker run命令中添加--net=host或--add-host host.docker.internal=host-gateway参数,以便 ACR 能够与宿主机上的 Ollama 服务器通信。 如果您在使用工具或实验过程中遇到任何问题,可以通过电子邮件 ridwan.shariffdeen@sonarsource.com 或通过我们的 Discord 服务器 联系我们。
实验复现
有关实验复现的信息,请参阅 EXPERIMENT.md。
测试
有关设置和运行测试的信息,请参阅 TESTING.md。
✉️ 联系方式
如有任何疑问,欢迎提交问题。您也可以通过 acr@sonarsource.com 与我们联系。
致谢
本研究部分得到了新加坡教育部 (MoE) Tier 3 资助项目“自动化程序修复”(MOE-MOET32021-0001) 的支持。
版本历史
v1.1.02024/09/10v1.0.02024/09/09常见问题
相似工具推荐
stable-diffusion-webui
stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。
everything-claude-code
everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上
ComfyUI
ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。
NextChat
NextChat 是一款轻量且极速的 AI 助手,旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性,以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发,NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。 这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言,它也提供了便捷的自托管方案,支持一键部署到 Vercel 或 Zeabur 等平台。 NextChat 的核心亮点在于其广泛的模型兼容性,原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型,让用户在一个界面即可自由切换不同 AI 能力。此外,它还率先支持 MCP(Model Context Protocol)协议,增强了上下文处理能力。针对企业用户,NextChat 提供专业版解决方案,具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能,满足公司对数据隐私和个性化管理的高标准要求。
ML-For-Beginners
ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程,旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周,包含 26 节精炼课程和 52 道配套测验,内容涵盖从基础概念到实际应用的完整流程,有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。 无论是希望转型的开发者、需要补充算法背景的研究人员,还是对人工智能充满好奇的普通爱好者,都能从中受益。课程不仅提供了清晰的理论讲解,还强调动手实践,让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持,通过自动化机制提供了包括简体中文在内的 50 多种语言版本,极大地降低了全球不同背景用户的学习门槛。此外,项目采用开源协作模式,社区活跃且内容持续更新,确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路,ML-For-Beginners 将是理想的起点。
ragflow
RAGFlow 是一款领先的开源检索增强生成(RAG)引擎,旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体(Agent)能力相结合,不仅支持从各类文档中高效提取知识,还能让模型基于这些知识进行逻辑推理和任务执行。 在大模型应用中,幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构(如表格、图表及混合排版),显著提升了信息检索的准确度,从而有效减少模型“胡编乱造”的现象,确保回答既有据可依又具备时效性。其内置的智能体机制更进一步,使系统不仅能回答问题,还能自主规划步骤解决复杂问题。 这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统,还是致力于探索大模型在垂直领域落地的创新者,都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口,既降低了非算法背景用户的上手门槛,也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目,它正成为连接通用大模型与行业专有知识之间的重要桥梁。