开源项目 `test-suite-sql-eval` 使用教程

开源项目 test-suite-sql-eval 使用教程

test-suite-sql-eval Semantic Evaluation for Text-to-SQL with Distilled Test Suites test-suite-sql-eval 项目地址: https://gitcode.com/gh_mirrors/te/test-suite-sql-eval

1. 项目介绍

test-suite-sql-eval 是一个用于评估文本到SQL任务的语义准确性的开源项目。该项目通过蒸馏测试套件(Distilled Test Suites)来计算更严格的语义准确性上界,相比其他当前的评估指标,能够更高效地进行评估。该项目在EMNLP 2020论文中提出,并已成为Spider、SParC和CoSQL的官方评估指标。此外,它还适用于其他经典的文本到SQL数据集,如ATIS、Advising、Geography、IMDB、Restaurants、Scholar和Yelp。

2. 项目快速启动

2.1 环境准备

在开始之前,请确保你已经安装了Python 3,并且安装了以下依赖库:

pip3 install sqlparse
pip3 install nltk

2.2 下载测试套件

首先,你需要从项目提供的链接下载测试套件(数据库),并将其放置在database/目录下。

2.3 运行评估

以下是一个简单的示例命令,用于计算Spider、CoSQL和SParC开发集的测试套件准确性:

python3 evaluation.py --gold [gold file] --pred [predicted file] --etype exec --db [database dir] --table [table file] --plug_value --keep_distinct --progress_bar_for_each_datapoint

参数说明:

  • [gold file]:包含黄金SQL查询的文件,每行格式为gold SQL \t db_id
  • [predicted file]:包含预测SQL查询的文件,每行格式为预测的SQL查询。
  • [database dir]:包含所有数据库和测试套件的目录。
  • [table file]:包含每个数据库的外键信息的table.json文件。

3. 应用案例和最佳实践

3.1 应用案例

test-suite-sql-eval 主要用于评估文本到SQL模型的语义准确性。例如,在Spider、SParC和CoSQL等数据集上,研究人员可以使用该工具来评估其模型的性能,并与其他模型进行比较。

3.2 最佳实践

  • 使用--plug_value参数:如果你的模型不预测SQL查询中的值,建议使用--plug_value参数,该参数会将黄金查询中的值插入到预测查询中。
  • 保持distinct关键字:如果你希望在评估过程中保留distinct关键字,可以使用--keep_distinct参数。
  • 监控进度:使用--progress_bar_for_each_datapoint参数可以监控每个测试输入的执行进度,确保评估过程不会卡在某个特定的测试输入上。

4. 典型生态项目

test-suite-sql-eval 是文本到SQL任务评估领域的一个重要工具,与其相关的典型生态项目包括:

  • Spider:一个大规模的文本到SQL数据集,用于评估文本到SQL模型的性能。
  • SParC:一个跨领域的文本到SQL数据集,用于评估模型在不同领域中的泛化能力。
  • CoSQL:一个对话式的文本到SQL数据集,用于评估模型在对话场景中的表现。

这些项目与test-suite-sql-eval 紧密结合,共同推动了文本到SQL任务的研究和应用。

test-suite-sql-eval Semantic Evaluation for Text-to-SQL with Distilled Test Suites test-suite-sql-eval 项目地址: https://gitcode.com/gh_mirrors/te/test-suite-sql-eval

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

裴若音Nola

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值