#(TAG-Bench 使用教程)
1. 项目介绍
TAG-Bench 是一个针对 Table-Augmented Generation (TAG) 的基准测试,用于评估自然语言处理模型在处理与数据库相结合的任务时的性能。TAG 是一种统一且通用的框架,用于回答数据库中的自然语言问题。该基准测试建立在 BIRD Text2SQL 基准之上,通过修改查询来增加复杂性,挑战大型语言模型的能力。
2. 项目快速启动
环境准备
首先,你需要创建一个 conda 环境,并安装所需的依赖:
conda create -n tag python=3.10 -y
conda activate tag
pip install -r requirements.txt
pip install -e .
数据库准备
接下来,下载 BIRD 数据库并将它们转换为 Pandas 数据框架:
cd setup
chmod +x get_dbs.sh
./get_dbs.sh
此时,你应该有一个包含数据库的 dev_folder
文件夹和一个包含数据框架的 pandas_dfs
文件夹。
创建索引
为了提高效率,建议在 GPU 上为每个表创建索引:
cd setup
chmod +x embed_all_dfs.sh
./embed_all_dfs.sh
现在,你应该有一个包含索引的 indexes
文件夹。
获取 Text2SQL 提示
修改 tag_queries.csv
文件以添加 Text2SQL 提示列:
cd setup
chmod +x get_text2sql_prompts.sh
./get_text2sql_prompts.sh
运行示例
在完成上述设置步骤后,你可以运行以下命令来重现论文中的结果。在 tag
目录中运行以下命令,以获取方法输出。你需要编辑每个文件中的 lm
对象,以指向你想要使用的语言模型服务器。
python hand_written.py \
--pipelines 0 1 3 4 5 6 8 10 11 13 16 18 19 20 21 24 108 109 110 111 \
25 27 29 30 33 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 \
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 106 107 952 1000 \
81 82 85 86 87 88 89 90 91 92 93 94 95 96 97 99 100 101 102 103 \
--output_dir out_hand_written
评估准确性和延迟:
python analyze.py --output_dir out_hand_written
3. 应用案例和最佳实践
- 案例 1: 使用 TAG-Bench 对比不同模型在处理自然语言查询时的表现。
- 案例 2: 针对具体业务需求,定制 TAG 模型,优化查询结果。
最佳实践包括但不限于:
- 确保你的数据库索引得当,以提高查询效率。
- 使用适合你任务的模型和参数。
4. 典型生态项目
- 项目 A: 利用 TAG-Bench 进行模型基准测试的开源项目。
- 项目 B: 基于 TAG-Bench 开发的自然语言数据库查询工具。
以上就是 TAG-Bench 的使用教程,希望对你有所帮助。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考