AutoRAG
RAG自动机器学习工具,可自动为您的数据找到最优的RAG流程。
浏览我们的 📖 文档!!
另外,加入我们的 📞 Discord 社区。
💪 Colab 教程
🚨 YouTube 教程
https://github.com/Marker-Inc-Korea/AutoRAG/assets/96727832/c0d23896-40c0-479f-a17b-aa2ec3183a26
默认静音,启用声音以听旁白
您可以在 YouTube 上观看
☎️ 常见问题
🛣️ 支持计划 & 路线图
💻 硬件规格
🍯 提示/技巧
☎️ 故障排除
😁 简介
市面上有很多RAG流程和模块,但您不知道哪个流程最适合"您自己的数据"和"您自己的用例"。制作和评估所有RAG模块非常耗时且难以完成。但如果不这样做,您永远不会知道哪个RAG流程最适合您自己的用例。
AutoRAG是一个用于为"您的数据"找到最佳RAG流程的工具。您可以使用自己的评估数据自动评估各种RAG模块,并为您自己的用例找到最佳的RAG流程。
AutoRAG支持一种简单的方法来评估许多RAG模块组合。立即尝试并为您自己的用例找到最佳的RAG流程。
📌 AutoRAG 结构
❗支持的节点 & 模块
您可以在这里查看我们所有支持的节点和模块
❗支持的评估指标
您可以在这里查看我们所有支持的评估指标
⚡ 快速安装
我们建议使用Python 3.9或更高版本来运行AutoRAG。
pip install AutoRAG
⚡ 快速开始
1. 准备您的评估数据
对于评估,您只需准备三个文件。
- QA 数据集文件 (qa.parquet)
- 语料库 数据集文件 (corpus.parquet)
- 配置yaml文件 (config.yaml)
有一个用于AutoRAG的评估数据模板。
2. 对各种RAG模块评估您的数据
您可以在这里获取各种配置yaml文件。 对于初学者,我们强烈建议使用预制的配置yaml文件。
如果您想创建自己的配置yaml文件,请查看创建您自己的配置yaml文件部分。
您只需几行代码就可以评估您的RAG流程。
from autorag.evaluator import Evaluator
evaluator = Evaluator(qa_data_path='你的/qa.parquet路径', corpus_data_path='你的/corpus.parquet路径')
evaluator.start_trial('你的/config.yaml路径')
或者你可以使用命令行界面
autorag evaluate --config 你的/default_config.yaml路径 --qa_data_path 你的/qa.parquet路径 --corpus_data_path 你的/corpus.parquet路径
完成后,你可以在当前目录看到创建的几个文件和文件夹。
在名为数字(如0)的试验文件夹中,
你可以查看summary.csv
文件,它总结了评估结果和适合你数据的最佳RAG流程。
要了解更多细节,你可以在这里查看文件夹结构的样子。
3. 使用找到的最优RAG流程
你可以立即使用找到的最优RAG流程。 只需几行代码,你就可以开始使用了!
首先,你需要从评估的试验文件夹中构建流程yaml文件。 你可以在当前目录中找到试验文件夹。 只需查找名为'0'或其他数字的文件夹。
from autorag.deploy import Runner
runner = Runner.from_trial_folder('你的/试验文件夹路径')
runner.run('你的问题')
或者,你可以将此流程作为API服务器运行。 你可以使用Python代码或CLI命令。 在这里查看API端点。
from autorag.deploy import Runner
runner = Runner.from_trial_folder('你的/试验文件夹路径')
runner.run_api_server()
你可以使用CLI命令运行API服务器。
autorag run_api --config_path 你的/pipeline.yaml路径 --host 0.0.0.0 --port 8000
4. 运行仪表板
你可以运行仪表板轻松查看结果。
autorag dashboard --trial_dir /你的/试验目录路径
- 仪表板示例:
5. 分享你的RAG流程
你可以从提取的流程yaml文件使用你的RAG流程。 这个提取的流程非常适合与他人分享你的RAG流程。
你必须在项目文件夹中运行这个,该文件夹的data文件夹中包含数据,resources文件夹中包含用于检索的已摄取语料库。
from autorag.deploy import extract_best_config
pipeline_dict = extract_best_config(trial_path='你的/试验文件夹路径', output_path='你的/pipeline.yaml路径')
6. 部署你的最优RAG流程(用于测试)
6-1. 作为CLI运行
你可以使用提取的yaml文件立即使用找到的最优RAG流程。
from autorag.deploy import Runner
runner = Runner.from_yaml('你的/pipeline.yaml路径')
runner.run('你的问题')
6-2. 作为API服务器运行
你可以将此流程作为API服务器运行。
在这里查看API端点。
from autorag.deploy import Runner
runner = Runner.from_yaml('你的/pipeline.yaml路径')
runner.run_api_server()
autorag run_api --config_path 你的/pipeline.yaml路径 --host 0.0.0.0 --port 8000
6-3. 作为Web界面运行
你可以将此流程作为Web界面运行。
在这里查看Web界面。
autorag run_web --trial_path 你的/试验路径
- Web界面示例:
⭐ Star历史 ⭐
✨ 贡献者 ✨
感谢这些优秀的人:
贡献
我们正在将AutoRAG作为开源项目开发。
因此,本项目欢迎贡献和建议。随时为这个项目做出贡献。
此外,请查看我们在这里的详细文档。