Skip to content

Latest commit

 

History

History
65 lines (45 loc) · 1.29 KB

readme.md

File metadata and controls

65 lines (45 loc) · 1.29 KB

SQLiteGPT

SQL function for SQLite to directly query OpenAI's ChatGPT.

CLI

Installation

npm install --global sqlitegpt

Usage

export OPENAI_API_KEY="sk-XXX"
sqlitegpt example.sqlite "SELECT gpt('Name of tallest mountain')"

Library Usage

import { sqliteGpt } from "sqlitegpt"

sqliteGpt(
  ":memory:",
  "SELECT gpt('Name of tallest mountain') as tallest_mountain"
)

sqliteGpt(
  "example.sqlite",
  `
    SELECT
      country,
      gpt('capital of ' || country || ', no explanation') as capital
    FROM users
  `
)

Known Issues

  • This implementation currently uses sync-request which forces HTTP requests to be synchronous. You should not use this in production! However, it's currently the only way to make it work with better-sqlite3.
  • It's only implemented as an application-defined SQL function and can therefore only be used in JavaScript projects. To make it work in every SQLite environment, it should be implemented as a loadable extension.

If you like SQLiteGPT, please star the project and I will re-implement it as a proper loadable extension in Rust with sqlite-loadable-rs.