LettuceDetect 项目使用教程
1. 项目目录结构及介绍
LettuceDetect 是一个用于检测 Retrieval-Augmented Generation (RAG) 系统中虚构内容(hallucinations)的开源框架。以下是项目的目录结构及其简要介绍:
LettuceDetect/
├── .github/ # GitHub 工作流文件
├── assets/ # 静态资源文件
├── demo/ # 示例代码和脚本
├── docs/ # 文档资料
├── lettucedetect/ # 核心代码模块
├── lettucedetect_api/ # API 模块
├── scripts/ # 脚本文件,用于数据处理、训练和评估模型
├── tests/ # 测试代码
├── .gitignore # Git 忽略文件
├── LICENSE # MIT 许可证文件
├── MANIFEST.in # 打包配置文件
├── README.md # 项目说明文件
├── pyproject.toml # 项目配置文件
2. 项目的启动文件介绍
项目的启动主要通过 scripts
目录下的脚本进行。以下是一些主要脚本的介绍:
start_api.py
:启动 LettuceDetect 的 Web API 服务。可以通过指定--model
参数来指定模型路径,使用--method
参数来选择检测方法(目前支持transformer
)。
3. 项目的配置文件介绍
项目的配置主要通过 pyproject.toml
文件进行。以下是配置文件的主要内容:
[tool]
[tool.build-system]
requires = ["setuptools", "wheel"]
[options]
packagenames = ["lettucedetect"]
此外,项目的配置还可能涉及到环境变量的设置,以及模型训练和评估时的参数配置。这些配置通常在脚本文件中通过命令行参数进行设置。
例如,训练模型时,可以使用以下命令:
python scripts/train.py \
--ragtruth-path data/ragtruth/ragtruth_data.json \
--model-name answerdotai/ModernBERT-base \
--output-dir output/hallucination_detector \
--batch-size 4 \
--epochs 6 \
--learning-rate 1e-5
这里,train.py
脚本负责模型的训练,--ragtruth-path
指定了 RAGTruth 数据集的路径,--model-name
指定了使用的模型名称,其他参数则是训练时的配置,如批量大小、训练轮次和学习率等。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考