/chat-sql

Chat to generate SQL

Primary LanguageTypeScript

ChatSQL

A chat app that lets users query against a local mysql database called sample with the provided schema.

A SQL user needs to be provided as shown in the .env.example file that only has read access to prevent SQL injection and modifications to the DB.

SQL is generated using OpenAI's gpt-3.5-turbo-0613 model to make use of the new function calling capabilities to ensure more reliable response schemas. I'm providing a single row from each table to enable more accurate responses. For databases that have more variable data, a random subset of rows or a summarized data overview with types and example can be passed into the prompt.

ChatSQL

This is a Next.js project bootstrapped with create-next-app.

Getting Started

First, run the development server:

npm run dev
# or
yarn dev
# or
pnpm dev

Open http://localhost:3000 with your browser to see the result.

You can start editing the page by modifying pages/index.tsx. The page auto-updates as you edit the file.

API routes can be accessed on http://localhost:3000/api/hello. This endpoint can be edited in pages/api/hello.ts.

The pages/api directory is mapped to /api/*. Files in this directory are treated as API routes instead of React pages.

This project uses next/font to automatically optimize and load Inter, a custom Google Font.

Learn More

To learn more about Next.js, take a look at the following resources:

You can check out the Next.js GitHub repository - your feedback and contributions are welcome!

Deploy on Vercel

The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.

Check out our Next.js deployment documentation for more details.