当前位置:   article > 正文

NL2SQL-01_nl2sql开源

nl2sql开源

背景介绍

数据库中存储了海量的高价值数据,用户可以通过执行SQL与结构化数据直接进行交互,也可以通过设计好的交互界面进行交互。但SQL的使用难度限制了非技术用户,交互界面的设计也限制了使用的界限。通过自然语言直接与结构化数据进行交互,可以充分利用结构化数据的价值,为用户带来体验和效率的提升。

追一科技主攻深度学习和自然语言处理,致力于以业界最领先的AI解决方案、产品和服务为客户和用户创造价值,共创未来人类美好生活。我们希望通过NL2SQL赛题,拉近用户与结构化数据间的距离,实现人机交互体验升级。

环境依赖

深度学习框架: tensorflow, keras

Docker 镜像:

REPOSITORYTAGIMAGE ID
tensorflow/tensorflownightly-gpu-py3-jupyter6e60684e9aa4

CUDA 版本: 10.0.130

Python 依赖:

见 ./code/requirements.txt

通过该 sh 命令安装依赖

pip install -r ./code/requirements.txt

训练

NL2SQL 场景需要预测的结果包含以下几个部分:

  1. - sel
  2. - agg
  3. - conds
  4. - [(col_id, cond_op, cond_val), ...]

训练将分为独立的两个任务进行。

  • task1 负责对 selaggcond_conn_op 以及 conds 当中的 col_idcond_op 目标进行训练。
  • task2 负责对 conds 中的 col_idcond_opcond_val 目标进行训练。

在 ./code 目录下,执行

python task1.py train --model_dir ../model/
python task2.py train --model_dir ../model/

推断

推断的时候,先执行 task1,再执行 task2

在 ./code 目录下,执行

python task1.py infer --model_weights ../model/task1.12-0.852.h5 --output_file ../submit/task1_output.json
python task2.py infer --model_weights ../model/task2.h5 --output_file ../submit/submit.json
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/961838
推荐阅读
相关标签
  

闽ICP备14008679号