Fornecimento de contexto adicional para a conversão de consultas de linguagem natural em SQL
Para gerar consultas SQL mais precisas e sensíveis ao contexto, você pode fornecer contexto adicional ao serviço Text-to-SQL na forma de amostras de SQL.
As amostras de SQL podem ajudar a melhorar a precisão das consultas SQL geradas a partir de sua entrada de texto simples, pois podem ser usadas como referência quando a consulta de entrada é ingerida (prompting de poucos disparos). Você pode adicionar amostras de SQL a qualquer projeto que esteja habilitado para o serviço Text-to-SQL.
Você cria exemplos de SQL como arquivos ` CSV `, que devem seguir estas regras de formatação:
O arquivo ` CSV ` não deve conter uma linha de cabeçalho.
O arquivo ` CSV ` consiste em uma ou mais linhas neste formato:
natural_language_query,evidence,sql- natural_language_query
- A solicitação em inglês simples.
- Este campo é obrigatório.
- evidenciar
- Informações adicionais, como uma fórmula para calcular uma pontuação ou uma lista de termos sinônimos. Se a frase contiver uma vírgula (
,) ou um ponto e vírgula (;), inclua a frase inteira entre aspas duplas ("). - Este campo é opcional.
- SQL
- A consulta SQL esperada para a pergunta. Se a instrução SQL contiver uma vírgula (
,) ou um ponto e vírgula (;), inclua a instrução inteira entre aspas duplas ("). - Este campo é obrigatório.
Você deve manter a ordem dos campos conforme mostrado.
Os nomes dos arquivos devem seguir essa convenção:
text_to_sql_fewshots_<n>.csv
n é um número consecutivo. O primeiro arquivo de amostra que você carregar deve ter o nome text_to_sql_fewshots_0.csv. Você pode adicionar quantos arquivos forem necessários, dependendo de seus casos de uso.
Todas as amostras que você carrega são pesquisadas para cada conversão de texto para SQL. As amostras que são relevantes para a solicitação específica são recuperadas com base na pergunta de entrada e são fornecidas ao LLM como exemplos de poucos disparos.
Exemplo de conteúdo do arquivo ` CSV `:
Who are the top 5 players who perform better in crossing actions?,perform better in crossing actions refers to MAX(crossing),SELECT id FROM Player_Attributes ORDER BY crossing DESC LIMIT 5
Give the name of the league had the most goals in the 2016 season?,"""league that had the most goals refers to MAX(SUM(home_team_goal,away_team_goal)); 2016 season refers to season = '2015/2016'""",SELECT t2.name FROM Match AS t1 INNER JOIN League AS t2 ON t1.league_id = t2.id WHERE t1.season = '2015/2016' GROUP BY t2.name ORDER BY SUM(t1.home_team_goal + t1.away_team_goal) DESC LIMIT 1
Indicate the full names of the top 10 players with the highest number of penalties.,,SELECT t2.player_name FROM Player_Attributes AS t1 INNER JOIN Player AS t2 ON t1.id = t2.id ORDER BY t1.penalties DESC LIMIT 10
What is the short name of the football team Queens Park Rangers?,,SELECT team_short_name FROM Team WHERE team_long_name = 'Queens Park Rangers'
Para carregar arquivos de amostra de SQL:
- No projeto, clique em Importar ativos.
- Selecione Arquivo local e clique em Ativo de dados.
- Procure no seu sistema de arquivos local os arquivos CSV que deseja enviar.