开源项目:Adaptive-RAG安装与使用指南
Adaptive-RAG 项目地址: https://gitcode.com/gh_mirrors/ad/Adaptive-RAG
1. 项目目录结构及介绍
Adaptive-RAG是一个创新的问答(QA)框架,设计用于根据问题复杂性动态地选择最适合的检索增强大型语言模型(LLM)策略。以下是该项目的主要目录结构及其简介:
.
├── base_configs # 基础配置文件夹
├── classifier # 分类器相关代码,用于预测问题复杂度
├── commaqa # 特定数据集或组件
├── download # 数据下载脚本所在目录
├── images # 可能包含的图像资源
├── llm_server # 大型语言模型服务端代码
├── metrics # 性能度量相关代码
├── official_evaluation # 官方评估脚本或工具
├── processing_scripts # 数据处理脚本,用于准备训练数据
├── prompts # 提示生成相关代码
├── prompt_generator # 提供自动生成提示的功能
├── retriever_server # 检索服务器相关代码,用于知识检索
├── .gitignore # Git忽略文件列表
├── llm_server_address.jsonnet # 配置大型语言模型服务地址的文件
├── retriever_address.jsonnet # 配置检索服务地址的文件
├── LICENSE # 许可证文件
├── README.md # 项目介绍和快速入门文档
├── data.tar.gz # 预处理后的数据压缩包
├── evaluate.py # 用于评价模型性能的脚本
├── evaluate_final_acc.py # 最终准确率评估脚本
├── lib.py # 通用库函数
├── predict.py # 预测脚本
├── predictions.tar.gz # 预测结果的压缩包
├── processed_data.tar.gz # 加工后数据的压缩包
├── pyproject.toml # Python项目的配置文件
├── requirements.txt # 项目依赖库列表
├── run.py # 主运行脚本
├── run_retrieval_dev.sh # 运行开发阶段检索任务的shell脚本
└── run_retrieval_test.sh # 运行测试阶段检索任务的shell脚本
2. 项目启动文件介绍
-
run.py:这是主运行脚本,通常负责初始化系统、加载配置,并根据应用场景启动相应的服务或执行任务。
-
run_retrieval_dev.sh, run_retrieval_test.sh: 这两个Shell脚本分别用于在开发环境和测试环境下启动检索服务,是项目测试和调试流程的关键部分。
-
classifier目录下的脚本如
run_large_train_xl.sh
,run_large_train_xxl.sh
, 和run_large_train_gpt.sh
:这些脚本用于训练分类器,以判断不同问题的复杂度。
3. 项目的配置文件介绍
-
llm_server_address.jsonnet, retriever_address.jsonnet:这两个JSONNet配置文件分别用来指定大型语言模型服务器和服务检索器的地址,确保系统可以正确调用这些服务进行交互。
-
base_configs目录下可能包含了不同场景或组件的基础配置文件,用于定制化设置模型参数、数据库连接等信息。
配置与启动步骤简述
- 创建并激活Conda环境,安装必需的Python包。
- 配置Retriever Server,包括下载Elasticsearch并启动服务。
- 获取并预处理数据集,通过提供的bash脚本下载和准备数据。
- 配置和启动LLM Server,选择合适的模型(如FLAN-T5系列)。
- 训练分类器,基于问题复杂度来优化策略选择。
- 运行项目,利用训练好的配置和模型开始问答过程。
此指导文档旨在提供一个概览,具体操作时应详细参考项目中的README.md和各脚本内的注释以获得更详细的步骤说明。
Adaptive-RAG 项目地址: https://gitcode.com/gh_mirrors/ad/Adaptive-RAG