t5-small-bashsql / README.md
davidmezzetti's picture
Initial model
0c1cc58
metadata
language: en
widget:
  - text: 'translate Bash to SQL: find -name "feel good story" -mtime -1'
    example_title: Last day
  - text: >-
      translate Bash to SQL: find -name "show me sports stories" -mtime -1 -team
      "Red Sox"
    example_title: Last day with filter
  - text: 'translate Bash to SQL: find -name "breaking news" -summary'
    example_title: Summary
  - text: 'translate Bash to SQL: find -name "breaking news" -translate fr'
    example_title: Translate to French
inference:
  parameters:
    max_length: 512
license: apache-2.0

T5-small finedtuned to generate txtai SQL

T5 small fine-tuned to generate txtai SQL. This model takes Bash like commands and builds txtai-compatible SQL statements.

find -name "feel good story" -mtime -1
find -name "show me sports stories" -mtime -1 -team \"Red Sox\"
find -name "breaking news" -summary
find -name "breaking news" -translate fr

Custom query syntax

This model is an example of creating a custom query syntax that can be translated into SQL txtai can understand. Any query syntax can be created. This one supports Bash-like commands but a similar strategy can be deployed to support other languages. Natural language can be translated to functions, query clauses, column selection and more.

See t5-small-txtsql for a model that translates natural language statements into txtai SQL.

Model training

This model was trained using scripts that can be found here.

Steps to train:

python generate.py bashsql.csv
python train.py bashsql.csv t5-small-bashsql