如何使用ChatGPT执行"自然语言SQL"

866 阅读2分钟

使用自然语言查询 SQLite DB 的一个demo

关于

此存储库包含将 SQLite 查询与 OpenAI 的 GPT-3.5-turbo 语言模型相结合的代码。该代码允许用户通过类似聊天的界面使用自然语言查询与 SQLite 数据库进行交互。使用到了GPT最新的function call接口,让它帮我们自动判断函数的选择执行。

功能

  • chinook.db使用库连接到 SQLite 数据库 ( ) sqlite3
  • 利用 OpenAI 的 GPT-3.5-turbo 语言模型进行自然语言处理。
  • 支持通过基于自然语言生成SQL查询来查询数据库。
  • 从数据库中检索表和列信息以协助生成查询。
  • 允许用户询问有关音乐数据库的问题并接收 SQL 查询响应。

安装

  1. 将此存储库克隆到您的本地计算机:

    狂欢
    git clone git@github.com:JackZong/NaturalSQL.git
    
  2. 安装必要的依赖项:

    狂欢
    yarn install
    
  3. 通过编辑文件配置 API 密钥和基本路径config.json

    JSON
    {
      "apiKey": "<your_open_ai_api_key>",
      "basePath": "<base_path>",
      // if you are using rapid open ai APIs, this demo based on Rapid API's open ai APIs
      "rapidApiKey": "<your_rapid_api_key>",
      "rapidHost": "<rapid_host>"
    }
    

用法

  1. 确保 SQLite 数据库 ( chinook.db) 位于./db目录中。

  2. 启动应用程序:

    狂欢
    yarn start
    
  3. 该应用程序将连接到数据库并检索表和列信息。

  4. 该应用程序将使用 OpenAI 的 GPT-3.5-turbo 语言模型生成基于硬编码自然语言的 SQL 查询。

  5. SQL 查询将针对 SQLite 数据库执行,结果将显示在控制台中。

例子

7fde65a3fabc9192831056c1f2ada914.png

e584f9c587937f7c0861ae7564a20fcc.png

License

该项目已获得MIT License许可。

Reference

项目地址: github.com/JackZong/Na…