Generador de datos de texto a SQL

El generador de datos de texto a SQL genera datos SQL sintéticos que contienen un enunciado en lenguaje natural que describe una operación de base de datos y un enunciado SQL equivalente para realizar la operación de base de datos.

Nota: Actualmente, la declaración en lenguaje natural debe estar escrita en inglés.

Formato de los datos de siembra

Cree un archivo YAML de entrada que contenga sentencias de texto plano de ejemplo. Añada la información siguiente al archivo:

  • Las operaciones a realizar con los datos almacenados en una base de datos relacional
  • Las consultas SQL correspondientes para ejecutar cada operación
  • Un esquema de base de datos que define cómo se organizan y almacenan los datos

Utilice la siguiente estructura para el archivo YAML:

task_description: <Description of this task>
seed_examples:
   - utterance: <input question 1>
     query: <sample SQL 1>
   - utterance: <input question 2>
     query: <sample SQL 2>
database:
   schema: "<Data Definition Language (DDL) statement of one or more tables. Separate each DDL by a semi-colon>"

Muestra de datos de semillas

Para descargar datos de muestra para el generador de datos de texto a SQL, consulte watsonx -ai-samples.

Ejemplo de cuerpo de solicitud para un archivo JSON

El siguiente cuerpo de petición tiene la configuración para un trabajo de generación de datos sintéticos no estructurados que utiliza el generador de datos de texto a SQL. Dispone de ajustes avanzados adicionales para generar tokens.

{
    "project_id": "<ID of the project to create the job in>",
    "name": "<Name of the job that you want to create>",
    "description": "<Description for the job>",
    "configuration": {
        "pipeline": "nl2sql",
        "num_outputs_to_generate": <A value between 1 to 1000>,
        "generator": {
            "model_id": "<LLM. For example ibm/granite-3-8b>",
            "temperature": 0.5,
            "max_new_tokens": 1024,
            "min_new_tokens": 100,
            "decoding_method": "sample",
            "top_p": 0.9,
            "top_k": 50
        },
        "validators": [            
            {
                "type": "rouge_scorer",
                "threshold": 0.9
            }
        ],
        "seed_data_reference": {
            "type": "container",
            "location": {
                "path": "<YAML file name in project assets. For example qna_know_seed.yaml>"
            }
        },
        "results_reference": {
            "type": "container",
            "location": {
                "path": "<File name for the generated data output. For example sdg-output-know.jsonl>"
            }
        }
    },
    "job": {
        "schedule": "0 0 1 * *",
        "schedule_info": {
            "repeat": true,
            "startOn": 1547578689512,
            "endOn": 1547578689512
        }
    }
}